Adds teardown functionality to the core. Currently just expects no class
to
be defined when the ckrm_teardown function is called. And it just resets
the shares of the default class to be don't care
--
include/linux/ckrm.h | 1 +
kernel/ckrm/ckrm.c | 32 ++++++++++++++++++++++++++++++++
2 files changed, 33 insertions(+)
Index: linux-2.6.13f.uml/include/linux/ckrm.h
===================================================================
--- linux-2.6.13f.uml.orig/include/linux/ckrm.h
+++ linux-2.6.13f.uml/include/linux/ckrm.h
@@ -75,6 +75,7 @@ extern void ckrm_release_class(struct kr
extern void ckrm_reclassify_class_tasks(struct ckrm_class *);
extern void ckrm_setclass(struct task_struct *, struct ckrm_class *,
struct ckrm_class *);
+extern void ckrm_teardown(void);
extern void ckrm_taskfork(struct task_struct *);
extern void ckrm_taskexit(struct task_struct *);
Index: linux-2.6.13f.uml/kernel/ckrm/ckrm.c
===================================================================
--- linux-2.6.13f.uml.orig/kernel/ckrm/ckrm.c
+++ linux-2.6.13f.uml/kernel/ckrm/ckrm.c
@@ -291,6 +291,37 @@ ckrm_free_class(struct ckrm_class *cls)
}
/*
+ * Bring the state of CKRM to the initial state.
+ * As of now, only shares of the default class need to changed to
default
+ * shares.
+ * At this point no user-defined classes should exist
+ */
+void
+ckrm_teardown(void)
+{
+ int i;
+ struct ckrm_res_ctlr *rcbs;
+ struct ckrm_shares shares = {
+ CKRM_SHARE_DONTCARE,
+ CKRM_SHARE_DONTCARE,
+ CKRM_SHARE_DONTCARE,
+ CKRM_SHARE_DONTCARE,
+ CKRM_SHARE_DONTCARE,
+ CKRM_SHARE_DONTCARE
+ };
+
+ BUG_ON(ckrm_num_classes);
+
+ for (i = 0; i < ckrm_max_resid; i++) {
+ rcbs = ckrm_res_ctlrs[i];
+ if (rcbs && rcbs->set_share_values)
+ (*rcbs->set_share_values)
+ (ckrm_default_class.res_class[i], &shares);
+ }
+ return;
+}
+
+/*
* Interfaces for the resource controller
*/
/*
@@ -419,6 +450,7 @@ EXPORT_SYMBOL_GPL(ckrm_unregister_res_ct
EXPORT_SYMBOL_GPL(ckrm_alloc_class);
EXPORT_SYMBOL_GPL(ckrm_free_class);
+EXPORT_SYMBOL_GPL(ckrm_teardown);
void
ckrm_init(void)
--
----------------------------------------------------------------------
Chandra Seetharaman | Be careful what you choose....
- [EMAIL PROTECTED] | .......you may get it.
----------------------------------------------------------------------
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
ckrm-tech mailing list
https://lists.sourceforge.net/lists/listinfo/ckrm-tech