Re: [dm-devel] [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-17 Thread Bryn M. Reeves
On 03/14/2014 02:13 PM, Mike Snitzer wrote: > Yeah, not sure why single path scsi_debug "just works", maybe it is a > "feature" of the older multipathd I have kicking around?, but for basic > data path testing scsi_debug is a quick means to an end. I can look > closer at _why_ it gets multipathd

Re: [dm-devel] [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-17 Thread Bryn M. Reeves
On 03/14/2014 02:13 PM, Mike Snitzer wrote: Yeah, not sure why single path scsi_debug just works, maybe it is a feature of the older multipathd I have kicking around?, but for basic data path testing scsi_debug is a quick means to an end. I can look closer at _why_ it gets multipathd in a

scsi_debug and mutipath, was Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-15 Thread Christoph Hellwig
On Fri, Mar 14, 2014 at 10:13:01AM -0400, Mike Snitzer wrote: > I was more reacting to the assertion you made like multipath regresses > all the time. I'm not faulting you at all for not having tested > multipath. Hell, I even forget to test multipath more than I should. > /me says with shame

scsi_debug and mutipath, was Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-15 Thread Christoph Hellwig
On Fri, Mar 14, 2014 at 10:13:01AM -0400, Mike Snitzer wrote: I was more reacting to the assertion you made like multipath regresses all the time. I'm not faulting you at all for not having tested multipath. Hell, I even forget to test multipath more than I should. /me says with shame And I

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Mike Snitzer
On Fri, Mar 14 2014 at 9:23am -0400, Christoph Hellwig wrote: > On Fri, Mar 14, 2014 at 09:00:21AM -0400, Mike Snitzer wrote: > > > Getting a little upset, eh? I didn't say it's broken, I said it gets > > > very little testing. The regression from me was found like so many > > > before only

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Christoph Hellwig
On Fri, Mar 14, 2014 at 09:00:21AM -0400, Mike Snitzer wrote: > > Getting a little upset, eh? I didn't say it's broken, I said it gets > > very little testing. The regression from me was found like so many > > before only after it was backported o some enterprise kernel. > > Even _really_ basic

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Mike Snitzer
On Fri, Mar 14 2014 at 5:25am -0400, Christoph Hellwig wrote: > On Thu, Mar 13, 2014 at 12:13:47PM -0400, Mike Snitzer wrote: > > Pretty ironic that in the same email that you ask someone to "Let's make > > this a little less personal." you start by asserting upstream > > dm-multipath sees very

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Christoph Hellwig
On Fri, Mar 14, 2014 at 10:30:53AM +0100, Hannes Reinecke wrote: > That was actually one of my plans, move dm-multipath over to use > blk-mq. But then I'd need to discuss with Jens et al how to best > achieve this; the current static hctx allocation doesn't play well > with multipaths dynamic path

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Hannes Reinecke
On 03/14/2014 11:58 AM, Christoph Hellwig wrote: > On Fri, Mar 14, 2014 at 10:52:55AM +0100, Hannes Reinecke wrote: >> No, I haven't. This issue is only exhibited if you try to run >> multipath on a non-SCSI device (in this case it was cciss). >> But then that project got abandoned, and there

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Christoph Hellwig
On Fri, Mar 14, 2014 at 10:52:55AM +0100, Hannes Reinecke wrote: > No, I haven't. This issue is only exhibited if you try to run > multipath on a non-SCSI device (in this case it was cciss). > But then that project got abandoned, and there never was a machine > with a multipathed cciss controller.

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Hannes Reinecke
On 03/14/2014 10:34 AM, Christoph Hellwig wrote: > On Fri, Mar 14, 2014 at 02:25:19AM -0700, Christoph Hellwig wrote: >> b) is a bit harder, but we should think hard about it when rewriting the >> multipath code to support blk-mq. Talking about which I think trying to >> use dm-multipath on any

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Christoph Hellwig
On Fri, Mar 14, 2014 at 02:25:19AM -0700, Christoph Hellwig wrote: > b) is a bit harder, but we should think hard about it when rewriting the > multipath code to support blk-mq. Talking about which I think trying to > use dm-multipath on any blk-mq device will go horribly crash and boom at > the

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Hannes Reinecke
On 03/14/2014 10:25 AM, Christoph Hellwig wrote: > On Thu, Mar 13, 2014 at 12:13:47PM -0400, Mike Snitzer wrote: >> Pretty ironic that in the same email that you ask someone to "Let's make >> this a little less personal." you start by asserting upstream >> dm-multipath sees very little testing --

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Christoph Hellwig
On Thu, Mar 13, 2014 at 12:13:47PM -0400, Mike Snitzer wrote: > Pretty ironic that in the same email that you ask someone to "Let's make > this a little less personal." you start by asserting upstream > dm-multipath sees very little testing -- and use your commit that > recently broke dm-multipath

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Christoph Hellwig
On Thu, Mar 13, 2014 at 12:13:47PM -0400, Mike Snitzer wrote: Pretty ironic that in the same email that you ask someone to Let's make this a little less personal. you start by asserting upstream dm-multipath sees very little testing -- and use your commit that recently broke dm-multipath as

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Hannes Reinecke
On 03/14/2014 10:25 AM, Christoph Hellwig wrote: On Thu, Mar 13, 2014 at 12:13:47PM -0400, Mike Snitzer wrote: Pretty ironic that in the same email that you ask someone to Let's make this a little less personal. you start by asserting upstream dm-multipath sees very little testing -- and use

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Christoph Hellwig
On Fri, Mar 14, 2014 at 02:25:19AM -0700, Christoph Hellwig wrote: b) is a bit harder, but we should think hard about it when rewriting the multipath code to support blk-mq. Talking about which I think trying to use dm-multipath on any blk-mq device will go horribly crash and boom at the

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Hannes Reinecke
On 03/14/2014 10:34 AM, Christoph Hellwig wrote: On Fri, Mar 14, 2014 at 02:25:19AM -0700, Christoph Hellwig wrote: b) is a bit harder, but we should think hard about it when rewriting the multipath code to support blk-mq. Talking about which I think trying to use dm-multipath on any blk-mq

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Christoph Hellwig
On Fri, Mar 14, 2014 at 10:52:55AM +0100, Hannes Reinecke wrote: No, I haven't. This issue is only exhibited if you try to run multipath on a non-SCSI device (in this case it was cciss). But then that project got abandoned, and there never was a machine with a multipathed cciss controller. We

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Hannes Reinecke
On 03/14/2014 11:58 AM, Christoph Hellwig wrote: On Fri, Mar 14, 2014 at 10:52:55AM +0100, Hannes Reinecke wrote: No, I haven't. This issue is only exhibited if you try to run multipath on a non-SCSI device (in this case it was cciss). But then that project got abandoned, and there never was a

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Christoph Hellwig
On Fri, Mar 14, 2014 at 10:30:53AM +0100, Hannes Reinecke wrote: That was actually one of my plans, move dm-multipath over to use blk-mq. But then I'd need to discuss with Jens et al how to best achieve this; the current static hctx allocation doesn't play well with multipaths dynamic path

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Mike Snitzer
On Fri, Mar 14 2014 at 5:25am -0400, Christoph Hellwig h...@infradead.org wrote: On Thu, Mar 13, 2014 at 12:13:47PM -0400, Mike Snitzer wrote: Pretty ironic that in the same email that you ask someone to Let's make this a little less personal. you start by asserting upstream dm-multipath

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Christoph Hellwig
On Fri, Mar 14, 2014 at 09:00:21AM -0400, Mike Snitzer wrote: Getting a little upset, eh? I didn't say it's broken, I said it gets very little testing. The regression from me was found like so many before only after it was backported o some enterprise kernel. Even _really_ basic

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-14 Thread Mike Snitzer
On Fri, Mar 14 2014 at 9:23am -0400, Christoph Hellwig h...@infradead.org wrote: On Fri, Mar 14, 2014 at 09:00:21AM -0400, Mike Snitzer wrote: Getting a little upset, eh? I didn't say it's broken, I said it gets very little testing. The regression from me was found like so many

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-13 Thread Mike Snitzer
On Wed, Mar 12 2014 at 6:28am -0400, Christoph Hellwig wrote: > On Sat, Mar 08, 2014 at 08:51:18PM +0100, Hannes Reinecke wrote: > > Hey, calm down. > > I've made the fix just two days ago. And was quite surprised that > > I've been the first hitting that; should've crashed for everybody > >

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-13 Thread Mike Snitzer
On Wed, Mar 12 2014 at 6:28am -0400, Christoph Hellwig h...@infradead.org wrote: On Sat, Mar 08, 2014 at 08:51:18PM +0100, Hannes Reinecke wrote: Hey, calm down. I've made the fix just two days ago. And was quite surprised that I've been the first hitting that; should've crashed for

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-12 Thread Hannes Reinecke
On 03/12/2014 11:55 AM, Christoph Hellwig wrote: > On Wed, Mar 12, 2014 at 11:50:13AM +0100, Hannes Reinecke wrote: >> >From the device-mapper side we have these patches which are not >> included upstream: > > Another one on the dm side that seems useful is: > > dm-emulate-blkrrpart-ioctl: >

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-12 Thread Christoph Hellwig
On Wed, Mar 12, 2014 at 11:50:13AM +0100, Hannes Reinecke wrote: > >From the device-mapper side we have these patches which are not > included upstream: Another one on the dm side that seems useful is: dm-emulate-blkrrpart-ioctl: Partitions on device-mapper devices are managed by kpartx (if at

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-12 Thread Hannes Reinecke
On 03/12/2014 11:28 AM, Christoph Hellwig wrote: > On Sat, Mar 08, 2014 at 08:51:18PM +0100, Hannes Reinecke wrote: >> Hey, calm down. >> I've made the fix just two days ago. And was quite surprised that >> I've been the first hitting that; should've crashed for everybody >> using dm-multipath. >>

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-12 Thread Christoph Hellwig
On Sat, Mar 08, 2014 at 08:51:18PM +0100, Hannes Reinecke wrote: > Hey, calm down. > I've made the fix just two days ago. And was quite surprised that > I've been the first hitting that; should've crashed for everybody > using dm-multipath. > And given the pushback I've gotten recently from

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-12 Thread Christoph Hellwig
On Sat, Mar 08, 2014 at 08:51:18PM +0100, Hannes Reinecke wrote: Hey, calm down. I've made the fix just two days ago. And was quite surprised that I've been the first hitting that; should've crashed for everybody using dm-multipath. And given the pushback I've gotten recently from patches I

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-12 Thread Hannes Reinecke
On 03/12/2014 11:28 AM, Christoph Hellwig wrote: On Sat, Mar 08, 2014 at 08:51:18PM +0100, Hannes Reinecke wrote: Hey, calm down. I've made the fix just two days ago. And was quite surprised that I've been the first hitting that; should've crashed for everybody using dm-multipath. And given

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-12 Thread Christoph Hellwig
On Wed, Mar 12, 2014 at 11:50:13AM +0100, Hannes Reinecke wrote: From the device-mapper side we have these patches which are not included upstream: Another one on the dm side that seems useful is: dm-emulate-blkrrpart-ioctl: Partitions on device-mapper devices are managed by kpartx (if at

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-12 Thread Hannes Reinecke
On 03/12/2014 11:55 AM, Christoph Hellwig wrote: On Wed, Mar 12, 2014 at 11:50:13AM +0100, Hannes Reinecke wrote: From the device-mapper side we have these patches which are not included upstream: Another one on the dm side that seems useful is: dm-emulate-blkrrpart-ioctl: Partitions

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-08 Thread Hannes Reinecke
On 03/08/2014 07:13 PM, Mike Snitzer wrote: On Sat, Mar 8, 2014 at 2:51 PM, Hannes Reinecke wrote: On 03/08/2014 06:33 PM, Mike Snitzer wrote: On Sat, Mar 8, 2014 at 10:52 AM, Christoph Hellwig wrote: On Fri, Mar 07, 2014 at 03:45:09PM -0500, Jeff Moyer wrote: Hi, Christoph, Did you

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-08 Thread Mike Snitzer
On Sat, Mar 8, 2014 at 2:51 PM, Hannes Reinecke wrote: > On 03/08/2014 06:33 PM, Mike Snitzer wrote: >> >> On Sat, Mar 8, 2014 at 10:52 AM, Christoph Hellwig >> wrote: >>> >>> On Fri, Mar 07, 2014 at 03:45:09PM -0500, Jeff Moyer wrote: Hi, Christoph, Did you mean to switch

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-08 Thread Hannes Reinecke
On 03/08/2014 06:33 PM, Mike Snitzer wrote: On Sat, Mar 8, 2014 at 10:52 AM, Christoph Hellwig wrote: On Fri, Mar 07, 2014 at 03:45:09PM -0500, Jeff Moyer wrote: Hi, Christoph, Did you mean to switch from list_add to list_add_tail? That seems like a change that warrants mention. No, that

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-08 Thread Mike Snitzer
On Sat, Mar 8, 2014 at 10:52 AM, Christoph Hellwig wrote: > On Fri, Mar 07, 2014 at 03:45:09PM -0500, Jeff Moyer wrote: >> Hi, Christoph, >> >> Did you mean to switch from list_add to list_add_tail? That seems like >> a change that warrants mention. > > No, that wasn't intentional and should be

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-08 Thread Christoph Hellwig
On Fri, Mar 07, 2014 at 03:45:09PM -0500, Jeff Moyer wrote: > Hi, Christoph, > > Did you mean to switch from list_add to list_add_tail? That seems like > a change that warrants mention. No, that wasn't intentional and should be fixed. Btw, there was another issue with that commit, in that

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-08 Thread Christoph Hellwig
On Fri, Mar 07, 2014 at 03:45:09PM -0500, Jeff Moyer wrote: Hi, Christoph, Did you mean to switch from list_add to list_add_tail? That seems like a change that warrants mention. No, that wasn't intentional and should be fixed. Btw, there was another issue with that commit, in that

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-08 Thread Mike Snitzer
On Sat, Mar 8, 2014 at 10:52 AM, Christoph Hellwig h...@infradead.org wrote: On Fri, Mar 07, 2014 at 03:45:09PM -0500, Jeff Moyer wrote: Hi, Christoph, Did you mean to switch from list_add to list_add_tail? That seems like a change that warrants mention. No, that wasn't intentional and

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-08 Thread Hannes Reinecke
On 03/08/2014 06:33 PM, Mike Snitzer wrote: On Sat, Mar 8, 2014 at 10:52 AM, Christoph Hellwig h...@infradead.org wrote: On Fri, Mar 07, 2014 at 03:45:09PM -0500, Jeff Moyer wrote: Hi, Christoph, Did you mean to switch from list_add to list_add_tail? That seems like a change that warrants

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-08 Thread Mike Snitzer
On Sat, Mar 8, 2014 at 2:51 PM, Hannes Reinecke h...@suse.de wrote: On 03/08/2014 06:33 PM, Mike Snitzer wrote: On Sat, Mar 8, 2014 at 10:52 AM, Christoph Hellwig h...@infradead.org wrote: On Fri, Mar 07, 2014 at 03:45:09PM -0500, Jeff Moyer wrote: Hi, Christoph, Did you mean to switch

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-08 Thread Hannes Reinecke
On 03/08/2014 07:13 PM, Mike Snitzer wrote: On Sat, Mar 8, 2014 at 2:51 PM, Hannes Reinecke h...@suse.de wrote: On 03/08/2014 06:33 PM, Mike Snitzer wrote: On Sat, Mar 8, 2014 at 10:52 AM, Christoph Hellwig h...@infradead.org wrote: On Fri, Mar 07, 2014 at 03:45:09PM -0500, Jeff Moyer

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-07 Thread Jeff Moyer
Christoph Hellwig writes: > Witch to using a preallocated flush_rq for blk-mq similar to what's done > with the old request path. This allows us to set up the request properly > with a tag from the actually allowed range and ->rq_disk as needed by > some drivers. To make life easier we also

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-03-07 Thread Jeff Moyer
Christoph Hellwig h...@infradead.org writes: Witch to using a preallocated flush_rq for blk-mq similar to what's done with the old request path. This allows us to set up the request properly with a tag from the actually allowed range and -rq_disk as needed by some drivers. To make life

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-02-10 Thread Christoph Hellwig
On Sat, Feb 08, 2014 at 08:55:07AM +0800, Shaohua Li wrote: > Yep, none driver needs it. But reverse mapping is the one of the points we use > tag, so better we prepare it. I don't think adding unused code to tree for a future driver is a good idea, although I'm happy to help out with the

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-02-10 Thread Christoph Hellwig
On Sat, Feb 08, 2014 at 08:55:07AM +0800, Shaohua Li wrote: Yep, none driver needs it. But reverse mapping is the one of the points we use tag, so better we prepare it. I don't think adding unused code to tree for a future driver is a good idea, although I'm happy to help out with the

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-02-07 Thread Shaohua Li
On Fri, Feb 07, 2014 at 06:19:15AM -0800, Christoph Hellwig wrote: > On Fri, Feb 07, 2014 at 09:18:27AM +0800, Shaohua Li wrote: > > Reusing the tag for flush request is considered before. The problem is > > driver > > need get a request from a tag, reusing tag breaks this. The possible > >

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-02-07 Thread Christoph Hellwig
On Fri, Feb 07, 2014 at 09:18:27AM +0800, Shaohua Li wrote: > Reusing the tag for flush request is considered before. The problem is driver > need get a request from a tag, reusing tag breaks this. The possible solution > is we provide a blk_mq_tag_to_request, and force driver uses it. And in this

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-02-07 Thread Christoph Hellwig
On Fri, Feb 07, 2014 at 09:18:27AM +0800, Shaohua Li wrote: Reusing the tag for flush request is considered before. The problem is driver need get a request from a tag, reusing tag breaks this. The possible solution is we provide a blk_mq_tag_to_request, and force driver uses it. And in this

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-02-07 Thread Shaohua Li
On Fri, Feb 07, 2014 at 06:19:15AM -0800, Christoph Hellwig wrote: On Fri, Feb 07, 2014 at 09:18:27AM +0800, Shaohua Li wrote: Reusing the tag for flush request is considered before. The problem is driver need get a request from a tag, reusing tag breaks this. The possible solution is

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-02-06 Thread Shaohua Li
On Thu, Jan 30, 2014 at 05:26:30AM -0800, Christoph Hellwig wrote: > Witch to using a preallocated flush_rq for blk-mq similar to what's done > with the old request path. This allows us to set up the request properly > with a tag from the actually allowed range and ->rq_disk as needed by > some

Re: [PATCH 1/1] block: rework flush sequencing for blk-mq

2014-02-06 Thread Shaohua Li
On Thu, Jan 30, 2014 at 05:26:30AM -0800, Christoph Hellwig wrote: Witch to using a preallocated flush_rq for blk-mq similar to what's done with the old request path. This allows us to set up the request properly with a tag from the actually allowed range and -rq_disk as needed by some

[PATCH 1/1] block: rework flush sequencing for blk-mq

2014-01-30 Thread Christoph Hellwig
Witch to using a preallocated flush_rq for blk-mq similar to what's done with the old request path. This allows us to set up the request properly with a tag from the actually allowed range and ->rq_disk as needed by some drivers. To make life easier we also switch to dynamic allocation of

[PATCH 1/1] block: rework flush sequencing for blk-mq

2014-01-30 Thread Christoph Hellwig
Witch to using a preallocated flush_rq for blk-mq similar to what's done with the old request path. This allows us to set up the request properly with a tag from the actually allowed range and -rq_disk as needed by some drivers. To make life easier we also switch to dynamic allocation of