mptfusion: Proper bus_type check is added
Subsystems (2)
PATCH 5/12 mptfusion: Proper bus_type check is added
Added proper bus_type check before processing event/ reset handler.
Signed-off-by Kashyap Desai <[email protected]>
---
drivers/message/fusion/mptfc.c +4 -1
@@ -1352,6 +1352,9 @@ mptfc_event_process(MPT_ADAPTER *ioc, EventNotificationReply_t *pEvReply)unsigned long flags;int rc=1 ; +if (ioc->bus_type !=FC ) +return 0 ; +devtverboseprintk (ioc,printk (MYIOC_s_DEBUG_FMT"MPT event (=%02Xh) routed to SCSI host driver!\n" , ioc->name, event));
@@ -1390,7 +1393,7 @@ mptfc_ioc_reset(MPT_ADAPTER *ioc, int reset_phase)unsigned long flags; rc =mptscsih_ioc_reset (ioc,reset_phase); -if (rc ==0 ) +if ((ioc->bus_type !=FC ) || (!rc))return rc;
drivers/message/fusion/mptsas.c +3 -0
@@ -4778,6 +4778,9 @@ mptsas_event_process(MPT_ADAPTER *ioc, EventNotificationReply_t *reply)struct fw_event_work *fw_event;unsigned long delay; +if (ioc->bus_type !=SAS ) +return 0 ; +/* events turned off due to host reset or driver unloading */ if (ioc->fw_events_off)return 0 ;
drivers/message/fusion/mptspi.c +5 -0
@@ -1151,6 +1151,9 @@ mptspi_event_process(MPT_ADAPTER *ioc, EventNotificationReply_t *pEvReply)u8 event =le32_to_cpu (pEvReply->Event) &0xFF ;struct _MPT_SCSI_HOST *hd =shost_priv (ioc->sh); +if (ioc->bus_type !=SPI ) +return 0 ; +if (hd && event ==MPI_EVENT_INTEGRATED_RAID ) {int reason = (le32_to_cpu (pEvReply->Data[0 ]) &0x00FF0000 ) >>16 ;
@@ -1282,6 +1285,8 @@ mptspi_ioc_reset(MPT_ADAPTER *ioc, int reset_phase)int rc; rc =mptscsih_ioc_reset (ioc, reset_phase); +if ((ioc->bus_type !=SPI ) || (!rc)) +return rc;/* only try to do a renegotiation if we're properly set up * if we get an ioc fault on bringup, ioc->sh will be NULL */