Re: [PATCH 0/4] Memory controller soft limit patches (v3)

From: KAMEZAWA Hiroyuki
Date: Mon Mar 02 2009 - 01:20:05 EST


On Mon, 2 Mar 2009 11:35:19 +0530
Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> wrote:

> > Then, not-sorted RB-tree can be there.
> >
> > BTW,
> > time_after(jiffies, 0)
> > is buggy (see definition). If you want make this true always,
> > time_after(jiffies, jiffies +1)
> >
>
> HZ/4 is 250/4 jiffies in the worst case (62). We have
> time_after(jiffies, next_update_interval) and next_update_interval is
> set to last_tree_update + 62. Not sure if I got what you are pointing
> to.
>
+ unsigned long next_update = 0;
+ unsigned long flags;
+
+ if (!css_tryget(&mem->css))
+ return;
+ prev_usage_in_excess = mem->usage_in_excess;
+ new_usage_in_excess = res_counter_soft_limit_excess(&mem->res);
+
+ if (time_check)
+ next_update = mem->last_tree_update +
+ MEM_CGROUP_TREE_UPDATE_INTERVAL;
+ if (new_usage_in_excess && time_after(jiffies, next_update)) {
+ if (prev_usage_in_excess)
+ mem_cgroup_remove_exceeded(mem);
+ mem_cgroup_insert_exceeded(mem);
+ updated_tree = true;
+ } else if (prev_usage_in_excess && !new_usage_in_excess) {
+ mem_cgroup_remove_exceeded(mem);
+ updated_tree = true;
+ }

My point is what happens if time_check==false.
time_afrter(jiffies, 0) is buggy.

Thanks,
-Kame

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