From: Mitko Haralanov <mi...@qlogic.com> Fix a kernel panic on QME7342 (and any Mezz boards without QSFP connectors) caused by scheduling work on uninitialized workqueue introduced by 62066fc8df4632c772d723813ce7af456d62ddf7.
Signed-off-by: Mitko Haralanov <mi...@qlogic.com> Signed-off-by: Mike Marciniszyn <mike.marcinis...@qlogic.com> --- drivers/infiniband/hw/qib/qib_iba7322.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/infiniband/hw/qib/qib_iba7322.c b/drivers/infiniband/hw/qib/qib_iba7322.c index 62005c7..3e40cff 100644 --- a/drivers/infiniband/hw/qib/qib_iba7322.c +++ b/drivers/infiniband/hw/qib/qib_iba7322.c @@ -5285,8 +5285,10 @@ static int qib_7322_ib_updown(struct qib_pportdata *ppd, int ibup, u64 ibcs) qib_7322_mini_pcs_reset(ppd); /* schedule the qsfp refresh which should turn the link off */ - qd->t_insert = get_jiffies_64(); - schedule_work(&qd->work); + if (ppd->dd->flags & QIB_HAS_QSFP) { + qd->t_insert = get_jiffies_64(); + schedule_work(&qd->work); + } spin_lock_irqsave(&ppd->sdma_lock, flags); if (__qib_sdma_running(ppd)) __qib_sdma_process_event(ppd, -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html