Hi Raghava, On Tue, 2015-12-01 at 04:39 -0800, Raghava Aditya Renukunta wrote: > From: Raghava Aditya Renukunta <raghavaaditya.renukunta@xxxxxxxx> > > During EEH recovery number of online CPU's might change thereby changing > the number of MSIx vectors. Since each fib is allocated to a vector, > changes in the number of vectors causes fib to be sent thru invalid > vectors.In addition the correct number of MSIx vectors is not > updated in the INIT struct sent to the controller, when it is > reinitialized. > > Fixed by reassigning vectors to fibs based on the updated number of MSIx > vectors and updating the INIT structure before sending to controller. > [...] > - if (!dev->sync_mode) > + if (!dev->sync_mode) { > + /* After EEH recovery or suspend resume, max_msix count > + * may change, therfore updating in init as well. > + */ > aac_adapter_start(dev); > + dev->init->Sa_MSIXVectors = cpu_to_le32(dev->max_msix); > + } > return 0; > > error_iounmap: This is for EEH and suspend/resume isn't it? If it fixes MSI-X vector calculation for suspend/resume as well you probably should tag it for inclusion into stable as well. Thanks, Johannes -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html