Messages in this thread | | | From | Paul Menage <> | Date | Tue, 9 Nov 2010 17:53:13 -0800 | Subject | Re: [PATCH 1/7] cgroups: Shrink struct cgroup_subsys |
| |
On Tue, Nov 9, 2010 at 4:52 PM, Li Zefan <lizf@cn.fujitsu.com> wrote: >> >> bool active:1; >> bool disabled:1; >> > > It won't compile, but unsigned char active:1 will do. ;)
Are you sure? I don't have a buildable kernel tree at the moment, but the following fragment compiled fine for me (with gcc 4.4.3):
struct foo { _Bool b1:1; _Bool b2:1; };
and was sized at one byte. And "bool" is just a typedef of _Bool in the kernel headers.
> > Every thing that reduces code size (without sacrifice readability > and maintain maintainability) should be worth.
Agreed, within reason. But this patch doesn't reduce code size - it makes the code fractionally more complicated and reduces the *binary* size by a few bytes.
> > This is one of the reasons we accept patches that replacing > kmalloc+memset with kzalloc, which just saves 8 bytes in my box. >
Replacing two function calls with one function call is a code simplification and hence (generally) a good thing - the minuscule reduction in binary size reduction that comes with it is just noise.
Paul
| |