Re: [RFC][PATCH 3/5] add /dev/mem_notify device

From: Rik van Riel
Date: Mon Jan 14 2008 - 21:57:28 EST


On Tue, 15 Jan 2008 11:20:56 +0900
KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx> wrote:

> Hi Kame
>
> > > + if (pressure) {
> > > + nr_wakeup = max_t(int, atomic_read(&nr_watcher_task)>>4, 100);
> > > + atomic_long_set(&last_mem_notify, jiffies);
> > > + wake_up_locked_nr(&mem_wait, nr_wakeup);
> > > + }
> > What is this for ? and Why ?
> > Are there too many waiters ?
>
> my intent is for avoid thundering herd.
> 100 is heuristic value.
>
> and too many wakeup cause too much memory freed.
> I don't want it.
>
> of course, if any problem happened, I will change.

I agree with you. Your code looks like it could be a reasonable
heuristic, but the only way to really find that out is to test
the code on live systems under varying workloads.

Maybe we need to wake up fewer tasks more often, maybe we are
better off waking up more tasks but fewer times. Either way,
at this time we simply do not know and can stick with your current
code.

--
All rights reversed.
--
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/