Hi, Currently, there's no way to make a data part of both the init section and the bss section. Therefore uninitialized init data consume useless space in the vmlinux image. Most of these data can be listed by: $ git grep -E "__initdata([^=]*| ?= ?0);" -- *.c This short patchset is an attempt to make these init data part of the bss section (done by patch #1) and therefore decreases the size of the vmlinux image. For now, only MIPS architecture handles this new section, this is done by patch #2. It's only a start and should be enough for discussion. Please consider, Franck