Re: [PATCH v3 04/11] readahead: rework loop in page_cache_ra_unbounded()
From: Pankaj Raghav
Date: Tue Mar 26 2024 - 05:48:08 EST
Hi Hannes,
On 26/03/2024 10:39, Hannes Reinecke wrote:
> On 3/25/24 19:41, 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?
>
> Hmm. Looks you are right; it should be modified, too.
> Will be fixing it up.
>
You initially had also in the second hunk:
ractl->index += folio_nr_pages(folio);
and I changed it to what it is now.
The reason is in my reply to willy:
https://lore.kernel.org/linux-xfs/s4jn4t4betknd3y4ltfccqxyfktzdljiz7klgbqsrccmv3rwrd@orlwjz77oyxo/
Let me know if you agree with it.
> Cheers,
>
> Hannes
>