#
# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.10-1.14_FC2.1.planetlab
-# Tue Apr 5 11:00:04 2005
+# Linux kernel version: 2.6.10-1.14_FC2.1.planetlab.2005.03.31
+# Tue Apr 12 15:59:21 2005
#
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_CKRM_RES_MEM=y
# CONFIG_CKRM_TYPE_SOCKETCLASS is not set
CONFIG_CKRM_RES_NUMTASKS=y
+# CONFIG_CKRM_RES_NUMTASKS_FORKRATE is not set
CONFIG_CKRM_CPU_SCHEDULE=y
# CONFIG_CKRM_RES_BLKIO is not set
CONFIG_CKRM_CPU_SCHEDULE_AT_BOOT=y
depends on CKRM_TYPE_TASKCLASS
default m
help
- Provides a Resource Controller for CKRM that allows limiting no of
+ Provides a Resource Controller for CKRM that allows limiting number of
tasks a task class can have.
Say N if unsure, Y to use the feature.
+config CKRM_RES_NUMTASKS_FORKRATE
+ tristate "Number of Tasks Resource Manager for Fork Rate"
+ depends on CKRM_RES_NUMTASKS
+ default y
+ help
+ Provides a Resource Controller for CKRM that allows limiting the rate
+ of tasks a task class can fork per hour.
+
+ Say N if unsure, Y to use the feature.
+
+
config CKRM_CPU_SCHEDULE
bool "CKRM CPU scheduler"
depends on CKRM_TYPE_TASKCLASS
* Code Description: TBD
*/
+#include <linux/config.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/slab.h>
if (res == NULL)
return 1;
+#ifdef CONFIG_CKRM_RES_NUMTASKS_FORKRATE
// force is not associated with fork. So, if force is specified
// we don't have to bother about forkrate.
if (!force) {
return 0;
}
}
+#endif
atomic_inc(&res->cnt_cur_alloc);
atomic_dec(&res->cnt_cur_alloc);
} else if (!borrowed) {
total_cnt_alloc++;
+#ifdef CONFIG_CKRM_RES_NUMTASKS_FORKRATE
if (!force) { // force is not associated with a real fork.
res->forks_in_period++;
}
+#endif
}
return rc;
}