Re: [PATCH 1/1] block: rework flush sequencing for blk-mq
From: Mike Snitzer
Date: Sat Mar 08 2014 - 12:34:22 EST
On Sat, Mar 8, 2014 at 10:52 AM, Christoph Hellwig <hch@xxxxxxxxxxxxx> 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 fixed. Btw, there was another
> issue with that commit, in that dm-multipath also needs to allocate
> ->flush_rq. I saw a patch from Hannes fixing it in the SuSE tree, and
> would really love to see him submit that for mainline as well.
Ugh, rq-based DM calls blk_init_allocated_queue.. (ah, looks like best
to move q->flush_rq allocation from blk_init_queue_node to
blk_alloc_queue_node?). Anyway, this all makes sense given the
crashes we've been dealing with.. we couldn't immediately understand
how the q->flush_rq would be NULL... grr. I guess I should've checked
with you sooner. I reverted commit 1874198 "blk-mq: rework flush
sequencing logic" from RHEL7 just yesterday because we were seeing
crashes on flush with dm-mpath. But can easily re-apply for RHEL7.1
(since the request_queue's embedded flush_rq takes up so much space we
get ample kABI padding).
Not overly proud of the revert, but I deemed easier to revert than
hunt down the fix given RHEL7 won't actually be providing any blk-mq
enabled drivers. That'll change for RHEL7.1.
> Unfortunately SuSE seems to have lots of block and dm fixes and even
> features that they don't submit upstream.
Yeah, it is certainly disturbing. No excuse for sitting on fixes like this.
Hannes, _please_ get this dm-mpath flush_rq fix for 3.14 posted ASAP.
Jens or I will need to get it to Linus next week.
Thanks,
Mike
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/