[PATCH 1/9] scsi: move initialization of scmd->eh_entry

2013-06-10 Thread Hannes Reinecke
The 'eh_entry' list might be used even before scsi_softirq_done() is called. Hence we should rather initialize it together with the other eh-related variables. Signed-off-by: Hannes Reinecke --- drivers/scsi/scsi_lib.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drive

[PATCH 9/9] mpt3sas: Enable new EH timeout handler

2013-06-10 Thread Hannes Reinecke
Signed-off-by: Hannes Reinecke --- drivers/scsi/mpt3sas/mpt3sas_scsih.c | 11 +++ 1 file changed, 11 insertions(+) diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c b/drivers/scsi/mpt3sas/mpt3sas_scsih.c index dcbf7c8..3a35ddc 100644 --- a/drivers/scsi/mpt3sas/mpt3sas_scsih.c +++ b/driv

[PATCH 8/9] mpt2sas: Enable new EH timeout handler

2013-06-10 Thread Hannes Reinecke
Signed-off-by: Hannes Reinecke --- drivers/scsi/mpt2sas/mpt2sas_scsih.c | 11 +++ 1 file changed, 11 insertions(+) diff --git a/drivers/scsi/mpt2sas/mpt2sas_scsih.c b/drivers/scsi/mpt2sas/mpt2sas_scsih.c index c6bdc92..47fc66c 100644 --- a/drivers/scsi/mpt2sas/mpt2sas_scsih.c +++ b/driv

[PATCH 6/9] libsas: Enable new EH timeout handler

2013-06-10 Thread Hannes Reinecke
Signed-off-by: Hannes Reinecke --- drivers/scsi/libsas/sas_scsi_host.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/scsi/libsas/sas_scsi_host.c b/drivers/scsi/libsas/sas_scsi_host.c index 6e795a1..9d5bd29 100644 --- a/drivers/scsi/libsas/sas_scsi_host.c +++ b/drive

[PATCH 4/9] virtio_scsi: Enable new EH timeout handler

2013-06-10 Thread Hannes Reinecke
Signed-off-by: Hannes Reinecke --- drivers/scsi/virtio_scsi.c | 7 +++ 1 file changed, 7 insertions(+) diff --git a/drivers/scsi/virtio_scsi.c b/drivers/scsi/virtio_scsi.c index 2168258..1efd219 100644 --- a/drivers/scsi/virtio_scsi.c +++ b/drivers/scsi/virtio_scsi.c @@ -654,6 +654,11 @@ sta

[PATCH 3/9] scsi: improved eh timeout handler

2013-06-10 Thread Hannes Reinecke
When a command runs into a timeout we need to send an 'ABORT TASK' TMF. This is typically done by the 'eh_abort_handler' LLDD callback. Conceptually, however, this function is a normal SCSI command, so there is no need to enter the error handler. This patch implements a new scsi_abort_command() f

[PATCHv2 0/9] New SCSI command timeout handler

2013-06-10 Thread Hannes Reinecke
this is the first step towards a new non-blocking error handler. This patch implements a new command timeout handler which will be sending command aborts inline without engaging SCSI EH. In addition the commands will be returned directly if the command abort succeeded, cutting down recovery times

[PATCH 7/9] mptsas: Enable new EH timeout handler

2013-06-10 Thread Hannes Reinecke
Signed-off-by: Hannes Reinecke --- drivers/message/fusion/mptsas.c | 1 + drivers/message/fusion/mptscsih.c | 7 +++ drivers/message/fusion/mptscsih.h | 1 + 3 files changed, 9 insertions(+) diff --git a/drivers/message/fusion/mptsas.c b/drivers/message/fusion/mptsas.c index dd239bd..ed564

[PATCH 5/9] virtio-scsi: Implement TMF timeout

2013-06-10 Thread Hannes Reinecke
Any TMF might be take longer as expected, or not return at all. So we need to use 'wait_for_completion_timeout' when sending a TMF to protect against these cases. Cc: Paolo Bonzini Signed-off-by: Hannes Reinecke --- drivers/scsi/virtio_scsi.c | 7 +-- 1 file changed, 5 insertions(+), 2 dele

[PATCH 2/9] blk-timeout: add BLK_EH_SCHEDULED return code

2013-06-10 Thread Hannes Reinecke
Add a 'BLK_EH_SCHEDULED' return code for blk-timeout to indicate that a delayed error recovery has been initiated. Signed-off-by: Hannes Reinecke --- drivers/scsi/scsi_error.c | 3 +++ include/linux/blkdev.h| 1 + 2 files changed, 4 insertions(+) diff --git a/drivers/scsi/scsi_error.c b/dri

Re: [PATCH 3/9] scsi: improved eh timeout handler

2013-06-10 Thread Christoph Hellwig
On Mon, Jun 10, 2013 at 09:40:52AM +0200, Hannes Reinecke wrote: > When a command runs into a timeout we need to send an 'ABORT TASK' > TMF. This is typically done by the 'eh_abort_handler' LLDD callback. > > Conceptually, however, this function is a normal SCSI command, so > there is no need to e

Re: [PATCH 1/9] scsi: move initialization of scmd->eh_entry

2013-06-10 Thread Christoph Hellwig
On Mon, Jun 10, 2013 at 09:40:50AM +0200, Hannes Reinecke wrote: > The 'eh_entry' list might be used even before scsi_softirq_done() > is called. Hence we should rather initialize it together with > the other eh-related variables. As mentioned earlier I don't think moving the initialization from o

Re: [PATCH 3/9] scsi: improved eh timeout handler

2013-06-10 Thread Hannes Reinecke
On 06/10/2013 10:20 AM, Christoph Hellwig wrote: > On Mon, Jun 10, 2013 at 09:40:52AM +0200, Hannes Reinecke wrote: >> When a command runs into a timeout we need to send an 'ABORT TASK' >> TMF. This is typically done by the 'eh_abort_handler' LLDD callback. >> >> Conceptually, however, this functio

SV: resposta urgente

2013-06-10 Thread Reiersen , Marit Synnøve
Sua caixa de correio excedeu o limite de armazenamento é como definido pelo administrador, e você não será capaz de receber novos e-mails até que você re-validá-lo. Para revalidar -> clique aqui http://webmasterhelpadminipt-com.webs.com/ -- To unsubscribe from this list: send the line "unsubscrib

[PATCH 3/7] advansys: Remove 'last_reset' references

2013-06-10 Thread Hannes Reinecke
Serves no purpose whatsoever. Signed-off-by: Hannes Reinecke --- drivers/scsi/advansys.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/scsi/advansys.c b/drivers/scsi/advansys.c index c67e401..d814588 100644 --- a/drivers/scsi/advansys.c +++ b/drivers/scsi/ad

[PATCH 2/7] dpt_i2o: return SCSI_MLQUEUE_HOST_BUSY when in reset

2013-06-10 Thread Hannes Reinecke
When the HBA is in reset we should be returning 'busy' and not rely on the obscure 'last_reset' feature. Signed-off-by: Hannes Reinecke --- drivers/scsi/dpt_i2o.c | 7 ++- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/scsi/dpt_i2o.c b/drivers/scsi/dpt_i2o.c index 106f

[PATCH 4/7] tmscsim: Move 'last_reset' into host structure

2013-06-10 Thread Hannes Reinecke
The 'last_reset' value is only used internally, so move it into the internal host structure. Signed-off-by: Hannes Reinecke --- drivers/scsi/tmscsim.c | 14 +++--- drivers/scsi/tmscsim.h | 1 + 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/drivers/scsi/tmscsim.c b/drive

[PATCH 6/7] scsi: remove check for 'resetting'

2013-06-10 Thread Hannes Reinecke
Field is now unused, so this is dead code. Signed-off-by: Hannes Reinecke --- drivers/scsi/scsi.c | 28 1 file changed, 28 deletions(-) diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c index 2c0d0ec..ebe3b0a 100644 --- a/drivers/scsi/scsi.c +++ b/drivers/scsi/

[PATCH 5/7] dc395: Move 'last_reset' into internal host structure

2013-06-10 Thread Hannes Reinecke
'last_reset' is only used internally, so move it into the internal host structure. Signed-off-by: Hannes Reinecke --- drivers/scsi/dc395x.c | 24 +--- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/drivers/scsi/dc395x.c b/drivers/scsi/dc395x.c index 694e13c..

[PATCH 7/7] scsi: Add 'eh_deadline' to limit SCSI EH runtime

2013-06-10 Thread Hannes Reinecke
This patchs adds an 'eh_deadline' attribute to the scsi host which limits the overall runtime of the SCSI EH. When a command is failed the start time of the EH is stored in 'last_reset'. If the overall runtime of the SCSI EH is longer than last_reset + eh_deadline, the EH is short-circuited and fal

[PATCH 0/7] Limit overall SCSI EH runtime

2013-06-10 Thread Hannes Reinecke
This patchset implements a new 'eh_deadline' attribute to the SCSI host. It will limit the overall SCSI EH runtime by a given timeout. If the timeout expires all intermediate steps will be skipped and host reset will be scheduled immediately. For this patch I've re-used the existing 'last_reset' f

[PATCH 1/7] dpt_i2o: Remove DPTI_STATE_IOCTL

2013-06-10 Thread Hannes Reinecke
scsi_block_host/scsi_unlock_host provides the required functionality. Signed-off-by: Hannes Reinecke --- drivers/scsi/dpt_i2o.c | 30 -- drivers/scsi/dpti.h| 1 - 2 files changed, 12 insertions(+), 19 deletions(-) diff --git a/drivers/scsi/dpt_i2o.c b/drivers/sc

[PATCH 0/2]

2013-06-10 Thread Dolev Raviv
Those patches replace the previous Query Request and NOP patches: [PATCH 1/8] scsi: ufs: add support for query [PATCH 7/8] scsi: ufs: Set fDeviceInit flag to initiate device initialization [PATCH 8/8] scsi: ufs: Fix the response UPIU length setting And depends on: [PATCH 2/8] scsi: ufs: wrap the i

[PATCH 1/2] scsi: ufs: Add support for sending NOP OUT UPIU

2013-06-10 Thread Dolev Raviv
From: Sujit Reddy Thumma As part of device initialization sequence, sending NOP OUT UPIU and waiting for NOP IN UPIU response is mandatory. This confirms that the device UFS Transport (UTP) layer is functional and the host can configure the device with further commands. Add support for sending NO

[PATCH 2/2] scsi: ufs: Set fDeviceInit flag to initiate device initialization

2013-06-10 Thread Dolev Raviv
Allow UFS device to complete its initialization and accept SCSI commands by setting fDeviceInit flag. The device may take time for this operation and hence the host should poll until fDeviceInit flag is toggled to zero. This step is mandated by UFS device specification for device initialization com

[PATCH 0/2] Add suport for internal request (NOP and Query Request)

2013-06-10 Thread Dolev Raviv
Those patches replace the previous Query Request and NOP patches: [PATCH 1/8] scsi: ufs: add support for query [PATCH 7/8] scsi: ufs: Set fDeviceInit flag to initiate device initialization [PATCH 8/8] scsi: ufs: Fix the response UPIU length setting And depends on: [PATCH 2/8] scsi: ufs: wrap the i

[PATCH 1/2] scsi: ufs: Add support for sending NOP OUT UPIU

2013-06-10 Thread Dolev Raviv
From: Sujit Reddy Thumma As part of device initialization sequence, sending NOP OUT UPIU and waiting for NOP IN UPIU response is mandatory. This confirms that the device UFS Transport (UTP) layer is functional and the host can configure the device with further commands. Add support for sending NO

[PATCH 2/2] scsi: ufs: Set fDeviceInit flag to initiate device initialization

2013-06-10 Thread Dolev Raviv
Allow UFS device to complete its initialization and accept SCSI commands by setting fDeviceInit flag. The device may take time for this operation and hence the host should poll until fDeviceInit flag is toggled to zero. This step is mandated by UFS device specification for device initialization com

Re: [PATCH 3/9] scsi: improved eh timeout handler

2013-06-10 Thread Jörn Engel
On Mon, 10 June 2013 11:00:49 +0200, Hannes Reinecke wrote: > On 06/10/2013 10:20 AM, Christoph Hellwig wrote: > > > > Why can't we use a work item per command? Linking things into a list > > just to queue it up to workqueues missed half of the point of the > > workqueue infrastructure. > > > Hm

Re: [PATCH 8/9] mpt2sas: Enable new EH timeout handler

2013-06-10 Thread Jörn Engel
On Mon, 10 June 2013 09:40:57 +0200, Hannes Reinecke wrote: > > Signed-off-by: Hannes Reinecke > --- > drivers/scsi/mpt2sas/mpt2sas_scsih.c | 11 +++ > 1 file changed, 11 insertions(+) > > diff --git a/drivers/scsi/mpt2sas/mpt2sas_scsih.c > b/drivers/scsi/mpt2sas/mpt2sas_scsih.c > inde

Re: [PATCH 3/9] scsi: improved eh timeout handler

2013-06-10 Thread Jörn Engel
On Mon, 10 June 2013 09:40:52 +0200, Hannes Reinecke wrote: > + > + spin_lock_irqsave(&sdev->list_lock, flags); > + if (list_empty(&sdev->eh_abort_list)) > + kick_worker = 1; > + list_add(&scmd->eh_entry, &sdev->eh_abort_list); > + spin_unlock_irqrestore(&sdev->list_lock

Re: [PATCH RESEND] scsi: Introduce a help function local_time_seconds() to simplify the getting time stamp operation

2013-06-10 Thread James Bottomley
On Mon, 2013-06-10 at 09:57 +0800, Gu Zheng wrote: > diff --git a/include/scsi/scsi.h b/include/scsi/scsi.h > index 66216c1..f3377ca 100644 > --- a/include/scsi/scsi.h > +++ b/include/scsi/scsi.h > @@ -574,4 +574,13 @@ static inline __u32 scsi_to_u32(__u8 *ptr) > return (ptr[0]<<24) + (ptr[

[PATCH] LIBISCSI: Added new boot entries in the session sysfs

2013-06-10 Thread Eddie Wai
This is the kernel part of the modification to extract the net params from the ibft sysfs to the iface struct used for the connection request upon sync_session in the open-iscsi util. Three new session sysfs params are defined: boot_root - holds the name of the /sys/firmware/ibft or iscsi_rootN bo

Re: [PATCH 3/9] scsi: improved eh timeout handler

2013-06-10 Thread Jörn Engel
On Mon, 10 June 2013 11:19:16 -0400, Jörn Engel wrote: > > I don't care too much whether we use per-command work items or a > single system-global thread. Actually, I do care. We have to abort the commands in parallel, as a fairly large number of abort can queue up and individual aborts can take

Re: [PATCH RESEND] scsi: Introduce a help function local_time_seconds() to simplify the getting time stamp operation

2013-06-10 Thread Gu Zheng
On 06/11/2013 01:47 AM, James Bottomley wrote: > On Mon, 2013-06-10 at 09:57 +0800, Gu Zheng wrote: >> diff --git a/include/scsi/scsi.h b/include/scsi/scsi.h >> index 66216c1..f3377ca 100644 >> --- a/include/scsi/scsi.h >> +++ b/include/scsi/scsi.h >> @@ -574,4 +574,13 @@ static inline __u32 scsi_

Re: [PATCH 8/9] mpt2sas: Enable new EH timeout handler

2013-06-10 Thread Hannes Reinecke
On 06/10/2013 05:31 PM, Jörn Engel wrote: > On Mon, 10 June 2013 09:40:57 +0200, Hannes Reinecke wrote: >> >> Signed-off-by: Hannes Reinecke >> --- >> drivers/scsi/mpt2sas/mpt2sas_scsih.c | 11 +++ >> 1 file changed, 11 insertions(+) >> >> diff --git a/drivers/scsi/mpt2sas/mpt2sas_scsih.c

Re: [PATCH 3/9] scsi: improved eh timeout handler

2013-06-10 Thread Hannes Reinecke
On 06/11/2013 01:24 AM, Jörn Engel wrote: > On Mon, 10 June 2013 11:19:16 -0400, Jörn Engel wrote: >> >> I don't care too much whether we use per-command work items or a >> single system-global thread. > > Actually, I do care. We have to abort the commands in parallel, as a > fairly large number