On Tue, Aug 27, 2024 at 08:50:45AM +0200, Christoph Hellwig wrote: > While the FALLOC_FL_NO_HIDE_STALE value has been registered, it has > always been rejected by vfs_fallocate before making it into > blkdev_fallocate because it isn't in the supported mask. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> Yeah, I guess that never worked. Oh well. BLKDISCARD it is. Reviewed-by: Darrick J. Wong <djwong@xxxxxxxxxx> --D > --- > block/fops.c | 10 +--------- > 1 file changed, 1 insertion(+), 9 deletions(-) > > diff --git a/block/fops.c b/block/fops.c > index 9825c1713a49a9..7f48f03a62e9a8 100644 > --- a/block/fops.c > +++ b/block/fops.c > @@ -771,7 +771,7 @@ static ssize_t blkdev_read_iter(struct kiocb *iocb, struct iov_iter *to) > > #define BLKDEV_FALLOC_FL_SUPPORTED \ > (FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE | \ > - FALLOC_FL_ZERO_RANGE | FALLOC_FL_NO_HIDE_STALE) > + FALLOC_FL_ZERO_RANGE) > > static long blkdev_fallocate(struct file *file, int mode, loff_t start, > loff_t len) > @@ -830,14 +830,6 @@ static long blkdev_fallocate(struct file *file, int mode, loff_t start, > len >> SECTOR_SHIFT, GFP_KERNEL, > BLKDEV_ZERO_NOFALLBACK); > break; > - case FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE | FALLOC_FL_NO_HIDE_STALE: > - error = truncate_bdev_range(bdev, file_to_blk_mode(file), start, end); > - if (error) > - goto fail; > - > - error = blkdev_issue_discard(bdev, start >> SECTOR_SHIFT, > - len >> SECTOR_SHIFT, GFP_KERNEL); > - break; > default: > error = -EOPNOTSUPP; > } > -- > 2.43.0 > >