diff options
author | Eric Moore <eric.moore@lsil.com> | 2006-07-11 19:23:23 -0400 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-07-13 09:18:22 -0400 |
commit | d58b2725d28041ff9412fecb109bebf76b1a9b26 (patch) | |
tree | b0eafa2d64aeda3eab7111ab0730ce847529f875 /drivers/message/fusion/mptbase.c | |
parent | 786899b013cdf7aeb2aaaf7390c442f02bba24af (diff) |
[SCSI] 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 <Eric.Moore@lsil.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/message/fusion/mptbase.c')
-rw-r--r-- | drivers/message/fusion/mptbase.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c index 43308df64623..10def27c1af5 100644 --- a/drivers/message/fusion/mptbase.c +++ b/drivers/message/fusion/mptbase.c | |||
@@ -678,19 +678,19 @@ int | |||
678 | mpt_device_driver_register(struct mpt_pci_driver * dd_cbfunc, int cb_idx) | 678 | mpt_device_driver_register(struct mpt_pci_driver * dd_cbfunc, int cb_idx) |
679 | { | 679 | { |
680 | MPT_ADAPTER *ioc; | 680 | MPT_ADAPTER *ioc; |
681 | const struct pci_device_id *id; | ||
681 | 682 | ||
682 | if (cb_idx < 1 || cb_idx >= MPT_MAX_PROTOCOL_DRIVERS) { | 683 | if (cb_idx < 1 || cb_idx >= MPT_MAX_PROTOCOL_DRIVERS) |
683 | return -EINVAL; | 684 | return -EINVAL; |
684 | } | ||
685 | 685 | ||
686 | MptDeviceDriverHandlers[cb_idx] = dd_cbfunc; | 686 | MptDeviceDriverHandlers[cb_idx] = dd_cbfunc; |
687 | 687 | ||
688 | /* call per pci device probe entry point */ | 688 | /* call per pci device probe entry point */ |
689 | list_for_each_entry(ioc, &ioc_list, list) { | 689 | list_for_each_entry(ioc, &ioc_list, list) { |
690 | if(dd_cbfunc->probe) { | 690 | id = ioc->pcidev->driver ? |
691 | dd_cbfunc->probe(ioc->pcidev, | 691 | ioc->pcidev->driver->id_table : NULL; |
692 | ioc->pcidev->driver->id_table); | 692 | if (dd_cbfunc->probe) |
693 | } | 693 | dd_cbfunc->probe(ioc->pcidev, id); |
694 | } | 694 | } |
695 | 695 | ||
696 | return 0; | 696 | return 0; |