Re: split scsi passthrough fields out of struct request V2

2017-02-02 Thread Bart Van Assche
On Thu, 2017-02-02 at 16:04 -0500, Mike Snitzer wrote: > Any progress on getting this to work without requiring infiniband HW? Hello Mike, Intructions for running these tests over SoftRoCE have been added to the README.md file in https://github.com/bvanassche/srp-test. However, I'm not sure the

Re: split scsi passthrough fields out of struct request V2

2017-02-02 Thread Mike Snitzer
On Thu, Feb 02 2017 at 4:04pm -0500, Mike Snitzer wrote: > On Thu, Feb 02 2017 at 2:46pm -0500, > Bart Van Assche wrote: > > > On Thu, 2017-02-02 at 14:13 -0500, Mike Snitzer wrote: > > > On Thu, Feb 02 2017 at 1:43pm -0500, Bart Van Assche >

Re: split scsi passthrough fields out of struct request V2

2017-02-02 Thread Mike Snitzer
On Thu, Feb 02 2017 at 2:46pm -0500, Bart Van Assche wrote: > On Thu, 2017-02-02 at 14:13 -0500, Mike Snitzer wrote: > > On Thu, Feb 02 2017 at 1:43pm -0500, Bart Van Assche > > wrote: > > > On Thu, 2017-02-02 at 13:33 -0500, Mike

Re: split scsi passthrough fields out of struct request V2

2017-02-02 Thread Bart Van Assche
On Thu, 2017-02-02 at 14:13 -0500, Mike Snitzer wrote: > On Thu, Feb 02 2017 at 1:43pm -0500, Bart Van Assche > wrote: > > On Thu, 2017-02-02 at 13:33 -0500, Mike Snitzer wrote: > > > I'll go back over hch's changes to see if I can spot anything. But is > > > this

Re: split scsi passthrough fields out of struct request V2

2017-02-02 Thread Mike Snitzer
On Thu, Feb 02 2017 at 1:43pm -0500, Bart Van Assche wrote: > On Thu, 2017-02-02 at 13:33 -0500, Mike Snitzer wrote: > > I'll go back over hch's changes to see if I can spot anything. But is > > this testing using dm_mod.use_bk_mq=Y or are you testing old

Re: split scsi passthrough fields out of struct request V2

2017-02-02 Thread Bart Van Assche
On Thu, 2017-02-02 at 13:33 -0500, Mike Snitzer wrote: > I'll go back over hch's changes to see if I can spot anything. But is > this testing using dm_mod.use_bk_mq=Y or are you testing old .request_fn > dm-multipath? Hello Mike, The srp-test software tests multiple configurations: dm-mq on

Re: split scsi passthrough fields out of struct request V2

2017-02-02 Thread Mike Snitzer
On Thu, Feb 02 2017 at 12:27pm -0500, Bart Van Assche wrote: > On Wed, 2017-02-01 at 22:01 +, Bart Van Assche wrote: > > However, a new issue shows up sporadically, an issue that I had not yet seen > > during any test with a kernel tree from Linus: > > > > [

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-02-02 Thread Bart Van Assche
On Wed, 2017-02-01 at 22:01 +, Bart Van Assche wrote: > However, a new issue shows up sporadically, an issue that I had not yet seen > during any test with a kernel tree from Linus: > > [ 227.613440] general protection fault: [#1] SMP > [ 227.613495] Modules linked in: dm_service_time

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-02-01 Thread Bart Van Assche
On Wed, 2017-02-01 at 09:13 -0800, Jens Axboe wrote: > So that's changing the elevator - did this happen while heavy IO was > going to the drive, or was it idle? I just ran into an I/O hang while running test 02-sq on top of kernel v4.9.6. I will have a closer look at the dm code to see whether I

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-02-01 Thread Bart Van Assche
On Wed, 2017-02-01 at 09:13 -0800, Jens Axboe wrote: > On 02/01/2017 08:46 AM, Bart Van Assche wrote: > > Thanks for having looked into this. However, after having pulled the latest > > block for-next tree (dbb85b06229f) another lockup was triggered soon (02-sq > > is the name of a shell script of

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-02-01 Thread Jens Axboe
On 02/01/2017 08:46 AM, Bart Van Assche wrote: > On Tue, 2017-01-31 at 22:38 -0800, Jens Axboe wrote: >> I think this patch: >> >> http://git.kernel.dk/cgit/linux-block/commit/?h=for-4.11/block=12d70958a2e8d587acaa51dafd5d6620e00b7543 >> >> should fix it for you. I just ran into the same thing

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-02-01 Thread Bart Van Assche
On Tue, 2017-01-31 at 22:38 -0800, Jens Axboe wrote: > I think this patch: > > http://git.kernel.dk/cgit/linux-block/commit/?h=for-4.11/block=12d70958a2e8d587acaa51dafd5d6620e00b7543 > > should fix it for you. I just ran into the same thing tonight, testing > an unrelated thing. It's the only

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-31 Thread Jens Axboe
On 01/31/2017 05:01 PM, Bart Van Assche wrote: > On Tue, 2017-01-31 at 13:58 -0800, Jens Axboe wrote: >> Interesting, I'll check this. Doesn't make any sense why the scheduler >> would be implicated in that, given how we run completions now. But if >> it complains, then something must be up. > >

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-31 Thread Bart Van Assche
On Tue, 2017-01-31 at 13:58 -0800, Jens Axboe wrote: > Interesting, I'll check this. Doesn't make any sense why the scheduler > would be implicated in that, given how we run completions now. But if > it complains, then something must be up. (reduced CC-list) There is another issue that needs

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-30 Thread Jens Axboe
On 01/30/2017 05:38 PM, Jens Axboe wrote: > > >> On Jan 30, 2017, at 5:12 PM, Bart Van Assche >> wrote: >> >>> On Fri, 2017-01-27 at 09:56 -0700, Jens Axboe wrote: On 01/27/2017 09:52 AM, Bart Van Assche wrote: [ 215.724452] general protection fault:

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-30 Thread Jens Axboe
> On Jan 30, 2017, at 5:12 PM, Bart Van Assche > wrote: > >> On Fri, 2017-01-27 at 09:56 -0700, Jens Axboe wrote: >>> On 01/27/2017 09:52 AM, Bart Van Assche wrote: >>> [ 215.724452] general protection fault: [#1] SMP >>> [ 215.725060] Call Trace: >>> [

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-30 Thread Bart Van Assche
On Fri, 2017-01-27 at 09:56 -0700, Jens Axboe wrote: > On 01/27/2017 09:52 AM, Bart Van Assche wrote: > > [ 215.724452] general protection fault: [#1] SMP > > [ 215.725060] Call Trace: > > [ 215.725086] scsi_disk_put+0x2d/0x40 > > [ 215.725110] sd_release+0x3d/0xb0 > > [ 215.725137]

Re: split scsi passthrough fields out of struct request V2

2017-01-28 Thread h...@lst.de
On Fri, Jan 27, 2017 at 09:27:53PM +, Bart Van Assche wrote: > Have you considered to convert all block drivers to the new > approach and to get rid of request.special? If so, do you already > have plans to start working on this? I'm namely wondering wheter I > should start working on this

Re: split scsi passthrough fields out of struct request V2

2017-01-27 Thread Bart Van Assche
On Wed, 2017-01-25 at 18:25 +0100, Christoph Hellwig wrote: > this series splits the support for SCSI passthrough commands from the > main struct request used all over the block layer into a separate > scsi_request structure that drivers that want to support SCSI passthough > need to embedded as

Re: split scsi passthrough fields out of struct request V2

2017-01-27 Thread Jens Axboe
On 01/27/2017 09:34 AM, Christoph Hellwig wrote: > On Fri, Jan 27, 2017 at 09:27:02AM -0700, Jens Axboe wrote: >> Feel free to repost it, I have no problem rebasing that branch as it's >> standalone for now. > > Ok, I'll repost what I have right now, which is on top of a merge > of your

Re: split scsi passthrough fields out of struct request V2

2017-01-27 Thread Jens Axboe
On 01/27/2017 09:17 AM, Christoph Hellwig wrote: > On Fri, Jan 27, 2017 at 09:11:14AM -0700, Jens Axboe wrote: >> I've queued this up for 4.11. Since some of the patches had dependencies >> on changes in master since for-4.11/block was forked, they are sitting >> in a separate branch that has both

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-27 Thread Bart Van Assche
On Fri, 2017-01-27 at 09:56 -0700, Jens Axboe wrote: > I have no idea what this is, I haven't messed with life time or devices > or queues at all in that branch. The srp-test software passes with kernel v4.9. Something must have changed. I'll see whether I can find some time to look further into

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-27 Thread Bart Van Assche
On Thu, 2017-01-26 at 18:22 -0700, Jens Axboe wrote: > What's your boot device? I've been booting this on a variety of setups, > no problems observed. It's booting my laptop, and on SCSI and SATA as > well. What is your root drive? What is the queue depth of it? > Controller? The boot device in

Re: split scsi passthrough fields out of struct request V2

2017-01-27 Thread Christoph Hellwig
On Fri, Jan 27, 2017 at 09:38:40AM -0700, Jens Axboe wrote: > > Ok, I'll repost what I have right now, which is on top of a merge > > of your block/for-4.11/next and your for-next from this morning > > my time. > > Perfect. At least I tried, looks like the mail server is overloaded and crapped

Re: split scsi passthrough fields out of struct request V2

2017-01-27 Thread Christoph Hellwig
On Fri, Jan 27, 2017 at 09:21:46AM -0700, Jens Axboe wrote: > On 01/27/2017 09:17 AM, Christoph Hellwig wrote: > > On Fri, Jan 27, 2017 at 09:11:14AM -0700, Jens Axboe wrote: > >> I've queued this up for 4.11. Since some of the patches had dependencies > >> on changes in master since

Re: split scsi passthrough fields out of struct request V2

2017-01-27 Thread Jens Axboe
On 01/27/2017 09:23 AM, Christoph Hellwig wrote: > On Fri, Jan 27, 2017 at 09:21:46AM -0700, Jens Axboe wrote: >> On 01/27/2017 09:17 AM, Christoph Hellwig wrote: >>> On Fri, Jan 27, 2017 at 09:11:14AM -0700, Jens Axboe wrote: I've queued this up for 4.11. Since some of the patches had

Re: split scsi passthrough fields out of struct request V2

2017-01-27 Thread Christoph Hellwig
On Fri, Jan 27, 2017 at 09:11:14AM -0700, Jens Axboe wrote: > I've queued this up for 4.11. Since some of the patches had dependencies > on changes in master since for-4.11/block was forked, they are sitting > in a separate branch that has both for-4.11/block and v4.10-rc5 pulled > in first.

Re: split scsi passthrough fields out of struct request V2

2017-01-27 Thread Jens Axboe
On Wed, Jan 25 2017, Christoph Hellwig wrote: > Hi all, > > this series splits the support for SCSI passthrough commands from the > main struct request used all over the block layer into a separate > scsi_request structure that drivers that want to support SCSI passthough > need to embedded as

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-27 Thread Jens Axboe
On 01/26/2017 11:40 PM, Jens Axboe wrote: > On 01/26/2017 06:22 PM, Jens Axboe wrote: >> On 01/26/2017 06:15 PM, Bart Van Assche wrote: >>> On Thu, 2017-01-26 at 17:41 -0700, Jens Axboe wrote: On 01/26/2017 05:38 PM, Bart Van Assche wrote: > I see similar behavior with the blk-mq-sched

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Jens Axboe
On 01/26/2017 06:22 PM, Jens Axboe wrote: > On 01/26/2017 06:15 PM, Bart Van Assche wrote: >> On Thu, 2017-01-26 at 17:41 -0700, Jens Axboe wrote: >>> On 01/26/2017 05:38 PM, Bart Van Assche wrote: I see similar behavior with the blk-mq-sched branch of git://git.kernel.dk/linux-block.git

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Jens Axboe
On 01/26/2017 06:15 PM, Bart Van Assche wrote: > On Thu, 2017-01-26 at 17:41 -0700, Jens Axboe wrote: >> On 01/26/2017 05:38 PM, Bart Van Assche wrote: >>> I see similar behavior with the blk-mq-sched branch of >>> git://git.kernel.dk/linux-block.git (git commit ID 0efe27068ecf): >>> booting

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Bart Van Assche
On Thu, 2017-01-26 at 17:41 -0700, Jens Axboe wrote: > On 01/26/2017 05:38 PM, Bart Van Assche wrote: > > I see similar behavior with the blk-mq-sched branch of > > git://git.kernel.dk/linux-block.git (git commit ID 0efe27068ecf): > > booting happens much slower than usual and I/O hangs if I run

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Jens Axboe
On 01/26/2017 05:38 PM, Bart Van Assche wrote: > On Thu, 2017-01-26 at 16:50 -0700, Jens Axboe wrote: >> Clearly we are missing some requests. How do I setup dm similarly to >> you? >> >> Does it reproduce without Christoph's patchset? > > Hello Jens, > > I see similar behavior with the

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Bart Van Assche
On Thu, 2017-01-26 at 16:50 -0700, Jens Axboe wrote: > Clearly we are missing some requests. How do I setup dm similarly to > you? > > Does it reproduce without Christoph's patchset? Hello Jens, I see similar behavior with the blk-mq-sched branch of git://git.kernel.dk/linux-block.git (git

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Jens Axboe
On 01/26/2017 04:50 PM, Jens Axboe wrote: > On 01/26/2017 04:47 PM, Bart Van Assche wrote: >> On Thu, 2017-01-26 at 16:26 -0700, Jens Axboe wrote: >>> What device is stuck? Is it running with an mq scheduler attached, or >>> with "none"? >>> >>> Would also be great to see the output of

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Bart Van Assche
On Thu, 2017-01-26 at 16:26 -0700, Jens Axboe wrote: > What device is stuck? Is it running with an mq scheduler attached, or > with "none"? > > Would also be great to see the output of /sys/block/*/mq/*/tags and > sched_tags so we can see if they have anything pending. > > From a quick look at

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Jens Axboe
On 01/26/2017 02:47 PM, Bart Van Assche wrote: > (gdb) list *(blk_mq_sched_get_request+0x310) > 0x8132dcf0 is in blk_mq_sched_get_request (block/blk-mq-sched.c:136). > 131 rq->rq_flags |= RQF_QUEUED; > 132 } else > 133

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Bart Van Assche
On Thu, 2017-01-26 at 14:12 -0700, Jens Axboe wrote: > On 01/26/2017 02:01 PM, Bart Van Assche wrote: > > On Thu, 2017-01-26 at 13:54 -0700, Jens Axboe wrote: > > > Your call path has blk_get_request() in it, I don't have > > > that in my tree. Is it passing in the right mask? > > > > Hello Jens,

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Bart Van Assche
On Thu, 2017-01-26 at 13:54 -0700, Jens Axboe wrote: > Your call path has blk_get_request() in it, I don't have > that in my tree. Is it passing in the right mask? Hello Jens, There is only one blk_get_request() call in drivers/md/dm-mpath.c and it looks as follows: clone =

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Jens Axboe
On 01/26/2017 01:47 PM, Bart Van Assche wrote: > On 01/26/2017 11:01 AM, Jens Axboe wrote: >> On 01/26/2017 11:59 AM, h...@lst.de wrote: >>> On Thu, Jan 26, 2017 at 11:57:36AM -0700, Jens Axboe wrote: It's against my for-4.11/block, which you were running under Christoph's patches. Maybe

Re: [dm-devel] split scsi passthrough fields out of struct request V2

2017-01-26 Thread Bart Van Assche
On 01/26/2017 11:01 AM, Jens Axboe wrote: > On 01/26/2017 11:59 AM, h...@lst.de wrote: >> On Thu, Jan 26, 2017 at 11:57:36AM -0700, Jens Axboe wrote: >>> It's against my for-4.11/block, which you were running under Christoph's >>> patches. Maybe he's using an older version? In any case, should be

Re: split scsi passthrough fields out of struct request V2

2017-01-26 Thread Jens Axboe
On 01/26/2017 11:59 AM, h...@lst.de wrote: > On Thu, Jan 26, 2017 at 11:57:36AM -0700, Jens Axboe wrote: >> It's against my for-4.11/block, which you were running under Christoph's >> patches. Maybe he's using an older version? In any case, should be >> pretty trivial for you to hand apply. Just

Re: split scsi passthrough fields out of struct request V2

2017-01-26 Thread Jens Axboe
On 01/26/2017 11:29 AM, Bart Van Assche wrote: > On Wed, 2017-01-25 at 18:25 +0100, Christoph Hellwig wrote: >> Hi all, >> >> this series splits the support for SCSI passthrough commands from the >> main struct request used all over the block layer into a separate >> scsi_request structure that

Re: split scsi passthrough fields out of struct request V2

2017-01-26 Thread h...@lst.de
On Thu, Jan 26, 2017 at 11:57:36AM -0700, Jens Axboe wrote: > It's against my for-4.11/block, which you were running under Christoph's > patches. Maybe he's using an older version? In any case, should be > pretty trivial for you to hand apply. Just ensure that .flags is set to > 0 for the common

Re: split scsi passthrough fields out of struct request V2

2017-01-26 Thread Jens Axboe
On 01/26/2017 11:52 AM, Bart Van Assche wrote: > On Thu, 2017-01-26 at 11:44 -0700, Jens Axboe wrote: >> I think this may be my bug - does the below help? > > Hello Jens, > > What tree has that patch been generated against? It does not apply > cleanly on top of Christoph's tree: > > $ git

Re: split scsi passthrough fields out of struct request V2

2017-01-26 Thread Bart Van Assche
On Thu, 2017-01-26 at 11:44 -0700, Jens Axboe wrote: > I think this may be my bug - does the below help? Hello Jens, What tree has that patch been generated against? It does not apply cleanly on top of Christoph's tree: $ git checkout hch-block-pc-refactor $ patch -p1 --dry-run -f -s <

Re: split scsi passthrough fields out of struct request V2

2017-01-26 Thread Bart Van Assche
On Wed, 2017-01-25 at 18:25 +0100, Christoph Hellwig wrote: > Hi all, > > this series splits the support for SCSI passthrough commands from the > main struct request used all over the block layer into a separate > scsi_request structure that drivers that want to support SCSI passthough > need to