linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/58] qla2xxx patches for kernel v5.4
@ 2019-08-09  3:01 Bart Van Assche
  2019-08-09  3:01 ` [PATCH v2 01/58] qla2xxx: Make qla2x00_abort_srb() again decrease the sp reference count Bart Van Assche
                   ` (59 more replies)
  0 siblings, 60 replies; 63+ messages in thread
From: Bart Van Assche @ 2019-08-09  3:01 UTC (permalink / raw)
  To: Martin K . Petersen, James E . J . Bottomley; +Cc: linux-scsi, Bart Van Assche

Hi Martin,

The patches in this series improve the robustness of the QLogic Fibre Channel
initiator and target drivers. These patches are a result of manual code
inspection, analysis of Coverity reports and stress testing of these two
drivers. Please consider these patches for kernel version v5.4.

Thanks,

Bart.

Changes compared to v1:
- Included a regression fix for qla2xxx_eh_abort() in the second patch of this
  series (the fix Himanshu mentioned in his e-mail).
- Moved a WARN_ON_ONCE() statement from a later patch to the second patch in
  this series.
- Dropped one patch that renames a function.

Bart Van Assche (58):
  qla2xxx: Make qla2x00_abort_srb() again decrease the sp reference
    count
  qla2xxx: Really fix qla2xxx_eh_abort()
  qla2xxx: Improve Linux kernel coding style conformance
  qla2xxx: Use tabs instead of spaces for indentation
  qla2xxx: Include the <asm/unaligned.h> header file from qla_dsd.h
  qla2xxx: Remove an include directive from qla_mr.c
  qla2xxx: Remove a superfluous forward declaration
  qla2xxx: Declare the fourth ql_dump_buffer() argument const
  qla2xxx: Change the return type of qla2x00_update_ms_fdmi_iocb() into
    void
  qla2xxx: Reduce the scope of three local variables in
    qla2xxx_queuecommand()
  qla2xxx: Declare qla_tgt_cmd.cdb const
  qla2xxx: Change data_dsd into an array
  qla2xxx: Verify locking assumptions at runtime
  qla2xxx: Reduce the number of casts in GID list code
  qla2xxx: Simplify qlt_lport_dump()
  qla2xxx: Remove a superfluous pointer check
  qla2xxx: Remove two superfluous tests
  qla2xxx: Simplify qla24xx_abort_sp_done()
  qla2xxx: Fix session lookup in qlt_abort_work()
  qla2xxx: Report the firmware status code if a mailbox command fails
  qla2xxx: Do not corrupt vha->plogi_ack_list
  qla2xxx: Use strlcpy() instead of strncpy()
  qla2xxx: Complain if a mailbox command times out
  qla2xxx: Complain if parsing the version string fails
  qla2xxx: Remove dead code
  qla2xxx: Simplify a debug statement
  qla2xxx: Fix qla24xx_process_bidir_cmd()
  qla2xxx: Remove unreachable code from qla83xx_idc_lock()
  qla2xxx: Suppress a Coveritiy complaint about integer overflow
  qla2xxx: Suppress multiple Coverity complaint about out-of-bounds
    accesses
  qla2xxx: Always check the qla2x00_wait_for_hba_online() return value
  qla2xxx: Declare fourth qla2x00_set_model_info() argument const
  qla2xxx: Complain if waiting for pending commands times out
  qla2xxx: Check the PCI info string output buffer size
  qla2xxx: Use memcpy() and strlcpy() instead of strcpy() and strncpy()
  qla2xxx: Complain if a soft reset fails
  qla2xxx: Introduce the be_id_t and le_id_t data types for FC src/dst
    IDs
  qla2xxx: Change the return type of qla24xx_read_flash_data()
  qla2xxx: Check secondary image if reading the primary image fails
  qla2xxx: Make it explicit that ELS pass-through IOCBs use little
    endian
  qla2xxx: Set the responder mode if appropriate for ELS pass-through
    IOCBs
  qla2xxx: Rework key encoding in qlt_find_host_by_d_id()
  qla2xxx: Enable type checking for the SRB free and done callback
    functions
  qla2xxx: Introduce the function qla2xxx_init_sp()
  qla2xxx: Fix a race condition between aborting and completing a SCSI
    command
  qla2xxx: Make qlt_handle_abts_completion() more robust
  qla2xxx: Modify NVMe include directives
  qla2xxx: Introduce qla2xxx_get_next_handle()
  qla2xxx: Make sure that aborted commands are freed
  qla2xxx: Complain if sp->done() is not called from the completion path
  qla2xxx: Let the compiler check the type of the SCSI command context
    pointer
  qla2xxx: Remove superfluous sts_entry_* casts
  qla2xxx: Report invalid mailbox status codes
  qla2xxx: Inline the qla2x00_fcport_event_handler() function
  qla2xxx: Introduce qla2x00_els_dcmd2_free()
  qla2xxx: Remove two superfluous if-tests
  qla2xxx: Simplify qla24xx_async_abort_cmd()
  qla2xxx: Fix a NULL pointer dereference

 drivers/scsi/qla2xxx/qla_attr.c    |   6 +-
 drivers/scsi/qla2xxx/qla_bsg.c     |  19 +--
 drivers/scsi/qla2xxx/qla_dbg.c     |   3 +-
 drivers/scsi/qla2xxx/qla_def.h     | 130 ++++++++++----
 drivers/scsi/qla2xxx/qla_dfs.c     |   9 +-
 drivers/scsi/qla2xxx/qla_dsd.h     |   2 +
 drivers/scsi/qla2xxx/qla_fw.h      |   8 +-
 drivers/scsi/qla2xxx/qla_gbl.h     |  33 ++--
 drivers/scsi/qla2xxx/qla_gs.c      | 219 +++++++++---------------
 drivers/scsi/qla2xxx/qla_init.c    | 261 +++++++++++------------------
 drivers/scsi/qla2xxx/qla_inline.h  |  28 ++--
 drivers/scsi/qla2xxx/qla_iocb.c    | 221 +++++++++---------------
 drivers/scsi/qla2xxx/qla_isr.c     |  24 ++-
 drivers/scsi/qla2xxx/qla_mbx.c     |  10 +-
 drivers/scsi/qla2xxx/qla_mid.c     |   4 +-
 drivers/scsi/qla2xxx/qla_mr.c      |  67 ++++----
 drivers/scsi/qla2xxx/qla_nvme.c    |  28 +---
 drivers/scsi/qla2xxx/qla_nvme.h    |   5 +-
 drivers/scsi/qla2xxx/qla_nx.c      |  16 +-
 drivers/scsi/qla2xxx/qla_nx.h      |  14 +-
 drivers/scsi/qla2xxx/qla_nx2.c     |   2 +-
 drivers/scsi/qla2xxx/qla_os.c      | 213 ++++++++++-------------
 drivers/scsi/qla2xxx/qla_sup.c     |   8 +-
 drivers/scsi/qla2xxx/qla_target.c  | 209 +++++++++--------------
 drivers/scsi/qla2xxx/qla_target.h  |  35 ++--
 drivers/scsi/qla2xxx/qla_tmpl.c    |   7 +-
 drivers/scsi/qla2xxx/tcm_qla2xxx.c |  27 ++-
 include/linux/nvme-fc-driver.h     |   2 +
 28 files changed, 677 insertions(+), 933 deletions(-)

-- 
2.22.0


^ permalink raw reply	[flat|nested] 63+ messages in thread

end of thread, other threads:[~2019-08-13  1:35 UTC | newest]

Thread overview: 63+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-09  3:01 [PATCH v2 00/58] qla2xxx patches for kernel v5.4 Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 01/58] qla2xxx: Make qla2x00_abort_srb() again decrease the sp reference count Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 02/58] qla2xxx: Really fix qla2xxx_eh_abort() Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 03/58] qla2xxx: Improve Linux kernel coding style conformance Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 04/58] qla2xxx: Use tabs instead of spaces for indentation Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 05/58] qla2xxx: Include the <asm/unaligned.h> header file from qla_dsd.h Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 06/58] qla2xxx: Remove an include directive from qla_mr.c Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 07/58] qla2xxx: Remove a superfluous forward declaration Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 08/58] qla2xxx: Declare the fourth ql_dump_buffer() argument const Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 09/58] qla2xxx: Change the return type of qla2x00_update_ms_fdmi_iocb() into void Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 10/58] qla2xxx: Reduce the scope of three local variables in qla2xxx_queuecommand() Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 11/58] qla2xxx: Declare qla_tgt_cmd.cdb const Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 12/58] qla2xxx: Change data_dsd into an array Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 13/58] qla2xxx: Verify locking assumptions at runtime Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 14/58] qla2xxx: Reduce the number of casts in GID list code Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 15/58] qla2xxx: Simplify qlt_lport_dump() Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 16/58] qla2xxx: Remove a superfluous pointer check Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 17/58] qla2xxx: Remove two superfluous tests Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 18/58] qla2xxx: Simplify qla24xx_abort_sp_done() Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 19/58] qla2xxx: Fix session lookup in qlt_abort_work() Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 20/58] qla2xxx: Report the firmware status code if a mailbox command fails Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 21/58] qla2xxx: Do not corrupt vha->plogi_ack_list Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 22/58] qla2xxx: Use strlcpy() instead of strncpy() Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 23/58] qla2xxx: Complain if a mailbox command times out Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 24/58] qla2xxx: Complain if parsing the version string fails Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 25/58] qla2xxx: Remove dead code Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 26/58] qla2xxx: Simplify a debug statement Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 27/58] qla2xxx: Fix qla24xx_process_bidir_cmd() Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 28/58] qla2xxx: Remove unreachable code from qla83xx_idc_lock() Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 29/58] qla2xxx: Suppress a Coveritiy complaint about integer overflow Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 30/58] qla2xxx: Suppress multiple Coverity complaint about out-of-bounds accesses Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 31/58] qla2xxx: Always check the qla2x00_wait_for_hba_online() return value Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 32/58] qla2xxx: Declare fourth qla2x00_set_model_info() argument const Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 33/58] qla2xxx: Complain if waiting for pending commands times out Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 34/58] qla2xxx: Check the PCI info string output buffer size Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 35/58] qla2xxx: Use memcpy() and strlcpy() instead of strcpy() and strncpy() Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 36/58] qla2xxx: Complain if a soft reset fails Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 37/58] qla2xxx: Introduce the be_id_t and le_id_t data types for FC src/dst IDs Bart Van Assche
2019-08-09  3:01 ` [PATCH v2 38/58] qla2xxx: Change the return type of qla24xx_read_flash_data() Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 39/58] qla2xxx: Check secondary image if reading the primary image fails Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 40/58] qla2xxx: Make it explicit that ELS pass-through IOCBs use little endian Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 41/58] qla2xxx: Set the responder mode if appropriate for ELS pass-through IOCBs Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 42/58] qla2xxx: Rework key encoding in qlt_find_host_by_d_id() Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 43/58] qla2xxx: Enable type checking for the SRB free and done callback functions Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 44/58] qla2xxx: Introduce the function qla2xxx_init_sp() Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 45/58] qla2xxx: Fix a race condition between aborting and completing a SCSI command Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 46/58] qla2xxx: Make qlt_handle_abts_completion() more robust Bart Van Assche
2019-08-12 20:52   ` Roman Bolshakov
2019-08-12 23:22     ` Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 47/58] qla2xxx: Modify NVMe include directives Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 48/58] qla2xxx: Introduce qla2xxx_get_next_handle() Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 49/58] qla2xxx: Make sure that aborted commands are freed Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 50/58] qla2xxx: Complain if sp->done() is not called from the completion path Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 51/58] qla2xxx: Let the compiler check the type of the SCSI command context pointer Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 52/58] qla2xxx: Remove superfluous sts_entry_* casts Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 53/58] qla2xxx: Report invalid mailbox status codes Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 54/58] qla2xxx: Inline the qla2x00_fcport_event_handler() function Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 55/58] qla2xxx: Introduce qla2x00_els_dcmd2_free() Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 56/58] qla2xxx: Remove two superfluous if-tests Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 57/58] qla2xxx: Simplify qla24xx_async_abort_cmd() Bart Van Assche
2019-08-09  3:02 ` [PATCH v2 58/58] qla2xxx: Fix a NULL pointer dereference Bart Van Assche
2019-08-09 14:39 ` [PATCH v2 00/58] qla2xxx patches for kernel v5.4 Himanshu Madhani
2019-08-13  1:35 ` Martin K. Petersen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).