powerpc/64s/slice: Use addr limit when computing slice mask
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Fri, 10 Nov 2017 04:55:07 +0000 (10:25 +0530)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 20 Nov 2017 08:28:25 +0000 (19:28 +1100)
commit7a06c66835f75fe2be4f154a93cc30cb81734b81
tree947b1a6b42761db78af50abbc5572c191229274b
parent3ffa9d9e2a7c10127d8cbf91ea2be15390b450ed
powerpc/64s/slice: Use addr limit when computing slice mask

While computing slice mask for the free area we need make sure we only
search in the addr limit applicable for this mmap. We update the
slb_addr_limit after we request for a mmap above 128TB. But the
following mmap request with hint addr below 128TB should still limit
its search to below 128TB. ie. we should not use slb_addr_limit to
compute slice mask in this case. Instead, we should derive high addr
limit based on the mmap hint addr value.

Fixes: f4ea6dcb08ea ("powerpc/mm: Enable mappings above 128TB")
Cc: stable@vger.kernel.org # v4.12+
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/mm/slice.c