[PATCH 3/6] memcg: reset limit at rmdir

From: KAMEZAWA Hiroyuki
Date: Fri Jun 13 2008 - 05:26:19 EST


Reset res_counter's limit to be 0.
Typically called when subysystem which uses res_counter is deleted.

Change log: xxx -> v4 (new file)
- cut out from memg hierarchy patch set(v3).

Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx>

---
include/linux/res_counter.h | 2 ++
kernel/res_counter.c | 11 +++++++++++
2 files changed, 13 insertions(+)

Index: linux-2.6.26-rc5-mm3/include/linux/res_counter.h
===================================================================
--- linux-2.6.26-rc5-mm3.orig/include/linux/res_counter.h
+++ linux-2.6.26-rc5-mm3/include/linux/res_counter.h
@@ -117,6 +117,8 @@ int __must_check res_counter_charge_lock
int __must_check res_counter_charge(struct res_counter *counter,
unsigned long val);

+int res_counter_reset_limit(struct res_counter *counter);
+
/*
* uncharge - tell that some portion of the resource is released
*
Index: linux-2.6.26-rc5-mm3/kernel/res_counter.c
===================================================================
--- linux-2.6.26-rc5-mm3.orig/kernel/res_counter.c
+++ linux-2.6.26-rc5-mm3/kernel/res_counter.c
@@ -153,6 +153,17 @@ static int res_counter_resize_limit(stru
return ret;
}

+/**
+ * res_counter_reset_limit - reset limit to be 0.
+ * @res: the res_counter to be reset.
+ *
+ * res_counter->limit is resized to be 0. return 0 at success.
+ */
+
+int res_counter_reset_limit(struct res_counter *res)
+{
+ return res_counter_resize_limit(res, 0);
+}

ssize_t res_counter_write(struct res_counter *counter, int member,
const char __user *userbuf, size_t nbytes, loff_t *pos,

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