projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
498ca3c
)
IB/mlx5: Fix Raw Packet QP event handler assignment
author
Majd Dibbiny
<
[email protected]
>
Wed, 23 Aug 2017 05:35:41 +0000
(08:35 +0300)
committer
Doug Ledford
<
[email protected]
>
Thu, 24 Aug 2017 19:33:33 +0000
(15:33 -0400)
In case we have SQ and RQ for Raw Packet QP, the SQ's event handler
wasn't assigned.
Fixing this by assigning event handler for each WQ after creation.
[ 1877.145243] Call Trace:
[ 1877.148644] <IRQ>
[ 1877.150580] [<
ffffffffa07987c5
>] ? mlx5_rsc_event+0x105/0x210 [mlx5_core]
[ 1877.159581] [<
ffffffffa0795bd7
>] ? mlx5_cq_event+0x57/0xd0 [mlx5_core]
[ 1877.167137] [<
ffffffffa079208e
>] mlx5_eq_int+0x53e/0x6c0 [mlx5_core]
[ 1877.174526] [<
ffffffff8101a679
>] ? sched_clock+0x9/0x10
[ 1877.180753] [<
ffffffff810f717e
>] handle_irq_event_percpu+0x3e/0x1e0
[ 1877.188014] [<
ffffffff810f735d
>] handle_irq_event+0x3d/0x60
[ 1877.194567] [<
ffffffff810f9fe7
>] handle_edge_irq+0x77/0x130
[ 1877.201129] [<
ffffffff81014c3f
>] handle_irq+0xbf/0x150
[ 1877.207244] [<
ffffffff815ed78a
>] ? atomic_notifier_call_chain+0x1a/0x20
[ 1877.214829] [<
ffffffff815f434f
>] do_IRQ+0x4f/0xf0
[ 1877.220498] [<
ffffffff815e94ad
>] common_interrupt+0x6d/0x6d
[ 1877.227025] <EOI>
[ 1877.228967] [<
ffffffff814834e2
>] ? cpuidle_enter_state+0x52/0xc0
[ 1877.236990] [<
ffffffff81483615
>] cpuidle_idle_call+0xc5/0x200
[ 1877.243676] [<
ffffffff8101bc7e
>] arch_cpu_idle+0xe/0x30
[ 1877.249831] [<
ffffffff810b4725
>] cpu_startup_entry+0xf5/0x290
[ 1877.256513] [<
ffffffff815cfee1
>] start_secondary+0x265/0x27b
[ 1877.263111] Code: Bad RIP value.
[ 1877.267296] RIP [< (null)>] (null)
[ 1877.273264] RSP <
ffff88046fd63df8
>
[ 1877.277531] CR2:
0000000000000000
Fixes: 19098df2da78 ("IB/mlx5: Refactor mlx5_ib_qp to accommodate other QP types")
Signed-off-by: Majd Dibbiny <
[email protected]
>
Reviewed-by: Yishai Hadas <
[email protected]
>
Signed-off-by: Leon Romanovsky <
[email protected]
>
Signed-off-by: Doug Ledford <
[email protected]
>
drivers/infiniband/hw/mlx5/qp.c
patch
|
blob
|
history
diff --git
a/drivers/infiniband/hw/mlx5/qp.c
b/drivers/infiniband/hw/mlx5/qp.c
index 0889ff367c8625f694346136c22bd510d2dea2a7..f58f8f5f3ebe10e8270606327b58440efd70aae3 100644
(file)
--- a/
drivers/infiniband/hw/mlx5/qp.c
+++ b/
drivers/infiniband/hw/mlx5/qp.c
@@
-1238,6
+1238,7
@@
static int create_raw_packet_qp(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
goto err_destroy_tis;
sq->base.container_mibqp = qp;
+ sq->base.mqp.event = mlx5_ib_qp_event;
}
if (qp->rq.wqe_cnt) {