]> www.infradead.org Git - users/jedix/linux-maple.git/commit
mm: shmem: fix incorrect index alignment for within_size policy
authorBaolin Wang <baolin.wang@linux.alibaba.com>
Thu, 19 Dec 2024 07:30:08 +0000 (15:30 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Tue, 31 Dec 2024 01:59:09 +0000 (17:59 -0800)
commitd0e6983a6d1719738cf8d13982a68094f0a1872a
tree3d0c0a8f384da2cbeb0e5c5c724802cfb67d2699
parent11673247700e2af3a6a95f7b3f1bb80b691c950e
mm: shmem: fix incorrect index alignment for within_size policy

With enabling the shmem per-size within_size policy, using an incorrect
'order' size to round_up() the index can lead to incorrect i_size checks,
resulting in an inappropriate large orders being returned.

Changing to use '1 << order' to round_up() the index to fix this issue.
Additionally, adding an 'aligned_index' variable to avoid affecting the
index checks.

Link: https://lkml.kernel.org/r/77d8ef76a7d3d646e9225e9af88a76549a68aab1.1734593154.git.baolin.wang@linux.alibaba.com
Fixes: e7a2ab7b3bb5 ("mm: shmem: add mTHP support for anonymous shmem")
Signed-off-by: Baolin Wang <baolin.wang@linux.alibaba.com>
Acked-by: David Hildenbrand <david@redhat.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/shmem.c