mirror-linux/tools/include/uapi/linux
Samiullah Khawaja c18d4b190a net: Extend NAPI threaded polling to allow kthread based busy polling
Add a new state NAPI_STATE_THREADED_BUSY_POLL to the NAPI state enum to
enable and disable threaded busy polling.

When threaded busy polling is enabled for a NAPI, enable
NAPI_STATE_THREADED also.

When the threaded NAPI is scheduled, set NAPI_STATE_IN_BUSY_POLL to
signal napi_complete_done not to rearm interrupts.

Whenever NAPI_STATE_THREADED_BUSY_POLL is unset, the
NAPI_STATE_IN_BUSY_POLL will be unset, napi_complete_done unsets the
NAPI_STATE_SCHED_THREADED bit also, which in turn will make the kthread
go to sleep.

Signed-off-by: Samiullah Khawaja <skhawaja@google.com>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Acked-by: Martin Karsten <mkarsten@uwaterloo.ca>
Tested-by: Martin Karsten <mkarsten@uwaterloo.ca>
Link: https://patch.msgid.link/20251028203007.575686-2-skhawaja@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-11-03 18:11:40 -08:00
..
tc_act
bits.h uapi: bitops: use UAPI-safe variant of BITS_PER_LONG again (2) 2025-07-08 10:23:13 -04:00
bpf.h bpf: Introduce SK_BPF_BYPASS_PROT_MEM. 2025-10-16 12:04:47 -07:00
bpf_common.h
bpf_perf_event.h
btf.h docs/bpf: Document the semantics of BTF tags with kind_flag 2025-02-05 16:17:59 -08:00
const.h treewide: fix typo 'unsigned __init128' -> 'unsigned __int128' 2025-03-05 12:00:03 -05:00
coredump.h tools: add coredump.h header 2025-06-12 14:00:32 +02:00
elf.h tools/include: Add uapi/linux/elf.h 2025-03-03 20:00:12 +01:00
erspan.h
fadvise.h
fanotify.h selftests/fs/mount-notify: build with tools include dir 2025-05-12 11:40:12 +02:00
filter.h
fs.h tools headers UAPI: sync linux/fs.h with the kernel sources 2025-05-11 17:48:16 -07:00
fscrypt.h tools headers: Update the fs headers with the kernel sources 2025-06-16 14:05:10 -03:00
genetlink.h tools include: Add headers to make tools builds more hermetic 2025-10-02 15:13:19 -03:00
hw_breakpoint.h
if_addr.h tools include: Add headers to make tools builds more hermetic 2025-10-02 15:13:19 -03:00
if_link.h netkit: Allow for configuring needed_{head,tail}room 2025-01-06 09:48:49 +01:00
if_tun.h
if_xdp.h net: xsk: introduce XDP_MAX_TX_SKB_BUDGET setsockopt 2025-07-10 14:48:29 +02:00
in.h tools headers: Update the socket headers with the kernel sources 2025-04-10 09:28:24 -07:00
io_uring.h
kcmp.h
kvm.h tools headers: Sync KVM headers with the kernel source 2025-08-18 11:52:22 -07:00
memfd.h
mman.h
mount.h selftests/fs/statmount: build with tools include dir 2025-05-12 11:40:12 +02:00
neighbour.h tools include: Add headers to make tools builds more hermetic 2025-10-02 15:13:19 -03:00
netdev.h net: Extend NAPI threaded polling to allow kthread based busy polling 2025-11-03 18:11:40 -08:00
netfilter.h tools include: Add headers to make tools builds more hermetic 2025-10-02 15:13:19 -03:00
netfilter_arp.h tools include: Add headers to make tools builds more hermetic 2025-10-02 15:13:19 -03:00
netlink.h
nsfs.h tools: update nsfs.h uapi header 2025-09-19 14:26:16 +02:00
perf_event.h perf/uapi: Clean up <uapi/linux/perf_event.h> a bit 2025-05-22 11:03:41 +02:00
pkt_cls.h
pkt_sched.h
prctl.h Updates for the generic entry code: 2025-07-29 15:14:29 -07:00
rtnetlink.h tools include: Add headers to make tools builds more hermetic 2025-10-02 15:13:19 -03:00
seccomp.h
seg6.h
seg6_local.h
stat.h tools headers: Update the fs headers with the kernel sources 2025-06-16 14:05:10 -03:00
stddef.h stddef: make __struct_group() UAPI C++-friendly 2024-12-20 09:05:53 -08:00
tcp.h
tls.h
types.h tools/include: make uapi/linux/types.h usable from assembly 2025-04-06 12:55:31 -07:00
userfaultfd.h