[PATCH] bnx2fc: do not add shared skbs to the fcoe_rx_list

2014-07-25 Thread Maurizio Lombardi
In some cases, the fcoe_rx_list may contains multiple instances of the same skb (the so called shared skbs). the bnx2fc_l2_rcv thread is a loop that extracts a skb from the list, modifies (and destroys) its content and the proceed to the next one. The problem is that if the skb is shared, the

Re: [PATCH] bnx2fc: do not add shared skbs to the fcoe_rx_list

2014-07-25 Thread Maurizio Lombardi
Hi Eddie, just want to add you to the CC list. Some days ago the bnx2fc's maintainer email address has been updated, this should be the new one: qlogic-storage-upstr...@qlogic.com I tried to send this patch to the new address but I received the following delivery failure notification:

[PATCH V2 1/4] Add XEN pvSCSI protocol description

2014-07-25 Thread jgross
From: Juergen Gross jgr...@suse.com Add the definition of pvSCSI protocol used between the pvSCSI frontend in a XEN domU and the pvSCSI backend in a XEN driver domain (usually Dom0). This header was originally provided by Fujitsu for XEN based on Linux 2.6.18. Changes are: - added comment -

[PATCH V2 2/4] Introduce xen-scsifront module

2014-07-25 Thread jgross
From: Juergen Gross jgr...@suse.com Introduces the XEN pvSCSI frontend. With pvSCSI it is possible for a XEN domU to issue SCSI commands to a SCSI LUN assigned to that domU. The SCSI commands are passed to the pvSCSI backend in a driver domain (usually Dom0) which is owner of the physical device.

Re: [PATCH 07/14] scsi: convert host_busy to atomic_t

2014-07-25 Thread Christoph Hellwig
On Tue, Jul 22, 2014 at 12:18:19AM -0400, Martin K. Petersen wrote: More nitpicking. In the two previous atomic conversion patches you kept %hu for the atomic_t. Here it's %d. I'll fix it to use %d everywhere, given that's it's not an unsigned short anymore. -- To unsubscribe from this list:

[PATCH V2 3/4] Introduce XEN scsiback module

2014-07-25 Thread jgross
From: Juergen Gross jgr...@suse.com Introduces the XEN pvSCSI backend. With pvSCSI it is possible for a XEN domU to issue SCSI commands to a SCSI LUN assigned to that domU. The SCSI commands are passed to the pvSCSI backend in a driver domain (usually Dom0) which is owner of the physical device.

Re: [RESEND][PATCH 07/10][SCSI]mpt2sas: Added Reply Descriptor Post Queue (RDPQ) Array support

2014-07-25 Thread Sreekanth Reddy
Hi Martin, Following are the changes that I have done in this patch over the first RDPQ support patch, 1. Reduced the redundancy in the function _base_release_memory_pools(), _base_allocate_memory_pools(). 2. Set pci_set_consistent_dma_mask() to DMA_BIT_MASK(32). still I am analysing whether

Re: [PATCH 4/5] [SCSI] Do not use platform_bus as a parent

2014-07-25 Thread James Bottomley
On Fri, 2014-07-25 at 15:23 +0100, Pawel Moll wrote: The host devices without a parent were forcefully adopted by platform bus. This patch removes this assignment. In effect the dev_dev may be NULL now, which means ISA. Cc: James E.J. Bottomley jbottom...@parallels.com Cc:

Re: [PATCH 5/6] qla2xxx: Prevent removal and board_disable race

2014-07-25 Thread Chad Dupuis
On Wed, 18 Jun 2014, Joe Lawrence wrote: Introduce mutual exclusion between the qla2xxx_remove_one PCI driver callback and qla2x00_disable_board_on_pci_error, which is scheduled as board_disable work by qla2x00_check_reg{32,16}_for_disconnect: * Leave the driver-specific data attached to the

Re: [PATCH 4/5] [SCSI] Do not use platform_bus as a parent

2014-07-25 Thread Pawel Moll
On Fri, 2014-07-25 at 15:46 +0100, James Bottomley wrote: On Fri, 2014-07-25 at 15:23 +0100, Pawel Moll wrote: The host devices without a parent were forcefully adopted by platform bus. This patch removes this assignment. In effect the dev_dev may be NULL now, which means ISA. Cc:

RE: [PATCH v2 3/3] [SCSI] Make LBP quirk skip lbpme checks tests

2014-07-25 Thread KY Srinivasan
-Original Message- From: Martin K. Petersen [mailto:martin.peter...@oracle.com] Sent: Thursday, July 24, 2014 8:54 AM To: Sitsofe Wheeler Cc: Martin K. Petersen; Christoph Hellwig; KY Srinivasan; gre...@linuxfoundation.org; linux-ker...@vger.kernel.org;

Re: [PATCH v2 3/3] [SCSI] Make LBP quirk skip lbpme checks tests

2014-07-25 Thread Martin K. Petersen
KY == KY Srinivasan k...@microsoft.com writes: KY For the pass through case, the host validates the request and passes KY the request to the device. However, not all scsi commands are KY passed through even though the device it is being passed through may KY support the command. WRITE_SAME is

Re: [PATCH v2 3/3] [SCSI] Make LBP quirk skip lbpme checks tests

2014-07-25 Thread James Bottomley
On Fri, 2014-07-25 at 16:47 +, KY Srinivasan wrote: -Original Message- From: Martin K. Petersen [mailto:martin.peter...@oracle.com] Sent: Thursday, July 24, 2014 8:54 AM To: Sitsofe Wheeler Cc: Martin K. Petersen; Christoph Hellwig; KY Srinivasan;

Re: [PATCH V2 0/4] Add XEN pvSCSI support

2014-07-25 Thread Konrad Rzeszutek Wilk
On Fri, Jul 25, 2014 at 01:37:29PM +0200, jgr...@suse.com wrote: This series adds XEN pvSCSI support. With pvSCSI it is possible to use physical SCSI devices from a XEN domain. The support consists of a backend in the privileged Domain-0 doing the real I/O and a frontend in the

Re: [PATCH 5/6] qla2xxx: Prevent removal and board_disable race

2014-07-25 Thread Joe Lawrence
On Fri, 25 Jul 2014 11:23:02 -0400 Chad Dupuis chad.dup...@qlogic.com wrote: On Wed, 18 Jun 2014, Joe Lawrence wrote: Introduce mutual exclusion between the qla2xxx_remove_one PCI driver callback and qla2x00_disable_board_on_pci_error, which is scheduled as board_disable work by

Re: [PATCH 09/14] scsi: fix the {host,target,device}_blocked counter mess

2014-07-25 Thread Martin K. Petersen
Christoph == Christoph Hellwig h...@lst.de writes: Christoph Seems like these counters are missing any sort of Christoph synchronization for updates, as a over 10 year old comment Christoph from me noted. Fix this by using atomic counters, and while Christoph we're at it also make sure they are

Re: [PATCH 10/14] scsi: only maintain target_blocked if the driver has a target queue limit

2014-07-25 Thread Martin K. Petersen
Christoph == Christoph Hellwig h...@lst.de writes: Christoph This saves us an atomic operation for each I/O submission and Christoph completion for the usual case where the driver doesn't set a Christoph per-target can_queue value. Only a few iscsi hardware Christoph offload drivers set the

Re: [PATCH 11/14] scsi: unwind blk_end_request_all and blk_end_request_err calls

2014-07-25 Thread Martin K. Petersen
Christoph == Christoph Hellwig h...@lst.de writes: Christoph Replace the calls to the various blk_end_request variants Christoph with opencode equivalents. Blk-mq is using a model that Christoph gives the driver control between the bio updates and the Christoph actual completion, and making the

Re: [PATCH 12/14] scatterlist: allow chaining to preallocated chunks

2014-07-25 Thread Martin K. Petersen
Christoph == Christoph Hellwig h...@lst.de writes: Christoph Blk-mq drivers usually preallocate their S/G list as part of Christoph the request, but if we want to support the very large S/G Christoph lists currently supported by the SCSI code that would tie up Christoph a lot of memory in the

Re: [PATCH 13/14] scsi: add support for a blk-mq based I/O path.

2014-07-25 Thread Martin K. Petersen
Christoph == Christoph Hellwig h...@lst.de writes: Christoph This patch adds support for an alternate I/O path in the scsi Christoph midlayer which uses the blk-mq infrastructure instead of the Christoph legacy request code. Reviewed-by: Martin K. Petersen martin.peter...@oracle.com -- Martin

[RFC] hpsa: work in progress lockless monster patches

2014-07-25 Thread scameron
hpsa: Work In Progress: lockless monster patches To be clear, I am not suggesting that these patches be merged at this time. This patchset is vs. Christoph Hellwig's scsi-mq.4 branch which may be found here: git://git.infradead.org/users/hch/scsi.git We've been working for a long time on a

Re: [PATCH 14/14] fnic: reject device resets without assigned tags for the blk-mq case

2014-07-25 Thread Martin K. Petersen
Christoph == Christoph Hellwig h...@lst.de writes: Christoph Either someone who can actually test the hardware will have Christoph to come up with a similar hack for the blk-mq case, or we'll Christoph have to bite the bullet and fix the way the EH ioctls work Christoph for real, but until that

Re: [RESEND][PATCH 07/10][SCSI]mpt2sas: Added Reply Descriptor Post Queue (RDPQ) Array support

2014-07-25 Thread Martin K. Petersen
Sreekanth == Sreekanth Reddy sreekanth.re...@avagotech.com writes: Sreekanth, Sreekanth Following are the changes that I have done in this patch over Sreekanth the first RDPQ support patch, Please, please do the function moves in a different patch. Or use a simple prototype declaration like I

Re: [PATCH 5/6] qla2xxx: Prevent removal and board_disable race

2014-07-25 Thread Chad Dupuis
On Fri, 25 Jul 2014, Joe Lawrence wrote: On Fri, 25 Jul 2014 11:23:02 -0400 Chad Dupuis chad.dup...@qlogic.com wrote: On Wed, 18 Jun 2014, Joe Lawrence wrote: Introduce mutual exclusion between the qla2xxx_remove_one PCI driver callback and qla2x00_disable_board_on_pci_error, which is

[PATCH] [SCSI] Make scsi_transfer_length take a scsi_data_buffer argument

2014-07-25 Thread Martin K. Petersen
For bidirectional commands we need to be able to distinguish between the in and out scsi_data_buffers when calculating the wire transfer length. Make scsi_transfer_length() take a scsi_data_buffer argument so the caller can choose which I/O direction the calculation should apply to.

Block/SCSI data integrity update v2

2014-07-25 Thread Martin K. Petersen
This is the data integrity patch series originally submitted for 3.16. It has been rebased on top of the current 3.17 SCSI queue tree. I believe I have addressed all the changes requested in the reviews. Aside from a code cleanup in the sd prot_op code there are no functional changes. -

[PATCH 02/14] block: Replace bi_integrity with bi_special

2014-07-25 Thread Martin K. Petersen
For commands like REQ_COPY we need a way to pass extra information along with each bio. Like integrity metadata this information must be available at the bottom of the stack so bi_private does not suffice. Rename the existing bi_integrity field to bi_special and make it a union so we can have

[PATCH 03/14] block: Remove integrity tagging functions

2014-07-25 Thread Martin K. Petersen
None of the filesystems appear interested in using the integrity tagging feature. Potentially because very few storage devices actually permit using the application tag space. Remove the tagging functions. Signed-off-by: Martin K. Petersen martin.peter...@oracle.com Reviewed-by: Christoph

[PATCH 06/14] block: Make protection interval calculation generic

2014-07-25 Thread Martin K. Petersen
Now that the protection interval has been detached from the sector size we need to be able to handle sizes that are different from 4K and 512. Make the interval calculation generic. Signed-off-by: Martin K. Petersen martin.peter...@oracle.com --- block/bio-integrity.c | 6 +- 1 file changed,

[PATCH 12/14] block: Don't merge requests if integrity flags differ

2014-07-25 Thread Martin K. Petersen
We'd occasionally merge requests with conflicting integrity flags. Introduce a merge helper which checks that the requests have compatible integrity payloads. Signed-off-by: Martin K. Petersen martin.peter...@oracle.com Reviewed-by: Christoph Hellwig h...@lst.de Reviewed-by: Sagi Grimberg

[PATCH 01/14] block: Get rid of bdev_integrity_enabled()

2014-07-25 Thread Martin K. Petersen
bdev_integrity_enabled() is only used by bio_integrity_enabled(). Combine these two functions. Signed-off-by: Martin K. Petersen martin.peter...@oracle.com Reviewed-by: Christoph Hellwig h...@lst.de Reviewed-by: Sagi Grimberg sa...@mellanox.com --- Documentation/block/data-integrity.txt | 10

[PATCH 07/14] block: Clean up the code used to generate and verify integrity metadata

2014-07-25 Thread Martin K. Petersen
Instead of the operate parameter we pass in a seed value and a pointer to a function that can be used to process the integrity metadata. The generation function is changed to have a return value to fit into this scheme. Signed-off-by: Martin K. Petersen martin.peter...@oracle.com Reviewed-by:

[PATCH 10/14] block: Relocate bio integrity flags

2014-07-25 Thread Martin K. Petersen
Move flags affecting the integrity code out of the bio bi_flags and into the block integrity payload. Signed-off-by: Martin K. Petersen martin.peter...@oracle.com Reviewed-by: Sagi Grimberg sa...@mellanox.com --- block/bio-integrity.c | 4 ++-- drivers/scsi/sd_dif.c | 4 ++--

[PATCH 04/14] block: Remove bip_buf

2014-07-25 Thread Martin K. Petersen
bip_buf is not really needed so we can remove it. Signed-off-by: Martin K. Petersen martin.peter...@oracle.com Reviewed-by: Christoph Hellwig h...@lst.de Reviewed-by: Sagi Grimberg sa...@mellanox.com --- block/bio-integrity.c | 10 ++ include/linux/bio.h | 3 --- 2 files changed, 6

[PATCH 11/14] block: Integrity checksum flag

2014-07-25 Thread Martin K. Petersen
Make the choice of checksum a per-I/O property by introducing a flag that can be inspected by the SCSI layer. There are several reasons for this: 1. It allows us to switch choice of checksum without unloading and reloading the HBA driver. 2. During error recovery we need to be able to tell

[PATCH 13/14] block: Add T10 Protection Information functions

2014-07-25 Thread Martin K. Petersen
The T10 Protection Information format is also used by some devices that do not go through the SCSI layer (virtual block devices, NVMe). Relocate the relevant functions to a block layer library that can be used without involving SCSI. Signed-off-by: Martin K. Petersen martin.peter...@oracle.com

[PATCH 14/14] sd: Honor block layer integrity handling flags

2014-07-25 Thread Martin K. Petersen
A set of flags introduced in the block layer enable better control over how protection information is handled. These flags are useful for both error injection and data recovery purposes. Checking can be enabled and disabled for controller and disk, and the guard tag format is now a per-I/O

[PATCH 05/14] block: Deprecate the use of the term sector in the context of block integrity

2014-07-25 Thread Martin K. Petersen
The protection interval is not necessarily tied to the logical block size of a block device. Stop using the terms sector and sectors. Going forward we will use the term seed to describe the initial reference tag value for a given I/O. Interval will be used to describe the portion of the data

[ANNOUNCE] scsi patch queue tree updated

2014-07-25 Thread Christoph Hellwig
I've pushed out new version of the for-3.17 core and drivers trees: git://git.infradead.org/users/hch/scsi-queue.git core-for-3.17 git://git.infradead.org/users/hch/scsi-queue.git drivers-for-3.17 In the core tree the biggest update is the merge of the blk-mq support, but various smaller

Re: [PATCH] [SCSI] Make scsi_transfer_length take a scsi_data_buffer argument

2014-07-25 Thread Christoph Hellwig
On Fri, Jul 25, 2014 at 04:00:19PM -0400, Martin K. Petersen wrote: For bidirectional commands we need to be able to distinguish between the in and out scsi_data_buffers when calculating the wire transfer length. Make scsi_transfer_length() take a scsi_data_buffer argument so the caller can