Hello Ben, > -----Original Message----- > From: Ben Hutchings [mailto:ben@xxxxxxxxxxxxxxx] > Sent: Monday, April 11, 2016 5:29 PM > To: Raghava Aditya Renukunta > Cc: stable@xxxxxxxxxxxxxxx; Shane Seymour; Johannes Thumshirn; Martin K. > Petersen; Greg Kroah-Hartman; LKML > Subject: Re: [PATCH 4.5 036/238] aacraid: Set correct msix count for EEH > recovery > > On Sun, 2016-04-10 at 11:33 -0700, Greg Kroah-Hartman wrote: > > 4.5-stable review patch. If anyone has any objections, please let me know. > > > > ------------------ > > > > From: Raghava Aditya Renukunta <raghavaaditya.renukunta@xxxxxxxx> > > > > commit ecc479e00db8eb110b200afe1effcb3df20ca7ae upstream. > > > > 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. > > Really? > > [...] > > --- a/drivers/scsi/aacraid/linit.c > > +++ b/drivers/scsi/aacraid/linit.c > > @@ -1404,8 +1404,18 @@ static int aac_acquire_resources(struct > > > > aac_adapter_enable_int(dev); > > > > - if (!dev->sync_mode) > > + /*max msix may change after EEH > > + * Re-assign vectors to fibs > > + */ > > + aac_fib_vector_assign(dev); > > + > > + 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); > > Aren't these two lines in the wrong order? > > Ben. You are right those are two lines are in the wrong order, I will submit another patch to correct that issue. Raghava > > > + } > > return 0; > > > > error_iounmap: > -- > Ben Hutchings > This sentence contradicts itself - no actually it doesn't. ��.n��������+%������w��{.n�����������ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f