From: Marc Fiuczynski Date: Wed, 29 Oct 2008 22:56:49 +0000 (+0000) Subject: added support for MEMLOCK rlimit X-Git-Tag: util-vserver-pl-0.3-15~5 X-Git-Url: http://git.onelab.eu/?p=util-vserver-pl.git;a=commitdiff_plain;h=a4750b971298b0b51f8db259b7f8f5976ee461d5 added support for MEMLOCK rlimit --- diff --git a/src/planetlab.c b/src/planetlab.c index 92042fb..90ba4dd 100644 --- a/src/planetlab.c +++ b/src/planetlab.c @@ -300,6 +300,10 @@ pl_get_limits(const char *context, struct sliver_resources *slr) {"rlimits/openfd.soft", TYPE_LONG, &slr->vs_openfd.soft}, {"rlimits/openfd.min", TYPE_LONG, &slr->vs_openfd.min}, + {"rlimits/memlock.hard", TYPE_LONG, &slr->vs_memlock.hard}, + {"rlimits/memlock.soft", TYPE_LONG, &slr->vs_memlock.soft}, + {"rlimits/memlock.min", TYPE_LONG, &slr->vs_memlock.min}, + {"personality", TYPE_PERS, &slr->personality}, {0,0} @@ -323,6 +327,10 @@ pl_get_limits(const char *context, struct sliver_resources *slr) slr->vs_openfd.soft = VC_LIM_KEEP; slr->vs_openfd.min = VC_LIM_KEEP; + slr->vs_memlock.hard = VC_LIM_KEEP; + slr->vs_memlock.soft = VC_LIM_KEEP; + slr->vs_memlock.min = VC_LIM_KEEP; + slr->personality = 0; cwd = open(".", O_RDONLY); @@ -438,5 +446,6 @@ pl_set_ulimits(const struct sliver_resources *slr) set_one_ulimit(RLIMIT_AS, &slr->vs_as); set_one_ulimit(RLIMIT_NPROC, &slr->vs_nproc); set_one_ulimit(RLIMIT_NOFILE, &slr->vs_openfd); + set_one_ulimit(RLIMIT_MEMLOCK, &slr->vs_memlock); return set_personality(slr->personality); } diff --git a/src/planetlab.h b/src/planetlab.h index 088eba0..66bd84d 100644 --- a/src/planetlab.h +++ b/src/planetlab.h @@ -46,6 +46,7 @@ struct sliver_resources { struct vc_rlimit vs_as; struct vc_rlimit vs_nproc; struct vc_rlimit vs_openfd; + struct vc_rlimit vs_memlock; unsigned long int personality; };