On Fri, 2013-06-21 at 18:50 +0200, Jan Kara wrote: > On Tue 18-06-13 10:14:39, Joe Perches wrote: > > Reducing the object size ~5kb/15% could be useful for embedded > > systems. > > > > Add #ifdef CONFIG_PRINTK #else #endif blocks > > to hold formats and arguments, passing " " to > > functions when !CONFIG_PRINTK and still verifying > > format and arguments with no_printk. > > > > $ size fs/ext2/built-in.o* > > text data bss dec hex filename > > 31297 44 4 31345 7a71 fs/ext2/built-in.o.ext2.new > > 36288 44 4 36336 8df0 fs/ext2/built-in.o.ext2.old > > > > $ grep -E "CONFIG_EXT2|CONFIG_PRINTK" .config > > # CONFIG_PRINTK is not set > > CONFIG_EXT2_FS=y > > # CONFIG_EXT2_FS_XATTR is not set > > # CONFIG_EXT2_FS_XIP is not set > I'm somewhat reluctant to merge this unless I know someone really > cares. It looks a bit ugly to ifdef every function doing some printing just > to reduce object size when CONFIG_PRINTK is disabled... And in future LTO > might help us ;) (adding cc's to linux-embedded and openwrt maybe someone there cares) Link time optimization might help some, but these calls are still made and the strings could not be eliminated without this. Original patch: http://patchwork.kernel.org/patch/2744401/ -- To unsubscribe from this list: send the line "unsubscribe linux-embedded" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html