From: "Pankaj Raghav (Samsung)" <kernel@pankajraghav.com>
To: Matthew Wilcox <willy@infradead.org>
Cc: linux-xfs@vger.kernel.org, linux-fsdevel@vger.kernel.org,
gost.dev@samsung.com, chandan.babu@oracle.com, hare@suse.de,
mcgrof@kernel.org, djwong@kernel.org, linux-mm@kvack.org,
linux-kernel@vger.kernel.org, david@fromorbit.com,
akpm@linux-foundation.org, Pankaj Raghav <p.raghav@samsung.com>
Subject: Re: [PATCH v3 04/11] readahead: rework loop in page_cache_ra_unbounded()
Date: Tue, 26 Mar 2024 09:56:03 +0100 [thread overview]
Message-ID: <s4jn4t4betknd3y4ltfccqxyfktzdljiz7klgbqsrccmv3rwrd@orlwjz77oyxo> (raw)
In-Reply-To: <ZgHFPZ9tNLLjKZpz@casper.infradead.org>
On Mon, Mar 25, 2024 at 06:41:01PM +0000, Matthew Wilcox wrote:
> On Wed, Mar 13, 2024 at 06:02:46PM +0100, Pankaj Raghav (Samsung) wrote:
> > @@ -239,8 +239,8 @@ void page_cache_ra_unbounded(struct readahead_control *ractl,
> > * not worth getting one just for that.
> > */
> > read_pages(ractl);
> > - ractl->_index++;
> > - i = ractl->_index + ractl->_nr_pages - index - 1;
> > + ractl->_index += folio_nr_pages(folio);
> > + i = ractl->_index + ractl->_nr_pages - index;
> > continue;
> > }
> >
> > @@ -252,13 +252,14 @@ void page_cache_ra_unbounded(struct readahead_control *ractl,
> > folio_put(folio);
> > read_pages(ractl);
> > ractl->_index++;
> > - i = ractl->_index + ractl->_nr_pages - index - 1;
> > + i = ractl->_index + ractl->_nr_pages - index;
> > continue;
> > }
>
> You changed index++ in the first hunk, but not the second hunk. Is that
> intentional?
The reason I didn't use folio_nr_pages(folio) in the second hunk is
because we have already `put` the folio and it is not valid anymore to
use folio_nr_pages right? Because we increase the ref count in
filemap_alloc() and we put if add fails.
Plus in the second hunk, adding the 0 order folio failed in that index,
so we just move on to the next index. Once we have the min order
support, if adding min order folio failed, we move by min_order.
And your comment on the next patch:
> Hah, you changed this here. Please move into previous patch.
We can't do that either because I am introducing the concept of min
order in the next patch.
next prev parent reply other threads:[~2024-03-26 8:56 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-13 17:02 [PATCH v3 00/11] enable bs > ps in XFS Pankaj Raghav (Samsung)
2024-03-13 17:02 ` [PATCH v3 01/11] mm: Support order-1 folios in the page cache Pankaj Raghav (Samsung)
2024-03-13 17:02 ` [PATCH v3 02/11] fs: Allow fine-grained control of folio sizes Pankaj Raghav (Samsung)
2024-03-25 18:29 ` Matthew Wilcox
2024-03-26 8:44 ` Pankaj Raghav (Samsung)
2024-03-13 17:02 ` [PATCH v3 03/11] filemap: allocate mapping_min_order folios in the page cache Pankaj Raghav (Samsung)
2024-03-15 13:21 ` Pankaj Raghav (Samsung)
2024-03-13 17:02 ` [PATCH v3 04/11] readahead: rework loop in page_cache_ra_unbounded() Pankaj Raghav (Samsung)
2024-03-25 18:41 ` Matthew Wilcox
2024-03-26 8:56 ` Pankaj Raghav (Samsung) [this message]
2024-03-26 9:39 ` Hannes Reinecke
2024-03-26 9:44 ` Pankaj Raghav
2024-03-26 10:00 ` Hannes Reinecke
2024-03-26 10:06 ` Pankaj Raghav
2024-03-26 10:55 ` Hannes Reinecke
2024-03-26 13:41 ` Pankaj Raghav (Samsung)
2024-03-26 15:11 ` Pankaj Raghav (Samsung)
2024-03-13 17:02 ` [PATCH v3 05/11] readahead: allocate folios with mapping_min_order in readahead Pankaj Raghav (Samsung)
2024-03-25 19:00 ` Matthew Wilcox
2024-03-26 13:08 ` Pankaj Raghav (Samsung)
2024-04-22 11:03 ` Pankaj Raghav (Samsung)
2024-03-13 17:02 ` [PATCH v3 06/11] readahead: round up file_ra_state->ra_pages to mapping_min_nrpages Pankaj Raghav (Samsung)
2024-03-13 17:02 ` [PATCH v3 07/11] mm: do not split a folio if it has minimum folio order requirement Pankaj Raghav (Samsung)
2024-03-25 19:06 ` Matthew Wilcox
2024-03-26 16:10 ` Pankaj Raghav (Samsung)
2024-03-26 16:23 ` Zi Yan
2024-03-26 16:33 ` Pankaj Raghav
2024-03-26 16:38 ` Zi Yan
2024-03-13 17:02 ` [PATCH v3 08/11] iomap: fix iomap_dio_zero() for fs bs > system page size Pankaj Raghav (Samsung)
2024-03-13 17:02 ` [PATCH v3 09/11] xfs: expose block size in stat Pankaj Raghav (Samsung)
2024-03-13 17:02 ` [PATCH v3 10/11] xfs: make the calculation generic in xfs_sb_validate_fsb_count() Pankaj Raghav (Samsung)
2024-03-25 19:15 ` Matthew Wilcox
2024-03-26 9:53 ` Pankaj Raghav (Samsung)
2024-03-13 17:02 ` [PATCH v3 11/11] xfs: enable block size larger than page size support Pankaj Raghav (Samsung)
2024-03-25 19:19 ` [PATCH v3 00/11] enable bs > ps in XFS Matthew Wilcox
2024-03-26 9:53 ` Hannes Reinecke
2024-03-26 15:06 ` Pankaj Raghav
2024-03-26 14:54 ` Pankaj Raghav (Samsung)
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=s4jn4t4betknd3y4ltfccqxyfktzdljiz7klgbqsrccmv3rwrd@orlwjz77oyxo \
--to=kernel@pankajraghav.com \
--cc=akpm@linux-foundation.org \
--cc=chandan.babu@oracle.com \
--cc=david@fromorbit.com \
--cc=djwong@kernel.org \
--cc=gost.dev@samsung.com \
--cc=hare@suse.de \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-xfs@vger.kernel.org \
--cc=mcgrof@kernel.org \
--cc=p.raghav@samsung.com \
--cc=willy@infradead.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox