[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240326192131.438648-6-johannes@sipsolutions.net>
Date: Tue, 26 Mar 2024 20:15:55 +0100
From: Johannes Berg <johannes@...solutions.net>
To: linux-kernel@...r.kernel.org
Cc: linux-trace-kernel@...r.kernel.org,
netdev@...r.kernel.org,
linux-wireless@...r.kernel.org
Subject: [RFC PATCH v2 0/4] tracing: improve symbolic printing
As I mentioned before, it's annoying to see this in dropreason tracing
with trace-cmd:
irq/65-iwlwifi:-401 [000] 22.790000: kfree_skb: skbaddr=0x6a89b000 protocol=0 location=ieee80211_rx_handlers_result+0x21a reason: 0x20000
and much nicer to see
irq/65-iwlwifi:-401 [000] 22.790000: kfree_skb: skbaddr=0x69142000 protocol=0 location=ieee80211_rx_handlers_result+0x21a reason: RX_DROP_MONITOR
The reason for this is that the __print_symbolic() string in tracing
for trace-cmd to parse it is created at build-time, from the long list
of _core_ drop reasons, but the drop reasons are now more dynamic.
So I came up with __print_sym() which is similar, except it doesn't
build the big list of numbers at build time but rather at runtime,
which is actually a big memory saving too. But building it then, at
the time userspace is recording it, lets us include all the known
reasons.
v2:
- rebased on 6.9-rc1
- always search for __print_sym() and get rid of the DYNPRINT flag
and associated code; I think ideally we'll just remove the older
__print_symbolic() entirely
- use ':' as the separator instead of "//" since that makes searching
for it much easier and it's still not a valid char in an identifier
- fix RCU
johannes
Powered by blists - more mailing lists