> -----Original Message----- > From: Ming Lei [mailto:[email protected]] > Sent: Tuesday, March 13, 2018 3:13 PM > To: James Bottomley; Jens Axboe; Martin K . Petersen > Cc: Christoph Hellwig; [email protected]; linux- > [email protected]; Meelis Roos; Don Brace; Kashyap Desai; Laurence > Oberman; Mike Snitzer; Paolo Bonzini; Ming Lei; Hannes Reinecke; James > Bottomley; Artem Bityutskiy > Subject: [PATCH V5 2/5] scsi: megaraid_sas: fix selection of reply queue > > From 84676c1f21 (genirq/affinity: assign vectors to all possible CPUs), one > msix vector can be created without any online CPU mapped, then command > may be queued, and won't be notified after its completion. > > This patch setups mapping between cpu and reply queue according to irq > affinity info retrived by pci_irq_get_affinity(), and uses this info to choose > reply queue for queuing one command. > > Then the chosen reply queue has to be active, and fixes IO hang caused by > using inactive reply queue which doesn't have any online CPU mapped. > > Cc: Hannes Reinecke <[email protected]> > Cc: "Martin K. Petersen" <[email protected]>, > Cc: James Bottomley <[email protected]>, > Cc: Christoph Hellwig <[email protected]>, > Cc: Don Brace <[email protected]> > Cc: Kashyap Desai <[email protected]> > Cc: Laurence Oberman <[email protected]> > Cc: Mike Snitzer <[email protected]> > Cc: Meelis Roos <[email protected]> > Cc: Artem Bityutskiy <[email protected]> > Fixes: 84676c1f21e8 ("genirq/affinity: assign vectors to all possible CPUs") > Signed-off-by: Ming Lei <[email protected]>
Side note - For a max performance, your below proposed patch/series is required. Without below patch, performance is going to be dropped due to fewer reply queues are getting utilized one this particular patch is included. genirq/affinity: irq vector spread among online CPUs as far as possible Acked-by: Kashyap Desai <[email protected]> Tested-by: Kashyap Desai <[email protected]>

