OpenCloudOS-Kernel/include
Maciej Fijalkowski ca2e1a6270 xsk: Mark napi_id on sendmsg()
When application runs in busy poll mode and does not receive a single
packet but only sends them, it is currently impossible to get into
napi_busy_loop() as napi_id is only marked on Rx side in xsk_rcv_check().
In there, napi_id is being taken from xdp_rxq_info carried by xdp_buff.
From Tx perspective, we do not have access to it. What we have handy is
the xsk pool.

Xsk pool works on a pool of internal xdp_buff wrappers called xdp_buff_xsk.
AF_XDP ZC enabled drivers call xp_set_rxq_info() so each of xdp_buff_xsk
has a valid pointer to xdp_rxq_info of underlying queue. Therefore, on Tx
side, napi_id can be pulled from xs->pool->heads[0].xdp.rxq->napi_id. Hide
this pointer chase under helper function, xsk_pool_get_napi_id().

Do this only for sockets working in ZC mode as otherwise rxq pointers would
not be initialized.

Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Magnus Karlsson <magnus.karlsson@intel.com>
Link: https://lore.kernel.org/bpf/20220707130842.49408-1-maciej.fijalkowski@intel.com
2022-07-14 22:45:34 +02:00
..
acpi cxl for 5.19 2022-05-27 21:24:19 -07:00
asm-generic kernel: add platform_has() infrastructure 2022-06-06 08:06:00 +02:00
clocksource pwm: Changes for v5.19-rc1 2022-06-01 10:49:11 -07:00
crypto
drm drm/ttm: fix bulk move handling v2 2022-06-14 11:15:19 +02:00
dt-bindings dt-bindings: net: pcs: add bindings for Renesas RZ/N1 MII converter 2022-06-27 11:37:55 +01:00
keys certs: Move load_certificate_list() to be with the asymmetric keys code 2022-06-21 16:05:06 +01:00
kunit
kvm
linux bpf, x86: fix freeing of not-finalized bpf_prog_pack 2022-07-12 17:33:22 -07:00
math-emu
media
memory
misc
net xsk: Mark napi_id on sendmsg() 2022-07-14 22:45:34 +02:00
pcmcia
ras
rdma RDMA/core: Fix typo in comment 2022-05-24 11:24:58 -03:00
scsi SCSI misc on 20220524 2022-05-25 19:09:48 -07:00
soc net: dsa: felix: keep reference on entire tc-taprio config 2022-06-30 21:18:15 -07:00
sound ASoC: Remove unused hw_write_t type 2022-06-24 16:21:41 +01:00
target SCSI misc on 20220524 2022-05-25 19:09:48 -07:00
trace Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2022-06-30 16:31:00 -07:00
uapi Merge https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next 2022-07-09 12:24:16 -07:00
ufs scsi: ufs: Split the drivers/scsi/ufs directory 2022-05-19 20:27:37 -04:00
vdso
video video: fbdev: radeon: Fix spelling typo in comment 2022-05-26 13:38:59 +02:00
xen arm/xen: Assign xen-grant DMA ops for xen-grant DMA devices 2022-06-06 16:07:30 +02:00