mptfusion: mptctl panic when loading
Subsystems (2)
PATCH 3/9 mptfusion: mptctl panic when loading
Fix panic for when mptctl is loading at the same time when one of the fusion llds (mptsas/mptfc/mptspi) is loading.
Signed-off-by Eric Moore <[email protected]>
drivers/message/fusion/mptbase.c +6 -6
@@ -678,19 +678,19 @@ int mpt_device_driver_register(struct mpt_pci_driver * dd_cbfunc, int cb_idx) {MPT_ADAPTER *ioc; +const struct pci_device_id *id; -if (cb_idx <1 || cb_idx >=MPT_MAX_PROTOCOL_DRIVERS ) { +if (cb_idx <1 || cb_idx >=MPT_MAX_PROTOCOL_DRIVERS )return -EINVAL ; - } MptDeviceDriverHandlers[cb_idx] = dd_cbfunc;/* call per pci device probe entry point */ list_for_each_entry (ioc, &ioc_list, list) { -if (dd_cbfunc->probe) { - dd_cbfunc->probe (ioc->pcidev, - ioc->pcidev->driver->id_table); - } + id = ioc->pcidev->driver ? + ioc->pcidev->driver->id_table :NULL ; +if (dd_cbfunc->probe) + dd_cbfunc->probe (ioc->pcidev, id); }return 0 ;