2020-02-19 21:01:33

by Matthew Wilcox

[permalink] [raw]
Subject: [PATCH v7 08/24] mm: Remove 'page_offset' from readahead loop

From: "Matthew Wilcox (Oracle)" <[email protected]>

Replace the page_offset variable with 'index + i'.

Signed-off-by: Matthew Wilcox (Oracle) <[email protected]>
---
mm/readahead.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/mm/readahead.c b/mm/readahead.c
index 8a25fc7e2bf2..83df5c061d33 100644
--- a/mm/readahead.c
+++ b/mm/readahead.c
@@ -181,12 +181,10 @@ void __do_page_cache_readahead(struct address_space *mapping,
* Preallocate as many pages as we will need.
*/
for (i = 0; i < nr_to_read; i++) {
- pgoff_t page_offset = index + i;
-
- if (page_offset > end_index)
+ if (index + i > end_index)
break;

- page = xa_load(&mapping->i_pages, page_offset);
+ page = xa_load(&mapping->i_pages, index + i);
if (page && !xa_is_value(page)) {
/*
* Page already present? Kick off the current batch of
@@ -200,7 +198,7 @@ void __do_page_cache_readahead(struct address_space *mapping,
page = __page_cache_alloc(gfp_mask);
if (!page)
break;
- page->index = page_offset;
+ page->index = index + i;
list_add(&page->lru, &page_pool);
if (i == nr_to_read - lookahead_size)
SetPageReadahead(page);
--
2.25.0


2020-02-21 02:49:06

by John Hubbard

[permalink] [raw]
Subject: Re: [PATCH v7 08/24] mm: Remove 'page_offset' from readahead loop

On 2/19/20 1:00 PM, Matthew Wilcox wrote:
> From: "Matthew Wilcox (Oracle)" <[email protected]>
>
> Replace the page_offset variable with 'index + i'.
>
> Signed-off-by: Matthew Wilcox (Oracle) <[email protected]>
> ---
> mm/readahead.c | 8 +++-----
> 1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/mm/readahead.c b/mm/readahead.c
> index 8a25fc7e2bf2..83df5c061d33 100644
> --- a/mm/readahead.c
> +++ b/mm/readahead.c
> @@ -181,12 +181,10 @@ void __do_page_cache_readahead(struct address_space *mapping,
> * Preallocate as many pages as we will need.
> */
> for (i = 0; i < nr_to_read; i++) {
> - pgoff_t page_offset = index + i;


ha, the naming mismatch I complained about in an earlier patch gets deleted
here, so we're good after all. :)

Looks good,

Reviewed-by: John Hubbard <[email protected]>


thanks,
--
John Hubbard
NVIDIA

> -
> - if (page_offset > end_index)
> + if (index + i > end_index)
> break;
>
> - page = xa_load(&mapping->i_pages, page_offset);
> + page = xa_load(&mapping->i_pages, index + i);
> if (page && !xa_is_value(page)) {
> /*
> * Page already present? Kick off the current batch of
> @@ -200,7 +198,7 @@ void __do_page_cache_readahead(struct address_space *mapping,
> page = __page_cache_alloc(gfp_mask);
> if (!page)
> break;
> - page->index = page_offset;
> + page->index = index + i;
> list_add(&page->lru, &page_pool);
> if (i == nr_to_read - lookahead_size)
> SetPageReadahead(page);
>


2020-02-24 21:37:48

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [PATCH v7 08/24] mm: Remove 'page_offset' from readahead loop

On Wed, Feb 19, 2020 at 01:00:47PM -0800, Matthew Wilcox wrote:
> From: "Matthew Wilcox (Oracle)" <[email protected]>
>
> Replace the page_offset variable with 'index + i'.
>
> Signed-off-by: Matthew Wilcox (Oracle) <[email protected]>

Looks good,

Reviewed-by: Christoph Hellwig <[email protected]>