Re: CFQ: async queue blocks the whole system

From: Vivek Goyal
Date: Fri Jun 10 2011 - 05:29:32 EST


On Fri, Jun 10, 2011 at 11:20:43AM +0200, Jens Axboe wrote:
> On 2011-06-10 11:17, Vivek Goyal wrote:
> > On Fri, Jun 10, 2011 at 09:19:12AM +0800, Shaohua Li wrote:
> >
> > [..]
> >>> If there is no major advantage of draining sync requests before async
> >>> is dispatched, I think this should be an easy fix.
> >> I thought this is to avoid sync latency if we switch from an async
> >> queue to sync queue later.
> >
> > Is it about the sync request latency which has already been dispatched? I
> > really wish that driver and disk should do some prioritazation for reads
> > here and CFQ does not have to jump through hoops like drain sync requests
> > before async requests are dispatched.
>
> That would never work. Are you suggesting putting that logic in all
> drivers? Or relying on hardware to get the fairness right? Not going to
> happen.

I was hoping that hardware does some prioritization. Well, in this case
even if hardware maintains FIFO behavior it should be good enough.

But I would not claim anything in this regard as I have never experimented
with it and have no idea that how sync latencies are impacted if we don't
drain the queue before dispathing WRITEs.

I was just wondering that with current generation hardware is it bad
enough that we need to keep this logic around?

Thanks
Vivek
--
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/