Enabling list_debug showed the drivers txcmplq was suffering list
corruption. The systems will eventually crash because the
iocb free list gets crossed linked with the prings txcmplq.
Most systems will run for a while after the corruption, but will
eventually crash when a scsi eh reset occurs and
Enablement of the PBDE optimization brought out some
incompatible behaviors under error scenarios.
Best to disable and remove the PBDE optimization.
Signed-off-by: Dick Kennedy
Signed-off-by: James Smart
---
drivers/scsi/lpfc/lpfc_attr.c | 12 ++--
1 file changed, 2 insertions(+), 10
Update the driver version to 12.0.0.6
Signed-off-by: Dick Kennedy
Signed-off-by: James Smart
---
drivers/scsi/lpfc/lpfc_version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/lpfc/lpfc_version.h b/drivers/scsi/lpfc/lpfc_version.h
index
CNA ports were showing speed as "unknown" even if the link
is up.
Add speed decoding for FCOE-based adapters
Signed-off-by: Dick Kennedy
Signed-off-by: James Smart
---
drivers/scsi/lpfc/lpfc_attr.c | 18 ++
1 file changed, 18 insertions(+)
diff --git
After memory allocation for the LCB response frame, the memory
wasn't zero initialized, and not all fields are set. Thus garbage
shows up in the payload.
Fix by zeroing the memory at allocation.
Also properly set the Capability field based on duration support.
Signed-off-by: Dick Kennedy
This patch contains lpfc bug fixes
The patches were cut against the Martin's 4.19/scsi-queue tree
James Smart (8):
lpfc: Fix ELS abort on SLI-3 adapters
lpfc: Fix sysfs Speed value on CNA ports
lpfc: Fix list corruption on the completion queue.
lpfc: Fix driver crash when re-registering
For ABORT_XRI_CN command, firmware identifies XRI to abort by
IOTAG and RPI combination. For ELS aborts, driver specifies
IOTAG correctly but RPI is not specified.
Fix by setting RPI in WQE.
Signed-off-by: Dick Kennedy
Signed-off-by: James Smart
---
drivers/scsi/lpfc/lpfc_nportdisc.c | 3 +++
Performance is effected when target queue depth is tracked.
An atomic counter is incremented on the submission path which
competes with it being decremented on the completion path.
In addition multiple CPUs can simultaniously be manipulating
this counter for the same ndlp.
Reduce the overhead by
During remote port loss fault testing, the driver crashed
with the following trace:
general protection fault: [#1] SMP
RIP: ... lpfc_nvme_register_port+0x250/0x480 [lpfc]
Call Trace:
lpfc_nlp_state_cleanup+0x1b3/0x7a0 [lpfc]
lpfc_nlp_set_state+0xa6/0x1d0 [lpfc]
If number of interrupt vectors are more than num_online_cpus()
then pci_alloc_irq_vectors_affinity() assigns cpumask based
on num_possible_cpus() to the remaining vectors because of
this interrupt does not generate for these vectors.
This patch fixes this issue by using pci_alloc_irq_vectors()
Hi,
On Tue, Jul 31, 2018 at 10:38:06AM +0200, Johannes Thumshirn wrote:
> So I've fixed one use-after-free and one memory leak, but the one you
> reported is still on the TODO list.
Wow, thanks...
> Long story short, I can reproduce it here and I'm working on it.
>
> Thanks for your patience,
On Fri, Jul 27, 2018 at 12:49:55AM +0200, ard wrote:
> Actually already got there from my arm dump, but they are different in
> backtrace.
> Anyway:
> root@antec:~# grep -c fc_rport_create kmemleak.txt
> 44
> So 44 * 512 bytes leaked in that path. And an extra thing: "it was leaked in"
> libfc
12 matches
Mail list logo