mirror of
https://github.com/torvalds/linux.git
synced 2026-11-06 21:58:01 +01:00
mm/vmalloc: bail out early on invalid page_shift in __vmap_pages_range_noflush()
__vmap_pages_range_noflush() currently only warns when page_shift is smaller than PAGE_SHIFT, then continues with the invalid shift. Return -EINVAL instead so the bogus argument is caught immediately. Link: https://lore.kernel.org/20261004071639.119857-1-jiangwenxiaomi@gmail.com Signed-off-by: Wen Jiang <jiangwen6@xiaomi.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Suggested-by: Uladzislau Rezki (Sony) <urezki@gmail.com> Reviewed-by: Barry Song <baohua@kernel.org> Reviewed-by: Uladzislau Rezki (Sony) <urezki@gmail.com> Reviewed-by: Vishal Moola (Fractile) <vishal.moola@gmail.com> Cc: Dev Jain <dev.jain@arm.com>
This commit is contained in:
parent
29f8fcb55c
commit
bf033d0436
|
|
@ -684,7 +684,8 @@ int __vmap_pages_range_noflush(unsigned long addr, unsigned long end,
|
|||
{
|
||||
unsigned int i, nr = (end - addr) >> PAGE_SHIFT;
|
||||
|
||||
WARN_ON(page_shift < PAGE_SHIFT);
|
||||
if (WARN_ON_ONCE(page_shift < PAGE_SHIFT))
|
||||
return -EINVAL;
|
||||
|
||||
if (!IS_ENABLED(CONFIG_HAVE_ARCH_HUGE_VMALLOC) ||
|
||||
page_shift == PAGE_SHIFT)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user