Gleb Chesnokov
535fd8c3db
qla2x00t-32gbit: Fix unmap of already freed sgl
...
The sgl is freed in the target stack in target_release_cmd_kref() before
calling qlt_free_cmd() but there is an unmap of sgl in qlt_free_cmd() that
causes a panic if sgl is not yet DMA unmapped:
NIP dma_direct_unmap_sg+0xdc/0x180
LR dma_direct_unmap_sg+0xc8/0x180
Call Trace:
ql_dbg_prefix+0x68/0xc0 [qla2xxx] (unreliable)
dma_unmap_sg_attrs+0x54/0xf0
qlt_unmap_sg.part.19+0x54/0x1c0 [qla2xxx]
qlt_free_cmd+0x124/0x1d0 [qla2xxx]
tcm_qla2xxx_release_cmd+0x4c/0xa0 [tcm_qla2xxx]
target_put_sess_cmd+0x198/0x370 [target_core_mod]
transport_generic_free_cmd+0x6c/0x1b0 [target_core_mod]
tcm_qla2xxx_complete_free+0x6c/0x90 [tcm_qla2xxx]
The sgl may be left unmapped in error cases of response sending. For
instance, qlt_rdy_to_xfer() maps sgl and exits when session is being
deleted keeping the sgl mapped.
This patch removes use-after-free of the sgl and ensures that the sgl is
unmapped for any command that was not sent to firmware.
Link: https://lore.kernel.org/r/20211018122650.11846-1-d.bogdanov@yadro.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Dmitry Bogdanov <d.bogdanov@yadro.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 4a8f71014b4d upstream ]
2022-01-19 23:39:06 +03:00
Gleb Chesnokov
7a2dfd5f52
qla2x00t-32gbit: Fix a memory leak in an error path of qla2x00_process_els()
...
Commit 8c0eb596baa5 ("[SCSI] qla2xxx: Fix a memory leak in an error path of
qla2x00_process_els()"), intended to change:
bsg_job->request->msgcode == FC_BSG_HST_ELS_NOLOGIN
to:
bsg_job->request->msgcode != FC_BSG_RPT_ELS
but changed it to:
bsg_job->request->msgcode == FC_BSG_RPT_ELS
instead.
Change the == to a != to avoid leaking the fcport structure or freeing
unallocated memory.
Link: https://lore.kernel.org/r/20211012191834.90306-2-jgu@purestorage.com
Fixes: 8c0eb596baa5 ("[SCSI] qla2xxx: Fix a memory leak in an error path of qla2x00_process_els()")
Reviewed-by: Bart Van Assche <bvanassche@acm.org >
Signed-off-by: Joy Gu <jgu@purestorage.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 7fb223d0ad80 upstream ]
2022-01-19 23:39:06 +03:00
Gleb Chesnokov
7253771156
qla2x00t-32gbit: Return -ENOMEM if kzalloc() fails
...
The driver probing function should return < 0 for failure, otherwise
kernel will treat value > 0 as success.
Link: https://lore.kernel.org/r/1634522181-31166-1-git-send-email-zheyuma97@gmail.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Zheyu Ma <zheyuma97@gmail.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 06634d5b6e92 upstream ]
2022-01-19 23:39:06 +03:00
Gleb Chesnokov
ab3db4df62
qla2x00t-32gbit: Remove a declaration
...
Since there is no definition for the qla2x00_host_attrs_dm array, remove
its declaration.
Link: https://lore.kernel.org/r/20211012233558.4066756-40-bvanassche@acm.org
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit f8f8f857e7df upstream ]
2022-01-19 23:39:06 +03:00
Gleb Chesnokov
3700ff1936
qla2x00t-32gbit: Fix excessive messages during device logout
...
Disable default logging of some I/O path messages. If desired, the messages
can be turned back on by setting ql2xextended_error_logging.
Link: https://lore.kernel.org/r/20210925035154.29815-1-njavali@marvell.com
Reviewed-by: Ewan D. Milne <emilne@redhat.com >
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Arun Easi <aeasi@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 8e2d81c6b5be upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
69acdca67d
qla2x00t-32gbit: Restore initiator in dual mode
...
In dual mode in case of disabling the target, the whole port goes offline
and initiator is turned off too.
Fix restoring initiator mode after disabling target in dual mode.
Link: https://lore.kernel.org/r/20210915153239.8035-1-d.bogdanov@yadro.com
Fixes: 0645cb8350cd ("scsi: qla2xxx: Add mode control for each physical port")
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Dmitry Bogdanov <d.bogdanov@yadro.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 5f8579038842 upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
d6d0a2a453
qla2x00t-32gbit: Remove redundant initialization of pointer req
...
The pointer req is being initialized with a value that is never read, it is
being updated later on. The assignment is redundant and can be removed.
Link: https://lore.kernel.org/r/20210910114610.44752-1-colin.king@canonical.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Colin Ian King <colin.king@canonical.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
Addresses-Coverity: ("Unused value")
[ commit 914418f36901 upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
81a9e5eb55
qla2x00t-32gbit: Update version to 10.02.07.100-k
...
Link: https://lore.kernel.org/r/20210908164622.19240-11-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit b0fe235dad77 upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
c2a93c20f4
qla2x00t-32gbit: Fix use after free in eh_abort path
...
In eh_abort path driver prematurely exits the call to upper layer. Check
whether command is aborted / completed by firmware before exiting the call.
9 [ffff8b1ebf803c00] page_fault at ffffffffb0389778
[exception RIP: qla2x00_status_entry+0x48d]
RIP: ffffffffc04fa62d RSP: ffff8b1ebf803cb0 RFLAGS: 00010082
RAX: 00000000ffffffff RBX: 00000000000e0000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 00000000000013d8 RDI: fffff3253db78440
RBP: ffff8b1ebf803dd0 R8: ffff8b1ebcd9b0c0 R9: 0000000000000000
R10: ffff8b1e38a30808 R11: 0000000000001000 R12: 00000000000003e9
R13: 0000000000000000 R14: ffff8b1ebcd9d740 R15: 0000000000000028
ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018
10 [ffff8b1ebf803cb0] enqueue_entity at ffffffffafce708f
11 [ffff8b1ebf803d00] enqueue_task_fair at ffffffffafce7b88
12 [ffff8b1ebf803dd8] qla24xx_process_response_queue at ffffffffc04fc9a6
[qla2xxx]
13 [ffff8b1ebf803e78] qla24xx_msix_rsp_q at ffffffffc04ff01b [qla2xxx]
14 [ffff8b1ebf803eb0] __handle_irq_event_percpu at ffffffffafd50714
Link: https://lore.kernel.org/r/20210908164622.19240-10-njavali@marvell.com
Fixes: f45bca8c5052 ("scsi: qla2xxx: Fix double scsi_done for abort path")
Cc: stable@vger.kernel.org
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Co-developed-by: David Jeffery <djeffery@redhat.com >
Signed-off-by: David Jeffery <djeffery@redhat.com >
Co-developed-by: Laurence Oberman <loberman@redhat.com >
Signed-off-by: Laurence Oberman <loberman@redhat.com >
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 3d33b303d4f3 upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
f40dd48dcc
qla2x00t-32gbit: Move heartbeat handling from DPC thread to workqueue
...
DPC thread gets restricted due to a no-op mailbox, which is a blocking call
and has a high execution frequency. To free up the DPC thread we move no-op
handling to the workqueue. Also, modified qla_do_heartbeat() to send no-op
MBC if we don’t have any active interrupts, but there are still I/Os
outstanding with firmware.
Link: https://lore.kernel.org/r/20210908164622.19240-9-njavali@marvell.com
Fixes: d94d8158e184 ("scsi: qla2xxx: Add heartbeat check")
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Manish Rangankar <mrangankar@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 3a4e1f3b3a3c upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
e88a987ae5
qla2x00t-32gbit: Call process_response_queue() in Tx path
...
Process responses in Tx path if any available for better performance.
Link: https://lore.kernel.org/r/20210908164622.19240-8-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Shreyas Deodhar <sdeodhar@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 38c61709e662 upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
77cb6eb216
qla2x00t-32gbit: Fix kernel crash when accessing port_speed sysfs file
...
Kernel crashes when accessing port_speed sysfs file. The issue happens on
a CNA when the local array was accessed beyond bounds. Fix this by changing
the lookup.
BUG: unable to handle kernel paging request at 0000000000004000
PGD 0 P4D 0
Oops: 0000 [#1 ] SMP PTI
CPU: 15 PID: 455213 Comm: sosreport Kdump: loaded Not tainted
4.18.0-305.7.1.el8_4.x86_64 #1
RIP: 0010:string_nocheck+0x12/0x70
Code: 00 00 4c 89 e2 be 20 00 00 00 48 89 ef e8 86 9a 00 00 4c 01
e3 eb 81 90 49 89 f2 48 89 ce 48 89 f8 48 c1 fe 30 66 85 f6 74 4f <44> 0f b6 0a
45 84 c9 74 46 83 ee 01 41 b8 01 00 00 00 48 8d 7c 37
RSP: 0018:ffffb5141c1afcf0 EFLAGS: 00010286
RAX: ffff8bf4009f8000 RBX: ffff8bf4009f9000 RCX: ffff0a00ffffff04
RDX: 0000000000004000 RSI: ffffffffffffffff RDI: ffff8bf4009f8000
RBP: 0000000000004000 R08: 0000000000000001 R09: ffffb5141c1afb84
R10: ffff8bf4009f9000 R11: ffffb5141c1afce6 R12: ffff0a00ffffff04
R13: ffffffffc08e21aa R14: 0000000000001000 R15: ffffffffc08e21aa
FS: 00007fc4ebfff700(0000) GS:ffff8c717f7c0000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000004000 CR3: 000000edfdee6006 CR4: 00000000001706e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
string+0x40/0x50
vsnprintf+0x33c/0x520
scnprintf+0x4d/0x90
qla2x00_port_speed_show+0xb5/0x100 [qla2xxx]
dev_attr_show+0x1c/0x40
sysfs_kf_seq_show+0x9b/0x100
seq_read+0x153/0x410
vfs_read+0x91/0x140
ksys_read+0x4f/0xb0
do_syscall_64+0x5b/0x1a0
entry_SYSCALL_64_after_hwframe+0x65/0xca
Link: https://lore.kernel.org/r/20210908164622.19240-7-njavali@marvell.com
Fixes: 4910b524ac9e ("scsi: qla2xxx: Add support for setting port speed")
Cc: stable@vger.kernel.org
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Arun Easi <aeasi@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 3ef68d4f0c9e upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
53e3c3567b
qla2x00t-32gbit: edif: Use link event to wake up app
...
Authentication application may be running and in the past tried to probe
driver (app_start) but was unsuccessful. This could be due to the bsg layer
not being ready to service the request. On a successful link up, driver
will use the netlink Link Up event to notify the app to retry the app_start
call.
In another case, app does not poll for new NPIV host. This link up event
would notify app of the presence of a new SCSI host.
Link: https://lore.kernel.org/r/20210908164622.19240-6-njavali@marvell.com
Fixes: 4de067e5df12 ("scsi: qla2xxx: edif: Add N2N support for EDIF")
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 527d46e0b014 upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
5ee3f376b6
qla2x00t-32gbit: Fix crash in NVMe abort path
...
System crash was seen when I/O was run against an NVMe target and aborts
were occurring.
Crash stack is:
-- relevant crash stack --
BUG: kernel NULL pointer dereference, address: 0000000000000010
:
#6 [ffffae1f8666bdd0] page_fault at ffffffffa740122e
[exception RIP: qla_nvme_abort_work+339]
RIP: ffffffffc0f592e3 RSP: ffffae1f8666be80 RFLAGS: 00010297
RAX: 0000000000000000 RBX: ffff9b581fc8af80 RCX: ffffffffc0f83bd0
RDX: 0000000000000001 RSI: ffff9b5839c6c7c8 RDI: 0000000008000000
RBP: ffff9b6832f85000 R8: ffffffffc0f68160 R9: ffffffffc0f70652
R10: ffffae1f862ffdc8 R11: 0000000000000300 R12: 000000000000010d
R13: 0000000000000000 R14: ffff9b5839cea000 R15: 0ffff9b583fab170
ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018
#7 [ffffae1f8666be98] process_one_work at ffffffffa6aba184
#8 [ffffae1f8666bed8] worker_thread at ffffffffa6aba39d
#9 [ffffae1f8666bf10] kthread at ffffffffa6ac06ed
The crash was due to a stale SRB structure access after it was aborted.
Fix the issue by removing stale access.
Link: https://lore.kernel.org/r/20210908164622.19240-5-njavali@marvell.com
Fixes: 2cabf10dbbe3 ("scsi: qla2xxx: Fix hang on NVMe command timeouts")
Cc: stable@vger.kernel.org
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Arun Easi <aeasi@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit e6e22e6cc296 upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
bc3f572c65
qla2x00t-32gbit: Check for firmware capability before creating QPair
...
Add firmware capability check of multiQ specifically for ISP25XX before
creating qpair.
Link: https://lore.kernel.org/r/20210908164622.19240-4-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Saurav Kashyap <skashyap@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 8192817efbc3 upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
ea0fa0822c
qla2x00t-32gbit: Display 16G only as supported speeds for 3830c card
...
This card is unique and doesn't support lower speeds, hence update the fdmi
field to display 16G only.
Link: https://lore.kernel.org/r/20210908164622.19240-3-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Saurav Kashyap <skashyap@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 52cca50d35f8 upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
9c3e39e3d0
qla2x00t-32gbit: Backport the BSG code
...
Backport the BSG code that was introduced in the previous commit.
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
b6734a2eb1
qla2x00t-32gbit: Add support for mailbox passthru
...
This interface will allow user space applications to send a mailbox command
to the firmware.
Link: https://lore.kernel.org/r/20210908164622.19240-2-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Bikash Hazarika <bhazarika@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 9e1c3206960f upstream ]
2022-01-19 23:16:04 +03:00
Gleb Chesnokov
4082402a73
qla2x00t-32gbit: Remove support for RHEL6
...
The SCST has dropped support for RHEL6 since SCST v3.6.
2022-01-19 23:16:04 +03:00
Chesnokov Gleb
721d7ea63e
qla2x00t-32gbit: Remove support for kernel versions before 3.10
...
The SCST has dropped support for kernels older than 3.10.0 (RHEL 7 / Centos 7) since SCST v3.6.
2022-01-13 17:26:37 +03:00
Chesnokov Gleb
64a8485fe7
Bump the version number to 3.7.0-pre
...
These changes have been generated by running the following command:
$ scripts/update-version 3 7 0-pre
2022-01-11 16:37:34 +03:00
Bart Van Assche
6b8b4a8004
qla2x00t: Port to Linux kernel v5.16
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9600 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-11-22 03:49:47 +00:00
Bart Van Assche
567a1d5a35
qla2x00t*: Fix a 'make' invocation
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9590 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-11-03 14:27:57 +00:00
Bart Van Assche
3881544890
qla2x00t-32gbit: Change the default mode back to FCP
...
Commit 6432df87e6 ("qla2x00t-32gbit: initialize fc4_type_priority") sets
the port mode to FCP or NVMe according to the NVRAM configuration. That results
in the following logs on my test setup:
qla2xxx [0000:00:09.0]-ffff:9: FC4 priority set to NVMe
qla2xxx [0000:00:0a.0]-ffff:10: FC4 priority set to NVMe
Since only FCP is supported in the SCST project, ignore the NVRAM configuration.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9580 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-29 03:23:38 +00:00
Bart Van Assche
c536f01094
qla2x00t-32gbit/Makefile_in-tree: Add qla_edif.o
...
Reported-by: Sietse van Zanen <sietse@wizdom.nu >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9575 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-09 02:57:47 +00:00
Bart Van Assche
ee72166494
qla2x00t-32gbit: Unbreak the RHEL 7 and RHEL 8 builds
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9572 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-07 00:45:11 +00:00
Bart Van Assche
8c19a57583
qla2x00t-32gbit: Backport the EDIF BSG code
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9569 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:50 +00:00
Bart Van Assche
3c36167585
qla2x00t-32gbit: Open-code qla2xxx_eh_device_reset()
...
Device reset and target reset will be using different calling sequences, so
open-code __qla2xxx_eh_generic_reset() in qla2xxx_eh_device_reset(), and
remove the now obsolete function __qla2xxx_eh_generic_reset(). No
functional changes.
Link: https://lore.kernel.org/r/20210819091913.94436-4-hare@suse.de
Cc: Nilesh Javali <njavali@marvell.com >
Reviewed-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Hannes Reinecke <hare@suse.de >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit cbe1f0d70072cbdb28c8687f3fca79d07e8d1860 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9568 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:46 +00:00
Bart Van Assche
c6c70f504d
qla2x00t-32gbit: Open-code qla2xxx_eh_target_reset()
...
Device reset and target reset will be using different calling sequences, so
open-code __qla2xxx_eh_generic_reset() in qla2xxx_eh_target_reset(). No
functional changes.
Link: https://lore.kernel.org/r/20210819091913.94436-3-hare@suse.de
Cc: Nilesh Javali <njavali@marvell.com >
Reviewed-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Hannes Reinecke <hare@suse.de >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit e56b2234ab64f92486ea246f1322ff236e87e229 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9567 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:42 +00:00
Bart Van Assche
700bbd7eb2
qla2x00t-32gbit: Do not call fc_block_scsi_eh() during bus reset
...
When calling bus reset the driver will be doing a full SAN resync, so there
is no need to wait for any pending RSCNs; they'll be re-issued during
resync anyway.
Link: https://lore.kernel.org/r/20210819091913.94436-2-hare@suse.de
Cc: Nilesh Javali <njavali@marvell.com >
Reviewed-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Hannes Reinecke <hare@suse.de >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit c74ce061f8983bcb048b895bc127447909321fe8 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9566 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:38 +00:00
Bart Van Assche
b2f977c791
qla2x00t-32gbit: Update version to 10.02.06.200-k
...
Link: https://lore.kernel.org/r/20210817051315.2477-13-njavali@marvell.com
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 34f69ec703559f0a43ec3307795c28514861b511 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9565 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:34 +00:00
Bart Van Assche
bd8956724c
qla2x00t-32gbit: edif: Fix returnvar.cocci warnings
...
drivers/scsi/qla2xxx/qla_edif.c:213:25-29: Unneeded variable: "rval". Return "0"
on line 264
Remove unneeded variable used to store return value.
Generated by: scripts/coccinelle/misc/returnvar.cocci
Link: https://lore.kernel.org/r/20210817051315.2477-12-njavali@marvell.com
Fixes: 7ebb336e45ef ("scsi: qla2xxx: edif: Add start + stop bsgs")
Reported-by: kernel test robot <lkp@intel.com >
Signed-off-by: kernel test robot <lkp@intel.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 17f3df8fd718fb229ae3453ae59b3f2349464d06 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9564 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:30 +00:00
Bart Van Assche
da7cfbb899
qla2x00t-32gbit: Fix NVMe session down detection
...
When Target port transitions personality from one to another (NVMe <-->
FCP), there could be some overlap of the two where one layer is going down
while the other layer is coming up. This overlap can cause temporary I/O
error. Detect those errors/transitions and recover from them. Triggers
session tear down and allow relogin to re-drive the connection under the
following conditions:
- NVMe command error
- On PRLO + N2N (rida format 2)
Link: https://lore.kernel.org/r/20210817051315.2477-11-njavali@marvell.com
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 7a8ff7d9854a1727435557184c8255bbbca60920 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9563 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:25 +00:00
Bart Van Assche
5fc2357c68
qla2x00t-32gbit: Fix NVMe retry
...
For target port that register itself as both FCP + NVMe, initiator driver
will try to login one mode at a time. If the last mode did not succeed,
then driver will try the other mode.
When error is encountered, current code only flip to other mode one time
(NVMe->FCP) and remain on the last mode. Driver wrongly assumed target
port does not support PRLI NVMe, instead it was not ready to receive PRLI.
This patch will alternate back and forth on every PRLI failure until login
retry count has depleted or it is succeeded.
Link: https://lore.kernel.org/r/20210817051315.2477-10-njavali@marvell.com
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit f88444570072a6863f3e2bd67878560a51b187f2 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9562 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:20 +00:00
Bart Van Assche
e011c72863
qla2x00t-32gbit: Fix hang on NVMe command timeouts
...
The abort callback gets called only when it gets posted to firmware. The
refcounting is done properly in the callback. On internal errors, the
callback is not invoked leading to a hung I/O. Fix this by having separate
error code when command gets returned from firmware.
Link: https://lore.kernel.org/r/20210817051315.2477-9-njavali@marvell.com
Signed-off-by: Arun Easi <aeasi@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 2cabf10dbbe380e2ef27a69ce2059bcab7c8b419 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9561 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:16 +00:00
Bart Van Assche
cb5acb2323
qla2x00t-32gbit: Fix NVMe | FCP personality change
...
Currently driver saves the personality type (FCP|NVMe) at the start of
first discovery of the remote device. If the remote device personality do
change over time, then qla driver needs to present that to user to decide.
Link: https://lore.kernel.org/r/20210817051315.2477-8-njavali@marvell.com
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit f6e327fc09e48271c103efb3b69fc4ccda3f408b upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9560 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:12 +00:00
Bart Van Assche
d2312b6268
qla2x00t-32gbit: edif: Do secure PLOGI when auth app is present
...
For initiator mode, always do secure login when authentication app started.
Also remove redundant flags to indicate secure connection.
Link: https://lore.kernel.org/r/20210817051315.2477-7-njavali@marvell.com
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 1dc64a360bda55d632202e3fef266cef7d4f6f00 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9559 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:07 +00:00
Bart Van Assche
6e3fa20e65
qla2x00t-32gbit: edif: Add N2N support for EDIF
...
For EDIF + N2N to work, firmware 9.8 or later is required. The driver will
pause after PLOGI to allow app to authenticate. Once authentication
completes, app will tell driver to do PRLI.
Link: https://lore.kernel.org/r/20210817051315.2477-6-njavali@marvell.com
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 4de067e5df12c4db4d3d930ba58354d23674f67c upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9558 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:45:02 +00:00
Bart Van Assche
88876f3f32
qla2x00t-32gbit: Fix hang during NVMe session tear down
...
The following hung task call trace was seen:
[ 1230.183294] INFO: task qla2xxx_wq:523 blocked for more than 120 seconds.
[ 1230.197749] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 1230.205585] qla2xxx_wq D 0 523 2 0x80004000
[ 1230.205636] Workqueue: qla2xxx_wq qlt_free_session_done [qla2xxx]
[ 1230.205639] Call Trace:
[ 1230.208100] __schedule+0x2c4/0x700
[ 1230.211607] schedule+0x38/0xa0
[ 1230.214769] schedule_timeout+0x246/0x2f0
[ 1230.222651] wait_for_completion+0x97/0x100
[ 1230.226921] qlt_free_session_done+0x6a0/0x6f0 [qla2xxx]
[ 1230.232254] process_one_work+0x1a7/0x360
...when device side port resets were done.
Abort threads were getting out without processing due to the "deleted"
flag check. The delete thread, meanwhile, could not proceed with a
logout (that would have cleared out pending requests) as the logout IOCB
work was not progressing. It appears like the hung qlt_free_session_done()
thread is causing the ha->wq works on hold. The qlt_free_session_done()
was hung waiting for nvme_fc_unregister_remoteport() + localport_delete cb
to be complete, which would only happen when all I/Os are released.
Fix this by allowing abort to progress until device delete is completely
done. This should make the qlt_free_session_done() proceed without hang and
thus clear up the deadlock.
Link: https://lore.kernel.org/r/20210817051315.2477-5-njavali@marvell.com
Signed-off-by: Arun Easi <aeasi@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 310e69edfbd57995868a428eeddea09a7b5d2749 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9557 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:58 +00:00
Bart Van Assche
354b18f993
qla2x00t-32gbit: edif: Fix EDIF enable flag
...
edif_enabled is prematurely turned on if hardware is capable of handling
the feature. However, firmware also needs to support EDIF before enabling
this bit.
Link: https://lore.kernel.org/r/20210817051315.2477-4-njavali@marvell.com
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit d07b75ba96497e9bfb9f0e673800a9d764ac212a upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9556 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:54 +00:00
Bart Van Assche
f8c549e5b9
qla2x00t-32gbit: edif: Reject AUTH ELS on session down
...
Reject inflight AUTH ELS if driver is going through session recovery.
Link: https://lore.kernel.org/r/20210817051315.2477-3-njavali@marvell.com
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 225479296c4fb2d3449e55b48eca2a9d6aca1e4e upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9555 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:50 +00:00
Bart Van Assche
ad72fd5c26
qla2x00t-32gbit: edif: Fix stale session
...
When firmware indicates session has been torn down via UPDATE SA IOCB or
ELS Passthrough IOCB, the driver needs to also tear down the session.
Link: https://lore.kernel.org/r/20210817051315.2477-2-njavali@marvell.com
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit b15ce2f34cf42487982db0a8606095db1c8c8f28 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9554 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:46 +00:00
Bart Van Assche
bc381af443
qla2x00t-32gbit: Update version to 10.02.06.100-k
...
Link: https://lore.kernel.org/r/20210810043720.1137-15-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit bd19573e05f6e643f003672c799b3b2301f2f493 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9553 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:41 +00:00
Bart Van Assche
aa8246ab2e
qla2x00t-32gbit: Sync queue idx with queue_pair_map idx
...
The first invocation of function find_first_zero_bit will return 0 and
queue_id gets set to 0.
An index of queue_pair_map also gets set to 0.
qpair_id = find_first_zero_bit(ha->qpair_qid_map, ha->max_qpairs);
set_bit(qpair_id, ha->qpair_qid_map);
ha->queue_pair_map[qpair_id] = qpair;
In the alloc_queue callback driver checks the map, if queue is already
allocated:
ha->queue_pair_map[qidx]
This works fine as long as max_qpairs is greater than nvme_max_hw_queues(8)
since the size of the queue_pair_map is equal to max_qpair. In case nr_cpus
is less than 8, max_qpairs is less than 8. This creates wrong value
returned as qpair.
[ 1572.353669] qla2xxx [0000:24:00.3]-2121:6: Returning existing qpair of 4e00000000000000 for idx=2
[ 1572.354458] general protection fault: 0000 [#1 ] SMP PTI
[ 1572.354461] CPU: 1 PID: 44 Comm: kworker/1:1H Kdump: loaded Tainted: G IOE --------- - - 4.18.0-304.el8.x86_64 #1
[ 1572.354462] Hardware name: HP ProLiant DL380p Gen8, BIOS P70 03/01/2013
[ 1572.354467] Workqueue: kblockd blk_mq_run_work_fn
[ 1572.354485] RIP: 0010:qla_nvme_post_cmd+0x92/0x760 [qla2xxx]
[ 1572.354486] Code: 84 24 5c 01 00 00 00 00 b8 0a 74 1e 66 83 79 48 00 0f 85 a8 03 00 00 48 8b 44 24 08 48 89 ee 4c 89 e7 8b 50 24 e8 5e 8e 00 00 <f0> 41 ff 47 04 0f ae f0 41 f6 47 24 04 74 19 f0 41 ff 4f 04 b8 f0
[ 1572.354487] RSP: 0018:ffff9c81c645fc90 EFLAGS: 00010246
[ 1572.354489] RAX: 0000000000000001 RBX: ffff8ea3e5070138 RCX: 0000000000000001
[ 1572.354490] RDX: 0000000000000001 RSI: 0000000000000001 RDI: ffff8ea4c866b800
[ 1572.354491] RBP: ffff8ea4c866b800 R08: 0000000000005010 R09: ffff8ea4c866b800
[ 1572.354492] R10: 0000000000000001 R11: 000000069d1ca3ff R12: ffff8ea4bc460000
[ 1572.354493] R13: ffff8ea3e50702b0 R14: ffff8ea4c4c16a58 R15: 4e00000000000000
[ 1572.354494] FS: 0000000000000000(0000) GS:ffff8ea4dfd00000(0000) knlGS:0000000000000000
[ 1572.354495] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 1572.354496] CR2: 000055884504fa58 CR3: 00000005a1410001 CR4: 00000000000606e0
[ 1572.354497] Call Trace:
[ 1572.354503] ? check_preempt_curr+0x62/0x90
[ 1572.354506] ? dma_direct_map_sg+0x72/0x1f0
[ 1572.354509] ? nvme_fc_start_fcp_op.part.32+0x175/0x460 [nvme_fc]
[ 1572.354511] ? blk_mq_dispatch_rq_list+0x11c/0x730
[ 1572.354515] ? __switch_to_asm+0x35/0x70
[ 1572.354516] ? __switch_to_asm+0x41/0x70
[ 1572.354518] ? __switch_to_asm+0x35/0x70
[ 1572.354519] ? __switch_to_asm+0x41/0x70
[ 1572.354521] ? __switch_to_asm+0x35/0x70
[ 1572.354522] ? __switch_to_asm+0x41/0x70
[ 1572.354523] ? __switch_to_asm+0x35/0x70
[ 1572.354525] ? entry_SYSCALL_64_after_hwframe+0xb9/0xca
[ 1572.354527] ? __switch_to_asm+0x41/0x70
[ 1572.354529] ? __blk_mq_sched_dispatch_requests+0xc6/0x170
[ 1572.354531] ? blk_mq_sched_dispatch_requests+0x30/0x60
[ 1572.354532] ? __blk_mq_run_hw_queue+0x51/0xd0
[ 1572.354535] ? process_one_work+0x1a7/0x360
[ 1572.354537] ? create_worker+0x1a0/0x1a0
[ 1572.354538] ? worker_thread+0x30/0x390
[ 1572.354540] ? create_worker+0x1a0/0x1a0
[ 1572.354541] ? kthread+0x116/0x130
[ 1572.354543] ? kthread_flush_work_fn+0x10/0x10
[ 1572.354545] ? ret_from_fork+0x35/0x40
Fix is to use index 0 for admin and first IO queue.
Link: https://lore.kernel.org/r/20210810043720.1137-14-njavali@marvell.com
Fixes: e84067d74301 ("scsi: qla2xxx: Add FC-NVMe F/W initialization and transport registration")
Cc: stable@vger.kernel.org
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Saurav Kashyap <skashyap@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit c8fadf019964d0eb1da410ba8b629494d3339db9 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9552 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:32 +00:00
Bart Van Assche
8bff2dfde2
qla2x00t-32gbit: Changes to support kdump kernel for NVMe BFS
...
The MSI-X and MSI calls fails in kdump kernel. Because of this
qla2xxx_create_qpair() fails leading to .create_queue callback failure.
The fix is to return existing qpair instead of allocating new one and
allocate a single hw queue.
[ 19.975838] qla2xxx [0000:d8:00.1]-00c7:11: MSI-X: Failed to enable support,
giving up -- 16/-28.
[ 19.984885] qla2xxx [0000:d8:00.1]-0037:11: Falling back-to MSI mode --
ret=-28.
[ 19.992278] qla2xxx [0000:d8:00.1]-0039:11: Falling back-to INTa mode --
ret=-28.
..
..
..
[ 21.141518] qla2xxx [0000:d8:00.0]-2104:2: qla_nvme_alloc_queue: handle
00000000e7ee499d, idx =1, qsize 32
[ 21.151166] qla2xxx [0000:d8:00.0]-0181:2: FW/Driver is not multi-queue capable.
[ 21.158558] qla2xxx [0000:d8:00.0]-2122:2: Failed to allocate qpair
[ 21.164824] nvme nvme0: NVME-FC{0}: reset: Reconnect attempt failed (-22)
[ 21.171612] nvme nvme0: NVME-FC{0}: Reconnect attempt in 2 seconds
Link: https://lore.kernel.org/r/20210810043720.1137-13-njavali@marvell.com
Cc: stable@vger.kernel.org
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Saurav Kashyap <skashyap@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 4a0a542fe5e4273baf9228459ef3f75c29490cba upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9551 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:28 +00:00
Bart Van Assche
6f2b95635f
qla2x00t-32gbit: Changes to support kdump kernel
...
Avoid allocating firmware dump and only allocate a single queue for a kexec
kernel.
Link: https://lore.kernel.org/r/20210810043720.1137-12-njavali@marvell.com
Cc: stable@vger.kernel.org
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Saurav Kashyap <skashyap@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 62e0dec59c1e139dab55aff5aa442adc97804271 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9550 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:24 +00:00
Bart Van Assche
410bb7c65c
qla2x00t-32gbit: Suppress unnecessary log messages during login
...
Suppress logging of retryable errors. These can still be seen if extended
logging is enabled.
Link: https://lore.kernel.org/r/20210810043720.1137-11-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Arun Easi <aeasi@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit a5741427322b6158fbe9f1a4c118e95a05cecd53 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9549 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:20 +00:00
Bart Van Assche
39b8ce590d
qla2x00t-32gbit: Fix NPIV create erroneous error
...
When user creates multiple NPIVs, the switch capabilities field is checked
before a vport is allowed to be created. This field is being toggled if a
switch scan is in progress. This creates erroneous reject of vport create.
Link: https://lore.kernel.org/r/20210810043720.1137-10-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit a57214443f0f85639a0d9bbb8bd658d82dbf0927 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9548 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:16 +00:00
Bart Van Assche
369fa2ff74
qla2x00t-32gbit: Fix unsafe removal from linked list
...
On NPIV delete, the VPort is taken off a linked list in an unsafe manner.
The check for VPort refcount should be done behind lock before taking off
the element.
[ 2733.016907] general protection fault: 0000 [#1 ] SMP NOPTI
[ 2733.016908] qla2xxx [0000:22:00.1]-7088:27: VP[4] deleted.
[ 2733.016912] CPU: 22 PID: 23481 Comm: qla2xxx_15_dpc Kdump: loaded Tainted:
G OE KX 5.3.18-47-default #1 SLE15-SP3
[ 2733.016914] Hardware name: Dell Inc. PowerEdge R7525/0PYVT1, BIOS 2.1.4 02/17/2021
[ 2733.016929] RIP: 0010:qla2x00_abort_isp+0x90/0x850 [qla2xxx]
[ 2733.016933] RSP: 0018:ffffb9cfc91efe98 EFLAGS: 00010087
[ 2733.016935] RAX: 0000000000000292 RBX: dead000000000100 RCX: 0000000000000000
[ 2733.016936] RDX: 0000000000000001 RSI: ffff944bfeb99558 RDI: ffff944bfc4b4488
[ 2733.016937] RBP: ffff944bfc4b2868 R08: 00000000000187a2 R09: 0000000000000001
[ 2733.016937] R10: ffffb9cfc91efcc8 R11: 0000000000000001 R12: ffff944bfc4b4000
[ 2733.016938] R13: ffff944bfc4b4870 R14: ffff944bfc4b4488 R15: ffff944bda895c80
[ 2733.016939] FS: 0000000000000000(0000) GS:ffff944bfeb80000(0000) knlGS:0000000000000000
[ 2733.016940] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 2733.016940] CR2: 00007fc173e74458 CR3: 0000001ff57de000 CR4: 0000000000350ee0
[ 2733.016941] Call Trace:
[ 2733.016951] qla2xxx_pci_error_detected+0x190/0x190 [qla2xxx]
[ 2733.016957] qla2x00_do_dpc+0x560/0xa10 [qla2xxx]
[ 2733.016962] kthread+0x10d/0x130
[ 2733.016963] kthread_park+0xa0/0xa0
[ 2733.016966] ret_from_fork+0x22/0x40
Link: https://lore.kernel.org/r/20210810043720.1137-9-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 0c9a5f3e42f75dbad5966aa59db935b694ab00d1 upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9547 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:12 +00:00
Bart Van Assche
b24184dc31
qla2x00t-32gbit: Fix port type info
...
Over time, fcport->port_type became a flag field. The flags within this
field were not defined properly. This caused external tools to read wrong
info.
Link: https://lore.kernel.org/r/20210810043720.1137-8-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 01c97f2dd8fb4d2188c779a975031c0fe1ec061d upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9546 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-09-05 15:44:08 +00:00