mirror-linux/drivers/infiniband/sw/rxe
Zhu Yanjun 3c3e9a9f29 RDMA/rxe: Flush delayed SKBs while releasing RXE resources
When skb packets are sent out, these skb packets still depends on
the rxe resources, for example, QP, sk, when these packets are
destroyed.

If these rxe resources are released when the skb packets are destroyed,
the call traces will appear.

To avoid skb packets hang too long time in some network devices,
a timestamp is added when these skb packets are created. If these
skb packets hang too long time in network devices, these network
devices can free these skb packets to release rxe resources.

Reported-by: syzbot+8425ccfb599521edb153@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=8425ccfb599521edb153
Tested-by: syzbot+8425ccfb599521edb153@syzkaller.appspotmail.com
Fixes: 1a633bdc8f ("RDMA/rxe: Let destroy qp succeed with stuck packet")
Signed-off-by: Zhu Yanjun <yanjun.zhu@linux.dev>
Link: https://patch.msgid.link/20250726013104.463570-1-yanjun.zhu@linux.dev
Signed-off-by: Leon Romanovsky <leon@kernel.org>
2025-08-13 06:20:00 -04:00
..
Kconfig RDMA/rxe: Remove 32-bit architecture support 2025-04-21 04:16:29 -04:00
Makefile RDMA/rxe: Add page invalidation support 2025-02-21 13:07:43 -04:00
rxe.c RDMA/rxe: Implement synchronous prefetch for ODP MRs 2025-06-12 04:07:04 -04:00
rxe.h RDMA/rxe: Move some code to rxe_loc.h in preparation for ODP 2025-02-21 13:07:43 -04:00
rxe_av.c
rxe_comp.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
rxe_cq.c RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug 2025-04-20 06:14:49 -04:00
rxe_hdr.h RDMA/rxe: Fix __bth_set_resv6a 2024-08-23 11:42:38 -03:00
rxe_hw_counters.c RDMA/rxe: Merge request and complete tasks 2024-04-22 16:54:33 -03:00
rxe_hw_counters.h RDMA/rxe: Merge request and complete tasks 2024-04-22 16:54:33 -03:00
rxe_icrc.c RDMA/rxe: switch to using the crc32 library 2025-02-09 04:20:10 -05:00
rxe_loc.h RDMA/rxe: Implement synchronous prefetch for ODP MRs 2025-06-12 04:07:04 -04:00
rxe_mcast.c RDMA/rxe: Remove the direct link to net_device 2024-12-24 04:36:40 -05:00
rxe_mmap.c
rxe_mr.c Linux 6.15 2025-05-26 15:33:52 -03:00
rxe_mw.c RDMA/rxe: Improve newline in printing messages 2024-01-25 11:49:50 +02:00
rxe_net.c RDMA/rxe: Flush delayed SKBs while releasing RXE resources 2025-08-13 06:20:00 -04:00
rxe_net.h
rxe_odp.c RDMA/rxe: Fix a couple IS_ERR() vs NULL bugs 2025-06-26 05:19:56 -04:00
rxe_opcode.c
rxe_opcode.h
rxe_param.h RDMA/rxe: Remove 32-bit architecture support 2025-04-21 04:16:29 -04:00
rxe_pool.c RDMA/rxe: Fix the warning "__rxe_cleanup+0x12c/0x170 [rdma_rxe]" 2025-01-14 06:43:53 -05:00
rxe_pool.h
rxe_qp.c RDMA/rxe: Flush delayed SKBs while releasing RXE resources 2025-08-13 06:20:00 -04:00
rxe_queue.c
rxe_queue.h
rxe_recv.c
rxe_req.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
rxe_resp.c Linux 6.15 2025-05-26 15:33:52 -03:00
rxe_srq.c RDMA/rxe: Fix rxe_modify_srq 2023-07-31 15:24:12 -03:00
rxe_task.c RDMA/rxe: Remove unused rxe_run_task 2025-04-20 11:27:39 -04:00
rxe_task.h RDMA/rxe: Remove unused rxe_run_task 2025-04-20 11:27:39 -04:00
rxe_verbs.c RDMA v6.17 merge window pull request 2025-07-31 12:19:55 -07:00
rxe_verbs.h RDMA/rxe: Move some code to rxe_loc.h in preparation for ODP 2025-02-21 13:07:43 -04:00