mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 06:44:00 -04:00
net: change sock.sk_ino and sock_i_ino() to u64
inode->i_ino is being converted to a u64. sock.sk_ino (which caches the inode number) must also be widened to avoid truncation on 32-bit architectures where unsigned long is only 32 bits. Change sk_ino from unsigned long to u64, and update the return type of sock_i_ino() to match. Fix all format strings that print the result of sock_i_ino() (%lu -> %llu), and widen the intermediate variables and function parameters in the diag modules that were using int to hold the inode number. Note that the UAPI socket diag structures (inet_diag_msg.idiag_inode, unix_diag_msg.udiag_ino, etc.) are all __u32 and cannot be changed without breaking the ABI. The assignments to those fields will silently truncate, which is the existing behavior. Acked-by: Marc Kleine-Budde <mkl@pengutronix.de> # for net/can Signed-off-by: Jeff Layton <jlayton@kernel.org> Link: https://patch.msgid.link/20260304-iino-u64-v3-3-2257ad83d372@kernel.org Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
committed by
Christian Brauner
parent
125dfa2181
commit
0fe27e5985
@@ -3537,7 +3537,7 @@ static int unix_seq_show(struct seq_file *seq, void *v)
|
||||
struct unix_sock *u = unix_sk(s);
|
||||
unix_state_lock(s);
|
||||
|
||||
seq_printf(seq, "%pK: %08X %08X %08X %04X %02X %5lu",
|
||||
seq_printf(seq, "%pK: %08X %08X %08X %04X %02X %5llu",
|
||||
s,
|
||||
refcount_read(&s->sk_refcnt),
|
||||
0,
|
||||
|
||||
Reference in New Issue
Block a user