From: David Howells Date: Mon, 31 Jan 2022 17:54:43 +0000 (+0000) Subject: cifs: Fix the readahead conversion to manage the batch when reading from cache X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=46f5cbdef7d4fbb0f857a3caddec6799d0b5bb2f;p=linux.git cifs: Fix the readahead conversion to manage the batch when reading from cache Fix the readahead conversion to correctly manage the last batch skipping when reading from cache. This involves a readahead batch of one page or one folio, so set the batch size according to the number of constituent pages (should be 1 for a filesystem that doesn't do multipage folios yet). Signed-off-by: David Howells cc: Steve French Reviewed-by: Rohith Surabattula Reviewed-by: Shyam Prasad N cc: Jeff Layton cc: linux-cifs@vger.kernel.org Signed-off-by: Steve French --- diff --git a/fs/cifs/file.c b/fs/cifs/file.c index a509126749153..e7af802dcfa60 100644 --- a/fs/cifs/file.c +++ b/fs/cifs/file.c @@ -4446,7 +4446,7 @@ static void cifs_readahead(struct readahead_control *ractl) * by the cache. */ page = readahead_page(ractl); - + last_batch_size = 1 << thp_order(page); if (cifs_readpage_from_fscache(ractl->mapping->host, page) < 0) { /*