On Saturday 18 March 2006 19:05, Andrew Morton wrote:
> Mike Galbraith <[email protected]> wrote:
> > The patch below fixes a starvation problem that occurs when a stream of
> > highly interactive tasks delay an array switch for extended periods
> > despite EXPIRED_STARVING(rq) being true. AFAIKT, the only choice is to
> > enqueue awakening tasks on the expired array in this case.
> >
> > Without this patch, it can be nearly impossible to remotely login to a
> > busy server, and interactive shell commands can starve for minutes.
> >
> > This has not been verified by anyone. Comments?
>
> What does that question mean, btw?
He's waiting for me to say I don't like it. But I do like it.
> -mm is looking like linux-2.6.38 at present so of course things got tangled
> up - sched-activate-sched-batch-expired.patch modifies __activate_task().
>
> I ended up with the below.
>
> Which do we think is more likely to be true - batch_task(p) or
> expired_starving(rq)? batch_task() looks cheaper to evaluate so I put that
> first. But I guess it's less likely to be true. hmm.
Depends entirely on workload so it's impossible to predict in advance. Any
order will do I suspect.
> + if (unlikely(batch_task(p) || expired_starving(rq)))
Looks good to me.
Acked-by: Con Kolivas <[email protected]>
Cheers,
Con
-
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]