Paul Menage wrote: > On Tue, Nov 9, 2010 at 4:52 PM, Li Zefan <lizf@xxxxxxxxxxxxxx> 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. > Oops, I just used bool outside kernel tree.. >> 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 I meant binary size. > makes the code fractionally more complicated and reduces the *binary* > size by a few bytes. > It's a commonly used skill in kernel code, so I can't say it makes code more complicated. That said, I'll happily drop this patch. It just came to me when I started to add new bool values to the structure. Or if you prefer bool xxx:1 or just bool xxx, I can do that. >> 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. > _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers