lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 2 Jul 2009 12:16:26 +0900
From:	KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
To:	Paul Menage <menage@...gle.com>
Cc:	lizf@...fujitsu.com, balbir@...ux.vnet.ibm.com,
	linux-kernel@...r.kernel.org, akpm@...ux-foundation.org,
	containers@...ts.linux-foundation.org
Subject: Re: [PATCH 7/9] [RFC] Support multiply-bindable cgroup subsystems

On Wed, 1 Jul 2009 19:52:16 -0700
Paul Menage <menage@...gle.com> wrote:

> On Wed, Jul 1, 2009 at 7:45 PM, KAMEZAWA
> Hiroyuki<kamezawa.hiroyu@...fujitsu.com> wrote:
> >> - in the current version of this patch, mounting a cgroups hierarchy
> >>   with no options does *not* get you any of the multi-bindable
> >>   subsystems; possibly for consistency it should give you all of the
> >>   multi-bindable subsystems as well as all of the single-bindable
> >>   subsystems.
> >>
> > I don't think this is a big problem. Hmm, I wonder there are no people who
> > uses cgroup without any options (= mounts all subsys at once)...
> 
> In practice I suspect that it's a rare usage outside of manual
> playing/testing - any real production system is going to want to be
> aware of what subsystems are available and decide which to mount on
> each hierarchy.
> 
> >
> > Wow...seems complicated. How about adding linux/cgroup_multisubsys.h ?
> 
> I think that the readability benefits in cgroup.c would be outweighed
> by having two different subsys include files.
> 

Hm, then, moving SUBSYS() macro to linux/cgroup_subsys.h is a sane way, I think.
IMHO, it's not very good habit that cgroup_subsys.h is parsed in different ways in
cgroup.h and cgroup.c

I think cgroup_subsys.h like following is much simpler even if it's not very
sophisticated.
==
#define SUBSYSID(_name)		_name ## _subsys_id,
#define SUBSYSP(_name)		&_name ## _subsys,

#ifdef CONFIG_CPUSETS
#define CPUSETS_ID		SUBSYSID(cpuset)
#define CPUSETS_SUBSYS		SUBSYSP(cpuset)
#else
#define CPUSETS_ID		
#define CPUSETS_SUBSYS		
#endif

#ifdef CONFIG_CPU
#define CPU_ID			SUBSYSID(cpu)
#define CPU_SUBSYS		SUBSYSP(cpu)
#else
#define CPU_ID
#define CPU_SUBSYS
#endif

#ifdef CONFIG_MEMORY
#define MEMORY_ID		SUBSYSID(memory)
#define MEMORY_SUBSYS		SUBSYSP(memory)
#else
#define MEMORY_ID
#define MEMORY_SUBSYS
#endif

#define CGROUP_ALL_SUBSYSID	CPUSETS_ID CPU_ID MEMORY_ID
#define CGROUP_ALL_SUBSYSP	CPUSETS_SUBSYS CPU_SUBSYS MEMORY_SUBSYS

==
But I know I'm not a man who can talk about beauty of codes ;)

Thanks,
-Kame

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ