diff options
author | Jens Axboe <axboe@kernel.dk> | 2024-03-13 09:56:14 -0600 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2024-04-15 08:10:26 -0600 |
commit | 3ab1db3c6039e02a9deb9d5091d28d559917a645 (patch) | |
tree | 5b9e578aedf9848f2b0a8c8830fe2a4218aa56dc /block/blk-ioc.c | |
parent | 62346c6cb28b043f2a6e95337d9081ec0b37b5f5 (diff) | |
download | linux-3ab1db3c6039e02a9deb9d5091d28d559917a645.tar.gz linux-3ab1db3c6039e02a9deb9d5091d28d559917a645.tar.bz2 linux-3ab1db3c6039e02a9deb9d5091d28d559917a645.zip |
io_uring: get rid of remap_pfn_range() for mapping rings/sqes
Rather than use remap_pfn_range() for this and manually free later,
switch to using vm_insert_pages() and have it Just Work.
If possible, allocate a single compound page that covers the range that
is needed. If that works, then we can just use page_address() on that
page. If we fail to get a compound page, allocate single pages and use
vmap() to map them into the kernel virtual address space.
This just covers the rings/sqes, the other remaining user of the mmap
remap_pfn_range() user will be converted separately. Once that is done,
we can kill the old alloc/free code.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-ioc.c')
0 files changed, 0 insertions, 0 deletions