From: Christophe JAILLET
We know that 'ret' is not an error code because it has been tested a few
lines above.
So, if one of these function fails, 0 will be returned instead of an error
code.
Return -ENOMEM instead.
Signed-off-by: Christophe JAILLET
'ret' needs to be set with error code if hba
Julia pointed out beiscsi_boot_get_sinfo does not unlock
mbox_lock on nonemb_cmd memory allocation failure.
Signed-off-by: Jitendra Bhivare
---
drivers/scsi/be2iscsi/be_mgmt.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/scsi/be2iscsi/be_mgmt.c b/drivers/scsi/be
These patches address some auto built issues of 11.2.0.0 be2iscsi
committed in 4.9/scsi-queue.
v2 changes:
Added NULL check for pwrb_handle in PATCH v2 2/3
Christophe JAILLET (1):
be2iscsi: Fix error return code
Jitendra Bhivare (2):
be2iscsi: Remove redundant iscsi_wrb desc memset
be2iscs
alloc_wrb_handle already does memset zero of iscsi_wrb descriptor so
remove redundant memset in WRB submission paths.
Add pwrb_handle NULL check before memsett'ing pwrb.
Signed-off-by: Jitendra Bhivare
---
drivers/scsi/be2iscsi/be_main.c | 5 +++--
drivers/scsi/be2iscsi/be_mgmt.c | 3 ---
2 fil
If the ses driver receives a UNIT ATTENTION when issuing
a receive diagnostics while probing a SES device, it
fails to attach with messages such as:
scsi 1:0:7:0: Failed to get diagnostic page 0x802
scsi 1:0:7:0: Failed to bind enclosure -19
Fix this by eating unit attentions for these comma
We should be using the configured R_A_TOV value when sending the
exchange.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_exch.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/libfc/fc_exch.c b/drivers/scsi/libfc/fc_exch.c
index f178084..7d0e7ca 100644
When the port is already started we don't need to login; that
will only confuse the state machine.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_rport.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/drivers/scsi/libfc/fc_rport.c b/drivers/scsi/libfc/fc_rport.c
index a37b37
When the queue depth is reduced we should print out the reason
for this; it might be due to a queue full condition.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_fcp.c | 12 +---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/libfc/fc_fcp.c b/driver
When a command is aborted it might already have the DID_TIME_OUT
status set, so we shouldn't be overwriting that.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_fcp.c | 12 +---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/libfc/fc_fcp.c b/drivers/
When we receive an FLOGI but have already sent our own we should
not advance the state machine but rather wait for our FLOGI to
return before continuing with PLOGI.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_rport.c | 18 --
1 file changed, 12 insertions(+), 6 delet
When setting the FCP timeout we need to ensure a lower boundary
for E_D_TOV and R_A_TOV, otherwise we'd be getting spurious I/O
issues due to the fcp timer firing too early.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_fcp.c | 9 +
drivers/scsi/libfc/fc_lport.c | 8 +---
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_exch.c | 59 +++
drivers/scsi/libfc/fc_fcp.c | 39 +++-
drivers/scsi/libfc/fc_rport.c | 20 ---
3 files changed, 97 insertions(+), 21 deletions(-)
diff --git a/
If fc_rport_error_retry() is attempting to retry the remote
port state we should be waiting for the configured e_d_tov
value rather than the default.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_rport.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/
We only ever use the 'fp' argument for fc_rport_error() to
encapsulate the error code, so we can as well do away with that
and pass the error directly.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_rport.c | 97 +--
include/scsi/libfc.h
When a sequence times out we have no idea what happened to the
frame. And we do not know if we will ever receive the frame.
Hence we cannot re-use the xid as we would risk data corruption
if the xid had been re-used and the timed out frame would be
received after that.
So we need to quarantine the
The cached exchange index might be invalid, in which case
we should drop down to allocate a new one.
And we should not try to access an invalid exchange when
responding to a BA_ABTS.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_exch.c | 21 ++---
1 file changed, 14 in
The list of attached 'rdata' remote port structures is RCU
protected, so there is no need to take the 'disc_mutex' when
traversing it.
Rather we should be using rcu_read_lock() and kref_get_unless_zero()
to validate the entries.
We need, however, take the disc_mutex when deleting an entry;
otherwis
Hi all,
here's a patchset to get VN2VN running on non-DCB fabrics.
With it it's possible to run FCoE VN2VN over virtio, allowing
for a fully virtualized FC testbed. Which would make it ideal
to integrate into Mike's mptest test suite.
It also irons out some generic issues with the libfc stack,
lik
Add additional statements for debugging FIP frames.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/fcoe/fcoe_ctlr.c | 51 ++-
1 file changed, 46 insertions(+), 5 deletions(-)
diff --git a/drivers/scsi/fcoe/fcoe_ctlr.c b/drivers/scsi/fcoe/fcoe_ctlr.c
inde
Occasionally it might happen that we receive a PRLI while we're still
waiting for our PLOGI response. In that case we should return
'busy' LS status instead of 'plogi required' LS status.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_rport.c | 17 +
1 file changed, 17
From: Wei Yongjun
Use kfree_skb() instead of kfree() to free sk_buff.
Signed-off-by: Wei Yongjun
Reviewed-by: Johannes Thumshirn
---
drivers/scsi/fcoe/fcoe_ctlr.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/fcoe/fcoe_ctlr.c b/drivers/scsi/fcoe/fcoe_ctlr.c
The kref handling in fc_rport is a mess. This patch updates
the kref handling according to the following rules:
- Take a reference whenever scheduling a workqueue
- Take a reference whenever an ELS command is send
- Drop the reference at the end of the workqueue function
- Drop the reference at th
Any multicase address is set on all interfaces, the base interface
and any VLAN interface on top of this. So we might receive frames
which are not destined for us but in fact on another VLAN.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/fcoe/fcoe_ctlr.c | 12 +++-
1 file changed, 11 i
When we're receiving a timeout we should be checking for queue
full status; if there are still some packets pending we should
be resetting the counter to ensure we're not missing out any
packets which are still queued.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_fcp.c | 21 +
When receiving packets from the network we cannot guarantee any
frame ordering, so we should be receiving all valid frames and
let the upper layers deal with it.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_exch.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/drivers/scsi/lib
The FIP VLAN frame consists of an ethernet header followed
by the FIP VLAN frame, so we need to skip the ethernet header
if we want to check the FIP opcode.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/fcoe/fcoe.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/s
If DCB is not enabled or compiled in we still should be setting
a sane default priority. So put FCoE frames in priority class
'interactive' and FIP frames in priority class 'besteffort'.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/fcoe/fcoe.c | 8 ++--
1 file changed, 6 insertions(+), 2
The user might want to modify the values for R_A_TOV and E_D_TOV,
so add new module parameters 'e_d_tov' and 'r_a_tov' for the
'fcoe' modules and allow to modify them via sysfs attributes.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/fcoe/fcoe.c | 12 +--
drivers/scsi/fcoe/fcoe_sysf
If a command times out libfc is sending an REC, which also
might fail (due to frames being lost or something).
If no data has been transferred we can simply retry
the command, but the current code sets a state of FC_ERROR,
which then is being translated into DID_ERROR, resulting
in an I/O error.
So
The 'enabled' sysfs attribute only accepts the values '0' and '1',
so we should error out any other values.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/fcoe/fcoe_sysfs.c | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/fcoe/fcoe_sysfs.c b/drivers
If a sequence should be aborted the exchange might already
be completed (eg if the response is still queued in the rx
queue), so this shouldn't considered as an error.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_fcp.c | 40 ++--
1 file changed, 30
PRLI is only required if the port is acting as an initiator; ports
which support target functionality only do not need to send PRLI.
At the same time the PRLI state is only used if the port initiated
a PRLI transfer; if we received a PRLI request we should _not_
change the state as this would cause
When we fail to allocate a frame we should be sending an LS_RJT
response and not just silently drop the frame altogether.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_rport.c | 27 +++
1 file changed, 19 insertions(+), 8 deletions(-)
diff --git a/drivers/scsi
When fc_rport_login() is called while the rport is not
in RPORT_ST_INIT, RPORT_ST_READY, or RPORT_ST_DELETE
login is already in progress and there's no need to
drop down to FLOGI; doing so will only confuse the
other side.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_rport.c | 6
When detecting an out-of-order sequence we should be waiting for
E_D_TOV before trying to abort the sequence.
The response might still be stuck in the queue somewhere.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_fcp.c | 38 --
1 file changed, 20 i
The libfc stack generates an RTV request, so we should be implementing
an RTV responder, too.
Signed-off-by: Hannes Reinecke
---
drivers/scsi/libfc/fc_rport.c | 41 -
1 file changed, 40 insertions(+), 1 deletion(-)
diff --git a/drivers/scsi/libfc/fc_rport
On Fri, Aug 26, 2016 at 03:09:06PM +0530, Jitendra Bhivare wrote:
> From: Christophe JAILLET
>
> We know that 'ret' is not an error code because it has been tested a few
> lines above.
> So, if one of these function fails, 0 will be returned instead of an error
> code.
> Return -ENOMEM instead.
>
On Fri, Aug 26, 2016 at 03:09:07PM +0530, Jitendra Bhivare wrote:
> alloc_wrb_handle already does memset zero of iscsi_wrb descriptor so
> remove redundant memset in WRB submission paths.
>
> Add pwrb_handle NULL check before memsett'ing pwrb.
>
> Signed-off-by: Jitendra Bhivare
> ---
Reviewed-b
On Fri, Aug 26, 2016 at 03:09:08PM +0530, Jitendra Bhivare wrote:
> Julia pointed out beiscsi_boot_get_sinfo does not unlock
> mbox_lock on nonemb_cmd memory allocation failure.
>
> Signed-off-by: Jitendra Bhivare
> ---
Reviewed-by: Johannes Thumshirn
--
Johannes Thumshirn
On Fri, Aug 26, 2016 at 02:01:24PM +0200, Hannes Reinecke wrote:
> The kref handling in fc_rport is a mess. This patch updates
> the kref handling according to the following rules:
>
> - Take a reference whenever scheduling a workqueue
> - Take a reference whenever an ELS command is send
> - Drop
On Fri, Aug 26, 2016 at 02:01:23PM +0200, Hannes Reinecke wrote:
> Hi all,
>
> here's a patchset to get VN2VN running on non-DCB fabrics.
> With it it's possible to run FCoE VN2VN over virtio, allowing
> for a fully virtualized FC testbed. Which would make it ideal
> to integrate into Mike's mptes
From: Kevin Barnett
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi.h | 13 +---
drivers/scsi/smartpqi/smartpqi_init.c | 35 +
drivers/scsi/smartpqi/sma
From: Kevin Barnett
minor cleanup of scsi queue command function
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi_init.c |8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/dr
From: Kevin Barnett
reformatted pqi_num_elements_free() to match the rest of the driver
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi_init.c |3 +--
1 file changed, 1 insertion(+), 2 deletions(-
From: Kevin Barnett
Eliminated timeout from LUN reset logic.
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi.h |2 -
drivers/scsi/smartpqi/smartpqi_init.c | 101 +++--
From: Kevin Barnett
Made a couple of error messages more verbose.
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi_init.c |5 +
1 file changed, 5 insertions(+)
diff --git a/drivers/scsi/smartp
From: Kevin Barnett
Take advantage of controller improvements.
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi_init.c | 68 +++--
1 file changed, 39 insertions(+), 29 del
From: Kevin Barnett
Fixed a bug where the driver would not free all of the
controller resources if the controller ever went offline.
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi_init.c | 15 +
From: Kevin Barnett
Removed the workaround for the transition to spanning.
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi_init.c | 38 +
1 file changed, 20 insertion
From: Kevin Barnett
The aacraid driver will not managage Microsemi
smartpqi controllers, but will still manage
older aacraid devices.
Updated help section.
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Reviewed-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/Kconfi
On 7/22/16, 9:03 AM, "Wei Yongjun" wrote:
Using list_move_tail() instead of list_del() + list_add_tail().
Signed-off-by: Wei Yongjun
---
drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
Looks good to me.
--
To unsu
These changes are based on Linus's tree
The changes are:
- simplify aio processing
- simplify tmf macro names
- remove workaround for spanning
- add message for offlined drives
- enhance reset logic
- make some functions in-line
- add support for kdump
- correct issue with offlined control
From: Kevin Barnett
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi_init.c |6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/smartpqi/smartpqi_init.c
b/drivers/
From: Kevin Barnett
minor tweaks to update time support
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi_init.c |8 ++--
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/sc
From: Kevin Barnett
added Documentation/scsi/smartpqi.txt
Reviewed-by: Kevin Barnett
Reviewed-by: Scott Benesh
Signed-off-by: Don Brace
---
MAINTAINERS |1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index f50fe50..d980685 100644
--- a/MAINTAINERS
+++ b/MAINT
From: Kevin Barnett
small change to make code look cleaner
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi.h |6 ++
drivers/scsi/smartpqi/smartpqi_init.c |4 ++--
2 files changed, 4 i
From: Kevin Barnett
Some cache flush operations can take longer than the
timeout value. Best to not impose a time limit to
handle all cases.
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi_init.c |
From: Kevin Barnett
Reviewed-by: Kevin Barnett
Reviewed-by: Scott Benesh
Signed-off-by: Don Brace
---
Documentation/scsi/smartpqi.txt | 80 +++
1 file changed, 80 insertions(+)
create mode 100644 Documentation/scsi/smartpqi.txt
diff --git a/Documentatio
From: Kevin Barnett
the driver no longer waits for the firmware to consume
the event ack IU.
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi.h | 14 +++---
drivers/scsi/smartpqi/smartpq
From: Kevin Barnett
A tiny tweak to convert a small, commonly used function to inline.
Reviewed-by: Scott Teel
Reviewed-by: Scott Benesh
Signed-off-by: Kevin Barnett
Signed-off-by: Don Brace
---
drivers/scsi/smartpqi/smartpqi_init.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
If an error status is passed to target_complete_cmd, then by default it
queues the command to target_complete_failure_work, which will generate
Logical Unit Communication Failure sense data, overwriting any sense data
already set in the command. This means that any sense data returned by
TCMU does
On 2016-08-19 06:43 PM, Paul Burton wrote:
Calculating the maximum timeout that a user can set via the
SG_SET_TIMEOUT ioctl involves multiplying INT_MAX by USER_HZ/HZ. If
USER_HZ is larger than HZ then this results in an overflow when
performed as a 32 bit integer calculation, resulting in compil
On 2016-08-19 06:43 PM, Paul Burton wrote:
The MULDIV macro is essentially a duplicate of the more standard
mult_frac macro. Replace use of MULDIV with mult_frac & drop the
duplication.
Signed-off-by: Paul Burton
I spoke too soon, as this patch changes the last one :-)
As far as I can determi
With commit 3a0f64bfa907 ("mac_scsi: Fix pseudo DMA implementation")
some versions of gcc now warn:
In file included from drivers/scsi/mac_scsi.c:335:
drivers/scsi/NCR5380.h:295: warning: `NCR5380_poll_politely' declared inline
after being called
drivers/scsi/NCR5380.h:295: warning: previous decl
Large PIO transfers are broken up into chunks to try to avoid disabling
local IRQs for long periods. But IRQs are still disabled for too long
and this causes SCC FIFO overruns during serial port transfers. This
patch fixes the problem by halving the PIO chunk size.
Testing with mac_scsi shows that
The driver that used the 'nodisconnect' parameter was removed in
commit 565bae6a4a8f ("[SCSI] 53c7xx: kill driver"). Related documentation
was cleaned up in commit f37a7238d379 ("[SCSI] 53c7xx: fix removal
fallout"), except for the remaining two mentions that are removed here.
Signed-off-by: Finn
Miscellaneous small patches for an interrupt latency issue,
a compiler warning and a documentation cleanup.
---
Documentation/kernel-parameters.txt|2 --
Documentation/scsi/scsi-parameters.txt |2 --
drivers/scsi/NCR5380.c | 13 +++--
drivers/scsi/NCR5380.h
67 matches
Mail list logo