vfs: fix readahead(2) on block devices
authorReuben Hawkins <reubenhwk@gmail.com>
Tue, 3 Oct 2023 01:57:04 +0000 (20:57 -0500)
committerChristian Brauner <brauner@kernel.org>
Thu, 19 Oct 2023 09:02:49 +0000 (11:02 +0200)
commit7116c0af4b8414b2f19fdb366eea213cbd9d91c2
tree2c6d5d09ef34e68892ded8bdc76b00f27403aaed
parent50d910d27362d6809a0668f0f1cb5220bc7dc6a0
vfs: fix readahead(2) on block devices

Readahead was factored to call generic_fadvise.  That refactor added an
S_ISREG restriction which broke readahead on block devices.

In addition to S_ISREG, this change checks S_ISBLK to fix block device
readahead.  There is no change in behavior with any file type besides block
devices in this change.

Fixes: 3d8f7615319b ("vfs: implement readahead(2) using POSIX_FADV_WILLNEED")
Signed-off-by: Reuben Hawkins <reubenhwk@gmail.com>
Link: https://lore.kernel.org/r/20231003015704.2415-1-reubenhwk@gmail.com
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Christian Brauner <brauner@kernel.org>
mm/readahead.c