Re: [PATCH] netfs: Fix missing xas_retry() calls in xarray iteration

From: David Howells
Date: Fri Nov 04 2022 - 11:35:47 EST


Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:

> "unsigned int" assumes that the number of bytes isn't going to exceed 32
> bits. I tend to err on the side of safety here and use size_t.

Not unreasonable.

> > + pgpos = (folio_index(folio) - start_page) * PAGE_SIZE;
> > + pgend = pgpos + folio_size(folio);
>
> What happens if start_page is somewhere inside folio? Seems to me
> that pgend ends up overhanging into the next folio?

Yeah, I think my maths is dodgy. I should probably use folio_pos() and/or
offset_in_folio().

David