Is the TASK-PID in trace-cmd output the TID of the thread handling TAP interface I/O?
1
vote
0
answers
87
views
I'm working on an networking lab tool leveraging
QEMU
-based VM virtualization and docker
technology to run VMs and containers respectively on a Linux host
. The underlying lab connectivity is implemented by using linux bridges
.
I have a linux Ubuntu guest
running inside a QEMU VM
that features a virtio-net
paravirualized interface with TAP
backend. Such TAP
interface is connected to a linux bridge's port
on the host.
root@eve-ng62-28:~# brctl show vnet0_3
bridge name bridge id STP enabled interfaces
vnet0_3 8000.d63b1f37e4ba no vnet0_9_2
vunl0_3_3
vunl0_7_0
vunl0_9_2
root@eve-ng62-28:~#
root@eve-ng62-28:~# ethtool -i vunl0_7_0
driver: tun
version: 1.6
firmware-version:
expansion-rom-version:
bus-info: tap
supports-statistics: no
supports-test: no
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: no
root@eve-ng62-28:~#
I'm using Linux ftrace
via trace-cmd
frontend to dig into some details, see also https://unix.stackexchange.com/questions/797717/tcp-checksum-offloading-on-virtio-net-paravirtualized-interfaces
root@eve-ng62-28:~# trace-cmd start -e net:netif_receive_skb_entry -f "name == 'vunl0_7_0'"
root@eve-ng62-28:~#
root@eve-ng62-28:~# trace-cmd show
# tracer: nop
#
# entries-in-buffer/entries-written: 1/1 #P:48
#
# _-----=> irqs-off/BH-disabled
# / _----=> need-resched
# | / _---=> hardirq/softirq
# || / _--=> preempt-depth
# ||| / _-=> migrate-disable
# |||| / delay
# TASK-PID CPU# ||||| TIMESTAMP FUNCTION
# | | | ||||| | |
qemu-system-x86-600348 b.... 66505.777999: netif_receive_skb_entry: dev=vunl0_7_0 napi_id=0x0 queue_mapping=1 skbaddr=0000000006a1cc35 vlan_tagged=0 vlan_proto=0x0000 vlan_tci=0x0000 protocol=0x0800 ip_summed=3 hash=0x00000000 l4_hash=0 len=60 data_len=0 truesize=768 mac_header_valid=1 mac_header=-14 nr_frags=0 gso_size=0 gso_type=0x0
As you can see, linux guest sends outgoing TCP
packets to the virtio-net
network interface setting CHECKSUM_PARTIAL(3)
tag in the ip_summed
field within sk_buff
struct.
My question is related to the TASK-PID
field shown by trace-cmd show
. 600348
is the PID
of the qemu-system-x86_64
process's instance associated to the VM.
As required I edit this to provide the question: is the TASK-PID
shown the PID
or TID
of the process/thread that is the context the TAP
driver runs into ?
Asked by CarloC
(385 rep)
Jul 9, 2025, 01:03 PM
Last activity: Jul 12, 2025, 07:42 PM
Last activity: Jul 12, 2025, 07:42 PM