Messages in this thread Patch in this message | | | From | Linus Torvalds <> | Date | Thu, 17 Jan 2019 05:48:33 +1200 | Subject | Re: [PATCH] mm/mincore: allow for making sys_mincore() privileged |
| |
On Thu, Jan 17, 2019 at 4:12 AM Jiri Kosina <jikos@kernel.org> wrote: > > So that seems to deal with mincore() in a reasonable way indeed. > > It doesn't unfortunately really solve the preadv2(RWF_NOWAIT), nor does it > provide any good answer what to do about it, does it?
As I suggested earlier in the thread, the fix for RWF_NOWAIT might be to just move the test down to after readahead.
We could/should be smarter than this,but it *might* be as simple as just
diff --git a/mm/filemap.c b/mm/filemap.c index 9f5e323e883e..7bcdd36e629d 100644 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -2075,8 +2075,6 @@ static ssize_t generic_file_buffered_read(
page = find_get_page(mapping, index); if (!page) { - if (iocb->ki_flags & IOCB_NOWAIT) - goto would_block; page_cache_sync_readahead(mapping, ra, filp, index, last_index - index); which starts readahead even if IOCB_NOWAIT is set and will then test IOCB_NOWAIT _later_ and not actually wait for it.
Linus
| |