]> www.infradead.org Git - users/hch/misc.git/commitdiff
net: dpaa_eth: print FD status in CPU endianness in dpaa_eth_fd tracepoint
authorVladimir Oltean <vladimir.oltean@nxp.com>
Tue, 29 Oct 2024 16:31:05 +0000 (18:31 +0200)
committerJakub Kicinski <kuba@kernel.org>
Fri, 1 Nov 2024 02:18:46 +0000 (19:18 -0700)
Sparse warns:

note: in included file (through ../include/trace/trace_events.h,
../include/trace/define_trace.h,
../drivers/net/ethernet/freescale/dpaa/dpaa_eth_trace.h):
warning: incorrect type in assignment (different base types)
   expected unsigned int [usertype] fd_status
   got restricted __be32 const [usertype] status

We take struct qm_fd :: status, store it and print it as an u32,
though it is a big endian field. We should print the FD status in
CPU endianness for ease of debug and consistency between PowerPC and
Arm systems.

Though it is a not often used debug feature, it is best to treat it as
a bug and backport the format change to all supported stable kernels,
for consistency.

Fixes: eb11ddf36eb8 ("dpaa_eth: add trace points")
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Acked-by: Madalin Bucur <madalin.bucur@oss.nxp.com>
Link: https://patch.msgid.link/20241029163105.44135-1-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/freescale/dpaa/dpaa_eth_trace.h

index 6f0e58a2a58ad4085eb51249bb609f2e1510dfe5..9e1d44ae92cceed59870ac47f64f273b3888c5b1 100644 (file)
@@ -56,7 +56,7 @@ DECLARE_EVENT_CLASS(dpaa_eth_fd,
                __entry->fd_format = qm_fd_get_format(fd);
                __entry->fd_offset = qm_fd_get_offset(fd);
                __entry->fd_length = qm_fd_get_length(fd);
-               __entry->fd_status = fd->status;
+               __entry->fd_status = __be32_to_cpu(fd->status);
                __assign_str(name);
        ),