io_uring/memmap: don't use page_address() on a highmem page
For older/32-bit systems with highmem, don't assume that the pages in a mapped region are always going to be mapped. If io_region_init_ptr() finds that the pages are coalescable, also check if the first page is a HighMem page or not. If it is, fall through to the usual vmap() mapping rather than attempt to get the unmapped page address. Cc: stable@vger.kernel.org Fixes: c4d0ac1c ("io_uring/memmap: optimise single folio regions") Link: https://lore.kernel.org/all/681fe2fb.050a0220.f2294.001a.GAE@google.com/ Reported-by:<syzbot+5b8c4abafcb1d791ccfc@syzkaller.appspotmail.com> Link: https://lore.kernel.org/all/681fed0a.050a0220.f2294.001c.GAE@google.com/ Reported-by:
<syzbot+6456a99dfdc2e78c4feb@syzkaller.appspotmail.com> Tested-by:
<syzbot+6456a99dfdc2e78c4feb@syzkaller.appspotmail.com> Signed-off-by:
Jens Axboe <axboe@kernel.dk>
Loading
Please register or sign in to comment