Re: [PATCH 2/2] IB/iser: set max_segment_size

2016-04-12 Thread Bart Van Assche
On 04/12/2016 09:51 AM, Christoph Hellwig wrote: On Tue, Apr 12, 2016 at 08:34:03AM -0700, Bart Van Assche wrote: ib_sg_to_pages() can handle segments that are larger than mr->page_size. The interface handles it fine, but we'll still end up using a segment per (MR) page. Have you considered

Re: [PATCH 2/2] IB/iser: set max_segment_size

2016-04-12 Thread Christoph Hellwig
On Tue, Apr 12, 2016 at 08:34:03AM -0700, Bart Van Assche wrote: > Hello Christoph, > > ib_sg_to_pages() can handle segments that are larger than mr->page_size. The interface handles it fine, but we'll still end up using a segment per (MR) page. > Have you considered to set

Re: [Lsf] [LSF/MM TOPIC] block-mq issues with FC

2016-04-12 Thread Jens Axboe
On 04/08/2016 12:06 PM, Keith Busch wrote: On Fri, Apr 08, 2016 at 01:40:06PM -0400, Matthew Wilcox wrote: - Inability to use all queues supported by a device. Intel's P3700 supports 31 queues, but block-mq insists on assigning an even multiple of CPUs to each queue. So if you have

Re: [PATCH] zfcp: Revert to original scanning behaviour

2016-04-12 Thread Martin K. Petersen
> "Hannes" == Hannes Reinecke writes: Hannes> zfcp has its own mechanism for selective scanning, so revert to Hannes> the original scanning behaviour to not confuse users. Applied to 4.7/scsi-queue. -- Martin K. Petersen Oracle Linux Engineering -- To unsubscribe from

Re: [Lsf] [LSF/MM TOPIC] block-mq issues with FC

2016-04-12 Thread Quinn Tran
>Hey Willy, > >> - Interrupt steering needs to be controlled by block-mq instead of >> the driver. It's pointless to have each driver implement its own >> policies on interrupt steering, irqbalanced remains a source of >> end-user frustration, and block-mq can change the

Re: [PATCH 1/1] scsi: add Synology DSM 6.0 and higher to 1024 sector blacklist

2016-04-12 Thread Mike Christie
On 04/12/2016 01:42 PM, Martin K. Petersen wrote: >> "Michel" == Michel Meyers writes: > >>> Shouldn't we just quirk SYNOLOGY, then? > > Michel> Could be worth it. As far as I can see, they manufacture no > Michel> directly attached drives (only NAS devices, which I

Re: [PATCHv2 11/14] libata: Implement ZBC OUT translation

2016-04-12 Thread Shaun Tancheff
On Tue, Apr 12, 2016 at 1:47 PM, Hannes Reinecke wrote: > ZAC drives implement a 'ZAC Management Out' command template, > which maps onto the ZBC OUT command. > > Signed-off-by: Hannes Reinecke > --- > drivers/ata/libata-eh.c | 1 + > drivers/ata/libata-scsi.c

Re: [PATCH 2/2] IB/iser: set max_segment_size

2016-04-12 Thread Christoph Hellwig
On Tue, Apr 12, 2016 at 11:13:52AM -0700, Bart Van Assche wrote: > >That's what NVMe does, but I don't think it's a good idea. Because > >of the unaligned start into the page this means you have to set the limit > >to one lower than the actual hardware limit. > > I think this means that there is

Re: [PATCH 1/1] scsi: add Synology DSM 6.0 and higher to 1024 sector blacklist

2016-04-12 Thread Martin K. Petersen
> "Michel" == Michel Meyers writes: >> Shouldn't we just quirk SYNOLOGY, then? Michel> Could be worth it. As far as I can see, they manufacture no Michel> directly attached drives (only NAS devices, which I presume are Michel> all affected by the same problem as mine).

Re: [PATCH 1/1] scsi: add Synology DSM 6.0 and higher to 1024 sector blacklist

2016-04-12 Thread Martin K. Petersen
> "Mike" == Mike Christie writes: >> Mike: Any preference? Mike> I think quirking SYNOLOGY is best. It will be the safest route and Mike> work for all devices. Michel: Please spin a new version of the patch. Thanks! -- Martin K. Petersen Oracle Linux

Re: [PATCH v3 4/5] scsi: rename SCSI_MAX_{SG, SG_CHAIN}_SEGMENTS

2016-04-12 Thread Martin K. Petersen
> "Ming" == Ming Lin writes: Ming> Are we ready to merge it? I have queued your patches in my for-next branch. Will let them simmer there for a bit so they can get tested in linux-next. Barring any problems I will shuffle them over to 4.7/scsi-queue at the end of the week.

Re: [PATCH 1/1] scsi: usb: fix bug which some usb isn't used

2016-04-12 Thread Xinwei Kong
On 2016/4/12 20:45, Hannes Reinecke wrote: > On 04/12/2016 02:35 PM, Xinwei Kong wrote: >> some usb disk such as Manufacturer Lenovo will have some problem in >> init process. >> >> when it run "scsi_dh_find_driver" function, because this parameter of >> "sdev->inquiry[5]" is 115, it will return

Re: [PATCHv2 02/14] libsas: enable FPDMA SEND/RECEIVE

2016-04-12 Thread Hannes Reinecke
On 04/12/2016 08:47 AM, Hannes Reinecke wrote: > Update libsas and dependent drivers to handle FPDMA > SEND/RECEIVE correctly. > > Signed-off-by: Hannes Reinecke > --- > drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 2 ++ > drivers/scsi/isci/request.c| 4 +++- >

Re: [PATCHv2 02/14] libsas: enable FPDMA SEND/RECEIVE

2016-04-12 Thread kbuild test robot
Hi Hannes, [auto build test ERROR on tj-libata/for-next] [also build test ERROR on next-20160412] [cannot apply to v4.6-rc3] [if your patch is applied to the wrong git tree, please drop us a note to help improving the system] url: https://github.com/0day-ci/linux/commits/Hannes-Reinecke/ZAC

Re: [PATCHv2 02/14] libsas: enable FPDMA SEND/RECEIVE

2016-04-12 Thread kbuild test robot
Hi Hannes, [auto build test WARNING on tj-libata/for-next] [also build test WARNING on next-20160412] [cannot apply to v4.6-rc3] [if your patch is applied to the wrong git tree, please drop us a note to help improving the system] url: https://github.com/0day-ci/linux/commits/Hannes-Reinecke

[PATCHv2 09/14] libata: fixup ZAC device disabling

2016-04-12 Thread Hannes Reinecke
libata device disabling is ... curious. So add the correct definitions that we can disable ZAC devices properly. Signed-off-by: Hannes Reinecke --- include/linux/libata.h | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/include/linux/libata.h

[PATCHv2 13/14] libata: support device-managed ZAC devices

2016-04-12 Thread Hannes Reinecke
Device-managed ZAC devices just set the zoned capabilities field in INQUIRY byte 69 (cf ACS-4). This corresponds to the 'zoned' field in the block device characteristics VPD page. As this is only defined in SPC-5/SBC-4 we also need to update the supported SCSI version descriptor. Signed-off-by:

[PATCHv2 06/14] libata: Check log page directory before accessing pages

2016-04-12 Thread Hannes Reinecke
When reading the NCQ Send/Recv log it might actually not supported, thereby causing irritating messages 'READ LOG DMA EXT failed'. Instead we should be reading the log directory first to figure out if the log is actually supported before trying to access it. Signed-off-by: Hannes Reinecke

[PATCHv2 02/14] libsas: enable FPDMA SEND/RECEIVE

2016-04-12 Thread Hannes Reinecke
Update libsas and dependent drivers to handle FPDMA SEND/RECEIVE correctly. Signed-off-by: Hannes Reinecke --- drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 2 ++ drivers/scsi/isci/request.c| 4 +++- drivers/scsi/libsas/sas_ata.c | 6 --

[PATCHv2 07/14] libata-trace: decode subcommands

2016-04-12 Thread Hannes Reinecke
Some commands like FPDMA RECEIVE or NCQ NON DATA can encapsulate other commands to NCQ transport. So decode the subcmds, too. Signed-off-by: Hannes Reinecke --- drivers/ata/libata-trace.c| 43 +++ include/linux/ata.h | 17

[PATCHv2 05/14] libata: NCQ Encapsulation for READ LOG DMA EXT

2016-04-12 Thread Hannes Reinecke
Recent devices can use NCQ encapsulation for READ LOG DMA EXT, so we should be using it if available. Signed-off-by: Hannes Reinecke --- drivers/ata/libata-core.c | 5 ++--- drivers/ata/libata-eh.c | 30 +- drivers/ata/libata.h | 5 +++--

[PATCHv2 11/14] libata: Implement ZBC OUT translation

2016-04-12 Thread Hannes Reinecke
ZAC drives implement a 'ZAC Management Out' command template, which maps onto the ZBC OUT command. Signed-off-by: Hannes Reinecke --- drivers/ata/libata-eh.c | 1 + drivers/ata/libata-scsi.c | 67 +++ drivers/ata/libata-trace.c

[PATCHv2 12/14] libata: NCQ encapsulation for ZAC MANAGEMENT OUT

2016-04-12 Thread Hannes Reinecke
Add NCQ encapsulation for ZAC MANAGEMENT OUT and evaluate NCQ Non-Data log pages to figure out if NCQ encapsulation is supported. Signed-off-by: Hannes Reinecke --- drivers/ata/libata-core.c | 43 --- drivers/ata/libata-scsi.c | 18

[PATCHv2 01/14] libata: do not attempt to retrieve sense code twice

2016-04-12 Thread Hannes Reinecke
Do not call ata_request_sense() if the sense code is already present. Signed-off-by: Hannes Reinecke --- drivers/ata/libata-eh.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c index 5b340ce..e816619 100644

[PATCHv2 10/14] libata: implement ZBC IN translation

2016-04-12 Thread Hannes Reinecke
ZAC drives implement a 'ZAC Management In' command template, which maps onto the ZBC IN command. Signed-off-by: Hannes Reinecke --- drivers/ata/libata-eh.c | 1 + drivers/ata/libata-scsi.c | 157 ++ drivers/ata/libata-trace.c

[PATCHv2 14/14] libata: support host-aware and host-managed ZAC devices

2016-04-12 Thread Hannes Reinecke
Byte 69 bits 0:1 in the IDENTIFY DEVICE data indicate a host-aware ZAC device. Host-managed ZAC devices have their own individual signature, and to not set the bits in the IDENTIFY DEVICE data. And whenever we detect a ZAC-compatible device we should be displaying the zoned block characteristics

[PATCHv2 08/14] libata-scsi: Generate sense code for disabled devices

2016-04-12 Thread Hannes Reinecke
If a device is disabled after error recovery it doesn't make any sense to generate an ATA sense, but we should rather return a generic sense code indicating the device is gone. Signed-off-by: Hannes Reinecke --- drivers/ata/libata-scsi.c | 6 ++ 1 file changed, 6

[PATCHv2 04/14] libata: Separate out ata_dev_config_ncq_send_recv()

2016-04-12 Thread Hannes Reinecke
Move NCQ SEND/RECEIVE checks into a separate function. Signed-off-by: Hannes Reinecke --- drivers/ata/libata-core.c | 47 +++ 1 file changed, 27 insertions(+), 20 deletions(-) diff --git a/drivers/ata/libata-core.c

[PATCHv2 00/14] ZAC support

2016-04-12 Thread Hannes Reinecke
Hi all, here's a patchset implementing ZAC support for libata. This is the second part of a larger patchset for ZAC/ZBC support; it requires the scsi trace fixes queued for in mkp/4.7/scsi-queue and the patchset 'libata: SATL update' I've posted earlier. The full patchset can be found at:

Re: [PATCH 2/2] IB/iser: set max_segment_size

2016-04-12 Thread Sagi Grimberg
So that we don't overflow the number of MR segments allocated because we have to split on SGL segment into multiple MR segments. Signed-off-by: Christoph Hellwig --- drivers/infiniband/ulp/iser/iscsi_iser.c | 1 + 1 file changed, 1 insertion(+) diff --git

Re: [PATCH v3 3/5] scsi: rename SG related struct and functions

2016-04-12 Thread Sagi Grimberg
From: Ming Lin Rename SCSI specific struct and functions to more genenic names. Reviewed-by: Christoph Hellwig Signed-off-by: Ming Lin Reviewed-by: Sagi Grimberg -- To unsubscribe from this list: send the line

Re: [PATCH 1/1] scsi: add Synology DSM 6.0 and higher to 1024 sector blacklist

2016-04-12 Thread Michel Meyers
On 2016-04-12 4:20, Martin K. Petersen wrote: >> "Michel" == Michel Meyers writes: > > Michel> SYNOLOGY iSCSI devices do not work with large I/O and SYNOLOGY > Michel> changed the identifier of the devices > > Shouldn't we just quirk SYNOLOGY, then? Could be worth it.

Re: [PATCH v3 2/5] scsi: replace "mq" with "first_chunk" in SG functions

2016-04-12 Thread Sagi Grimberg
From: Ming Lin Parameter "bool mq" is block driver specific. Change it to "first_chunk" to make it more generic. Reviewed-by: Christoph Hellwig Signed-off-by: Ming Lin Reviewed-by: Sagi Grimberg -- To

Re: [PATCHv2 03/14] libsas: Define ATA_CMD_NCQ_NON_DATA

2016-04-12 Thread John Garry
On 12/04/2016 07:47, Hannes Reinecke wrote: Define the NCQ NON DATA command and update libsas to handle it correctly. Signed-off-by: Hannes Reinecke --- drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 1 + drivers/scsi/isci/request.c| 3 ++-

[PATCH v2 2/2] USB: uas: Add a new NO_REPORT_LUNS quirk

2016-04-12 Thread Hans de Goede
Add a new NO_REPORT_LUNS quirk and set it for Seagate drives with an usb-id of: 0bc2:331a, as these will fail to respond to a REPORT_LUNS command. Cc: sta...@vger.kernel.org Reported-and-tested-by: David Webb Signed-off-by: Hans de Goede --- Changes in v2:

[PATCH v2 1/2] USB: uas: Limit qdepth at the scsi-host level

2016-04-12 Thread Hans de Goede
Commit 64d513ac31bd ("scsi: use host wide tags by default") causes the SCSI core to queue more commands then we can handle on devices with multiple LUNs, limit the queue depth at the scsi-host level instead of per slave to fix this. BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1315013 Cc:

Re: [PATCH v3 1/5] scsi: replace "scsi_data_buffer" with "sg_table" in SG functions

2016-04-12 Thread Sagi Grimberg
From: Ming Lin Replace parameter "struct scsi_data_buffer" with "struct sg_table" in SG alloc/free functions to make them generic. Reviewed-by: Christoph Hellwig Signed-off-by: Ming Lin Reviewed-by: Sagi Grimberg

Re: [PATCH v3 4/5] scsi: rename SCSI_MAX_{SG, SG_CHAIN}_SEGMENTS

2016-04-12 Thread Sagi Grimberg
We're still missing an ack from Sagi. Oops, wasn't aware that mine was needed. I reviewed these on the nvme-fabrics project. I'll add my review tags too. -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majord...@vger.kernel.org More

Re: [PATCH v3 5/5] lib: scatterlist: move SG pool code from SCSI driver to lib/sg_pool.c

2016-04-12 Thread Sagi Grimberg
From: Ming Lin Now it's ready to move the mempool based SG chained allocator code from SCSI driver to lib/sg_pool.c, which will be compiled only based on a Kconfig symbol CONFIG_SG_POOL. SCSI selects CONFIG_SG_POOL. Reviewed-by: Christoph Hellwig

Re: [PATCH v3 4/5] scsi: rename SCSI_MAX_{SG, SG_CHAIN}_SEGMENTS

2016-04-12 Thread Sagi Grimberg
wrote: "Ming" == Ming Lin writes: Ming> Are we ready to merge it? We're still missing an ack from Sagi. Thought we already had a ack from Bart. OK, let's get one more from Sagi. Hmm ... this patch doesn't touch any code for which Sagi is

Re: [PATCHv2 03/14] libsas: Define ATA_CMD_NCQ_NON_DATA

2016-04-12 Thread Hannes Reinecke
On 04/12/2016 12:03 PM, John Garry wrote: > On 12/04/2016 07:47, Hannes Reinecke wrote: >> Define the NCQ NON DATA command and update libsas to handle it >> correctly. >> >> Signed-off-by: Hannes Reinecke >> --- >> drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 1 + >>

[PATCH 1/1] scsi: usb: fix bug which some usb isn't used

2016-04-12 Thread Xinwei Kong
some usb disk such as Manufacturer Lenovo will have some problem in init process. when it run "scsi_dh_find_driver" function, because this parameter of "sdev->inquiry[5]" is 115, it will return "alua" in "scsi_dh_find_driver" function and will have some error log (alua: Attach failed (-22)). some

Re: [PATCH 1/2] scsi: add a max_segment_size limitation to struct Scsi_Host

2016-04-12 Thread Laurence Oberman
Modified patch to use min_not_zero() Ran a number of tests overnight on F/C, SCSI/SAS and SRP (RDMA) and no issues found. Tested-by: Laurence Oberman Laurence Oberman Principal Software Maintenance Engineer Red Hat Global Support Services - Original Message -

Re: [PATCH v4 1/2] scsi: Add intermediate STARGET_REMOVE state to scsi_target_state

2016-04-12 Thread Xiong Zhou
How about this? drivers/scsi/scsi_scan: mark STARGET_REMOVE state before destroy Signed-off-by: Xiong Zhou --- drivers/scsi/scsi_scan.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c index 27df7e7..21092e5

Re: [PATCH] zfcp: Revert to original scanning behaviour

2016-04-12 Thread Benjamin Block
On 22:14 Mon 11 Apr , Martin K. Petersen wrote: > > "Hannes" == Hannes Reinecke writes: > > Hannes> zfcp has its own mechanism for selective scanning, so revert to > Hannes> the original scanning behaviour to not confuse users. > > Benjamin? > Sry, I meant to quickly

Re: [PATCH 1/1] scsi: usb: fix bug which some usb isn't used

2016-04-12 Thread Hannes Reinecke
On 04/12/2016 02:35 PM, Xinwei Kong wrote: > some usb disk such as Manufacturer Lenovo will have some problem in > init process. > > when it run "scsi_dh_find_driver" function, because this parameter of > "sdev->inquiry[5]" is 115, it will return "alua" in "scsi_dh_find_driver" > function and

[PATCH 2/2] IB/iser: set max_segment_size

2016-04-12 Thread Christoph Hellwig
So that we don't overflow the number of MR segments allocated because we have to split on SGL segment into multiple MR segments. Signed-off-by: Christoph Hellwig --- drivers/infiniband/ulp/iser/iscsi_iser.c | 1 + 1 file changed, 1 insertion(+) diff --git

[PATCH 1/2] scsi: add a max_segment_size limitation to struct Scsi_Host

2016-04-12 Thread Christoph Hellwig
RDMA drivers need segments that aren't larger than a single HCA page for memory registrations to work properly, so wire up this limitation in the host. While we could just call blk_queue_max_segment_size from ->slave_configure, that would override the global limit based on the DMA device, so

fix large I/O regression with iSER in 4.4+ V2

2016-04-12 Thread Christoph Hellwig
Since iSER was converted to use the generic virt_boundary mechanism (which was called something else in 4.4), it didn't handle the case where a request is using up the full size of max_hw_segments, but not actually aligned to the virt boundary. This series sets the maximum segment size limit to

Re: [PATCH 2/2] IB/iser: set max_segment_size

2016-04-12 Thread James Bottomley
On Tue, 2016-04-12 at 13:48 +0300, Sagi Grimberg wrote: > > So that we don't overflow the number of MR segments allocated > > because > > we have to split on SGL segment into multiple MR segments. > > > > Signed-off-by: Christoph Hellwig > > --- > >

Re: [PATCH 1/2] scsi: add a max_segment_size limitation to struct Scsi_Host

2016-04-12 Thread Bart Van Assche
On 04/12/2016 07:13 AM, Christoph Hellwig wrote: diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c index 8106515..ad79372 100644 --- a/drivers/scsi/scsi_lib.c +++ b/drivers/scsi/scsi_lib.c @@ -2120,7 +2120,8 @@ static void __scsi_init_queue(struct Scsi_Host *shost, struct

[PATCH v2] scsi/fcoe: convert to kworker

2016-04-12 Thread Sebastian Andrzej Siewior
The driver creates its own per-CPU threads which are updated based on CPU hotplug events. It is also possible to use kworkers and remove some of the kthread infrastrucure. The code checked ->thread to decide if there is an active per-CPU thread. By using the kworker infrastructure this is no

Re: [PATCH 2/2] IB/iser: set max_segment_size

2016-04-12 Thread Bart Van Assche
On 04/12/2016 07:13 AM, Christoph Hellwig wrote: So that we don't overflow the number of MR segments allocated because we have to split on SGL segment into multiple MR segments. Signed-off-by: Christoph Hellwig --- drivers/infiniband/ulp/iser/iscsi_iser.c | 1 + 1 file changed,

Re: [PATCH 1/2] scsi: add a max_segment_size limitation to struct Scsi_Host

2016-04-12 Thread Laurence Oberman
Other than adding the patch and rebuilding the kernel and testing regular stuff, which I had to do anyway, that was the extent of testing. I did not see where it was used to be honest other than adding the structure member. I wanted to test the simple change because it was in scsi_lib.c which

Re: [PATCH 2/2] IB/iser: set max_segment_size

2016-04-12 Thread Christoph Hellwig
On Tue, Apr 12, 2016 at 07:27:36AM -0700, James Bottomley wrote: > > In iser we sorta rely on 4k pages so we avoid > > PAGE_SIZE but rather set SIZE_4K for these sort > > of things (like we did in the virt_boundary). > > So you still want only 4k segments even on PPC where the PAGE_SIZE is > 16k?