From: Jens Axboe <axboe@kernel.dk>
To: Randy Dunlap <rdunlap@infradead.org>, linux-fsdevel@vger.kernel.org
Cc: viro@zeniv.linux.org.uk, akpm@linux-foundation.org
Subject: Re: [PATCH 2/4] mpage: mpage_readpages() should submit IO as read-ahead
Date: Thu, 21 Jun 2018 11:29:00 -0600 [thread overview]
Message-ID: <c532a86b-d730-af09-7b30-4da9f9494c27@kernel.dk> (raw)
In-Reply-To: <ef28577f-deb5-a377-1692-5307c986ad47@infradead.org>
On 6/21/18 11:27 AM, Randy Dunlap wrote:
> On 06/20/2018 06:07 PM, Jens Axboe wrote:
>> a_ops->readpages() is only ever used for read-ahead, yet we don't
>> flag the IO being submitted as such. Fix that up. Any file system
>> that uses mpage_readpages() as its ->readpages() implementation
>> will now get this right.
>>
>> Since we're passing in whether the IO is read-ahead or not, we
>> don't need to pass in the 'gfp' separately, as it is dependent
>> on the IO being read-ahead. Kill off that member.
>>
>> Add some documentation notes on ->readpages() being purely for
>> read-ahead.
>>
>> Signed-off-by: Jens Axboe <axboe@kernel.dk>
>> ---
>> fs/f2fs/data.c | 5 +++++
>> fs/mpage.c | 29 +++++++++++++++++++----------
>> include/linux/fs.h | 4 ++++
>> 3 files changed, 28 insertions(+), 10 deletions(-)
>>
>> diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
>> index 8f931d699287..b7c9b58acf3e 100644
>> --- a/fs/f2fs/data.c
>> +++ b/fs/f2fs/data.c
>> @@ -1421,6 +1421,11 @@ int f2fs_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo,
>> /*
>> * This function was originally taken from fs/mpage.c, and customized for f2fs.
>> * Major change was from block_size == page_size in f2fs by default.
>> + *
>> + * Note that the aops->readpages() function is ONLY used for read-ahead. If
>> + * this function ever deviates from doing just read-ahead, it should either
>> + * use ->readpage() or do the necessary surgery to decouple ->readpages()
>> + * readom read-ahead.
>
> eh?
Huh weird, must be touchpad and typing. Should be 'from read-ahead'.
--
Jens Axboe
next prev parent reply other threads:[~2018-06-21 17:29 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-21 1:07 [PATCH v4 0/4] Submit ->readpages() IO as read-ahead Jens Axboe
2018-06-21 1:07 ` [PATCH 1/4] mpage: add argument structure for do_mpage_readpage() Jens Axboe
2018-06-21 1:07 ` [PATCH 2/4] mpage: mpage_readpages() should submit IO as read-ahead Jens Axboe
2018-06-21 17:27 ` Randy Dunlap
2018-06-21 17:29 ` Jens Axboe [this message]
2018-06-21 18:47 ` Jaegeuk Kim
2018-06-21 19:18 ` Jens Axboe
2018-06-21 19:32 ` Jaegeuk Kim
2018-06-21 19:32 ` Jens Axboe
2018-06-21 1:07 ` [PATCH 3/4] btrfs: readpages() " Jens Axboe
2018-06-21 1:07 ` [PATCH 4/4] ext4: " Jens Axboe
-- strict thread matches above, loose matches on Subject: below --
2018-05-30 14:42 [PATCHSET v3 0/4] Submit ->readpages() " Jens Axboe
2018-05-30 14:42 ` [PATCH 2/4] mpage: mpage_readpages() should submit " Jens Axboe
2018-05-29 22:17 [PATCHSET v2 0/4] Submit ->readpages() " Jens Axboe
2018-05-29 22:17 ` [PATCH 2/4] mpage: mpage_readpages() should submit " Jens Axboe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c532a86b-d730-af09-7b30-4da9f9494c27@kernel.dk \
--to=axboe@kernel.dk \
--cc=akpm@linux-foundation.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=rdunlap@infradead.org \
--cc=viro@zeniv.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.