net/smc: use __aigned_u64 for 64-bit smc_diag fields
Subsystems (2)
PATCH 1/2 net/smc: use __aigned_u64 for 64-bit smc_diag fields
Commit v4.19-rc1~140^2~507^2~1 ("net/smc: add SMC-D diag support") introduced new UAPI-exposed structure, struct smcd_diag_dmbinfo. However, it's not usable by compat binaries, as it has different layout there. Probably, the most straightforward fix that will avoid the similar issues in the future is to use __aligned_u64 for 64-bit fields.
--- include/uapi/linux/smc_diag.h | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-)
include/uapi/linux/smc_diag.h +11 -11
@@ -18,14 +18,14 @@ struct smc_diag_req {* on the internal clcsock, and more SMC-related socket data */ struct smc_diag_msg { -__u8 diag_family; -__u8 diag_state; -__u8 diag_mode; -__u8 diag_shutdown; +__u8 diag_family; +__u8 diag_state; +__u8 diag_mode; +__u8 diag_shutdown;struct inet_diag_sockid id; -__u32 diag_uid; -__u64 diag_inode; +__u32 diag_uid; +__aligned_u64 diag_inode; };/* Mode of a connection */
@@ -99,11 +99,11 @@ struct smc_diag_fallback { };struct smcd_diag_dmbinfo {/* SMC-D Socket internals */ -__u32 linkid;/* Link identifier */ -__u64 peer_gid;/* Peer GID */ -__u64 my_gid;/* My GID */ -__u64 token;/* Token of DMB */ -__u64 peer_token;/* Token of remote DMBE */ +__u32 linkid;/* Link identifier */ +__aligned_u64 peer_gid;/* Peer GID */ +__aligned_u64 my_gid;/* My GID */ +__aligned_u64 token;/* Token of DMB */ +__aligned_u64 peer_token;/* Token of remote DMBE */ };#endif /* _UAPI_SMC_DIAG_H_ */
Signature · 1 line
2.1.4
Hello!
Quoted 1 line · Eugene Syromiatnikov
Commit v4.19-rc1~140^2~507^2~1 ("net/smc: add SMC-D diag support")
You have the SHA1 below in the "Fixes:" tag, need the same 12 digits here.
Quoted 8 lines
introduced new UAPI-exposed structure, struct
smcd_diag_dmbinfo. However, it's not usable by compat binaries, as it has different layout there. Probably, the most straightforward fix that will avoid the similar issues in the future is to use__aligned_u64for 64-bit fields.Fixes 4b1b7d3b30a6 ("net/smc: add SMC-D diag support")Signed-off-by Eugene Syromiatnikov <[email protected]>
[...]
MBR, Sergei