Age | Commit message (Collapse) | Author | Files | Lines |
|
SATA drives located behind a SAS controller would incorrectly receive
WRITE SAME commands. Tweak the heuristics so that:
- If REPORT SUPPORTED OPERATION CODES is provided we will use that to
choose between WRITE SAME(16), WRITE SAME(10) and disabled. This also
fixes an issue with the old code which would issue WRITE SAME(10)
despite the command not being whitelisted in REPORT SUPPORTED
OPERATION CODES.
- If REPORT SUPPORTED OPERATION CODES is not provided we will fall back
to WRITE SAME(10) unless the device has an ATA Information VPD page.
The assumption is that a SATL which is smart enough to implement
WRITE SAME would also provide REPORT SUPPORTED OPERATION CODES.
To facilitate the new heuristics scsi_report_opcode() has been modified
to so we can distinguish between "operation not supported" and "RSOC not
supported".
Reported-by: H. Peter Anvin <[email protected]>
Tested-by: Bernd Schubert <[email protected]>
Signed-off-by: Martin K. Petersen <[email protected]>
Cc: <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
There is an unlock missing if the == FNIC_IOREQ_ABTS_PENDING is
false.
Signed-off-by: Dan Carpenter <[email protected]>
Acked-by: Hiral Patel <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Update bfa driver version to 3.2.21.1
Update bfa to use firmware image versions 3.2.1.0
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Disassoicate path_tov in the driver with the dev_loss_tmo set by the
application.
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
This patch enables support for chinook quad port 16G FC card (falcon)
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Fix endianess issue on Big-endian architecture for firmware statistics
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Fix bug_on condition check in RPSC (Report Port Speed Capabilities)
response processing.
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Allow processing completions from firmware during IOC_DISABLE request is
being processed by the firmware, by setting the queue_process flag
appropriately.
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Get RDS drop interrupts and REC (Read Exchange Concise) related stats
from firmware.
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
1. While FRU VPD data update, inform firmware to send a completion event
on I2C bus. Without this change, firmware used to send completion
message on I2C bus for every chunk of FRU VPD update.
2. Support for FRU VPN update on CHINOOK2 cards.
3. Append port count to the model name to differentiate between single
port and dual port model of 1860.
4. Update the size of the model name to 16bytes
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Replaced usage of void * with u64 in data structure shared between
brocade user space libraries and the bfa driver to address pointer
size changes across 32-bit vs 64-bit to have the compatibility between
32bit library and 64bit driver and vice versa.
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Root cause: When kernel crashes, On brocade 815/825 adapters,
bfa IOC state machine and FW doesn't get a notification and
hence are not cleanly shutdown. So registers holding driver/IOC
state information are not reset back to valid disabled/parking
values. This causes subsequent driver initialization to fail
during kdump kernel boot.
Fix description: during the initialization of first PCI function, reset
corresponding register when unclean shutown is detect by reading chip
registers. This will make sure that ioc/fw gets clean re-initialization.
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Retry FDISC a max of 6 times. Introduce new events to handle vport
login fails due to max logins to fabric/switch.
Signed-off-by: Anil Gurumurthy <[email protected]>
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
On Xen kernels, if ATC (address translation cache) is enabled, the
first PCIe DMA read from the adapter fails with an error. This is due to
a bug ASIC, which leads to a failure of 1860 ports to be initialised.
This patch includes the fix to disable Invalidated Tag Match Enable
capability by setting the bit 26 of CHIP_MISC_PRG to 0, by default it is
set to 1.
Signed-off-by: Anil Gurumurthy <[email protected]>
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Update addl. fields in FDMI to confirm to FC-GS6 standard for RPA and
RHBA commands.
Signed-off-by: Anil Gurumurthy <[email protected]>
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
The WARN_ON condition check in IO completion path is wrong. IOtags
returned by the firmware is compared with driver/bfa iotag after masking
the retry count bits.
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
D-Port is a new port type created with the intention of running link
level diagnostic tests like loopback, traffic test. In static D-port
mode, user configures the port to D-port mode and starts the test, but
in dynamic D-port, once the Brocade switch port is configured to
D-port, it will reject the regular FLOGI from HBA with reason that it is
in D-port mode. So based on the reason code HBA port will turn itself into
D-port and start diagnostic test.
Signed-off-by: Sudarsana Reddy Kalluru <[email protected]>
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
This patch includes changes to get FC HBA feature Forward Error
Correction (FEC) (enabled at 16Gig speed) status from firmware and to
return to brocade HBA management utility.
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
This patch includes changes to 1) Enable/disable fc credit recovery on
Brocade FC adapter port operating at max supported speed. 2) Get credit
recovery status and stats related to credit loss and recovered credits
Signed-off-by: Vijaya Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
The 'ctl' field of the 'struct ata_taskfile' is not really dual purpose, i.e.
it is not intended for storing the alternate status register (which is mapped
at the same address in the legacy IDE controllers) in the qc_fill_rtf() method.
No other 'libata' driver except 'drivers/scsi/ipr.c' stores the alternate status
register's value in the 'ctl' field of 'qc->result_tf', hence this driver should
not do this as well...
Signed-off-by: Sergei Shtylyov <[email protected]>
Acked-by: Brian King <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
modifications
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
FCF rediscovery
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
memory mbox command
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
linked list
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
list debug
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
buffer error condition
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: James Smart <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
When enable lockdep, seeing "possible irq lock inversion dependency detected"
error. This patch fixes the issue.
Signed-off-by: Wen Xiong <[email protected]>
Acked-by: Brian King <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: Karen Xie <[email protected]>
Reviewed-by: Mike Christie <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Commit 39c60a0948cc '[SCSI] sd: fix array cache flushing bug causing
performance problems' added temp as a pointer to "temporary " and used
sizeof(temp) - 1 as its length. But sizeof(temp) is the size of the
pointer, not the size of the string constant. Change temp to a static
array so that sizeof() does what was intended.
Signed-off-by: Ben Hutchings <[email protected]>
Cc: [email protected]
Signed-off-by: James Bottomley <[email protected]>
|
|
This patch fixes two cppcheck errors in drivers/scsi/bfa/bfad_im.c
[jejb: correct strlcpy fix]
Signed-off-by: Jakob Normark <[email protected]>
Acked-by: Vijay Mohan Guvva <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
fcoe_xmit was coded such that it would skip the vlan net device/layer
and instead set some vlan flags and transmit on the real net device.
The real net device has code that would add the vlan tag for fcoe skbs.
This avoids some extra processing for data frames and provides a small
performance improvement.
Since fcoe_xmit was not using the vlan net device, __vlan_put_tag
within the real net device's xmit routine was ultimately being
called to set the vlan tag.
With the below change the behavior of __vlan_put_tag changed slightly,
it now sets the skb->protocol = vlan_proto. vlan_proto was not a field
being set by fcoe_xmit, so the skb->protocol is now not being set to
ETH_P_8021Q, as it should be.
This patch converts fcoe_xmit to use the vlan_put_tag routine which
will tag the skb and fcoe will continue to transmit fcoe skbs on the
real net device.
For reference, the below change was the one that altered the
__vlan_put_tag behavior.
commit 86a9bad3ab6b6f858fd4443b48738cabbb6d094c
Author: Patrick McHardy <[email protected]>
Date: Fri Apr 19 02:04:30 2013 +0000
net: vlan: add protocol argument to packet tagging functions
Add a protocol argument to the VLAN packet tagging functions. In case of HW
tagging, we need that protocol available in the ndo_start_xmit functions,
so it is stored in a new field in the skb. The new field fits into a hole
(on 64 bit) and doesn't increase the sks's size.
Signed-off-by: Robert Love <[email protected]>
Acked-by: Neil Horman <[email protected]>
Acked-by: John Fastabend <[email protected]>
|
|
Signed-off-by: Sumit Saxena <[email protected]>
Signed-off-by: Kashyap Desai <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Add support to differentiate between iMR(no external memory) and MR(with
external memory) controllers.
Signed-off-by: Sumit Saxena <[email protected]>
Signed-off-by: Kashyap Desai <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
MegaRAID older Firmware does not support uneven span configuration for PRL11.
E.g User wants to create 34 Driver PRL11 config, it was not possible using old
firmware, since it was not supported configuration in old firmware
Old Firmware expect even number of Drives in each span and same number of
physical drives at each span. Considering above design, 17 Drives at Span-0
and 17 drives at span-1 was not possible.
Now, using this new feature Firmware and Driver both required changes. New
Firmware can allow user to create 16 Drives at span-0 and 18 Drives at
span-1. This will allow user to create 34 Drives Uneven span PRL11.
RAID map is interface between Driver and FW to fetch all required
fields(attributes) for each Virtual Drives. Since legacy RAID map consider
Even Span design, there was no place to keep Uneven span information in
existing Raid map. Because of this limitation, for Uneven span VD, driver can
not use RAID map.
This patch address the changes required in Driver to support Uneven span PRL11
support.
1. Driver will find if Firmware has UnevenSpanSupport or not by reading
Controller Info.
2. If Firmware has UnvenSpan PRL11 support, then Driver will inform about its
capability of handling UnevenSpan PRL11 to the firmware.
3. Driver will update its copy of span info on each time Raid map update is
called.
4. Follow different IO path if it is Uneven Span. (For Uneven Span, Driver
uses Span Set info to find relavent fields for that particular Virtual
Disk)
More verbose prints will be available by setting "SPAN_DEBUG" to 1 at
compilation time.
Signed-off-by: Sumit Saxena <[email protected]>
Signed-off-by: Kashyap Desai <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
controller
This Driver will use more than 8 MSI-x support provided by Invader/Fury max
upto 128 MSI-x.
[jejb: fix checkpatch warning]
Signed-off-by: Sumit Saxena <[email protected]>
Signed-off-by: Kashyap Desai <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
controllers
Signed-off-by: Sumit Saxena <[email protected]>
Signed-off-by: Kashyap Desai <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Signed-off-by: Sumit Saxena <[email protected]>
Signed-off-by: Kashyap Desai <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
controllers
Signed-off-by: Sumit Saxena <[email protected]>
Signed-off-by: Kashyap Desai <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|
|
Tape devices
Signed-off-by: Sumit Saxena <[email protected]>
Signed-off-by: Kashyap Desai <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
|