On Mon, Jun 01, 2009 at 11:02:58PM -0700, [email protected] wrote:
> 
> The patch titled
>      cgroups: forbid noprefix if mounting more than just cpuset subsystem
> has been added to the -mm tree.  Its filename is
>      cgroups-forbid-noprefix-if-mounting-more-than-just-cpuset-subsystem.patch
> 
> Before you just go and hit "reply", please:
>    a) Consider who else should be cc'ed
>    b) Prefer to cc a suitable mailing list as well
>    c) Ideally: find the original patch on the mailing list and do a
>       reply-to-all to that, adding suitable additional cc's
> 
> *** Remember to use Documentation/SubmitChecklist when testing your code ***
> 
> See http://userweb.kernel.org/~akpm/stuff/added-to-mm.txt to find
> out what to do about this
> 
> The current -mm tree may be found at http://userweb.kernel.org/~akpm/mmotm/
> 
> ------------------------------------------------------
> Subject: cgroups: forbid noprefix if mounting more than just cpuset subsystem
> From: Li Zefan <[email protected]>
> 
> The 'noprefix' option was introduced for backwards-compatibility of
> cpuset, but actually it can be used when mounting other subsystems.
> 
> This results in possibility of name collision, and now the collision can
> really happen, because we have 'stat' file in both memory and cpuacct
> subsystem:
> 
>       # mount -t cgroup -o noprefix,memory,cpuacct xxx /mnt
> 
> Cgroup will happily mount the 2 subsystems, but only 'stat' file of memory
> subsys can be seen.
> 
> We don't want users to use nopreifx, and also want to avoid name
> collision, so we change to allow noprefix only if mounting just the cpuset
> subsystem.
> 

I am not sure if this is a good idea. For libcgroup, we would then be
adding a special case for just cpuset. I would rather that we allow it
either for all the subsystems or none of them.

thanks,
> Signed-off-by: Li Zefan <[email protected]>
> Cc: Paul Menage <[email protected]>
> Cc: KAMEZAWA Hiroyuki <[email protected]>
> Cc: Balbir Singh <[email protected]>
> Cc: Dhaval Giani <[email protected]>
> Signed-off-by: Andrew Morton <[email protected]>
> ---
> 
>  kernel/cgroup.c |   10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff -puN 
> kernel/cgroup.c~cgroups-forbid-noprefix-if-mounting-more-than-just-cpuset-subsystem
>  kernel/cgroup.c
> --- 
> a/kernel/cgroup.c~cgroups-forbid-noprefix-if-mounting-more-than-just-cpuset-subsystem
> +++ a/kernel/cgroup.c
> @@ -842,6 +842,11 @@ static int parse_cgroupfs_options(char *
>                                    struct cgroup_sb_opts *opts)
>  {
>       char *token, *o = data ?: "all";
> +     unsigned long mask = (unsigned long)-1;
> +
> +#ifdef CONFIG_CPUSETS
> +     mask = ~(1 << cpuset_subsys_id);
> +#endif
> 
>       opts->subsys_bits = 0;
>       opts->flags = 0;
> @@ -886,6 +891,11 @@ static int parse_cgroupfs_options(char *
>               }
>       }
> 
> +     /* We allow noprefix only if mounting just the cpuset subsystem */
> +     if (test_bit(ROOT_NOPREFIX, &opts->flags) &&
> +         (opts->subsys_bits & mask))
> +             return -EINVAL;
> +
>       /* We can't have an empty hierarchy */
>       if (!opts->subsys_bits)
>               return -EINVAL;
> _
> 
> Patches currently in -mm which might be from [email protected] are
> 
> origin.patch
> linux-next.patch
> mm-add-swap-cache-interface-for-swap-reference.patch
> mm-modify-swap_map-and-add-swap_has_cache-flag.patch
> mm-reuse-unused-swap-entry-if-necessary.patch
> hexdump-remove-the-trailing-space.patch
> cgroups-make-messages-more-readable.patch
> cgroups-forbid-noprefix-if-mounting-more-than-just-cpuset-subsystem.patch
> devcgroup-skip-superfluous-checks-when-found-the-dev_all-elem.patch
> memcg-remove-some-redundant-checks.patch
> memcg-remove-unneeded-forward-declaration-from-schedh.patch
> memcg-fix-swap-accounting.patch

-- 
regards,
Dhaval

------------------------------------------------------------------------------
OpenSolaris 2009.06 is a cutting edge operating system for enterprises 
looking to deploy the next generation of Solaris that includes the latest 
innovations from Sun and the OpenSource community. Download a copy and 
enjoy capabilities such as Networking, Storage and Virtualization. 
Go to: http://p.sf.net/sfu/opensolaris-get
_______________________________________________
Libcg-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libcg-devel

Reply via email to