Re: [PATCH] fs: Replace offsetof() with struct_size() in ioctl_file_dedupe_range()
From: Jan Kara <jack@suse.cz>
Date: 2025-08-29 09:27:15
Also in:
linux-fsdevel, lkml
From: Jan Kara <jack@suse.cz>
Date: 2025-08-29 09:27:15
Also in:
linux-fsdevel, lkml
On Fri 29-08-25 17:15:10, Xichao Zhao wrote:
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 <redacted>
Indeed. Also with struct_size() it is more obvious what was the intention. Feel free to add: Reviewed-by: Jan Kara <jack@suse.cz> Honza
--- fs/ioctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)diff --git a/fs/ioctl.c b/fs/ioctl.c index 0248cb8db2d3..83d07218b6cd 100644 --- a/fs/ioctl.c +++ b/fs/ioctl.c@@ -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;-- 2.34.1
-- Jan Kara [off-list ref] SUSE Labs, CR