|
@@ -61,7 +61,14 @@ struct mem_cgroup *root_mem_cgroup __read_mostly;
|
|
|
#ifdef CONFIG_CGROUP_MEM_RES_CTLR_SWAP
|
|
|
/* Turned on only when memory cgroup is enabled && really_do_swap_account = 1 */
|
|
|
int do_swap_account __read_mostly;
|
|
|
-static int really_do_swap_account __initdata = 1; /* for remember boot option*/
|
|
|
+
|
|
|
+/* for remember boot option*/
|
|
|
+#ifdef CONFIG_CGROUP_MEM_RES_CTLR_SWAP_ENABLED
|
|
|
+static int really_do_swap_account __initdata = 1;
|
|
|
+#else
|
|
|
+static int really_do_swap_account __initdata = 0;
|
|
|
+#endif
|
|
|
+
|
|
|
#else
|
|
|
#define do_swap_account (0)
|
|
|
#endif
|
|
@@ -4920,10 +4927,20 @@ struct cgroup_subsys mem_cgroup_subsys = {
|
|
|
};
|
|
|
|
|
|
#ifdef CONFIG_CGROUP_MEM_RES_CTLR_SWAP
|
|
|
+static int __init enable_swap_account(char *s)
|
|
|
+{
|
|
|
+ /* consider enabled if no parameter or 1 is given */
|
|
|
+ if (!s || !strcmp(s, "1"))
|
|
|
+ really_do_swap_account = 1;
|
|
|
+ else if (!strcmp(s, "0"))
|
|
|
+ really_do_swap_account = 0;
|
|
|
+ return 1;
|
|
|
+}
|
|
|
+__setup("swapaccount", enable_swap_account);
|
|
|
|
|
|
static int __init disable_swap_account(char *s)
|
|
|
{
|
|
|
- really_do_swap_account = 0;
|
|
|
+ enable_swap_account("0");
|
|
|
return 1;
|
|
|
}
|
|
|
__setup("noswapaccount", disable_swap_account);
|