net/wireless/trace.h
Source file repositories/reference/linux-study-clean/net/wireless/trace.h
File Facts
- System
- Linux kernel
- Corpus path
net/wireless/trace.h- Extension
.h- Size
- 123545 bytes
- Lines
- 4415
- Domain
- Networking Core
- Bucket
- Sockets, Protocols, Packet Path, And Network Policy
- Inferred role
- Networking Core: implementation source
- Status
- source implementation candidate
Why This File Exists
Networking stack implementation surface: socket APIs, protocol dispatch, packet flow, routing, filtering, and network namespaces.
- Networking stack implementation surface: socket APIs, protocol dispatch, packet flow, routing, filtering, and network namespaces.
- Touches IRQ or DMA behavior; this matters for the representative real-device path.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/tracepoint.hlinux/rtnetlink.hlinux/etherdevice.hnet/cfg80211.hcore.htrace/define_trace.h
Detected Declarations
function __fieldfunction __fieldfunction __arrayfunction __field
Annotated Snippet
if (chan) { \
__entry->band = chan->band; \
__entry->center_freq = chan->center_freq; \
__entry->freq_offset = chan->freq_offset; \
} else { \
__entry->band = 0; \
__entry->center_freq = 0; \
__entry->freq_offset = 0; \
} \
} while (0)
#define CHAN_PR_FMT "band: %d, freq: %u.%03u"
#define CHAN_PR_ARG __entry->band, __entry->center_freq, __entry->freq_offset
#define CHAN_DEF_ENTRY __field(enum nl80211_band, band) \
__field(u32, control_freq) \
__field(u32, freq_offset) \
__field(u32, width) \
__field(u32, center_freq1) \
__field(u32, freq1_offset) \
__field(u32, center_freq2) \
__field(u16, punctured) \
__field(u32, npca_pri_freq) \
__field(u16, npca_punctured)
#define CHAN_DEF_ASSIGN(chandef) \
do { \
if ((chandef) && (chandef)->chan) { \
__entry->band = (chandef)->chan->band; \
__entry->control_freq = \
(chandef)->chan->center_freq; \
__entry->freq_offset = \
(chandef)->chan->freq_offset; \
__entry->width = (chandef)->width; \
__entry->center_freq1 = (chandef)->center_freq1;\
__entry->freq1_offset = (chandef)->freq1_offset;\
__entry->center_freq2 = (chandef)->center_freq2;\
__entry->punctured = (chandef)->punctured; \
__entry->npca_pri_freq = \
(chandef)->npca_chan ? \
(chandef)->npca_chan->center_freq : 0; \
__entry->npca_punctured = \
(chandef)->npca_punctured; \
} else { \
__entry->band = 0; \
__entry->control_freq = 0; \
__entry->freq_offset = 0; \
__entry->width = 0; \
__entry->center_freq1 = 0; \
__entry->freq1_offset = 0; \
__entry->center_freq2 = 0; \
__entry->punctured = 0; \
__entry->npca_pri_freq = 0; \
__entry->npca_punctured = 0; \
} \
} while (0)
#define CHAN_DEF_PR_FMT \
"band: %d, control freq: %u.%03u, width: %d, cf1: %u.%03u, cf2: %u, punct: 0x%x, npca:%u, npca_punct:0x%x"
#define CHAN_DEF_PR_ARG __entry->band, __entry->control_freq, \
__entry->freq_offset, __entry->width, \
__entry->center_freq1, __entry->freq1_offset, \
__entry->center_freq2, __entry->punctured, \
__entry->npca_pri_freq, __entry->npca_punctured
#define FILS_AAD_ASSIGN(fa) \
do { \
if (fa) { \
ether_addr_copy(__entry->macaddr, fa->macaddr); \
__entry->kek_len = fa->kek_len; \
} else { \
eth_zero_addr(__entry->macaddr); \
__entry->kek_len = 0; \
} \
} while (0)
#define FILS_AAD_PR_FMT \
"macaddr: %pM, kek_len: %d"
#define SINFO_ENTRY __field(int, generation) \
__field(u32, connected_time) \
__field(u32, inactive_time) \
__field(u32, rx_bytes) \
__field(u32, tx_bytes) \
__field(u32, rx_packets) \
__field(u32, tx_packets) \
__field(u32, tx_retries) \
__field(u32, tx_failed) \
__field(u32, rx_dropped_misc) \
__field(u32, beacon_loss_count) \
__field(u16, llid) \
__field(u16, plid) \
__field(u8, plink_state)
#define SINFO_ASSIGN \
Annotation
- Immediate include surface: `linux/tracepoint.h`, `linux/rtnetlink.h`, `linux/etherdevice.h`, `net/cfg80211.h`, `core.h`, `trace/define_trace.h`.
- Detected declarations: `function __field`, `function __field`, `function __array`, `function __field`.
- Atlas domain: Networking Core / Sockets, Protocols, Packet Path, And Network Policy.
- Implementation status: source implementation candidate.
- IRQ or DMA behavior appears here, which is relevant to the selected PCIe/NVMe device path.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.