Thread (9 messages) flat view 9 messages, 6 authors, 2011-08-08

Compile kernel for various times and problem of too long time consuming

From: Stratos Psomadakis <hidden>
Date: 2011-08-07 20:01:14
Also in: lkml

On 08/07/2011 10:48 PM, Amirali Shambayati wrote:
Would you say how you rebuild kernel?

On Sun, Aug 7, 2011 at 10:34 PM, Randy Dunlap [off-list ref] wrote:
quoted
On Sun, 7 Aug 2011 21:39:12 +0430 Amirali Shambayati wrote:
quoted
Hi all,
Since I want to evaluate performance improvements by changing just one
file in kernel(noop-iosched) and compiling kernel is too much
time-consuming, I want to know that if I compile kernel for more than
one time, does it take similar time to first time?

I use following commands. If I don't use "make-kpkg clean" for next
times, does it just compile the files which have been modified or it
compile whole kernel package again?

make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-some-string-here
kernel-image kernel-headers
Since I never use make-kpkg, I can only tell you that when I modified
block/noop-iosched.c and rebuilt the kernel, here is what was rebuilt:

 GEN     /lnx/src/NEXT/linux-next-20110805/X32/Makefile
 CHK     include/linux/version.h
 Using /lnx/src/NEXT/linux-next-20110805 as source for kernel
 CHK     include/generated/utsrelease.h
 CALL    /lnx/src/NEXT/linux-next-20110805/scripts/checksyscalls.sh
 CHK     include/generated/compile.h
 CHK     kernel/config_data.h
 CC      block/noop-iosched.o
 LD      block/built-in.o
 LD      vmlinux.o
 MODPOST vmlinux.o
 GEN     .version
 CHK     include/generated/compile.h
 UPD     include/generated/compile.h
 CC      init/version.o
 LD      init/built-in.o
 LD      .tmp_vmlinux1
 KSYM    .tmp_kallsyms1.S
 AS      .tmp_kallsyms1.o
 LD      .tmp_vmlinux2
 KSYM    .tmp_kallsyms2.S
 AS      .tmp_kallsyms2.o
 LD      vmlinux
 SYSMAP  System.map
 SYSMAP  .tmp_System.map
 Building modules, stage 2.
 VOFFSET arch/x86/boot/voffset.h
 CC      arch/x86/boot/version.o
 OBJCOPY arch/x86/boot/compressed/vmlinux.bin
 LZMA    arch/x86/boot/compressed/vmlinux.bin.lzma
 MODPOST 575 modules
 MKPIGGY arch/x86/boot/compressed/piggy.S
 AS      arch/x86/boot/compressed/piggy.o
 LD      arch/x86/boot/compressed/vmlinux
 ZOFFSET arch/x86/boot/zoffset.h
 OBJCOPY arch/x86/boot/vmlinux.bin
 AS      arch/x86/boot/header.o
 LD      arch/x86/boot/setup.elf
 OBJCOPY arch/x86/boot/setup.bin
 BUILD   arch/x86/boot/bzImage
Setup is 14972 bytes (padded to 15360 bytes).
System is 1287 kB
CRC 64ecf4d
Kernel: arch/x86/boot/bzImage is ready  (#18)


so it's a minimal rebuild, not a full kernel rebuild.

---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
just run a make at the toplevel kernel sources directory...if you change
just one file, make won't rebuild everything, just what it needs to be
rebuilt and 'relinked'...

you're rebuilding the whole kernel every time, because you're running
make-pkg clean, which I think runs make clean and cleans every object
file you've built so far...

-- 
Stratos Psomadakis
[off-list ref]


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
Url : http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20110807/31da8f7d/attachment-0001.bin 
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help