linux-hardened/drivers/scsi/fcoe
Neerav Parikh 31c37a6f21 [SCSI] fcoe: Fix write errors on NPIV ports
SCSI errors were generated while writing to LUNs
connected via NPIV ports.

Debugging this it was found that the FCoE packets
transmitted via the NPIV ports were not tagged with
correct user priority as negotiated with peer by DCB
agent. This resulted in FCoE traffic going with priority
zero(0) that did not have priority flow control (PFC)
enabled for it. The initiator after transferring data
to the target never saw any reply indicating the transfer
was complete. This resulted in error recovery (ABTS) and
SCSI command retries by the scsi-mid layer; eventually
resulting in I/O errors.

This patch fixes this issue by keeping the FCoE user
priority information in the fcoe_interface instance
that is common for both the physical port as well as
NPIV ports connected to that physical port; instead
of storing it in fcoe_port structure that has a per
port instance.

Signed-off-by: Neerav Parikh <Neerav.Parikh@intel.com>
Acked-by: Yi Zou <yi.zou@intel.com>
Acked-by: John Fastabend <john.r.fastabend@intel.com>
Tested-by: Marcus Dennis <marcusx.e.dennis@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
2012-10-07 11:49:34 +01:00
..
fcoe.c [SCSI] fcoe: Fix write errors on NPIV ports 2012-10-07 11:49:34 +01:00
fcoe.h [SCSI] fcoe: Fix write errors on NPIV ports 2012-10-07 11:49:34 +01:00
fcoe_ctlr.c [SCSI] libfc, fcoe, bnx2fc: cleanup fcoe_dev_stats 2012-07-20 08:31:47 +01:00
fcoe_sysfs.c [SCSI] fcoe: Remove redundant 'less than zero' check 2012-07-20 08:58:55 +01:00
fcoe_transport.c [SCSI] libfcoe: Fix section mismatch 2012-07-20 08:58:20 +01:00
libfcoe.h [SCSI] libfcoe: add implementation to support fcoe transport 2011-02-12 11:06:06 -06:00
Makefile [SCSI] libfcoe: Add fcoe_sysfs 2012-05-23 09:40:09 +01:00