linux/include/trace/events
Kohei Enju 3bfcf39608 net: validate skb->napi_id in RX tracepoints
Since commit 2bd82484bb ("xps: fix xps for stacked devices"),
skb->napi_id shares storage with sender_cpu. RX tracepoints using
net_dev_rx_verbose_template read skb->napi_id directly and can therefore
report sender_cpu values as if they were NAPI IDs.

For example, on the loopback path this can report 1 as napi_id, where 1
comes from raw_smp_processor_id() + 1 in the XPS path:

  # bpftrace -e 'tracepoint:net:netif_rx_entry{ print(args->napi_id); }'
  # taskset -c 0 ping -c 1 ::1

Report only valid NAPI IDs in these tracepoints and use 0 otherwise.

Fixes: 2bd82484bb ("xps: fix xps for stacked devices")
Signed-off-by: Kohei Enju <kohei@enjuk.jp>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Jiayuan Chen <jiayuan.chen@linux.dev>
Link: https://patch.msgid.link/20260420105427.162816-1-kohei@enjuk.jp
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-04-22 20:15:50 -07:00
..
9p.h
afs.h afs: Add support for RENAME_NOREPLACE and RENAME_EXCHANGE 2025-09-25 09:19:07 +02:00
alarmtimer.h alarmtimer: Hide alarmtimer_suspend event when RTC_CLASS is not configured 2025-07-21 16:40:56 -04:00
amdxdna.h
asoc.h ASoC: asoc.h: convert to snd_soc_dapm_xxx() 2025-11-17 00:14:25 +00:00
avc.h
bcache.h
block.h block: fix blk_zone_append_update_request_bio() kernel-doc 2025-07-16 10:02:18 -06:00
bpf_test_run.h
bridge.h
btrfs.h btrfs: add tracepoint for search slot restart tracking 2026-04-07 18:56:00 +02:00
cachefiles.h cachefiles: widen trace event i_ino fields to u64 2026-03-06 14:31:27 +01:00
capability.h
ceph.h ceph: add trace points to the MDS client 2025-12-10 11:50:54 +01:00
cgroup.h cgroup: increase maximum subsystem count from 16 to 32 2026-02-01 06:34:15 -10:00
clk.h
cma.h mm/cma: add 'available count' and 'total count' to trace_cma_alloc_start 2025-09-13 16:55:15 -07:00
compaction.h
context_tracking.h
coredump.h coredump: add tracepoint for coredump events 2026-03-23 13:15:52 +01:00
cpuhp.h
csd.h
damon.h mm/damon/core: add trace point for damos stat per apply interval 2026-01-20 19:24:46 -08:00
devfreq.h
devlink.h devlink: add devlink_dev_driver_name() helper and use it in trace events 2026-03-14 13:08:49 -07:00
dlm.h
dma.h dma-mapping: Introduce DMA require coherency attribute 2026-03-20 12:05:36 +01:00
dma_buf.h dma-buf: add some tracepoints to debug. 2026-01-21 13:27:54 +01:00
dma_fence.h dma-fence: Add safe access helpers and document the rules 2025-06-13 08:26:49 +01:00
erofs.h erofs: clean up encoded map flags 2026-04-10 16:53:39 +08:00
error_report.h
exceptions.h
ext4.h ext4: fix signed format specifier in ext4_load_inode trace event 2026-03-06 14:31:29 +01:00
f2fs.h f2fs: widen trace event i_ino fields to u64 2026-03-06 14:31:28 +01:00
fib.h ipv4: Convert ->flowi4_tos to dscp_t. 2025-08-26 17:34:31 -07:00
fib6.h
filelock.h vfs: widen trace event i_ino fields to u64 2026-03-06 14:31:26 +01:00
filemap.h vfs: widen trace event i_ino fields to u64 2026-03-06 14:31:26 +01:00
firewire.h
firewire_ohci.h
fs_dax.h vfs: widen trace event i_ino fields to u64 2026-03-06 14:31:26 +01:00
fscache.h
fsi.h
fsi_master_aspeed.h
fsi_master_ast_cf.h
fsi_master_gpio.h
fsi_master_i2cr.h
fsverity.h vfs: widen trace event i_ino fields to u64 2026-03-06 14:31:26 +01:00
gpio.h
gpu_mem.h
habanalabs.h accel/habanalabs: fix typo in trace output (cms -> cmd) 2025-09-25 09:09:28 +03:00
handshake.h
host1x.h
huge_memory.h mm/khugepaged: map dirty/writeback pages failures to EAGAIN 2026-01-26 20:02:12 -08:00
hugetlbfs.h hugetlbfs: widen trace event i_ino fields to u64 2026-03-06 14:31:27 +01:00
hw_pressure.h
hwmon.h hwmon: Introduce 64-bit energy attribute support 2025-09-07 16:33:48 -07:00
i2c.h
i2c_slave.h
ib_mad.h
ib_umad.h
icmp.h
initcall.h
intel-sst.h
intel_ifs.h
intel_ish.h
io_uring.h io_uring/trace: rename io_uring_queue_async_work event "rw" field 2025-12-04 07:18:02 -07:00
iocost.h
iommu.h
ipi.h tracing: arm: arm64: Hide trace events ipi_raise, ipi_entry and ipi_exit 2025-07-23 14:58:55 -04:00
irq.h
irq_matrix.h
iscsi.h
jbd2.h
kmem.h mm/tracing: rss_stat: ensure curr is false from kthread context 2026-02-24 11:13:27 -08:00
ksm.h
kvm.h LoongArch: KVM: Move kvm_iocsr tracepoint out of generic code 2025-09-23 23:37:26 +08:00
kyber.h
libata.h
lock.h
maple_tree.h
mce.h
mctp.h
mdio.h
memcg.h
memory-failure.h mm/memory-failure: remove the selection of RAS 2025-11-24 15:08:55 -08:00
migrate.h
mlxsw.h
mmap.h mm: remove unused mmap tracepoints 2025-07-09 22:41:55 -07:00
mmap_lock.h
mmc.h
mmflags.h mm: introduce VM_MAYBE_GUARD and make visible in /proc/$pid/smaps 2025-11-20 13:43:58 -08:00
module.h
mptcp.h mptcp: better mptcp-level RTT estimator 2026-04-08 19:32:00 -07:00
napi.h
nbd.h
neigh.h
net.h net: validate skb->napi_id in RX tracepoints 2026-04-22 20:15:50 -07:00
net_probe_common.h
netfs.h vfs-7.1-rc1.kino 2026-04-13 12:19:01 -07:00
netlink.h
nilfs2.h nilfs2: widen trace event i_ino fields to u64 2026-03-06 14:31:28 +01:00
nmi.h
notifier.h
objagg.h
oom.h
osnoise.h
page_isolation.h
page_pool.h
page_ref.h mm: introduce memdesc_flags_t 2025-09-13 16:55:07 -07:00
pagemap.h
pci.h PCI: trace: Add RAS tracepoint to monitor link speed changes 2025-12-23 16:06:00 -06:00
percpu.h
power.h PM: Introduce new PMSG_POWEROFF event 2025-11-14 17:05:53 +01:00
power_cpu_migrate.h
preemptirq.h
printk.h
pwc.h
pwm.h
qdisc.h net: sched: introduce qdisc-specific drop reason tracing 2026-02-28 15:31:34 -08:00
qla.h
qrtr.h
rcu.h
rdma_core.h
readahead.h vfs: widen trace event i_ino fields to u64 2026-03-06 14:31:26 +01:00
regulator.h
rpcgss.h
rpcrdma.h
rpm.h
rseq.h rseq: Cache CPU ID and MM CID values 2025-11-04 08:32:14 +01:00
rtc.h
rust_sample.h
rwmmio.h
rxrpc.h rxrpc: Fix to request an ack if window is limited 2026-04-08 18:44:33 -07:00
sched.h tracing changes for 6.17 2025-08-01 10:29:36 -07:00
sched_ext.h sched_ext: Implement load balancer for bypass mode 2025-11-12 06:43:44 -10:00
scmi.h include: trace: Add tracepoint support for inflight xfer count 2025-07-03 16:18:09 +01:00
scsi.h scsi: trace: Show rtn in string for scsi_dispatch_cmd_error() 2025-06-09 21:59:07 -04:00
sctp.h
signal.h
siox.h
skb.h
smbus.h
sock.h
sof.h
sof_intel.h
spi-mem.h spi: spi-mem: Trace exec_op 2025-10-27 11:10:50 +00:00
spi.h
spmi.h
sunrpc.h sunrpc: remove SVC_SYSERR 2025-07-14 12:46:48 -04:00
sunvnet.h
swiotlb.h
syscalls.h
target.h
task.h tracing: Revert "tracing: Remove pid in task_rename tracing output" 2026-03-21 16:41:18 -04:00
tcp.h tcp: preserve const qualifier in tcp_rsk() and inet_rsk() 2026-01-21 19:20:04 -08:00
tegra_apb_dma.h
thp.h powerpc/thp: tracing: Hide hugepage events under CONFIG_PPC_BOOK3S_64 2025-07-25 08:58:07 -04:00
timer.h hrtimer: Drop unnecessary pointer indirection in hrtimer_expire_entry event 2026-03-12 12:15:55 +01:00
timer_migration.h timers/migration: Rename 'online' bit to 'available' 2025-11-20 20:17:31 +01:00
timestamp.h vfs: widen trace event i_ino fields to u64 2026-03-06 14:31:26 +01:00
tlb.h x86/mm/tlb/trace: Export the TLB_REMOTE_WRONG_CPU enum in <trace/events/tlb.h> 2025-12-13 11:01:16 +01:00
tsm_mr.h
udp.h
v4l2.h
vb2.h
vmalloc.h
vmscan.h mm/vmscan: add tracepoint and reason for kswapd_failures reset 2026-01-31 14:22:38 -08:00
vsock_virtio_transport_common.h
watchdog.h
wbt.h
workqueue.h
writeback.h vfs: widen trace event i_ino fields to u64 2026-03-06 14:31:26 +01:00
xdp.h xdp: tracing: Hide some xdp events under CONFIG_BPF_SYSCALL 2025-06-12 19:36:53 -07:00
xen.h