From: Darrick J. Wong Date: Mon, 29 Oct 2018 23:41:01 +0000 (+1100) Subject: vfs: skip zero-length dedupe requests X-Git-Tag: v4.20-rc1~23^2~22 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=9aae20500d9cd3e7d55d0536d359bdd1c869db89;p=users%2Fdwmw2%2Flinux.git vfs: skip zero-length dedupe requests Don't bother calling the filesystem for a zero-length dedupe request; we can return zero and exit. Signed-off-by: Darrick J. Wong Reviewed-by: Christoph Hellwig Reviewed-by: Amir Goldstein Signed-off-by: Dave Chinner --- diff --git a/fs/read_write.c b/fs/read_write.c index 0f0a6efdd502c..f5395d8da741e 100644 --- a/fs/read_write.c +++ b/fs/read_write.c @@ -2009,6 +2009,11 @@ int vfs_dedupe_file_range_one(struct file *src_file, loff_t src_pos, if (!dst_file->f_op->dedupe_file_range) goto out_drop_write; + if (len == 0) { + ret = 0; + goto out_drop_write; + } + ret = dst_file->f_op->dedupe_file_range(src_file, src_pos, dst_file, dst_pos, len); out_drop_write: