[PATCH 3/3] ipr: Wait for aborted command responses

2014-10-30 Thread Brian King
Fixes a race condition in abort handling that was injected when multiple interrupt support was added. When only a single interrupt is present, the adapter guarantees it will send responses for aborted commands prior to the response for the abort command itself. With multiple interrupts, these resp

[PATCH 2/3] ipr: set coherent DMA mask

2014-10-30 Thread Brian King
From: Anton Blanchard Use dma_set_mask_and_coherent() to set both the DMA and coherent DMA mask. Signed-off-by: Anton Blanchard Signed-off-by: Brian King --- drivers/scsi/ipr.c | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff -puN drivers/scsi/ipr.c~ipr_set_coherent

[PATCH 1/3] ipr: Convert to generic DMA API

2014-10-30 Thread Brian King
From: Anton Blanchard Even though the ipr driver is only used on PCI, convert it to use the generic DMA API. Signed-off-by: Anton Blanchard Signed-off-by: Brian King --- drivers/scsi/ipr.c | 103 +++-- drivers/scsi/ipr.h |2 - 2 files cha

Re: blk-mq problem on proliant DL380 G3 (cciss)

2014-10-30 Thread Christoph Hellwig
On Thu, Oct 30, 2014 at 07:32:52PM +0200, Meelis Roos wrote: > > can you try the patch below? It's a hack and not a proper fix, but it > > addresses what seems to be your culprit, given that it is the only > > place allocating a request from the error handler. > > Applied it on top of 3.18-rc2, b

Re: [PATCH v2 12/12] IB/srp: Add multichannel support

2014-10-30 Thread Sagi Grimberg
On 10/30/2014 5:19 PM, Bart Van Assche wrote: On 10/30/14 16:06, Sagi Grimberg wrote: I'm not aware of any implicit interrupt coalescing effect... In case it was not clear what I was referring to: if multiple completion queue handling routines run on the same CPU then the average number of wor

Re: blk-mq problem on proliant DL380 G3 (cciss)

2014-10-30 Thread Meelis Roos
> can you try the patch below? It's a hack and not a proper fix, but it > addresses what seems to be your culprit, given that it is the only > place allocating a request from the error handler. Applied it on top of 3.18-rc2, booted with scsi_mod.use_blk_mq=1 and it booted up fine. > diff --git

Re: [PATCH 1/1 linux-next] hpsa: remove set but unused variable rc

2014-10-30 Thread Christoph Hellwig
On Thu, Oct 30, 2014 at 10:21:05AM -0500, Don Brace wrote: > I can add this patch to my current set of patches for 3.19 or ack this now, > What would you prefer? Please queue it up, I'm much more interested in reducing the massive backlog of real hpsa changes than in litte cleanups at the moment.

Re: [PATCH 1/1 linux-next] hpsa: remove set but unused variable rc

2014-10-30 Thread Don Brace
On 10/29/2014 10:15 AM, Fabian Frederick wrote: Fix -Wunused-but-set-variable warning Signed-off-by: Fabian Frederick --- drivers/scsi/hpsa.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c index cef5d49..34330e1 100644 --- a/

Re: blk-mq problem on proliant DL380 G3 (cciss)

2014-10-30 Thread Christoph Hellwig
Meelis, can you try the patch below? It's a hack and not a proper fix, but it addresses what seems to be your culprit, given that it is the only place allocating a request from the error handler. diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c index fa7b5ec..5804ea0 100644 --

Re: [PATCH v2 12/12] IB/srp: Add multichannel support

2014-10-30 Thread Bart Van Assche
On 10/30/14 16:06, Sagi Grimberg wrote: I'm not aware of any implicit interrupt coalescing effect... In case it was not clear what I was referring to: if multiple completion queue handling routines run on the same CPU then the average number of work completions processed by each completion ha

Re: [PATCH v3 11/11] IB/srp: Fix a race condition triggered by destroying a queue pair

2014-10-30 Thread Sagi Grimberg
On 10/30/2014 4:53 PM, Bart Van Assche wrote: On 10/30/14 15:26, Sagi Grimberg wrote: On 10/30/2014 3:50 PM, Bart Van Assche wrote: +/* Destroying a QP and reusing ch->done is only safe if not connected */ +WARN_ON_ONCE(target->connected); I thought we agreed that cannot happen. I gue

Re: [PATCH v2 12/12] IB/srp: Add multichannel support

2014-10-30 Thread Sagi Grimberg
On 10/30/2014 4:36 PM, Bart Van Assche wrote: On 10/30/14 15:19, Sagi Grimberg wrote: My impression here that in the default settings, on a 1 NUMA node with 8 cores, 2 different srp connections (using 4 channels each) will be associated with comp vectors 0-3. while it could potentially use vecto

Re: [PATCH v3 11/11] IB/srp: Fix a race condition triggered by destroying a queue pair

2014-10-30 Thread Bart Van Assche
On 10/30/14 15:26, Sagi Grimberg wrote: On 10/30/2014 3:50 PM, Bart Van Assche wrote: +/* Destroying a QP and reusing ch->done is only safe if not connected */ +WARN_ON_ONCE(target->connected); I thought we agreed that cannot happen. I guess I don't mind keeping it... BTW, were you abl

Re: [PATCH v2 12/12] IB/srp: Add multichannel support

2014-10-30 Thread Bart Van Assche
On 10/30/14 15:19, Sagi Grimberg wrote: My impression here that in the default settings, on a 1 NUMA node with 8 cores, 2 different srp connections (using 4 channels each) will be associated with comp vectors 0-3. while it could potentially use vectors 4-7 and reduce possible mutual interference.

Re: [PATCH v3 09/11] IB/srp: Use block layer tags

2014-10-30 Thread Sagi Grimberg
On 10/30/2014 3:48 PM, Bart Van Assche wrote: Since the block layer already contains functionality to assign a tag to each request, use that functionality instead of reimplementing that functionality in the SRP initiator driver. This change makes the free_reqs list superfluous. Hence remove that

Re: [PATCH v3 06/11] IB/srp: Avoid that I/O hangs due to a cable pull during LUN scanning

2014-10-30 Thread Sagi Grimberg
On 10/30/2014 3:47 PM, Bart Van Assche wrote: If a cable is pulled during LUN scanning it can happen that the SRP rport and the SCSI host have been created but no LUNs have been added to the SCSI host. Since multipathd only sends SCSI commands to a SCSI target if one or more SCSI devices are pres

Re: [PATCH v3 11/11] IB/srp: Fix a race condition triggered by destroying a queue pair

2014-10-30 Thread Sagi Grimberg
On 10/30/2014 3:50 PM, Bart Van Assche wrote: At least LID reassignment can trigger a race condition in the SRP initiator driver, namely the receive completion handler trying to post a request on a QP during or after QP destruction and before the CQ's have been destroyed. Avoid this race by modif

Re: [PATCH v2 12/12] IB/srp: Add multichannel support

2014-10-30 Thread Sagi Grimberg
On 10/29/2014 2:36 PM, Bart Van Assche wrote: On 10/21/14 11:14, Sagi Grimberg wrote: On 10/7/2014 4:07 PM, Bart Van Assche wrote: spin_lock_irqsave(&ch->lock, flags); ch->req_lim += be32_to_cpu(rsp->req_lim_delta); @@ -1906,7 +1970,7 @@ static int srp_queuecommand(s

Re: [PATCH v2 12/12] IB/srp: Add multichannel support

2014-10-30 Thread Sagi Grimberg
On 10/29/2014 12:52 PM, Bart Van Assche wrote: On 10/28/14 19:32, Sagi Grimberg wrote: On 10/21/2014 12:10 PM, Sagi Grimberg wrote: On 10/20/2014 3:56 PM, Bart Van Assche wrote: On 10/19/14 19:36, Sagi Grimberg wrote: On 10/7/2014 4:07 PM, Bart Van Assche wrote: * comp_vector, a nu

[PATCH v3 0/11] IB/srp: Add multichannel support

2014-10-30 Thread Bart Van Assche
Although the SRP protocol supports multichannel operation, although since considerable time RDMA HCA's are available that support multiple completion vectors and although multichannel operation yields better performance than using a single channel, the Linux SRP initiator does not yet support m

[PATCH v3 11/11] IB/srp: Fix a race condition triggered by destroying a queue pair

2014-10-30 Thread Bart Van Assche
At least LID reassignment can trigger a race condition in the SRP initiator driver, namely the receive completion handler trying to post a request on a QP during or after QP destruction and before the CQ's have been destroyed. Avoid this race by modifying a QP into the error state and by waiting un

[PATCH v3 10/11] IB/srp: Add multichannel support

2014-10-30 Thread Bart Van Assche
Improve performance by using multiple RDMA/RC channels per SCSI host for communication with an SRP target. About the implementation: - Introduce a loop over all channels in the code that uses target->ch. - Set the SRP_MULTICHAN_MULTI flag during login for the creation of the second and subseque

[PATCH v3 09/11] IB/srp: Use block layer tags

2014-10-30 Thread Bart Van Assche
Since the block layer already contains functionality to assign a tag to each request, use that functionality instead of reimplementing that functionality in the SRP initiator driver. This change makes the free_reqs list superfluous. Hence remove that list. Signed-off-by: Bart Van Assche Cc: Sagi

[PATCH v3 07/11] IB/srp: Introduce two new srp_target_port member variables

2014-10-30 Thread Bart Van Assche
Introduce the srp_target_port member variables 'sgid' and 'pkey'. Change the type of 'orig_dgid' from __be16[8] into union ib_gid. This patch does not change any functionality but makes the "Separate target and channel variables" patch easier to verify. Signed-off-by: Bart Van Assche Reviewed-by:

[PATCH v3 08/11] IB/srp: Separate target and channel variables

2014-10-30 Thread Bart Van Assche
Changes in this patch: - Move channel variables into a new structure (struct srp_rdma_ch). - Add an srp_target_port pointer, 'lock' and 'comp_vector' members in struct srp_rdma_ch. - Add code to initialize these three new member variables. - Many boring "target->" into "ch->" changes. - The cm_id

[PATCH v3 06/11] IB/srp: Avoid that I/O hangs due to a cable pull during LUN scanning

2014-10-30 Thread Bart Van Assche
If a cable is pulled during LUN scanning it can happen that the SRP rport and the SCSI host have been created but no LUNs have been added to the SCSI host. Since multipathd only sends SCSI commands to a SCSI target if one or more SCSI devices are present and since there is no keepalive mechanism fo

[PATCH v3 05/11] IB/srp: Remove stale connection retry mechanism

2014-10-30 Thread Bart Van Assche
Attempting to connect three times may be insufficient after an initiator system tries to relogin, especially if the relogin attempt occurs before the SRP target service ID has been registered. Since the srp_daemon retries a failed login attempt anyway, remove the stale connection retry mechanism.

[PATCH v3 04/11] IB/srp: Move ib_destroy_cm_id() call into srp_free_ch_ib()

2014-10-30 Thread Bart Van Assche
The patch that adds multichannel support into the SRP initiator driver introduces an additional call to srp_free_ch_ib(). This patch helps to keep that later patch simple. Signed-off-by: Bart Van Assche Reviewed-by: Sagi Grimberg Cc: Sebastian Parschauer --- drivers/infiniband/ulp/srp/ib_srp.c

[PATCH v3 03/11] scsi_tcq.h: Add support for multiple hardware queues

2014-10-30 Thread Bart Van Assche
Modify scsi_find_tag() and scsi_host_find_tag() such that these functions can translate a tag generated by blk_mq_unique_tag(). Signed-off-by: Bart Van Assche Reviewed-by: Martin K. Petersen Cc: Christoph Hellwig Cc: Sagi Grimberg --- include/scsi/scsi_tcq.h | 19 +++ 1 file c

[PATCH v3 02/11] scsi-mq: Add support for multiple hardware queues

2014-10-30 Thread Bart Van Assche
Allow a SCSI LLD to declare how many hardware queues it supports by setting Scsi_Host.nr_hw_queues before calling scsi_add_host(). Signed-off-by: Bart Van Assche Reviewed-by: Sagi Grimberg Reviewed-by: Martin K. Petersen --- drivers/scsi/scsi_lib.c | 2 +- include/scsi/scsi_host.h | 8 +++

[PATCH v3 01/11] blk-mq: Add blk_mq_unique_tag()

2014-10-30 Thread Bart Van Assche
The queuecommand() callback functions in SCSI low-level drivers need to know which hardware context has been selected by the block layer. Since this information is not available in the request structure, and since passing the hctx pointer directly to the queuecommand callback function would require

Re: [PATCH 1/2] ipr: Convert to generic DMA API

2014-10-30 Thread Brian King
On 10/30/2014 04:11 AM, Christoph Hellwig wrote: > On Wed, Oct 29, 2014 at 12:34:49PM -0500, Brian King wrote: >> Acked-by: Brian King > > Doesn't apply to me. > > Brain, can you please resend a rebased version of these two patches with > ipr error handlign patch (and anything else ipr related)?

Re: blk-mq problem on proliant DL380 G3 (cciss)

2014-10-30 Thread Meelis Roos
> >> On Wed, Oct 29, 2014 at 09:08:46AM -0600, Jens Axboe wrote: > Another test server with MPT SCSI RAID has similar problem, > scsi_mode.use_blk_mq=0 cures it but I can not get good trace (no serail > console). 3.18.0-rc2-00043-gf7e87a4 was tested there. > >>> > >>> The first issue

Re: device handler cleanups V2

2014-10-30 Thread Christoph Hellwig
On Thu, Oct 30, 2014 at 10:39:46AM +0100, Hannes Reinecke wrote: > Enumeration appears to be skewed; two patches with 3/6 but none with > 5/6 ... Everything seems correct in my linux-scsi folder. -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to

Re: [PATCH 3/6] sd: fix up ->compat_ioctl

2014-10-30 Thread Hannes Reinecke
On 10/30/2014 10:27 AM, Christoph Hellwig wrote: > No need to verify the passthrough ioctls, the real handler will > take care of that. Also make sure not to block for resets on > O_NONBLOCK fds. > > Signed-off-by: Christoph Hellwig Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes R

Re: device handler cleanups V2

2014-10-30 Thread Hannes Reinecke
On 10/30/2014 10:19 AM, Christoph Hellwig wrote: > This series contains a couple easy cleanups for the device handler > infrastructure. I think some more work could be done in the longer run, > e.g. by using a class_device interface to attach to the scsi_device, > similar to how the /dev/sg device

Re: [PATCH 1/6] scsi: refactor scsi_reset_provider handling

2014-10-30 Thread Hannes Reinecke
On 10/30/2014 10:27 AM, Christoph Hellwig wrote: > Pull the common code from the two callers into the function, > and renamed it to scsi_ioctl_reset. > > Signed-off-by: Christoph Hellwig Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h..

[PATCH 3/6] sd: fix up ->compat_ioctl

2014-10-30 Thread Christoph Hellwig
No need to verify the passthrough ioctls, the real handler will take care of that. Also make sure not to block for resets on O_NONBLOCK fds. Signed-off-by: Christoph Hellwig --- drivers/scsi/sd.c | 28 1 file changed, 8 insertions(+), 20 deletions(-) diff --git a/d

[PATCH 1/6] scsi: refactor scsi_reset_provider handling

2014-10-30 Thread Christoph Hellwig
Pull the common code from the two callers into the function, and renamed it to scsi_ioctl_reset. Signed-off-by: Christoph Hellwig --- drivers/scsi/scsi_error.c | 76 ++- drivers/scsi/scsi_ioctl.c | 33 +--- drivers/scsi/sg.c | 3

[PATCH 6/6] scsi: return EAGAIN when resetting a device under EH

2014-10-30 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig --- drivers/scsi/scsi_ioctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/scsi/scsi_ioctl.c b/drivers/scsi/scsi_ioctl.c index 712f159..c4f7b56 100644 --- a/drivers/scsi/scsi_ioctl.c +++ b/drivers/scsi/scsi_ioctl.c @@ -278,7 +278,7 @

[PATCH 4/6] st: call scsi_set_medium_removal directly

2014-10-30 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig --- drivers/scsi/st.c | 13 ++--- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/drivers/scsi/st.c b/drivers/scsi/st.c index 7d2e036..e46e02b2 100644 --- a/drivers/scsi/st.c +++ b/drivers/scsi/st.c @@ -861,17 +861,16 @@ static int set_mode_d

[PATCH 2/6] scsi: split scsi_nonblockable_ioctl

2014-10-30 Thread Christoph Hellwig
The calling conventions for this function where bad as it could return -ENODEV both for a device not currently online and a not recognized ioctl. Add a new scsi_ioctl_block_when_processing_errors function that wraps scsi_block_when_processing_errors with the a special case for the SG_SCSI_RESET io

[PATCH 5/6] osst: call scsi_set_medium_removal directly

2014-10-30 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig --- drivers/scsi/osst.c | 13 ++--- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/drivers/scsi/osst.c b/drivers/scsi/osst.c index b6d63d6..8c38464 100644 --- a/drivers/scsi/osst.c +++ b/drivers/scsi/osst.c @@ -3327,19 +3327,18 @@ static int

misc scsi ioctl updates V2

2014-10-30 Thread Christoph Hellwig
This series (against the core-for-3.19 branch) deals with various issues realated to scsi-ioctls, mostly with the SG_SCSI_RESET ioctl. Changes since V1: - fix scsi_ioctl_reset return value, pointed out by Bart Van Assche -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" i

[PATCH 5/6] scsi_dh_hp_sw: fix return value on failed allocation

2014-10-30 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig Reviewed-by: Hannes Reinecke --- drivers/scsi/device_handler/scsi_dh_hp_sw.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/scsi/device_handler/scsi_dh_hp_sw.c b/drivers/scsi/device_handler/scsi_dh_hp_sw.c index aa40fcb..471ffd1 1006

[PATCH 4/6] scsi: device handlers must have attach and detach methods

2014-10-30 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig Reviewed-by: Hannes Reinecke --- drivers/scsi/device_handler/scsi_dh.c | 25 + 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/drivers/scsi/device_handler/scsi_dh.c b/drivers/scsi/device_handler/scsi_dh.c index 1a8dbf3..d8

[PATCH 3/6] scsi: remove struct scsi_dh_devlist

2014-10-30 Thread Christoph Hellwig
All drivers now do their own matching, so there is no more need to expose a device list as part of the interface. Signed-off-by: Christoph Hellwig Reviewed-by: Hannes Reinecke --- drivers/scsi/device_handler/scsi_dh_emc.c | 6 -- drivers/scsi/device_handler/scsi_dh_hp_sw.c | 6 -- dri

[PATCH 1/6] scsi_dh: get module reference outside of device handler

2014-10-30 Thread Christoph Hellwig
We need to grab a reference to the module before calling the attach routines to avoid a small race vs module removal. It also cleans up the code significantly as a side effect. Signed-off-by: Christoph Hellwig Reviewed-by: Hannes Reinecke --- drivers/scsi/device_handler/scsi_dh.c | 31 ++

[PATCH 2/6] scsi: use container_of to get at device handler private data

2014-10-30 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig Reviewed-by: Hannes Reinecke --- drivers/scsi/device_handler/scsi_dh_alua.c | 25 + drivers/scsi/device_handler/scsi_dh_emc.c | 24 ++-- drivers/scsi/device_handler/scsi_dh_hp_sw.c | 23 +-- drive

device handler cleanups V2

2014-10-30 Thread Christoph Hellwig
This series contains a couple easy cleanups for the device handler infrastructure. I think some more work could be done in the longer run, e.g. by using a class_device interface to attach to the scsi_device, similar to how the /dev/sg devices work. Changes since V1: - fix ->attach for rdac, poin

[PATCH 6/6] scsi: handle more device handler setup/teardown in common code

2014-10-30 Thread Christoph Hellwig
Move all code to set up and tear down sdev->scsi_dh_data to common code. Signed-off-by: Christoph Hellwig Reviewed-by: Hannes Reinecke --- drivers/scsi/device_handler/scsi_dh.c | 29 ++ drivers/scsi/device_handler/scsi_dh_alua.c | 59 ++--- drivers/scs

Re: [PATCH 1/2] ipr: Convert to generic DMA API

2014-10-30 Thread Christoph Hellwig
On Wed, Oct 29, 2014 at 12:34:49PM -0500, Brian King wrote: > Acked-by: Brian King Doesn't apply to me. Brain, can you please resend a rebased version of these two patches with ipr error handlign patch (and anything else ipr related)? -- To unsubscribe from this list: send the line "unsubscribe

Re: [PATCH v2 20/36] mac_scsi: Cleanup PDMA code

2014-10-30 Thread Hannes Reinecke
On 10/30/2014 08:46 AM, Hannes Reinecke wrote: > On 10/27/2014 06:26 AM, Finn Thain wrote: >> Fix whitespace, remove pointless volatile qualifiers and improve code style >> by use of INPUT_DATA_REG and OUTPUT_DATA_REG macros. >> >> Signed-off-by: Finn Thain >> >> --- >> drivers/scsi/mac_scsi.c |

Re: [PATCH v2 36/36] atari_NCR5380: Remove RESET_RUN_DONE macro

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > There's no need to run the cmd->done callback for aborted commands. Remove > the old EH code and the RESET_RUN_DONE macro. > > Signed-off-by: Finn Thain > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries

Re: [PATCH v2 35/36] atari_NCR5380: Move static co-routine variables to host data

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Unlike NCR5380.c, the atari_NCR5380.c core driver is limited to a single > instance because co-routine state is stored globally. > > Fix this by removing the static scsi host pointer. For the co-routine, > obtain this pointer from the work_struct pointer

Re: [PATCH v2 34/36] atari_NCR5380: Move static TagAlloc array to host data

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > The atari_NCR5380.c core driver keeps some per-host data in a static > variable which limits the driver to a single instance. Fix this by moving > TagAlloc to the hostdata struct. > > Signed-off-by: Finn Thain > Hmm. This really cries to be converted t

Re: [PATCH v2 33/36] atari_NCR5380: Introduce FLAG_TAGGED_QUEUING

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > The static variable setup_use_tagged_queuing is declared in mac_scsi.c, > sun3_scsi.c and atari_scsi.c and doesn't belong in the core driver. > None of the other NCR5380 drivers suffer from this layering issue which > makes merging the core drivers more d

Re: [PATCH v2 32/36] atari_NCR5380: Merge from NCR5380.c

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > The NCR5380.c core driver has moved on since atari_NCR5380.c was forked. > Some of those changes are also relevant to atari_NCR5380.c so apply them > there as well. > > Signed-off-by: Finn Thain Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Ha

Re: [PATCH v2 31/36] sun3_scsi: Adopt atari_NCR5380 core driver and remove sun3_NCR5380.c

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Given the preceding changes to atari_NCR5380.c, this patch should not change > behaviour of the sun3_scsi and sun3_scsi_vme modules. > > Signed-off-by: Finn Thain One down. Good work. Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reine

Re: [PATCH v2 30/36] atari_NCR5380: Merge from sun3_NCR5380.c

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > There is very little difference between the sun3_NCR5380.c core driver > and atari_NCR5380.c. The former is a fork of the latter. > > Merge the sun3_NCR5380.c core driver into atari_NCR5380.c so that > sun3_scsi.c can adopt the latter and the former can

Re: [PATCH v2 29/36] atari_NCR5380: Refactor Falcon locking

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Simplify falcon_release_lock_if_possible() by making callers responsible for > disabling local IRQ's, which they must do anyway to correctly synchronize > the ST DMA "lock" with core driver data structures. Move this > synchronization logic to the core dr

Re: [PATCH v2 28/36] atari_NCR5380: Refactor Falcon special cases

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Make the atari_NCR5380.c core driver usable by sun3_scsi, mac_scsi and > others by moving some of the Falcon-specific code out of the core driver: > !IS_A_TT, atari_read_overruns and falcon_dont_release. Replace these with > hostdata variables and flags.

Re: [PATCH v2 27/36] ncr5380: Remove ENABLE_IRQ/DISABLE_IRQ macros

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > atari_NCR5380.c enables its IRQ when it is already enabled. Sun3 doesn't > use the ENABLE_IRQ/DISABLE_IRQ cruft. Remove it. > > Signed-off-by: Finn Thain > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries

Re: [PATCH v2 26/36] sun3_scsi: Move macro definitions

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > The #defines in sun3_scsi.h are intended to influence subsequent #includes > in sun3_scsi.c. IMHO, that's too convoluted. > > Move sun3_scsi.h macro definitions to sun3_scsi.c, consistent with other > NCR5380 drivers. > > Omit the unused NCR5380_local_d

Re: [PATCH v2 25/36] sun3_scsi: Convert to platform device

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Convert sun3_scsi to platform device and eliminate scsi_register(). > > Signed-off-by: Finn Thain Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h...@suse.de +49 911 74

Re: [PATCH v2 24/36] atari_scsi: Remove header

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > The #defines in atari_scsi.h are intended to influence subsequent #includes > in atari_scsi.c. IMHO, that's too convoluted. > > Remove atari_scsi.h by moving those macro definitions to atari_scsi.c, > consistent with other NCR5380 drivers. > > Signed-of

Re: [PATCH 1/2] ipr: Disable async aborts

2014-10-30 Thread Christoph Hellwig
On Wed, Oct 29, 2014 at 04:16:08PM -0500, Brian King wrote: > I think we can likely drop the first in the series here. I've reverted it > and have been running abort testing for a bit and haven't hit any issues. > Unless I see anything overnight, I'll resend the second patch by itself and > cc stab

Re: [PATCH v2 23/36] atari_scsi: Convert to platform device

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Convert atari_scsi to platform device and eliminate scsi_register(). > > Validate __setup options later on so that module options are checked as well. > > Remove the comment about the scsi mid-layer disabling the host irq as it > is no longer true (AFAI

Re: [PATCH v2 22/36] atari_scsi: Fix atari_scsi deadlocks on Falcon

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Don't disable irqs when waiting for the ST DMA "lock"; its release may > require an interrupt. > > Introduce stdma_try_lock() for use in soft irq context. atari_scsi now tells > the SCSI mid-layer to defer queueing a command if the ST DMA lock is not > a

Re: [PATCH v2 21/36] mac_scsi: Convert to platform device

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Convert mac_scsi to platform device and eliminate scsi_register(). > > Platform resources for chip registers now follow the documentation. This > should fix issues with the Mac IIci (and possibly other models too). > > Signed-off-by: Finn Thain > Revi

Re: [PATCH v2 20/36] mac_scsi: Cleanup PDMA code

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Fix whitespace, remove pointless volatile qualifiers and improve code style > by use of INPUT_DATA_REG and OUTPUT_DATA_REG macros. > > Signed-off-by: Finn Thain > > --- > drivers/scsi/mac_scsi.c | 122 > --

Re: [PATCH v2 19/36] mac_scsi: Add module option to Kconfig

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Allow mac_scsi to be built as a module. Replace the old validation of > __setup options with code that validates both module and __setup options. > > Signed-off-by: Finn Thain > > --- > drivers/scsi/Kconfig|2 > drivers/scsi/mac_scsi.c | 112

Re: [PATCH v2 18/36] mac_scsi: Remove header

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > The #defines in mac_scsi.h are intended to influence subsequent #includes in > mac_scsi.c. IMHO, that's too convoluted. > > Remove mac_scsi.h by moving those macro definitions to mac_scsi.c, > consistent with other NCR5380 drivers. > > Signed-off-by: Fi

Re: [PATCH v2 17/36] dmx3191d: Use NO_IRQ

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Testing shows that the Domex 3191D card never asserts its IRQ. Hence it is > non-functional with Linux (worse, the EH bugs in the core driver are fatal > but that's a problem for another patch). Perhaps the DT-536 chip needs > special setup? I can't find

Re: [PATCH v2 16/36] ncr5380: Drop legacy scsi.h include

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Convert Scsi_Cmnd to struct scsi_cmnd and drop the #include "scsi.h". > The sun3_NCR5380.c core driver already uses struct scsi_cmnd so converting > the other core drivers reduces the diff which makes them easier to unify. > > Signed-off-by: Finn Thain

Re: [PATCH v2 15/36] ncr5380: Remove *_RELEASE macros

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > The *_RELEASE macros don't tell me anything. In some cases the version in > the macro contradicts the version in the comments. Anyway, the Linux kernel > version is sufficient information. Remove these macros to improve readability. > > Signed-off-by: Fi

Re: [PATCH v2 14/36] ncr5380: Remove pointless compiler command line override macros

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Compile-time override of scsi host defaults is pointless for drivers that > provide module parameters and __setup options for that. Too many macros make > the code hard to read so remove them. > > Signed-off-by: Finn Thain > > --- > drivers/scsi/atari

Re: [PATCH v2 13/36] ncr5380: Move static PDMA spin counters to host data

2014-10-30 Thread Hannes Reinecke
On 10/27/2014 06:26 AM, Finn Thain wrote: > Static variables from dtc.c and pas16.c should not appear in the core > NCR5380.c driver. Aside from being a layering issue this worsens the > divergence between the three core driver variants (atari_NCR5380.c and > sun3_NCR5380.c don't support PSEUDO_DMA