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, booted

Re: [PATCH v2 10/12] IB/srp: Use block layer tags

2014-11-03 Thread Christoph Hellwig
On Mon, Nov 03, 2014 at 01:22:18PM +0530, Kashyap Desai wrote: I also used below setting in slave_alloc(), so that first Inquiry command received by driver also has valid Tag in (Non-MQ mode). sdev-tagged_supported = 1 Without above setting Inquiry command comes with 0xFF. If I see below

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

2014-11-03 Thread Christoph Hellwig
Meelis, can you give the patch below a try? This only tries to locked the door on devices that actually were reset. Given that on a reset device we fail all commands before resuming operations it should work fine there as all tags should be released. diff --git a/drivers/scsi/scsi_error.c

Re: [PATCH] vmw_pvscsi: fixup tagging

2014-11-03 Thread Christoph Hellwig
', 'simple_tags', and 'ordered_tags'. (The SCSI midlayer doesn't use HEAD_OF_QUEUE tags). So fixup vmw_pvscsi to assign the correct tag type. [hch: fixed up to never set MSG_ORDERED_TAG] Signed-off-by: Hannes Reinecke h...@suse.de Acked-by: Arvind Kumar arvindku...@vmware.com Signed-off-by: Christoph

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

2014-11-03 Thread Christoph Hellwig
Thanks, I've applied patch 3 to drivers-for-3.18, and patches 1 and 2 to core-for-3.19. -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

scsi: only re-lock door after EH on devices that were reset

2014-11-03 Thread Christoph Hellwig
on blk_get_request as all requests for non-reset devices might be in use. Cc: sta...@vger.kernel.org Signed-off-by: Christoph Hellwig h...@lst.de Reported-by: Meelis Roos meelis.r...@ut.ee Tested-by: Meelis Roos meelis.r...@ut.ee diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c index

[PATCH 04/11] scsi: remove ordered_tag host template field

2014-11-03 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/scsi/hosts.c | 1 - drivers/usb/storage/uas.c | 1 - include/scsi/scsi_host.h | 10 -- 3 files changed, 12 deletions(-) diff --git a/drivers/scsi/hosts.c b/drivers/scsi/hosts.c index 06030e1..8bb173e 100644 --- a/drivers

[PATCH 03/11] scsi: remove ordered_tags scsi_device field

2014-11-03 Thread Christoph Hellwig
Remove the ordered_tags field, we haven't been issuing ordered tags based on it since the big barrier rework in 2010. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/message/fusion/mptscsih.c| 5 ++--- drivers/scsi/bfa/bfad_im.c | 11 +++ drivers/scsi/mpt2sas

tag handling refactor

2014-11-03 Thread Christoph Hellwig
The current SCSI handling suffers from large amounts of duplicate code, and a general confusion of multiple concepts of tagging. This series tries to reduce the amount of code, and introduce two separate clear concepts of tagging: a) a driver can request block-level tagging to always have a

[PATCH 07/11] scsi: remove use_blk_tcq Scsi_Host field

2014-11-03 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de --- include/scsi/scsi_host.h | 1 - 1 file changed, 1 deletion(-) diff --git a/include/scsi/scsi_host.h b/include/scsi/scsi_host.h index f62143a..8bf2cb0 100644 --- a/include/scsi/scsi_host.h +++ b/include/scsi/scsi_host.h @@ -642,7 +642,6 @@ struct

[PATCH 01/11] scsi: provide a generic change_queue_type method

2014-11-03 Thread Christoph Hellwig
Most drivers use exactly the same implementation, so provide it as a library function. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/infiniband/ulp/srp/ib_srp.c | 24 +--- drivers/scsi/bnx2fc/bnx2fc_fcoe.c| 2 +- drivers/scsi/esas2r/esas2r.h | 1

[PATCH 02/11] scsi: add new scsi-command flag for tagged commands

2014-11-03 Thread Christoph Hellwig
of the block layer tagging, and thus always correct even if a driver doesn't use block level tagging yet. Also remove the old blk_rq_tagged; it was only used by SCSI drivers, and removing it forces them to look for the proper replacement. Signed-off-by: Christoph Hellwig h...@lst.de --- Documentation/block

[PATCH 05/11] scsi: remove abuses of scsi_populate_tag

2014-11-03 Thread Christoph Hellwig
class. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/s390/scsi/zfcp_fc.h| 14 +- drivers/scsi/53c700.c | 2 +- drivers/scsi/aic7xxx/aic79xx_osm.c | 9 drivers/scsi/aic7xxx/aic7xxx_osm.c | 10 + drivers/scsi/bnx2fc/bnx2fc_io.c| 18 ++-- drivers

[PATCH 09/11] scsi: don't set tagging state from scsi_adjust_queue_depth

2014-11-03 Thread Christoph Hellwig
or -slave_configure that just set it to the cmd_per_lun default. Signed-off-by: Christoph Hellwig h...@lst.de --- Documentation/scsi/scsi_mid_low_api.txt | 12 -- drivers/ata/libata-scsi.c | 4 ++-- drivers/infiniband/ulp/srp/ib_srp.c | 2 +- drivers/message/fusion

[PATCH 06/11] mptfusion: don't change queue type in -change_queue_depth

2014-11-03 Thread Christoph Hellwig
This function shouldn't change the queue type, just the depth. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/message/fusion/mptscsih.c | 7 +-- 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/drivers/message/fusion/mptscsih.c b/drivers/message/fusion/mptscsih.c index

[PATCH 08/11] scsi: always assign block layer tags if enabled

2014-11-03 Thread Christoph Hellwig
a host-wide tag map. Signed-off-by: Christoph Hellwig h...@lst.de --- Documentation/scsi/scsi_mid_low_api.txt | 38 + drivers/message/fusion/mptsas.c | 1 + drivers/scsi/53c700.c | 12 +-- drivers/scsi/aic7xxx/aic79xx_osm.c | 11

[PATCH 11/11] ufs: remove spurious scsi_set_tag_type call

2014-11-03 Thread Christoph Hellwig
ufs never looks at the tag type, so there is no need to set it either. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/scsi/ufs/ufshcd.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index 67e2280..362b818 100644 --- a/drivers

[PATCH 10/11] scsi: don't force tagged_supported in drivers

2014-11-03 Thread Christoph Hellwig
Now that we also get proper values in cmd-request-tag for untagged commands, there is no need to force tagged_supported to on in drivers that need host-wide tags. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/scsi/fnic/fnic_main.c | 2 -- drivers/scsi/libsas/sas_scsi_host.c

Re: [PATCH 10/11] scsi: don't force tagged_supported in drivers

2014-11-04 Thread Christoph Hellwig
On Tue, Nov 04, 2014 at 09:16:30AM +0100, Jack Wang wrote: diff --git a/drivers/scsi/libsas/sas_scsi_host.c b/drivers/scsi/libsas/sas_scsi_host.c index 56d698a..89e8b68 100644 --- a/drivers/scsi/libsas/sas_scsi_host.c +++ b/drivers/scsi/libsas/sas_scsi_host.c @@ -945,7 +945,6 @@ int

Re: [PATCH 02/11] scsi: add new scsi-command flag for tagged commands

2014-11-04 Thread Christoph Hellwig
On Tue, Nov 04, 2014 at 09:38:05AM +0100, Hannes Reinecke wrote: Hmm. Flags with just one value in it ... bitfield, maybe? Bitfields are nasty. And I see more use for flags, e.g. whatever is left of eh_ehflags after the no_async_abort removal could be merged into it. -- To unsubscribe from

Re: [PATCH 05/11] scsi: remove abuses of scsi_populate_tag

2014-11-04 Thread Christoph Hellwig
Hmm. Either -task needs to be initialized with TSK_SIMPLE (=0), then it's missing with the other instances below. Or it doesn't, but then this line is pointless. For clarification I'd rather have it set explicitly below. This just keeps the inconsistency the driver already had. If the

Re: [PATCH 08/11] scsi: always assign block layer tags if enabled

2014-11-04 Thread Christoph Hellwig
On Tue, Nov 04, 2014 at 10:01:20AM +0100, Hannes Reinecke wrote: Hmm. With patch 03/11 and 04/11 you've removed the ordered_tags fields, on the ground that the block layer never issues ordered tags nowadays. Yet these drivers still try to activate ordered tags. So what's happening here?

Re: [PATCH 09/11] scsi: don't set tagging state from scsi_adjust_queue_depth

2014-11-04 Thread Christoph Hellwig
diff --git a/drivers/scsi/aacraid/linit.c b/drivers/scsi/aacraid/linit.c index a759cb2..596c2f4 100644 --- a/drivers/scsi/aacraid/linit.c +++ b/drivers/scsi/aacraid/linit.c @@ -462,9 +462,8 @@ static int aac_slave_configure(struct scsi_device *sdev) depth = 256;

Re: [PATCH 01/10] scsi: Use real functions for logging

2014-11-04 Thread Christoph Hellwig
On Tue, Nov 04, 2014 at 09:06:40AM +0100, Hannes Reinecke wrote: Implement a per-cpu buffer for formatting messages, and add real functions for scmd_printk and sdev_prefix_printk using that buffer and use dev_printk() to print out things. And make sdev_printk() a wrapper for

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

2014-11-04 Thread Christoph Hellwig
I've applied patches 1-3 to the core-for-3.19 branch. Various srp patches, including the first one fail to apply for me. Can you regenerate them against the drivers-for-3.19 branch? Thanks! -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to

Re: [V2 PATCH 2/2] scsi: TUR path is down after adapter gets reset with multipath

2014-11-04 Thread Christoph Hellwig
On Tue, Nov 04, 2014 at 08:21:13AM +0100, Hannes Reinecke wrote: Why did you use a wrapper for an already existing function? Please fold the logic into alua_check_sense(). That's what the first version did. See the response from Rob to it on why it's done this way. -- To unsubscribe from this

Re: [PATCH 1/3] scsi: make scsi_eh_scmd_add() always succeed

2014-11-04 Thread Christoph Hellwig
On Tue, Nov 04, 2014 at 01:11:11PM +0100, Hannes Reinecke wrote: BLK_EH_HANDLED does not work with scsi commands, as we need to release the associated buffers correctly. Which particular error do you see? The -eh_timed_out routines can return BLK_EH_HANDLED, and libata, iscsi and fc actually

Re: [PATCH 3/3] scsi: make asynchronous aborts mandatory

2014-11-04 Thread Christoph Hellwig
This leaves a stale comment reference to scsi_eh_abort_cmds in libsas. Also while grepping for that I found out that sas aborts don't work anymore with the async abort code due to this beautiful code in sas_eh_abort_handler: if (current != host-ehandler) return FAILED; so

[RFC] drop libsas task collector mode?

2014-11-04 Thread Christoph Hellwig
The task collector mode in libsas implements internal queueing in libsas, which is somethign we usualy try to avoid, and doesn't seem to get much exposure as it's only supported as a non-default option in two drivers. If there's still interest in submitting multiple tasks in one go I'd be happy

Re: [PATCHv2 0/3] Initial ZAC support

2014-11-05 Thread Christoph Hellwig
On Wed, Nov 05, 2014 at 01:08:19PM +0100, Hannes Reinecke wrote: Hi all, this patchset updates the ATA stack to correctly detect host-managed ZAC devices. And more importantly exports /dev/sg nodes from them so they can be actually be accessed. I'm fine with taking the whole series through

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

2014-11-05 Thread Christoph Hellwig
On Wed, Nov 05, 2014 at 01:37:14PM +0100, Bart Van Assche wrote: That's strange. I have compared the patches that are already in your tree with the patches I had posted myself with a diff tool. These patches look identical to what I had posted except for one CC tag that has been left out. If I

Re: tag handling refactor

2014-11-05 Thread Christoph Hellwig
I've pushed an updated branch with the review comments addressed to git://git.infradead.org/users/hch/scsi.git tcq-rework Thansk for all the reviews, and looking forward to the missing ones! -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message

Re: Large disk drives

2014-11-05 Thread Christoph Hellwig
On Wed, Nov 05, 2014 at 11:34:11AM -0500, Alan Stern wrote: Sorry, meant to. In principle I'm OK with this as the lever for the hack (largely because it means we don't need to do anything) but will the distributions support it? While I can't speak for the distributions, it's reasonable

Re: [PATCH] aic94xx: Fixup compilation warning

2014-11-05 Thread Christoph Hellwig
On Tue, Nov 04, 2014 at 08:10:59AM +0100, Hannes Reinecke wrote: gcc complained about an uninitialized warning. Looks fine to me, although it very much is gcc overreacting. -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to

Re: [PATCH 02/10] scsi: log request tag for scmd_printk()

2014-11-05 Thread Christoph Hellwig
On Tue, Nov 04, 2014 at 09:06:41AM +0100, Hannes Reinecke wrote: The request tag provides a concise identification of a SCSI command, so we should be printing that out for scmd_printk(). Suggested-by: Christoph Hellwig h...@lst.de Signed-off-by: Hannes Reinecke h...@suse.de Reviewed

Re: [PATCH 03/10] scsi: use external buffer for command logging

2014-11-05 Thread Christoph Hellwig
Looks good, Reviewed-by: Christoph Hellwig h...@lst.de -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: [PATCH 04/10] libata: use __scsi_format_command()

2014-11-05 Thread Christoph Hellwig
On Tue, Nov 04, 2014 at 09:06:43AM +0100, Hannes Reinecke wrote: libata already uses an internal buffer, so we should be using __scsi_format_command() here. Looks good, Reviewed-by: Christoph Hellwig h...@lst.de -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body

Re: [PATCH 07/10] scsi: Rename SERVICE_ACTION_IN to SERVICE_ACTION_IN_16

2014-11-05 Thread Christoph Hellwig
this at the beginning of the series. Reviewed-by: Christoph Hellwig h...@lst.de -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: [PATCH 08/10] scsi: Add SPC-3 command definitions

2014-11-05 Thread Christoph Hellwig
. Looks good, and again I'd like to take this before all the major logging rework. Reviewed-by: Christoph Hellwig h...@lst.de -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org

Re: [PATCH 09/10] scsi: Conditionally compile in constants.c

2014-11-05 Thread Christoph Hellwig
to these. Otherwise looks fine,, Reviewed-by: Christoph Hellwig h...@lst.de -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: [PATCH 10/10] scsi: Move remaining printk() statement to scmd_printk()

2014-11-05 Thread Christoph Hellwig
On Tue, Nov 04, 2014 at 09:06:49AM +0100, Hannes Reinecke wrote: One statement was missing from the conversion to dev_printk(). Signed-off-by: Hannes Reinecke h...@suse.de --- drivers/scsi/scsi.c | 10 ++ 1 file changed, 6 insertions(+), 4 deletions(-) diff --git

Re: [PATCH 05/10] scsi: use per-cpu buffer for formatting sense

2014-11-05 Thread Christoph Hellwig
+#define scmd_format_header(b, l, d, t) \ + sdev_format_header(b, l, (d) ? (d)-disk_name : NULL, t) I'd rather have a static inline const char *scmd_name(struct scsi_cmnd *scmd) { return scmd-request-rq_disk ? scmd-request-rq_disk-disk_name : NULL; } helper and use

[PATCH 5/6] scsi: move scsi_dispatch_cmd to scsi_lib.c

2014-11-05 Thread Christoph Hellwig
scsi_lib.c is where the rest of the I/O submission path lives, so move scsi_dispatch_cmd there and mark it static. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Bart Van Assche bvanass...@acm.org --- drivers/scsi/scsi.c | 81

[PATCH 3/6] scsi: clean up S/G table freeing

2014-11-05 Thread Christoph Hellwig
Now that we are using the split completion model for the legacy request path as well we can use scsi_mq_free_sgtables unconditionally. Rename it to scsi_free_sgtables, use it for the legacy path and remove scsi_release_(bidi_)buffers. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers

[PATCH 4/6] scsi: stop passing a gfp_mask argument down the command setup path

2014-11-05 Thread Christoph Hellwig
There is no reason for ULDs to pass in a flag on how to allocate the S/G lists. While we don't need GFP_ATOMIC for the blk-mq case because we don't hold locks, that decision can be made way down the chain without having to pass a pointless gfp_mask argument. Signed-off-by: Christoph Hellwig h

[PATCH 2/6] scsi: remove scsi_next_command

2014-11-05 Thread Christoph Hellwig
There's only one caller left, so inline it and reduce the blk-mq vs !blk-mq diff a litte bit. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Bart Van Assche bvanass...@acm.org --- drivers/scsi/scsi_lib.c | 18 -- drivers/scsi/scsi_priv.h | 1 - 2 files changed, 4

[PATCH 1/6] scsi: don't use scsi_next_command in scsi_reset_provider

2014-11-05 Thread Christoph Hellwig
the code. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Bart Van Assche bvanass...@acm.org --- drivers/scsi/scsi_error.c | 11 +++ 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c index ba19687..a1ffdb0 100644

I/O path cleanup V2

2014-11-05 Thread Christoph Hellwig
This series cleans up a couple of lose ends I noticed during the scsi-mq work, but which weren't important enough to address during the last cycle. These are also available at: git://git.infradead.org/users/hch/scsi.git scsi-io-path-cleanups Changes since V1: - rebased to core-for-3.19 -

[PATCH 6/6] scsi: move more requeue handling into scsi_requeue_command

2014-11-05 Thread Christoph Hellwig
Move a bit code out of scsi_io_completion and into scsi_requeue_command in preparation for further refactoring. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Bart Van Assche bvanass...@acm.org --- drivers/scsi/scsi_lib.c | 86 ++--- 1 file

Re: [PATCH 2/6] scsi: remove scsi_next_command

2014-11-06 Thread Christoph Hellwig
On Thu, Nov 06, 2014 at 09:21:05AM +0100, Hannes Reinecke wrote: Hmm? Isn't there a scsi_put_comand() too many? You dropped it from the 'if' branch, moved it out of the condition, but kept in in the 'else' branch ... The put_device for the 'else' branch was hidden inside scsi_next_command. --

Re: [PATCH] IB/srp: Fix a 32-bit compiler warning

2014-11-06 Thread Christoph Hellwig
On Thu, Nov 06, 2014 at 03:18:12PM +0100, Bart Van Assche wrote: The result of a pointer subtraction has type ptrdiff_t. Hence change a %ld format specifier into %td. This change avoids that the following warning is printed on 32-bit systems: warning: format '%ld' expects argument of type

Re: [PATCH 01/11] scsi: provide a generic change_queue_type method

2014-11-06 Thread Christoph Hellwig
On Thu, Nov 06, 2014 at 04:28:41PM +0100, Bart Van Assche wrote: A minor nit: do we really need to keep the scsi_dev-tagged_supported test in the above code ? Anyway, It's not needed, but the whole function will go away later in the series. -- To unsubscribe from this list: send the line

Re: blk_mq: suspicious RCU usage, rcu_read_lock() used illegally while idle!

2014-11-06 Thread Christoph Hellwig
Without help from Paul I can't even make sense of the message.. On Thu, Nov 06, 2014 at 05:45:43PM +0200, Meelis Roos wrote: I tested a machine with multiple scsi adapters today with latest kernel and found the following warning in the logs. It is probably from QLA1040 adapter

Re: [PATCH 08/11] scsi: always assign block layer tags if enabled

2014-11-06 Thread Christoph Hellwig
On Thu, Nov 06, 2014 at 05:28:32PM +0100, Bart Van Assche wrote: Apparently this patch removes the queue_flag_set_unlocked(QUEUE_FLAG_QUEUED, sdev-request_queue) call for the multiqueue case. I think it should be explained in the commit message why that has been done. Ok, I will update it.

Re: [PATCH scsi 0/2] Bugfix mainatainers update for cxgbi

2014-11-06 Thread Christoph Hellwig
Thanks, applied both patches to the drivers-for-3.18 branch. -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: [PATCH 1/3] libata: Whitelist SSDs that are known to properly return zeroes after TRIM

2014-11-07 Thread Christoph Hellwig
, not _warn. Otherwise looks good to me, Reviewed-by: Christoph Hellwig h...@lst.de It would be nice if there was a way to trigger the flag from userspace, so that we don't need to rebuild the kernel to add a whitelist entry. -- To unsubscribe from this list: send the line unsubscribe linux-scsi

Re: [PATCH 2/3] sd: Disable discard_zeroes_data for UNMAP

2014-11-07 Thread Christoph Hellwig
Looks good, Reviewed-by: Christoph Hellwig h...@lst.de -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: [PATCH 3/3] block: Introduce blkdev_issue_zeroout_discard() function

2014-11-07 Thread Christoph Hellwig
, but it looks correct, so: Reviewed-by: Christoph Hellwig h...@lst.de -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: [PATCH 4/6] st: call scsi_set_medium_removal directly

2014-11-08 Thread Christoph Hellwig
On Thu, Nov 06, 2014 at 11:54:41PM +, Elliott, Robert (Server Storage) wrote: A few comments spawned by this (and patch 5/6): 1. Although PREVENT ALLOW MEDIUM REMOVAL was a generic command defined in SPC-2, In 2006 T10 proposal 06-248r1 changed it to be a command-set specific command

Re: [PATCH 2/2] virtio_scsi: support multi hw queue of blk-mq

2014-11-10 Thread Christoph Hellwig
On Mon, Nov 10, 2014 at 11:41:43AM +0100, Paolo Bonzini wrote: FWIW, instead of force_blk_mq, it would be fine for me to make virtio-scsi use a single queue if not using blk-mq. I agree with that. I'd rather move all of SCSI over after a fairly short period instead of special cases like this,

Re: bisected regression: qla2xxx endianness on sparc64

2014-11-10 Thread Christoph Hellwig
On Mon, Nov 03, 2014 at 03:09:47PM -0500, Chad Dupuis wrote: We should revert that change. What were some of the other failures you were seeing? Can you please send me the revert ASAP? -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to

Re: bisected regression: qla2xxx endianness on sparc64

2014-11-10 Thread Christoph Hellwig
On Mon, Nov 03, 2014 at 11:32:14PM +0200, Meelis Roos wrote: Yes. I took the same 3.18.0-rc1-00422-g2cc9188-dirty kernel that had just this patch reverted, it started the controller fine, detected disk, mounted root, started multiple tasks and then some time after startin exim it just

Re: [PATCH] hpsa: fix potential resource leak

2014-11-10 Thread Christoph Hellwig
Don, can you help me review Tomas hpsa patches, including those from the last week of October? Thanks! -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: [RFC] Discard update for 3.19

2014-11-10 Thread Christoph Hellwig
Looks like there is no real dependency between these patches, so we might take on each through the libata, scsi and block trees. Can I get another review for the sd patch, please? -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to

[PATCH 04/11] scsi: remove ordered_tag host template field

2014-11-10 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Bart Van Assche bvanass...@acm.org Reviewed-by: Martin K. Petersen martin.peter...@oracle.com Reviewed-by: Hannes Reinecke h...@suse.de --- drivers/scsi/hosts.c | 1 - drivers/usb/storage/uas.c | 1 - include/scsi/scsi_host.h | 10

[PATCH 03/11] scsi: remove ordered_tags scsi_device field

2014-11-10 Thread Christoph Hellwig
Remove the ordered_tags field, we haven't been issuing ordered tags based on it since the big barrier rework in 2010. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Bart Van Assche bvanass...@acm.org Reviewed-by: Martin K. Petersen martin.peter...@oracle.com --- drivers/message/fusion

[PATCH 02/11] scsi: add new scsi-command flag for tagged commands

2014-11-10 Thread Christoph Hellwig
of the block layer tagging, and thus always correct even if a driver doesn't use block level tagging yet. Also remove the old blk_rq_tagged; it was only used by SCSI drivers, and removing it forces them to look for the proper replacement. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Martin K

[PATCH 05/11] scsi: remove abuses of scsi_populate_tag

2014-11-10 Thread Christoph Hellwig
class. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/s390/scsi/zfcp_fc.h| 14 +- drivers/scsi/53c700.c | 2 +- drivers/scsi/aic7xxx/aic79xx_osm.c | 9 drivers/scsi/aic7xxx/aic7xxx_osm.c | 10 + drivers/scsi/bnx2fc/bnx2fc_io.c| 18 ++-- drivers

tag handling refactor V2

2014-11-10 Thread Christoph Hellwig
The current SCSI handling suffers from large amounts of duplicate code, and a general confusion of multiple concepts of tagging. This series tries to reduce the amount of code, and introduce two separate clear concepts of tagging: a) a driver can request block-level tagging to always have a

[PATCH 01/11] scsi: provide a generic change_queue_type method

2014-11-10 Thread Christoph Hellwig
Most drivers use exactly the same implementation, so provide it as a library function. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Bart Van Assche bvanass...@acm.org Reviewed-by: Martin K. Petersen martin.peter...@oracle.com Reviewed-by: Hannes Reinecke h...@suse.de --- drivers

[PATCH 10/11] scsi: don't force tagged_supported in drivers

2014-11-10 Thread Christoph Hellwig
Now that we also get proper values in cmd-request-tag for untagged commands, there is no need to force tagged_supported to on in drivers that need host-wide tags. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/scsi/fnic/fnic_main.c | 2 -- drivers/scsi/libsas/sas_scsi_host.c

[PATCH 08/11] scsi: always assign block layer tags if enabled

2014-11-10 Thread Christoph Hellwig
a host-wide tag map. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Martin K. Petersen martin.peter...@oracle.com Reviewed-by: Hannes Reinecke h...@suse.de --- Documentation/scsi/scsi_mid_low_api.txt | 38 + drivers/message/fusion/mptsas.c | 1

[PATCH 09/11] scsi: don't set tagging state from scsi_adjust_queue_depth

2014-11-10 Thread Christoph Hellwig
or -slave_configure that just set it to the cmd_per_lun default. Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Martin K. Petersen martin.peter...@oracle.com --- Documentation/scsi/scsi_mid_low_api.txt | 12 -- drivers/ata/libata-scsi.c | 4 ++-- drivers/infiniband/ulp

[PATCH 07/11] scsi: remove use_blk_tcq Scsi_Host field

2014-11-10 Thread Christoph Hellwig
Signed-off-by: Christoph Hellwig h...@lst.de Reviewed-by: Hannes Reinecke h...@suse.de Reviewed-by: Martin K. Petersen martin.peter...@oracle.com --- include/scsi/scsi_host.h | 1 - 1 file changed, 1 deletion(-) diff --git a/include/scsi/scsi_host.h b/include/scsi/scsi_host.h index 5b03ba9

[PATCH 11/11] ufs: remove spurious scsi_set_tag_type call

2014-11-10 Thread Christoph Hellwig
ufs never looks at the tag type, so there is no need to set it either. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/scsi/ufs/ufshcd.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index 67e2280..362b818 100644 --- a/drivers

Re: [PATCH 2/2] virtio_scsi: support multi hw queue of blk-mq

2014-11-10 Thread Christoph Hellwig
On Mon, Nov 10, 2014 at 10:25:43PM +0800, Ming Lei wrote: It depends on how long the transition period is, and other drivers with multi hwq support might be in the same situation with virtio-scsi. If the period is a bit long, it would be painful for these drivers to support both blk-mq and

Re: UNMAP command parameter list

2014-11-10 Thread Christoph Hellwig
On Mon, Nov 10, 2014 at 11:44:39AM -0500, Martin K. Petersen wrote: You'll have to traverse scatterlist and extract the descriptor from there. You can use scsi_for_each_sg() to walk the list. If you only care about in-kernel discards it's pretty easy since we only issue a single descriptor.

Re: [PATCH 2/6] scsi: remove scsi_next_command

2014-11-11 Thread Christoph Hellwig
On Thu, Nov 06, 2014 at 04:34:13PM +0100, Christoph Hellwig wrote: On Thu, Nov 06, 2014 at 09:21:05AM +0100, Hannes Reinecke wrote: Hmm? Isn't there a scsi_put_comand() too many? You dropped it from the 'if' branch, moved it out of the condition, but kept in in the 'else' branch

Re: [PATCH] st: set owner in struct device_driver

2014-11-12 Thread Christoph Hellwig
Looks good to me. Can you also send the equivalent patch for the osst and ch drivers? -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: [V2 PATCH 1/4] scsi:stex.c Support to Pegasus series.

2014-11-12 Thread Christoph Hellwig
+ u8 yellowstone; Calling this flag yellowstone seems a bit confusing as there already is a st_yel card type, and this only seems a subset of those. Maybe a -support_pm flag or similar would be useful? + u32 subID; We don't use camelCaps, but I don't think you even need this

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

2014-11-12 Thread Christoph Hellwig
FYI, I've updated this to use .use_blk_tags = 1 isntead of scsi_activate_tcq now that I've rebased the drivers-for-3.19 branch over the tcq rework. Please verify that it's workign as intented. -- To unsubscribe from this list: send the line unsubscribe linux-scsi in the body of a message to

Re: [PATCH] st: set owner in struct device_driver

2014-11-12 Thread Christoph Hellwig
On Wed, Nov 12, 2014 at 12:01:31PM +, Seymour, Shane M wrote: I can, but at this point it will be tomorrow (11pm where I am). Looks like none of th scsi_driver intances sets the owner field. Let me sort this out in a generic way, and thanks for the initial patch! -- To unsubscribe from

Re: [V2 PATCH 3/4] scsi:stex.c Add reboot support

2014-11-12 Thread Christoph Hellwig
+static int stex_reboot_callback(struct notifier_block *self, + unsigned long val, + void *data) +{ + if (val == SYS_RESTART) + isRestart = 1; + return NOTIFY_OK;

making the queue_type attribute read only, was: Re: tag handling refactor V2

2014-11-12 Thread Christoph Hellwig
- how is the change_queue_type API supposed to be used for most drivers? It only changes the tag type from none to simple or back, but except for the special implementation in the 53c700 driver doesn't change the queue depth, which might cause it to issue multiple non-tagged

Re: making the queue_type attribute read only, was: Re: tag handling refactor V2

2014-11-13 Thread Christoph Hellwig
On Thu, Nov 13, 2014 at 12:33:41AM +, Elliott, Robert (Server Storage) wrote: A queue_type of none disables the SCSI midlayer automatic queue depth adjustments based on TASK SET FULL vs. other status values, while simple enables them. That's the feature where TASK SET FULL reception

Re: mpt2sas,mpt3sas: SATA affiliations

2014-11-13 Thread Christoph Hellwig
[adding the mpt maintainers as this seems to be a driver and not midlayer issue] On Wed, Nov 12, 2014 at 02:59:11PM -0500, Douglas Gilbert wrote: From a correspondent and my own testing I have seen way too many of these messages in the log: log_info(0x3116): originator(PL), code(0x16),

Re: BUG in scsi_lib.c due to a bad commit

2014-11-13 Thread Christoph Hellwig
Guenters commit just fixes the inversion from commit 71e75c97f97a9645d25fbf3d8e4165a558f18747 scsi: convert device_busy to atomic_t Can you please test the commit before that: 74665016086615bbaa3fa6f83af410a0a4e029ee scsi: convert host_busy to atomic_t and check if that works for you or not. --

Re: BUG in scsi_lib.c due to a bad commit

2014-11-13 Thread Christoph Hellwig
On Thu, Nov 13, 2014 at 06:14:14PM +0100, Barto wrote: Hello Christoph, I tested this commit : 7ae65c0f9646c29432b69580b80e08632e6cd813 scsi: convert target_busy to an atomic_t

[PATCH 1/7] lpfc: remove queue_depth events

2014-11-13 Thread Christoph Hellwig
James Smart said the userspace to consume these events never emerged. Given that these get in the way of the following patches remove support for them. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/scsi/lpfc/lpfc_scsi.c | 66 --- 1 file changed

[PATCH 3/7] scsi: don't allow setting of queue_depth bigger than can_queue

2014-11-13 Thread Christoph Hellwig
those checks as well. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/infiniband/ulp/srp/ib_srp.c | 8 +--- drivers/scsi/3w-9xxx.c| 2 -- drivers/scsi/3w-sas.c | 2 -- drivers/scsi/3w-.c| 2 -- drivers/scsi/hpsa.c

split -change_queue_depth

2014-11-13 Thread Christoph Hellwig
Overloading -change_queue_depth with the queue ramp up / down functionality has been a bad idea. It lead to a large amount of code duplication, and driver keep getting the the API wrong and end up accidentally enabling the queue depth tracking while getting it wrong. This serie instead adds a

[PATCH 6/7] mpt3sas: simplify -change_queue_depth

2014-11-13 Thread Christoph Hellwig
Merge two functions, and remove overly verbose debugging output that pokes into mid-layer internal structures. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/scsi/mpt3sas/mpt3sas_scsih.c | 36 ++-- 1 file changed, 10 insertions(+), 26 deletions(-) diff

[PATCH 4/7] scsi: drop reason argument from -change_queue_depth

2014-11-13 Thread Christoph Hellwig
Drop the now unused reason argument from the -change_queue_depth method. Also add a return value to scsi_adjust_queue_depth, and rename it to scsi_change_queue_depth now that it can be used as the default -change_queue_depth implementation. Signed-off-by: Christoph Hellwig h...@lst.de

[PATCH 5/7] mpt2sas: simplify -change_queue_depth

2014-11-13 Thread Christoph Hellwig
Merge two functions, and remove overly verbose debugging output that pokes into mid-layer internal structures. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/scsi/mpt2sas/mpt2sas_scsih.c | 34 +- 1 file changed, 5 insertions(+), 29 deletions(-) diff

[PATCH 7/7] vmw_pscsi: simplify -change_queue_depth

2014-11-13 Thread Christoph Hellwig
Remove overly verbose debugging output that pokes into mid-layer internal structures that looks like copy paste from the mpt2/3 drivers. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/scsi/vmw_pvscsi.c | 10 +- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git

[PATCH 2/7] scsi: avoid -change_queue_depth indirection for queue full tracking

2014-11-13 Thread Christoph Hellwig
depth in their change_queue_depth method, but as we never go over the queue depth set during slave_configure or the sysfs file this isn't nessecary and can safely be removed. Signed-off-by: Christoph Hellwig h...@lst.de --- drivers/infiniband/ulp/iser/iscsi_iser.c | 1 + drivers/infiniband/ulp/srp

Re: [PATCH 3/3] target: Change some fabric functions to return bool

2014-11-13 Thread Christoph Hellwig
On Thu, Nov 13, 2014 at 12:50:58PM -0800, Andy Grover wrote: The tpg_check_* functions in the fabric_ops struct return 1 or 0, so we can make their return type bool. Change fabrics to match. All these true/false stub sounds like some of them methods should be optional, and a useful default

Re: BUG in scsi_lib.c due to a bad commit

2014-11-13 Thread Christoph Hellwig
On Thu, Nov 13, 2014 at 11:55:38PM +0100, Barto wrote: it's interesting, with this commit 74665016086615bbaa3fa6f83af410a0a4e029ee I have the bug : scsi: convert host_busy to atomic_t : At this point we'll need a bisction between v3.16 as the last good point, and

Re: Another (ESP?) scsi blk-mq problem on sparc64

2014-11-14 Thread Christoph Hellwig
Paul, what's the best way to figure out these CPU stalls? The second oops is in blk_mq_map_queue() which is a trivial two level cpu lookup. I wonder if there's something odd about cpu numbers on these big old sparc systems? Something like the debug patch below might shed some light on where the

Re: Another (ESP?) scsi blk-mq problem on sparc64

2014-11-19 Thread Christoph Hellwig
On Sat, Nov 15, 2014 at 08:31:00AM -0700, Jens Axboe wrote: My next move would be to add more debug to the CPU map setup and teardown, so that we can verify that the map that is being used above has indeed been setup. Unless Christoph has any ideas on what is going on here? No good idea, but

<    4   5   6   7   8   9   10   11   12   13   >