Endianess conversion should not happen when writing out the string, instead convert proto endiannes when creating the trace point data, like its already done for control port rx. Without this patch, trace looks like: <...>-53819 [000] 12957.654875: rdev_tx_control_port: [FAILED TO PARSE] wiphy_name=phy0 name=wlan0 ifindex=3 dest=ARRAY[dc, 7b, 94, a5, bb, 3e] proto=36488 unencrypted=1 After applying this patch: wpa_supplicant-553 [001] 121.211264: rdev_tx_control_port: phy0, netdev:wlan0(3), dc:7b:94:a5:bb:3e, proto: 0x888e, unencrypted: true Fixes: 2576a9ace47e ("nl80211: Implement TX of control port frames") Signed-off-by: Markus Theil <markus.theil@xxxxxxxxxxxxx> --- net/wireless/trace.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/wireless/trace.h b/net/wireless/trace.h index 839df54cee21..8c974245c8e1 100644 --- a/net/wireless/trace.h +++ b/net/wireless/trace.h @@ -1959,13 +1959,13 @@ TRACE_EVENT(rdev_tx_control_port, WIPHY_ASSIGN; NETDEV_ASSIGN; MAC_ASSIGN(dest, dest); - __entry->proto = proto; + __entry->proto = be16_to_cpu(proto); __entry->unencrypted = unencrypted; ), TP_printk(WIPHY_PR_FMT ", " NETDEV_PR_FMT ", " MAC_PR_FMT "," " proto: 0x%x, unencrypted: %s", WIPHY_PR_ARG, NETDEV_PR_ARG, MAC_PR_ARG(dest), - be16_to_cpu(__entry->proto), + __entry->proto, BOOL_TO_STR(__entry->unencrypted)) ); -- 2.25.1