linux/drivers/scsi/qla2xxx
Sawan Chandak b95b9452aa scsi: qla2xxx: Fix crash due to mismatch mumber of Q-pair creation for Multi queue
when driver is loaded with Multi Queue enabled, it was noticed that
there was one less queue pair created.

Following message would indicate this:

"No resources to create additional q pair."

The result of one less queue pair means that system can crash, if the
block mq layer thinks there is an extra hardware queue available, and
the driver will use a NULL ptr qpair in that instance.

Following stack trace is seen in one of the crash:

irq_create_affinity_masks+0x98/0x530
irq_create_affinity_masks+0x98/0x530
__pci_enable_msix+0x321/0x4e0
mutex_lock+0x12/0x40
pci_alloc_irq_vectors_affinity+0xb5/0x140
qla24xx_enable_msix+0x79/0x530 [qla2xxx]
qla2x00_request_irqs+0x61/0x2d0 [qla2xxx]
qla2x00_probe_one+0xc73/0x2390 [qla2xxx]
ida_simple_get+0x98/0x100
kernfs_next_descendant_post+0x40/0x50
local_pci_probe+0x45/0xa0
pci_device_probe+0xfc/0x140
driver_probe_device+0x2c5/0x470
__driver_attach+0xdd/0xe0
driver_probe_device+0x470/0x470
bus_for_each_dev+0x6c/0xc0
driver_attach+0x1e/0x20
bus_add_driver+0x45/0x270
driver_register+0x60/0xe0
__pci_register_driver+0x4c/0x50
qla2x00_module_init+0x1ce/0x21e [qla2xxx]

Cc: <stable@vger.kernel.org> # v4.10+
Signed-off-by: Sawan Chandak <sawan.chandak@cavium.com>
Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2017-05-24 21:55:50 -04:00
..
Kconfig qla2xxx: Change scsi host lookup method. 2017-03-18 17:28:37 -07:00
Makefile
qla_attr.c SCSI misc on 20170503 2017-05-04 12:19:44 -07:00
qla_bsg.c SCSI misc on 20170503 2017-05-04 12:19:44 -07:00
qla_bsg.h qla2xxx: Add bsg interface to support statistics counter reset. 2016-07-15 15:35:37 -04:00
qla_dbg.c scsi: qla2xxx: Fix ql_dump_buffer 2017-03-06 22:24:28 -05:00
qla_dbg.h qla2xxx: Improve T10-DIF/PI handling in driver. 2017-03-18 17:28:36 -07:00
qla_def.h scsi: qla2xxx: Fix crash due to mismatch mumber of Q-pair creation for Multi queue 2017-05-24 21:55:50 -04:00
qla_devtbl.h
qla_dfs.c qla2xxx: Add DebugFS node to display Port Database 2017-03-18 17:28:37 -07:00
qla_fw.h qla2xxx: Improve RSCN handling in driver 2017-02-09 00:39:02 -08:00
qla_gbl.h qla2xxx: Change scsi host lookup method. 2017-03-18 17:28:37 -07:00
qla_gs.c scsi: qla2xxx: Fix typo in driver 2017-04-04 20:13:57 -04:00
qla_init.c scsi: qla2xxx: Fix crash due to mismatch mumber of Q-pair creation for Multi queue 2017-05-24 21:55:50 -04:00
qla_inline.h qla2xxx: Simplify usage of SRB structure in driver 2017-02-09 00:39:03 -08:00
qla_iocb.c qla2xxx: Improve T10-DIF/PI handling in driver. 2017-03-18 17:28:36 -07:00
qla_isr.c scsi: qla2xxx: Fix recursive loop during target mode configuration for ISP25XX leaving system unresponsive 2017-05-24 21:55:50 -04:00
qla_mbx.c scsi: qla2xxx: Fix NULL pointer access due to redundant fc_host_port_name call 2017-05-24 21:55:50 -04:00
qla_mid.c qla2xxx: Allow vref count to timeout on vport delete. 2017-03-18 17:27:56 -07:00
qla_mr.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2017-03-02 14:52:05 -08:00
qla_mr.h qla2xxx: Adjust adapter reset routine to the changes in firmware specification for ISPFx00. 2014-05-19 13:31:03 +02:00
qla_nx.c qla2xxx: Move two arrays from header files to .c files 2017-01-17 11:26:41 -08:00
qla_nx.h qla2xxx: Move two arrays from header files to .c files 2017-01-17 11:26:41 -08:00
qla_nx2.c qla2xxx: Move two arrays from header files to .c files 2017-01-17 11:26:41 -08:00
qla_nx2.h qla2xxx: Move two arrays from header files to .c files 2017-01-17 11:26:41 -08:00
qla_os.c scsi: qla2xxx: don't disable a not previously enabled PCI device 2017-05-24 15:09:54 -04:00
qla_settings.h qla2xxx: Change copyright year to 2014 in all the source files. 2014-05-19 13:31:02 +02:00
qla_sup.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
qla_target.c qla2xxx: Fix delayed response to command for loop mode/direct connect. 2017-03-18 17:28:38 -07:00
qla_target.h qla2xxx: Add async new target notification 2017-03-18 17:28:37 -07:00
qla_tmpl.c qla2xxx: Include ATIO queue in firmware dump when in target mode 2017-01-17 11:26:53 -08:00
qla_tmpl.h qla2xxx: ISP27xx fwdump template error print simplification. 2014-09-25 14:25:02 +02:00
qla_version.h qla2xxx: Update driver version to 9.00.00.00-k 2017-03-18 17:28:38 -07:00
tcm_qla2xxx.c qla2xxx: Improve T10-DIF/PI handling in driver. 2017-03-18 17:28:36 -07:00
tcm_qla2xxx.h qla2xxx: Track I-T nexus as single fc_port struct 2017-02-08 23:34:07 -08:00