On Thu, Oct 03, 2013 at 04:06:51AM -0700, Christoph Hellwig wrote:
On Sat, Jul 20, 2013 at 09:48:28AM -0500, Mike Christie wrote:
What about the attached only compile tested patch. The patch has the mq
block code work like the non mq code for bio cleanups.
blk-mq: blk-mq should free
On Sat, Jul 20, 2013 at 09:48:28AM -0500, Mike Christie wrote:
What about the attached only compile tested patch. The patch has the mq
block code work like the non mq code for bio cleanups.
blk-mq: blk-mq should free bios in pass through case
For non mq calls, the block layer will free
On Thu, Aug 15, 2013 at 07:19:29PM -0700, Nicholas A. Bellinger wrote:
Ok, here's a bit better idea of what is going on now..
The problem is that blkdev_issue_flush() - blk_mq_make_request() -
__blk_mq_alloc_request() allocates the first tag, which calls
blk_insert_flush() -
Hi Alexander!
Apologies for the long delay on this follow-up.. Comments below.
On Fri, 2013-09-20 at 17:19 +0200, Alexander Gordeev wrote:
On Thu, Aug 15, 2013 at 07:19:29PM -0700, Nicholas A. Bellinger wrote:
Ok, here's a bit better idea of what is going on now..
The problem is that
On Thu, Aug 15, 2013 at 07:19:29PM -0700, Nicholas A. Bellinger wrote:
Anyways, before digging further into reserved tags logic, Jens, what are
your thoughts for addressing this special queue_depth=1 case for libata
+ the like..?
Hi Jens,
Have some comments?
--
Regards,
Alexander Gordeev
On Fri, 2013-08-16 at 18:41 +0200, Alexander Gordeev wrote:
On Thu, Aug 15, 2013 at 07:19:29PM -0700, Nicholas A. Bellinger wrote:
I'm playing with a patch to do this, but am currently getting hung-up on
what appear to be some separate blk-mq reserved_tags 0 bugs, the first
of which is
On Fri, Aug 09, 2013 at 01:17:37PM -0700, Nicholas A. Bellinger wrote:
On Fri, 2013-08-09 at 21:15 +0200, Alexander Gordeev wrote:
Mmmm, I'm able to reproduce over here with ahci + scsi-mq, and it
appears to be a bug related with using sdev-sdev_md_req.queue_depth=1,
that ends up causing the
On Thu, 2013-08-15 at 18:23 +0200, Alexander Gordeev wrote:
On Fri, Aug 09, 2013 at 01:17:37PM -0700, Nicholas A. Bellinger wrote:
On Fri, 2013-08-09 at 21:15 +0200, Alexander Gordeev wrote:
Mmmm, I'm able to reproduce over here with ahci + scsi-mq, and it
appears to be a bug related with
On Fri, Aug 09, 2013 at 11:07:37AM -0600, Jens Axboe wrote:
You don't have to resubmit, I'll get it reviewed and applied today.
Hi Jens,
I limited the minimal queue depth to 4, which is apparently wrong
in case of libata. I will post a new series.
--
Jens Axboe
--
Regards,
Alexander
On Mon, Jul 29, 2013 at 07:46:53AM -0400, Tejun Heo wrote:
One thing which would probably be worthwhile tho is getting rid of the
bitmap based qc tag allocator in libata. That one is just borderline
stupid to keep around on any setup which is supposed to be scalable.
Hi Tejun,
How about this
On Fri, Aug 09, 2013 at 10:23:35AM +0200, Alexander Gordeev wrote:
On Mon, Jul 29, 2013 at 07:46:53AM -0400, Tejun Heo wrote:
One thing which would probably be worthwhile tho is getting rid of the
bitmap based qc tag allocator in libata. That one is just borderline
stupid to keep around on
On 08/09/2013 02:23 AM, Alexander Gordeev wrote:
On Mon, Jul 29, 2013 at 07:46:53AM -0400, Tejun Heo wrote:
One thing which would probably be worthwhile tho is getting rid of the
bitmap based qc tag allocator in libata. That one is just borderline
stupid to keep around on any setup which is
On Fri, Aug 09, 2013 at 08:24:38AM -0600, Jens Axboe wrote:
On 08/09/2013 02:23 AM, Alexander Gordeev wrote:
+ ap-qc_tags = blk_mq_init_tags(ATA_MAX_QUEUE, 1, NUMA_NO_NODE);
+ if (!ap-qc_tags) {
+ kfree(ap);
+ return NULL;
+ }
This should be
On 08/09/2013 09:07 AM, Alexander Gordeev wrote:
On Fri, Aug 09, 2013 at 08:24:38AM -0600, Jens Axboe wrote:
On 08/09/2013 02:23 AM, Alexander Gordeev wrote:
+ ap-qc_tags = blk_mq_init_tags(ATA_MAX_QUEUE, 1, NUMA_NO_NODE);
+ if (!ap-qc_tags) {
+ kfree(ap);
+ return
On Fri, Aug 09, 2013 at 09:52:19AM -0600, Jens Axboe wrote:
On 08/09/2013 09:07 AM, Alexander Gordeev wrote:
diff --git a/block/blk-mq-tag.c b/block/blk-mq-tag.c
index dcbc2a4..b131a48 100644
--- a/block/blk-mq-tag.c
+++ b/block/blk-mq-tag.c
@@ -468,10 +468,9 @@ struct blk_mq_tags
On 08/09/2013 10:46 AM, Alexander Gordeev wrote:
On Fri, Aug 09, 2013 at 09:52:19AM -0600, Jens Axboe wrote:
On 08/09/2013 09:07 AM, Alexander Gordeev wrote:
diff --git a/block/blk-mq-tag.c b/block/blk-mq-tag.c
index dcbc2a4..b131a48 100644
--- a/block/blk-mq-tag.c
+++ b/block/blk-mq-tag.c
On Sat, Jul 20, 2013 at 09:48:28AM -0500, Mike Christie wrote:
What about the attached only compile tested patch. The patch has the mq
block code work like the non mq code for bio cleanups.
Not sure if it is related to the patch or not, but it never returns from
wait_for_completion_io(wait) in
Hello,
On Tue, Jul 30, 2013 at 09:16:02PM -0700, Marc C wrote:
One thing which would probably be worthwhile tho is getting rid of the
bitmap based qc tag allocator in libata. That one is just borderline
stupid to keep around on any setup which is supposed to be scalable.
Your border
On Thu, Jul 25, 2013 at 12:16:41PM +0200, Alexander Gordeev wrote:
On Mon, Jul 22, 2013 at 02:10:36PM -0700, Nicholas A. Bellinger wrote:
Np. FYI, you'll want to use the latest commit e7827b351 HEAD from
target-pending/scsi-mq, which now has functioning scsi-generic support.
Survives a
One thing which would probably be worthwhile tho is getting rid of the
bitmap based qc tag allocator in libata. That one is just borderline
stupid to keep around on any setup which is supposed to be scalable.
Your border might be wider than mine :-). Yes, the bitmap should
definitely go.
A
On 07/26/2013 04:09 AM, Jens Axboe wrote:
On Thu, Jul 25 2013, Nicholas A. Bellinger wrote:
On Thu, 2013-07-25 at 12:16 +0200, Alexander Gordeev wrote:
On Mon, Jul 22, 2013 at 02:10:36PM -0700, Nicholas A. Bellinger wrote:
Np. FYI, you'll want to use the latest commit e7827b351 HEAD from
On Fri, Jul 26, 2013 at 05:43:13PM -0700, Nicholas A. Bellinger wrote:
On Fri, 2013-07-26 at 14:14 -0700, Nicholas A. Bellinger wrote:
On Thu, 2013-07-25 at 20:09 -0600, Jens Axboe wrote:
On Thu, Jul 25 2013, Nicholas A. Bellinger wrote:
On Thu, 2013-07-25 at 12:16 +0200, Alexander
Hello,
On Fri, Jul 26, 2013 at 02:14:36PM -0700, Nicholas A. Bellinger wrote:
So I don't think (completely) getting rid of ata_port-qcmds[] will be
possible, and just converting the ata_scsi_queuecmd() path to use the
extra SHT-cmd_size pre-allocation for *ata_queued_cmd might end up
being
Yo,
On Fri, Jul 26, 2013 at 05:43:13PM -0700, Nicholas A. Bellinger wrote:
Considering there can be more than a single ata_device hanging off each
ata_port, the '*sdev = ap-link.device[0].sdev' in __ata_qc_from_tag()
is definitely bogus, but I'm not sure how else to correlate
blk-mq/scsi-mq
On 07/29/2013 05:46 AM, Tejun Heo wrote:
Hello,
On Fri, Jul 26, 2013 at 02:14:36PM -0700, Nicholas A. Bellinger wrote:
So I don't think (completely) getting rid of ata_port-qcmds[] will be
possible, and just converting the ata_scsi_queuecmd() path to use the
extra SHT-cmd_size
On 07/29/2013 05:18 AM, Alexander Gordeev wrote:
-static struct ata_queued_cmd *ata_qc_new(struct ata_port *ap)
+static struct ata_queued_cmd *ata_qc_new(struct ata_port *ap,
+struct scsi_cmnd *sc)
{
struct ata_queued_cmd *qc = NULL;
-
On Mon, 2013-07-29 at 07:50 -0400, Tejun Heo wrote:
Yo,
On Fri, Jul 26, 2013 at 05:43:13PM -0700, Nicholas A. Bellinger wrote:
Considering there can be more than a single ata_device hanging off each
ata_port, the '*sdev = ap-link.device[0].sdev' in __ata_qc_from_tag()
is definitely
On Mon, 2013-07-29 at 13:18 +0200, Alexander Gordeev wrote:
On Fri, Jul 26, 2013 at 05:43:13PM -0700, Nicholas A. Bellinger wrote:
On Fri, 2013-07-26 at 14:14 -0700, Nicholas A. Bellinger wrote:
SNIP
I also tried to make a quick conversion and hit the same issue(s) as you.
Generally, I am
On Thu, 2013-07-25 at 20:09 -0600, Jens Axboe wrote:
On Thu, Jul 25 2013, Nicholas A. Bellinger wrote:
On Thu, 2013-07-25 at 12:16 +0200, Alexander Gordeev wrote:
On Mon, Jul 22, 2013 at 02:10:36PM -0700, Nicholas A. Bellinger wrote:
Np. FYI, you'll want to use the latest commit
On Fri, 2013-07-26 at 14:14 -0700, Nicholas A. Bellinger wrote:
On Thu, 2013-07-25 at 20:09 -0600, Jens Axboe wrote:
On Thu, Jul 25 2013, Nicholas A. Bellinger wrote:
On Thu, 2013-07-25 at 12:16 +0200, Alexander Gordeev wrote:
On Mon, Jul 22, 2013 at 02:10:36PM -0700, Nicholas A.
On Mon, Jul 22, 2013 at 02:10:36PM -0700, Nicholas A. Bellinger wrote:
Np. FYI, you'll want to use the latest commit e7827b351 HEAD from
target-pending/scsi-mq, which now has functioning scsi-generic support.
Survives a boot, a kernel build and the build's result :)
--
Regards,
Alexander
On Thu, 2013-07-25 at 12:16 +0200, Alexander Gordeev wrote:
On Mon, Jul 22, 2013 at 02:10:36PM -0700, Nicholas A. Bellinger wrote:
Np. FYI, you'll want to use the latest commit e7827b351 HEAD from
target-pending/scsi-mq, which now has functioning scsi-generic support.
Survives a boot, a
On Thu, Jul 25 2013, Nicholas A. Bellinger wrote:
On Thu, 2013-07-25 at 12:16 +0200, Alexander Gordeev wrote:
On Mon, Jul 22, 2013 at 02:10:36PM -0700, Nicholas A. Bellinger wrote:
Np. FYI, you'll want to use the latest commit e7827b351 HEAD from
target-pending/scsi-mq, which now has
On Fri, Jul 19, 2013 at 09:56:02PM -0700, Nicholas A. Bellinger wrote:
On Fri, 2013-07-19 at 14:01 -0700, Nicholas A. Bellinger wrote:
OK, after further investigation the root cause is a actually a missing
bio-bio_end_io() - bio_copy_kern_endio() - bio_put() from the
blk_end_sync_rq() callback
On Mon, 2013-07-22 at 17:03 +0200, Alexander Gordeev wrote:
On Fri, Jul 19, 2013 at 09:56:02PM -0700, Nicholas A. Bellinger wrote:
On Fri, 2013-07-19 at 14:01 -0700, Nicholas A. Bellinger wrote:
OK, after further investigation the root cause is a actually a missing
bio-bio_end_io() -
On 07/19/2013 11:56 PM, Nicholas A. Bellinger wrote:
On Fri, 2013-07-19 at 14:01 -0700, Nicholas A. Bellinger wrote:
On Fri, 2013-07-19 at 08:33 -0700, James Bottomley wrote:
On Thu, 2013-07-18 at 23:34 -0700, Nicholas A. Bellinger wrote:
diff --git a/drivers/ata/libata-scsi.c
On Sat, 2013-07-20 at 09:48 -0500, Mike Christie wrote:
On 07/19/2013 11:56 PM, Nicholas A. Bellinger wrote:
On Fri, 2013-07-19 at 14:01 -0700, Nicholas A. Bellinger wrote:
On Fri, 2013-07-19 at 08:33 -0700, James Bottomley wrote:
SNIP
Indeed. Looking into the bio_copy_kern() breakage
On Sat, Jul 20 2013, Mike Christie wrote:
blk-mq: blk-mq should free bios in pass through case
For non mq calls, the block layer will free the bios when
blk_finish_request is called.
For mq calls, the blk mq code wants the caller to do this.
This patch has the blk mq code work like the
On Thu, 2013-07-18 at 18:03 -0700, Nicholas A. Bellinger wrote:
On Thu, 2013-07-18 at 18:30 -0600, Jens Axboe wrote:
On Thu, Jul 18 2013, Nicholas A. Bellinger wrote:
On Thu, 2013-07-18 at 13:12 -0600, Mike Christie wrote:
On 07/18/2013 12:51 PM, Nicholas A. Bellinger wrote:
SNIP
On Thu, 2013-07-18 at 23:34 -0700, Nicholas A. Bellinger wrote:
diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
index 0101af5..191bc15 100644
--- a/drivers/ata/libata-scsi.c
+++ b/drivers/ata/libata-scsi.c
@@ -1144,7 +1144,11 @@ static int ata_scsi_dev_config(struct
On 07/18/2013 06:23 PM, Nicholas A. Bellinger wrote:
Just saw this while trying out iscsi with the scsi-mq stuff :)
Took at stab at this a while back, but ended getting distracted on other
items. Do you have an initial conversion running yet..?
Not running well :) Have a patch but I am
On Fri, 2013-07-19 at 08:33 -0700, James Bottomley wrote:
On Thu, 2013-07-18 at 23:34 -0700, Nicholas A. Bellinger wrote:
diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
index 0101af5..191bc15 100644
--- a/drivers/ata/libata-scsi.c
+++ b/drivers/ata/libata-scsi.c
@@
On Fri, 2013-07-19 at 09:58 -0600, Mike Christie wrote:
On 07/18/2013 06:23 PM, Nicholas A. Bellinger wrote:
Just saw this while trying out iscsi with the scsi-mq stuff :)
Took at stab at this a while back, but ended getting distracted on other
items. Do you have an initial conversion
On Fri, 2013-07-19 at 14:01 -0700, Nicholas A. Bellinger wrote:
On Fri, 2013-07-19 at 08:33 -0700, James Bottomley wrote:
On Thu, 2013-07-18 at 23:34 -0700, Nicholas A. Bellinger wrote:
diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
index 0101af5..191bc15 100644
---
On Wed, 2013-07-17 at 18:19 +0200, Alexander Gordeev wrote:
On Tue, Jul 16, 2013 at 02:38:03PM -0700, Nicholas A. Bellinger wrote:
[7.927818] scsi_execute(): Calling blk_mq_free_request
[7.927826] scsi 0:0:0:0: Direct-Access ATA ST9500530NS
CC03 PQ: 0 ANSI: 5
On Thu, 2013-07-18 at 11:51 -0700, Nicholas A. Bellinger wrote:
On Wed, 2013-07-17 at 18:19 +0200, Alexander Gordeev wrote:
On Tue, Jul 16, 2013 at 02:38:03PM -0700, Nicholas A. Bellinger wrote:
[7.927818] scsi_execute(): Calling blk_mq_free_request
[7.927826] scsi 0:0:0:0:
On 07/18/2013 12:51 PM, Nicholas A. Bellinger wrote:
On Wed, 2013-07-17 at 18:19 +0200, Alexander Gordeev wrote:
On Tue, Jul 16, 2013 at 02:38:03PM -0700, Nicholas A. Bellinger wrote:
[7.927818] scsi_execute(): Calling blk_mq_free_request
[7.927826] scsi 0:0:0:0: Direct-Access ATA
On 07/18/2013 01:14 PM, Nicholas A. Bellinger wrote:
On Thu, 2013-07-18 at 11:51 -0700, Nicholas A. Bellinger wrote:
On Wed, 2013-07-17 at 18:19 +0200, Alexander Gordeev wrote:
On Tue, Jul 16, 2013 at 02:38:03PM -0700, Nicholas A. Bellinger wrote:
[7.927818] scsi_execute(): Calling
On Thu, 2013-07-18 at 13:12 -0600, Mike Christie wrote:
On 07/18/2013 12:51 PM, Nicholas A. Bellinger wrote:
On Wed, 2013-07-17 at 18:19 +0200, Alexander Gordeev wrote:
On Tue, Jul 16, 2013 at 02:38:03PM -0700, Nicholas A. Bellinger wrote:
[7.927818] scsi_execute(): Calling
On Thu, Jul 18 2013, Nicholas A. Bellinger wrote:
On Thu, 2013-07-18 at 13:12 -0600, Mike Christie wrote:
On 07/18/2013 12:51 PM, Nicholas A. Bellinger wrote:
On Wed, 2013-07-17 at 18:19 +0200, Alexander Gordeev wrote:
On Tue, Jul 16, 2013 at 02:38:03PM -0700, Nicholas A. Bellinger wrote:
On Thu, 2013-07-18 at 18:30 -0600, Jens Axboe wrote:
On Thu, Jul 18 2013, Nicholas A. Bellinger wrote:
On Thu, 2013-07-18 at 13:12 -0600, Mike Christie wrote:
On 07/18/2013 12:51 PM, Nicholas A. Bellinger wrote:
On Wed, 2013-07-17 at 18:19 +0200, Alexander Gordeev wrote:
On Tue, Jul
On Tue, Jul 16, 2013 at 02:38:03PM -0700, Nicholas A. Bellinger wrote:
[7.927818] scsi_execute(): Calling blk_mq_free_request
[7.927826] scsi 0:0:0:0: Direct-Access ATA ST9500530NS CC03
PQ: 0 ANSI: 5
OK, so INQUIRY response payload is looking as expected here.
Yep.
On Tue, 2013-07-16 at 20:32 +0200, Alexander Gordeev wrote:
On Fri, Jul 12, 2013 at 10:20:12PM -0700, Nicholas A. Bellinger wrote:
On Fri, 2013-07-12 at 09:46 +0200, Alexander Gordeev wrote:
diff --git a/drivers/scsi/scsi-mq.c b/drivers/scsi/scsi-mq.c
index ca6ff67..d8cc7a4 100644
53 matches
Mail list logo