]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
fs: Replace offsetof() with struct_size() in ioctl_file_dedupe_range()
authorXichao Zhao <zhao.xichao@vivo.com>
Fri, 29 Aug 2025 09:15:10 +0000 (17:15 +0800)
committerChristian Brauner <brauner@kernel.org>
Fri, 29 Aug 2025 10:00:58 +0000 (12:00 +0200)
When dealing with structures containing flexible arrays, struct_size()
provides additional compile-time checks compared to offsetof(). This
enhances code robustness and reduces the risk of potential errors.

Signed-off-by: Xichao Zhao <zhao.xichao@vivo.com>
Link: https://lore.kernel.org/20250829091510.597858-1-zhao.xichao@vivo.com
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/ioctl.c

index 0248cb8db2d363c884cca82c06d2b9a9a6b26dbe..83d07218b6cd089742b8d797941f337cebd6b3c8 100644 (file)
@@ -426,7 +426,7 @@ static int ioctl_file_dedupe_range(struct file *file,
                goto out;
        }
 
-       size = offsetof(struct file_dedupe_range, info[count]);
+       size = struct_size(same, info, count);
        if (size > PAGE_SIZE) {
                ret = -ENOMEM;
                goto out;