Shiraz Saleem
ead54ced63
RDMA/irdma: Fix drain SQ hang with no completion
SW generated completions for outstanding WRs posted on SQ
after QP is in error target the wrong CQ. This causes the
ib_drain_sq to hang with no completion.
Fix this to generate completions on the right CQ.
[ 863.969340] INFO: task kworker/u52:2:671 blocked for more than 122 seconds.
[ 863.979224] Not tainted 5.14.0-130.el9.x86_64 #1
[ 863.986588] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 863.996997] task:kworker/u52:2 state:D stack: 0 pid: 671 ppid: 2 flags:0x00004000
[ 864.007272] Workqueue: xprtiod xprt_autoclose [sunrpc]
[ 864.014056] Call Trace:
[ 864.017575] __schedule+0x206/0x580
[ 864.022296] schedule+0x43/0xa0
[ 864.026736] schedule_timeout+0x115/0x150
[ 864.032185] __wait_for_common+0x93/0x1d0
[ 864.037717] ? usleep_range_state+0x90/0x90
[ 864.043368] __ib_drain_sq+0xf6/0x170 [ib_core]
[ 864.049371] ? __rdma_block_iter_next+0x80/0x80 [ib_core]
[ 864.056240] ib_drain_sq+0x66/0x70 [ib_core]
[ 864.062003] rpcrdma_xprt_disconnect+0x82/0x3b0 [rpcrdma]
[ 864.069365] ? xprt_prepare_transmit+0x5d/0xc0 [sunrpc]
[ 864.076386] xprt_rdma_close+0xe/0x30 [rpcrdma]
[ 864.082593] xprt_autoclose+0x52/0x100 [sunrpc]
[ 864.088718] process_one_work+0x1e8/0x3c0
[ 864.094170] worker_thread+0x50/0x3b0
[ 864.099109] ? rescuer_thread+0x370/0x370
[ 864.104473] kthread+0x149/0x170
[ 864.109022] ? set_kthread_struct+0x40/0x40
[ 864.114713] ret_from_fork+0x22/0x30
Fixes: 81091d7696 ("RDMA/irdma: Add SW mechanism to generate completions on error")
Link: https://lore.kernel.org/r/20220824154358.117-1-shiraz.saleem@intel.com
Reported-by: Kamal Heib <kamalheib1@gmail.com>
Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
2022-08-28 12:43:37 +03:00
..
2022-08-08 11:31:40 -07:00
2022-08-11 13:26:09 -07:00
2022-07-28 15:09:23 +01:00
2022-08-05 16:32:45 -07:00
2022-08-06 16:38:17 -07:00
2022-08-08 20:51:59 -07:00
2022-08-04 11:31:20 -07:00
2022-08-14 09:28:54 -07:00
2022-08-04 12:12:54 -07:00
2022-08-04 12:12:54 -07:00
2022-08-06 17:05:21 -07:00
2022-08-04 18:40:08 -07:00
2022-08-11 14:41:52 -07:00
2022-08-04 19:30:35 -07:00
2022-08-08 14:29:00 -07:00
2022-08-08 14:29:00 -07:00
2022-08-02 17:45:14 -07:00
2022-08-05 16:11:38 -07:00
2022-07-17 17:14:30 -07:00
2022-08-08 14:29:00 -07:00
2022-08-04 19:30:35 -07:00
2022-08-03 19:52:08 -07:00
2022-08-06 16:38:17 -07:00
2022-07-28 22:21:54 -07:00
2022-08-06 15:04:48 -07:00
2022-08-04 18:34:05 -07:00
2022-08-11 19:12:15 -07:00
2022-08-04 18:19:14 -07:00
2022-07-18 11:19:02 +00:00
2022-08-10 06:37:01 -07:00
2022-07-16 21:47:44 -05:00
2022-08-05 10:07:23 -07:00
2022-08-11 23:02:52 +02:00
2022-08-02 11:17:00 -07:00
2022-07-19 09:42:11 +01:00
2022-08-28 12:43:37 +03:00
2022-08-11 09:23:08 -07:00
2022-07-15 17:56:31 +03:00
2022-08-07 17:52:35 -07:00
2022-08-06 15:04:48 -07:00
2022-08-08 11:36:21 -07:00
2022-07-20 22:06:30 +10:00
2022-08-08 10:19:40 -07:00
2022-08-11 19:46:48 -07:00
2022-08-08 14:29:00 -07:00
2022-08-08 14:29:00 -07:00
2022-08-04 19:41:09 -07:00
2022-08-06 10:25:16 -07:00
2022-08-05 16:32:45 -07:00
2022-08-04 19:41:09 -07:00
2022-08-05 14:13:45 -07:00
2022-08-16 16:20:52 +03:00
2022-08-09 17:54:03 -04:00
2022-08-12 09:50:34 -07:00
2022-08-13 13:37:36 -07:00
2022-08-04 12:12:54 -07:00
2022-08-12 18:39:43 -07:00
2022-08-03 17:49:38 +02:00
2022-08-05 09:58:58 -07:00
2022-08-13 14:00:45 -07:00
2022-08-12 07:17:38 -07:00
2022-08-04 19:30:35 -07:00
2022-08-10 11:01:44 -07:00
2022-08-12 09:50:34 -07:00
2022-07-22 17:23:45 -05:00
2022-08-12 09:37:33 -07:00
2022-08-02 11:17:00 -07:00
2022-08-04 12:12:54 -07:00
2022-08-04 12:12:54 -07:00
2022-08-04 18:13:19 -07:00
2022-08-12 09:50:34 -07:00
2022-08-05 10:02:33 -07:00
2022-07-16 23:08:47 -05:00
2022-08-09 00:56:41 +02:00
2022-08-13 13:41:48 -07:00
2022-08-13 13:41:48 -07:00
2022-08-08 14:29:00 -07:00
2022-08-06 10:19:51 -07:00
2022-08-06 16:38:17 -07:00
2022-08-04 12:01:42 -07:00
2022-08-13 13:41:48 -07:00
2022-08-08 14:23:37 -07:00
2022-08-04 11:41:28 -07:00
2022-08-08 11:31:40 -07:00
2022-08-13 13:41:48 -07:00
2022-08-08 11:31:40 -07:00
2022-08-11 10:00:36 -04:00
2022-08-08 14:33:41 -06:00
2022-08-12 09:50:34 -07:00
2022-08-08 11:31:40 -07:00
2022-08-04 11:05:48 -07:00
2022-08-12 09:50:34 -07:00
2022-08-08 15:04:04 -07:00
2022-08-14 09:28:54 -07:00
2022-08-04 12:01:42 -07:00