On Thu, 17 Aug 2006 08:36:19 -0400
Trond Myklebust <[email protected]> wrote:
> On Wed, 2006-08-16 at 23:14 -0700, Andrew Morton wrote:
> > btw, one thing which afaik NFS _still_ doesn't do is to wake up processes
> > which are stuck in blk_congestion_wait() when NFS has retired a bunch of
> > writes. It should do so, otherwise NFS write-intensive workloads might end
> > up sleeping for too long. I guess the amount of buffering and hysteresis
> > we have in there has thus far prevented any problems from being observed.
>
> Are we to understand it that you consider blk_congestion_wait() to be an
> official API, and not just another block layer hack inside the VM?
>
> 'cos currently the only tools for waking up processes in
> blk_congestion_wait() are the two routines:
>
> static void clear_queue_congested(request_queue_t *q, int rw)
> and
> static void set_queue_congested(request_queue_t *q, int rw)
>
> in block/ll_rw_blk.c. Hardly a model of well thought out code...
>
We've been over this before...
Take a look at blk_congestion_wait(). It doesn't know about request
queues. We'd need a new
void writeback_congestion_end(int rw)
{
wake_up(congestion_wqh[rw]);
}
or similar.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]