[IA64] Failure to grow RBS
authorAndrew Burgess <andrew@transitive.com>
Thu, 16 Aug 2007 17:30:46 +0000 (10:30 -0700)
committerTony Luck <tony.luck@intel.com>
Thu, 16 Aug 2007 17:30:46 +0000 (10:30 -0700)
commite8c59c0cf9c91dccfb6367c306d753500d5a0150
treedb4a13d5f5f88e2cc2da56fb4e8a3d6d6ea3ba4e
parent182fdd225de8fc3b1b721ae944fc41146a0bd812
[IA64] Failure to grow RBS

There is a bug in the ia64_do_page_fault code that can cause a failure
to grow the register backing store, or any mapping that is marked as
VM_GROWSUP if the mapping is the highest mapped area of memory.

When the address accessed is below the first mapping the previous mapping
is returned as NULL, and this case is handled.  However, when the address
accessed is above the highest mapping the vma returned is NULL, this
case is not handled correctly, and it fails to spot that this access
might require an existing mapping to grow upwards.

Signed-off-by: Andrew Burgess <andrew@transitive.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
arch/ia64/mm/fault.c