Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-27 Thread Jens Axboe
On 08/27/2014 09:50 AM, Boaz Harrosh wrote: > On 08/27/2014 05:07 PM, Jens Axboe wrote: >> On 08/26/2014 04:01 PM, Jeff Moyer wrote: >>> Jens Axboe writes: > <> >> There's also a bug in osd_initiator.c, _init_blk_request(). We jump to >> 'out' for IS_ERR(req), which attempts to print or->request,

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-27 Thread Boaz Harrosh
On 08/27/2014 05:07 PM, Jens Axboe wrote: > On 08/26/2014 04:01 PM, Jeff Moyer wrote: >> Jens Axboe writes: <> > There's also a bug in osd_initiator.c, _init_blk_request(). We jump to > 'out' for IS_ERR(req), which attempts to print or->request, which hasn't > been assigned yet. You mean this

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-27 Thread Joe Lawrence
On Wed, 27 Aug 2014 08:07:29 -0600 Jens Axboe wrote: > On 08/26/2014 04:01 PM, Jeff Moyer wrote: > >> Additionally, there's still quite a few places that call > >> blk_get_request() and don't check the error return if __GFP_WAIT is set. > >> Since most of the point of this is to fix segfaulting

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-27 Thread Joe Lawrence
On Tue, 26 Aug 2014 18:01:23 -0400 Jeff Moyer wrote: > Jens Axboe writes: > > >> I have applied the first one, will look over the second one and hand > >> apply it. Seems the NULL return was completely removed, so we _should_ > >> be ok on the IS_ERR() conversion, though that sort of thing

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-27 Thread Jens Axboe
On 08/26/2014 04:01 PM, Jeff Moyer wrote: > Jens Axboe writes: > >>> I have applied the first one, will look over the second one and hand >>> apply it. Seems the NULL return was completely removed, so we _should_ >>> be ok on the IS_ERR() conversion, though that sort of thing always >>> worries

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-27 Thread Jens Axboe
On 08/26/2014 04:01 PM, Jeff Moyer wrote: Jens Axboe ax...@kernel.dk writes: I have applied the first one, will look over the second one and hand apply it. Seems the NULL return was completely removed, so we _should_ be ok on the IS_ERR() conversion, though that sort of thing always worries

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-27 Thread Joe Lawrence
On Tue, 26 Aug 2014 18:01:23 -0400 Jeff Moyer jmo...@redhat.com wrote: Jens Axboe ax...@kernel.dk writes: I have applied the first one, will look over the second one and hand apply it. Seems the NULL return was completely removed, so we _should_ be ok on the IS_ERR() conversion, though

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-27 Thread Joe Lawrence
On Wed, 27 Aug 2014 08:07:29 -0600 Jens Axboe ax...@kernel.dk wrote: On 08/26/2014 04:01 PM, Jeff Moyer wrote: Additionally, there's still quite a few places that call blk_get_request() and don't check the error return if __GFP_WAIT is set. Since most of the point of this is to fix

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-27 Thread Boaz Harrosh
On 08/27/2014 05:07 PM, Jens Axboe wrote: On 08/26/2014 04:01 PM, Jeff Moyer wrote: Jens Axboe ax...@kernel.dk writes: There's also a bug in osd_initiator.c, _init_blk_request(). We jump to 'out' for IS_ERR(req), which attempts to print or-request, which hasn't been assigned yet. You mean

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-27 Thread Jens Axboe
On 08/27/2014 09:50 AM, Boaz Harrosh wrote: On 08/27/2014 05:07 PM, Jens Axboe wrote: On 08/26/2014 04:01 PM, Jeff Moyer wrote: Jens Axboe ax...@kernel.dk writes: There's also a bug in osd_initiator.c, _init_blk_request(). We jump to 'out' for IS_ERR(req), which attempts to print

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jeff Moyer
Jens Axboe writes: >> I have applied the first one, will look over the second one and hand >> apply it. Seems the NULL return was completely removed, so we _should_ >> be ok on the IS_ERR() conversion, though that sort of thing always >> worries me a little bit. A NULL return can quickly show up

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jens Axboe
On 08/26/2014 03:33 PM, Jens Axboe wrote: > On 08/26/2014 03:27 PM, Jeff Moyer wrote: >> Jens Axboe writes: >> >>> On 08/26/2014 11:24 AM, Jeff Moyer wrote: Joe Lawrence writes: > v2->v3: rebase to 3.16-rc2, consider return values from the > blk_mq_alloc_request leg of

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jens Axboe
On 08/26/2014 03:27 PM, Jeff Moyer wrote: > Jens Axboe writes: > >> On 08/26/2014 11:24 AM, Jeff Moyer wrote: >>> Joe Lawrence writes: >>> v2->v3: rebase to 3.16-rc2, consider return values from the blk_mq_alloc_request leg of the blk_get_request callchain (noted

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jeff Moyer
Jens Axboe writes: > On 08/26/2014 11:24 AM, Jeff Moyer wrote: >> Joe Lawrence writes: >> >>> v2->v3: rebase to 3.16-rc2, consider return values from the >>> blk_mq_alloc_request leg of the blk_get_request callchain >>> (noted by Jeff), noted in the second patch changelog. >>>

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jens Axboe
On 08/26/2014 03:19 PM, Jens Axboe wrote: > On 08/26/2014 11:24 AM, Jeff Moyer wrote: >> Joe Lawrence writes: >> >>> v2->v3: rebase to 3.16-rc2, consider return values from the >>> blk_mq_alloc_request leg of the blk_get_request callchain >>> (noted by Jeff), noted in the second

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jens Axboe
On 08/26/2014 11:24 AM, Jeff Moyer wrote: > Joe Lawrence writes: > >> v2->v3: rebase to 3.16-rc2, consider return values from the >> blk_mq_alloc_request leg of the blk_get_request callchain >> (noted by Jeff), noted in the second patch changelog. >> >> blk_mq_queue_enter

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jeff Moyer
Joe Lawrence writes: > v2->v3: rebase to 3.16-rc2, consider return values from the > blk_mq_alloc_request leg of the blk_get_request callchain > (noted by Jeff), noted in the second patch changelog. > > blk_mq_queue_enter may return 0 or errno, which >

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jeff Moyer
Joe Lawrence joe.lawre...@stratus.com writes: v2-v3: rebase to 3.16-rc2, consider return values from the blk_mq_alloc_request leg of the blk_get_request callchain (noted by Jeff), noted in the second patch changelog. blk_mq_queue_enter may return 0 or errno, which

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jens Axboe
On 08/26/2014 11:24 AM, Jeff Moyer wrote: Joe Lawrence joe.lawre...@stratus.com writes: v2-v3: rebase to 3.16-rc2, consider return values from the blk_mq_alloc_request leg of the blk_get_request callchain (noted by Jeff), noted in the second patch changelog.

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jens Axboe
On 08/26/2014 03:19 PM, Jens Axboe wrote: On 08/26/2014 11:24 AM, Jeff Moyer wrote: Joe Lawrence joe.lawre...@stratus.com writes: v2-v3: rebase to 3.16-rc2, consider return values from the blk_mq_alloc_request leg of the blk_get_request callchain (noted by Jeff), noted in the

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jeff Moyer
Jens Axboe ax...@kernel.dk writes: On 08/26/2014 11:24 AM, Jeff Moyer wrote: Joe Lawrence joe.lawre...@stratus.com writes: v2-v3: rebase to 3.16-rc2, consider return values from the blk_mq_alloc_request leg of the blk_get_request callchain (noted by Jeff), noted in the

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jens Axboe
On 08/26/2014 03:27 PM, Jeff Moyer wrote: Jens Axboe ax...@kernel.dk writes: On 08/26/2014 11:24 AM, Jeff Moyer wrote: Joe Lawrence joe.lawre...@stratus.com writes: v2-v3: rebase to 3.16-rc2, consider return values from the blk_mq_alloc_request leg of the blk_get_request callchain

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jens Axboe
On 08/26/2014 03:33 PM, Jens Axboe wrote: On 08/26/2014 03:27 PM, Jeff Moyer wrote: Jens Axboe ax...@kernel.dk writes: On 08/26/2014 11:24 AM, Jeff Moyer wrote: Joe Lawrence joe.lawre...@stratus.com writes: v2-v3: rebase to 3.16-rc2, consider return values from the

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-08-26 Thread Jeff Moyer
Jens Axboe ax...@kernel.dk writes: I have applied the first one, will look over the second one and hand apply it. Seems the NULL return was completely removed, so we _should_ be ok on the IS_ERR() conversion, though that sort of thing always worries me a little bit. A NULL return can quickly

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-07-02 Thread Joe Lawrence
FWIW, I spent some time looking at blk_get_request callers and as far as I can tell, most should be able to gracefully handle additional errno values of -ENODEV and -EWOULDBLOCK. I didn't chase down the pktcdvd or osd paths, however Jiri and Boaz ack'd the earlier patch version that added

[PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-07-02 Thread Joe Lawrence
v2->v3: rebase to 3.16-rc2, consider return values from the blk_mq_alloc_request leg of the blk_get_request callchain (noted by Jeff), noted in the second patch changelog. blk_mq_queue_enter may return 0 or errno, which blk_mq_alloc_request can propogate out via

[PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-07-02 Thread Joe Lawrence
v2-v3: rebase to 3.16-rc2, consider return values from the blk_mq_alloc_request leg of the blk_get_request callchain (noted by Jeff), noted in the second patch changelog. blk_mq_queue_enter may return 0 or errno, which blk_mq_alloc_request can propogate out via

Re: [PATCH v3 0/2] block,scsi: fixup blk_get_request dead queue scenarios

2014-07-02 Thread Joe Lawrence
FWIW, I spent some time looking at blk_get_request callers and as far as I can tell, most should be able to gracefully handle additional errno values of -ENODEV and -EWOULDBLOCK. I didn't chase down the pktcdvd or osd paths, however Jiri and Boaz ack'd the earlier patch version that added