• Majd Dibbiny's avatar
    IB/mlx5: Fix Raw Packet QP event handler assignment · 1d31e9c0
    Majd Dibbiny authored
    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: 19098df2 ("IB/mlx5: Refactor mlx5_ib_qp to accommodate other QP types")
    Signed-off-by: default avatarMajd Dibbiny <majd@mellanox.com>
    Reviewed-by: default avatarYishai Hadas <yishaih@mellanox.com>
    Signed-off-by: default avatarLeon Romanovsky <leon@kernel.org>
    Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
    1d31e9c0
qp.c 131 KB