On 2024-07-09 13:09 UTC, Pavel Begunkov wrote: > On 6/28/24 09:44, Chenliang Li wrote: >> +static bool io_try_coalesce_buffer(struct page ***pages, int *nr_pages, >> + struct io_imu_folio_data *data) > > I believe unused static function will trigger a warning, we don't > want that, especially since error on warn is a thing. > > You can either reshuffle patches or at least add a > __maybe_unused attribute. OK, will reshuffle the patchset. >> + /* >> + * Check if pages are contiguous inside a folio, and all folios have >> + * the same page count except for the head and tail. >> + */ >> + for (i = 1; i < *nr_pages; i++) { >> + if (page_folio(page_array[i]) == folio && >> + page_array[i] == page_array[i-1] + 1) { >> + count++; >> + continue; >> + } > > Seems like the first and last folios can be not border aligned, > i.e. the first should end at the folio_size boundary, and the > last one should start at the beginning of the folio. > > Not really a bug, but we might get some problems with optimising > calculations down the road if we don't restrict it. Will add restrictions for that. Thanks, Chenliang Li