Thread (3 messages) 3 messages, 3 authors, 2025-08-29

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

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
quoted hunk ↗ jump to hunk
---
 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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help