summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2014-05-19qla4xxx: Added new opcodes for 84XX Minidump templateTej Parkash
Updated driver with new opcode (RDDFE, RDMDIO and POLLWR) which are added with latest firmware minidump template Signed-off-by: Tej Parkash <tej.parkash@qlogic.com> Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla4xxx: Add support of 0xFF capture mask for minidumpTej Parkash
Signed-off-by: Tej Parkash <tej.parkash@qlogic.com> Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla4xxx: Change default capture to firmware defined capture maskTej Parkash
Signed-off-by: Tej Parkash <tej.parkash@qlogic.com> Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla4xxx: Do not wait for IO completion, after issuing stop_firmwareTej Parkash
Problem: iSCSI stop_firmware mailbox command is not completing outstanding IO. Solution: Do not wait for IO completion after issuing stop_firmware mailbox command Signed-off-by: Tej Parkash <tej.parkash@qlogic.com> Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19Update Maintainers for IBM Power 842, vscsi, and vfc driversNathan Fontenot
Update the MAINTAINERS file to indicate the current maintainers for the IBM Power 842 Compression driver, IBM Power Virtual SCSI driver and the IBM Power Virtual FC Driver. Signed-off-by: Nathan Fontenot <nfont@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Acked-by: Robert Jennings <rob@pochix.net> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19scsi/libiscsi: Fix static checker warning on bh lockingShlomo Pongratz
Commit 659743b "[SCSI] libiscsi: Reduce locking contention in fast path" introduced a new smatch warning on libiscsi.c "iscsi_xmit_task() warn: inconsistent returns bottom_half:: locked (1410 [(-61)]) unlocked (1425 [0], 1425 [s32min-(-1),1-s32max])", which we can eliminate by using non bh locking on the nested spin_lock call. Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Shlomo Pongratz <shlomop@mellanox.com> Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19fnic: fnic Control Path Trace UtilityHiral Shah
Fnic Ctlr Path Trace utility is a tracing functionality built directly into fnic driver to trace the control path frames like discovery, FLOGI request/reply, PLOGI request/reply, link event etc. It will be one trace file for all fnics. It will help us to debug and resolve the discovery and initialization related issues in more convenient way. This trace information includes time stamp, Host Number, Frame type, Frame Length and Frame. By default,64 pages are allocated but we can change the number of allocated pages by module parameter fnic_fc_trace_max_page. Each entry is of 256 byte and available entries are depends on allocated number of pages. We can turn on or off the fnic control path trace functionality by module paramter fc_trace_enable and/or reset the trace contain by module paramter fc_trace_clear. Signed-off-by: Hiral Shah <hishah@cisco.com> Signed-off-by: Sesidhar Baddela <sebaddel@cisco.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19fnic: Failing to queue aborts due to Q full cause terminate driver timeoutHiral Shah
In fnic abort handler, abort queuing can be failed when hardware queue is full. The command state is left as abort queued. The command with abort queued state will never be queued next time for abort or termiantion. Fix restores the command state in above case. Signed-off-by: Hiral Shah <hishah@cisco.com> Signed-off-by: Sesidhar Baddela <sebaddel@cisco.com> Signed-off-by: Narsimhulu Musini <nmusini@cisco.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19fnic: NoFIP solicitation frame in NONFIP mode and changed IO Throttle countHiral Shah
This patch contains following three minor fixes. 1) During Probe, fnic was sending FIP solicitation in Non FIP mode which is not expected, setting the internal fip state to Non FIP mode explicitly, avoids sending FIP frame. 2) When target goes offline, all outstanding IOs belong to the target will be terminated by driver, If the termination count is high, then it influences firmware responsiveness. To improve the responsiveness, default IO throttle count is reduced to 256. 3) Accessing Virtual Fabric Id (vfid) and fc_map of Fibre-Channel Forwarder(FCF) is invalid in fnic driver when Clear Virtual Link(CVL) is received prior to receiving flogi reject from switch. As CVL clears all FCFs. Signed-off-by: Hiral Shah <hishah@cisco.com> Signed-off-by: Sesidhar Baddela <sebaddel@cisco.com> Signed-off-by: Narsimhulu Musini <nmusini@cisco.com> Signed-off-by: Anantha Tungarakodi <atungara@cisco.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Update the driver version to 8.07.00.08-k.Saurav Kashyap
Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Remove wait for online from host reset handler.Chad Dupuis
This can block progress of the SCSI error handler thread and cause long I/O outages. Instead just fail immediately if another reset is going on or we are accessing flash memory. Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Do logins from a chip reset in DPC thread instead of the error ↵Chad Dupuis
handler thread. Attempting to do any logins from the SCSI reset handler can lead to a deadlock scenario if a rport times out and the FC transport layer. Move doing any port logins to the DPC thread so as not to impede the progress of the SCSI error handler thread and avoid deadlock situations. Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: ABTS cause double free of qla_tgt_cmd +.Quinn Tran
Fix double free problem within qla2xxx driver where current code prematurely free qla_tgt_cmd while firmware still has the command. When firmware release the command after abort, the code attempt a second free as part of command completion processing. When TCM start the free process, NULL pointer was hit. ------ WARNING: CPU: 8 PID: 43613 at lib/list_debug.c:62 __list_del_entry+0x82/0xd0() list_del corruption. next->prev should be ffff88082b5cfb08, but was 6b6b6b6b6b6b6b6b CPU: 8 PID: 43613 Comm: kworker/8:0 Tainted: GF W O 3.13.0-rc3-nab_t10dif+ #6 Hardware name: HP ProLiant DL380p Gen8, BIOS P70 08/20/2012 Workqueue: events cache_reap 000000000000003e ffff88081b2e3c78 ffffffff815a051f 000000000000003e ffff88081b2e3cc8 ffff88081b2e3cb8 ffffffff8104fc2c 0000000000000000 ffff88082b5cfb00 ffff88081c788d00 ffff88082b5d7200 ffff88082b5d3080 Call Trace: [<ffffffff815a051f>] dump_stack+0x49/0x62 [<ffffffff8104fc2c>] warn_slowpath_common+0x8c/0xc0 [<ffffffff8104fd16>] warn_slowpath_fmt+0x46/0x50 [<ffffffff812b6592>] __list_del_entry+0x82/0xd0 [<ffffffff8106d48c>] process_one_work+0x12c/0x510 [<ffffffff8106d4d3>] ? process_one_work+0x173/0x510 [<ffffffff8106ebdf>] worker_thread+0x11f/0x3a0 [<ffffffff8106eac0>] ? manage_workers+0x170/0x170 [<ffffffff81074f26>] kthread+0xf6/0x120 [<ffffffff8109f103>] ? __lock_release+0x133/0x1b0 [<ffffffff81074e30>] ? __init_kthread_worker+0x70/0x70 [<ffffffff815aec2c>] ret_from_fork+0x7c/0xb0 [<ffffffff81074e30>] ? __init_kthread_worker+0x70/0x70 ---[ end trace dfc05c3f7caf8ebe ]--- BUG: unable to handle kernel NULL pointer dereference at 0000000000000008 IP: [<ffffffff8106d391>] process_one_work+0x31/0x510 ------- Signed-off-by: Quinn Tran <quinn.tran@qlogic.com> Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: T10-Dif: add T10-PI supportQuinn Tran
Add support for T10-Dif for Target Mode to qla driver. The driver will look for firmware attribute that support this feature. When the feature is present, the capabilities will be report to TCM layer. Add CTIO CRC2 iocb to build T10-Dif commands. Add support routines to process good & error cases. Signed-off-by: Quinn Tran <quinn.tran@qlogic.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Remove mapped vp index iterator macro dead code.Himanshu Madhani
Signed-off-by: Himanshu Madhani <himanshu.madhani@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Add MBC option for fast SFP data access.Joe Carnuccio
Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Fix beacon blink logic for ISP26xx/83xx.Himanshu Madani
Signed-off-by: Himanshu Madani <himanshu.madani@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Don't check for firmware hung during the reset context for ISP82XX.Tej Prakash
Signed-off-by: Tej Prakash <tej.prakash@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Delay driver unload if there is any pending activity going on.Sawan Chandak
Signed-off-by: Sawan Chandak <sawan.chandak@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: ISP27xx queue index shadow registers.Joe Carnuccio
For ISP27xx use the request/response queue index shadow registers to avoid directly access them on the PCI bus. Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: ISP27xx firmware dump template spec updates (including T274).Joe Carnuccio
Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Reduce the time we wait for a command to complete during SCSI error ↵Chad Dupuis
handling. Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Check the QLA8044_CRB_DRV_ACTIVE_INDEX register when we are not the ↵Hiral Patel
owner of the reset. Signed-off-by: Hiral Patel <hiral.patel@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Clear loop_id for ports that are marked lost during fabric scanning.Chad Dupuis
Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Adjust adapter reset routine to the changes in firmware ↵Armen Baloyan
specification for ISPFx00. Signed-off-by: Armen Baloyan <armen.baloyan@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Avoid escalating the SCSI error handler if the command is not found ↵Chad Dupuis
in firmware. If the firmware cannot find the command specified then return SUCCESS to the error handler so as not to needlessly escalate. Also cleanup the resources for the command since we cannot expect the original command to returned in interrupt context. Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: IOCB data should be copied to I/O mem using memcpy_toio.Atul Deshmukh
Signed-off-by: Atul Deshmukh <atul.deshmukh@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: ISP8044 poll ipmdio bus timeout improvement.Joe Carnuccio
Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Remove unnecessary printk_ratelimited from qla_nx2.cChad Dupuis
Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Include <delay.h> file for msleep declartion in qla_nx2.c file.Atul Deshmukh
Signed-off-by: Atul Deshmukh <atul.deshmukh@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Use proper log message for flash lock failed error.Atul Deshmukh
Signed-off-by: Atul Deshmukh <atul.deshmukh@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Decrease pci access for response queue processing for ISPFX00.Armen Baloyan
Signed-off-by: Armen Baloyan <armen.baloyan@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Change copyright year to 2014 in all the source files.Armen Baloyan
Signed-off-by: Armen Baloyan <armen.baloyan@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Update entry type 270 to match spec update.Joe Carnuccio
Increment the address by 4 on each iteration. Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Enable fw_dump_size for ISP8044.Hiral Patel
Signed-off-by: Hiral Patel <hiral.patel@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Introduce fw_dump_flag to track fw dump progress.Hiral Patel
Signed-off-by: Hiral Patel <hiral.patel@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Remove unnecessary delays from fw dump code path.Hiral Patel
Signed-off-by: Hiral Patel <hiral.patel@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Track the process when the ROM_LOCK failure happensHiral Patel
Signed-off-by: Hiral Patel <hiral.patel@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Correction to ISP27xx template entry types 256 and 258.Joe Carnuccio
The window address inserted into the dump should be have been incremented by 1 rather than 4. Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Add ISP8044 serdes bsg interface.Joe Carnuccio
Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Check for peg alive counter and clear any outstanding mailbox command.Giridhar Malavali
Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Support of new firmware dump opcodes QLA8044_RDDFE(38), ↵Pratik Mohanty
QLA8044_RDMDIO(39),QLA8044_POLLWR(40). Signed-off-by: Pratik Mohanty <pratik.mohanty@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Allow the next firmware dump if the previous dump capture fails for ↵Saurav Kashyap
ISP8044. Signed-off-by: Giridhar Malavali <giridhar.malvali@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Add pci device id 0x2271.Joe Carnuccio
Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Issue abort command for outstanding commands during cleanup when ↵Giridhar Malavali
only firmware is alive. Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Log when device state is moved to failed state.Giridhar Malavali
Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Correct ISP83xx/ISP27xx mislogic in setting out_mb in ↵Joe Carnuccio
qla25xx_init_req_que(). Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Allow ISP83XX and ISP27XX both to write req_q_out register.Joe Carnuccio
Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Correct operations for ISP27xx template types 270 and 271.Joe Carnuccio
Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-05-19qla2xxx: Do not schedule reset when one is already active when receiving an ↵Chad Dupuis
invalid status handle. If an adapter reset is already in progress, do not schedule another one when we receive an invalid status handle. Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>