> -----Original Message----- > From: Ming Lei [mailto:ming.lei@xxxxxxxxxx] > Sent: Tuesday, March 13, 2018 3:13 PM > To: James Bottomley; Jens Axboe; Martin K . Petersen > Cc: Christoph Hellwig; linux-scsi@xxxxxxxxxxxxxxx; linux- > block@xxxxxxxxxxxxxxx; 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 <hare@xxxxxxx> > Cc: "Martin K. Petersen" <martin.petersen@xxxxxxxxxx>, > Cc: James Bottomley <james.bottomley@xxxxxxxxxxxxxxxxxxxxx>, > Cc: Christoph Hellwig <hch@xxxxxx>, > Cc: Don Brace <don.brace@xxxxxxxxxxxxx> > Cc: Kashyap Desai <kashyap.desai@xxxxxxxxxxxx> > Cc: Laurence Oberman <loberman@xxxxxxxxxx> > Cc: Mike Snitzer <snitzer@xxxxxxxxxx> > Cc: Meelis Roos <mroos@xxxxxxxx> > Cc: Artem Bityutskiy <artem.bityutskiy@xxxxxxxxx> > Fixes: 84676c1f21e8 ("genirq/affinity: assign vectors to all possible CPUs") > Signed-off-by: Ming Lei <ming.lei@xxxxxxxxxx> 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 <kashyap.desai@xxxxxxxxxxxx> Tested-by: Kashyap Desai <kashyap.desai@xxxxxxxxxxxx>