Re: [PATCH 2/2] block: Avoid deadlocks with bio allocation bystacking drivers
From: Kent Overstreet
Date: Tue Sep 11 2012 - 15:31:20 EST
On Tue, Sep 11, 2012 at 11:58:05AM -0700, Muthu Kumar wrote:
> On Tue, Sep 11, 2012 at 11:45 AM, Tejun Heo <tj@xxxxxxxxxx> wrote:
> > Hello,
> > On Tue, Sep 11, 2012 at 11:36:28AM -0700, Muthu Kumar wrote:
> >> Does this preserve the CPU from which the bio was submitted
> >> originally. Not familiar with cmwq, may be Tejun can clarify.
> >> Tejun - the question is, do we honor the rq_affinity with the above
> >> rescue worker implementation?
> > The work item would run from the same CPU but there isn't any
> > mechanism to keep track of the issuing CPU if there are multiple bios
> > to be rescued. Isn't rq_affinity an optimization hint? If so, I
> > don't think it matters here.
> Thanks... Just worried about performance impact.
> Kent - Anything to validate that the performance is not impacted would
> be really good. Otherwise, the patch looks great.
Well - there'll only be any performance impact at all when we're memory
constrained enough that GFP_NOWAIT allocations fail, which for these
size allocations definitely isn't normal.
I did test it with forcing everything to use the rescuer, and I also
benchmarked Vivek's version - in any sane configuration, the impact of
punting everything to workqueue is not very noticable (the AHCI
interrupt handler uses more cpu).
> Feel free to add:
> Reviewed-by: Muthukumar Ratty <muthur@xxxxxxxxx>
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/