[OE-core] 2.7% build time regression caused by enabling debug/printk.scc KERNEL_FEATURE]

Ed Bartosh ed.bartosh at linux.intel.com
Thu Jul 28 19:26:59 UTC 2016


On Wed, Jul 27, 2016 at 03:58:16PM -0500, Aníbal Limón wrote:
> 
> 
> On 07/27/2016 03:06 PM, Sullivan, California L wrote:
> > Adding the debug-kernel fragment to the printk fragment was probably a
> > mistake on my part. I don't see anything that requires it.
> > 
> > I'm also seeing another issue: TTY_PRINTK depends on EXPERT, which is
> > only enabled on the developer kernel by default, so you currently won't
> > be getting that option. From there, if we were to enable EXPERT,
> > DEBUG_KERNEL then gets selected automatically and we essentially end up
> > where we started and have the build time regression.
> > 
> > Stuff to think about on my end I suppose. In the mean time I +1 removing
> > the debug-kernel include from printk.scc.
> 
> I agree,
> 
> 	alimon

The fix has been merged to yocto-4.4 branch of yocto-kernel-cache:
https://git.yoctoproject.org/cgit/cgit.cgi/yocto-kernel-cache/commit/?h=yocto-4.4&id=d3cc76c3cb20247b16c16b2367decf08b5fb90fa
And included into last kernel update:
http://lists.openembedded.org/pipermail/openembedded-core/2016-July/124466.html

With the fix applied kernel build time decreased by 22.84%:

Build Configuration:
BB_VERSION        = "1.31.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "openSUSE-13.2"
TARGET_SYS        = "i586-poky-linux"
MACHINE           = "qemux86"
DISTRO            = "poky"
DISTRO_VERSION    = "2.1+snapshot-20160728"
TUNE_FEATURES     = "m32 i586"
TARGET_FPU        = ""
meta
meta-poky
meta-yocto-bsp    = "master:039f47ad197a9a53109c9f3deadd9c35e62c056d"

before the fix:
	Command being timed: "bitbake virtual/kernel"
	User time (seconds): 1367.06
	System time (seconds): 162.06
	Percent of CPU this job got: 372%
	Elapsed (wall clock) time (h:mm:ss or m:ss): 6:50.56
	Average shared text size (kbytes): 0
	Average unshared data size (kbytes): 0
	Average stack size (kbytes): 0
	Average total size (kbytes): 0
	Maximum resident set size (kbytes): 627120
	Average resident set size (kbytes): 0
	Major (requiring I/O) page faults: 1292
	Minor (reclaiming a frame) page faults: 61097551
	Voluntary context switches: 885976
	Involuntary context switches: 715312
	Swaps: 0
	File system inputs: 1024568
	File system outputs: 13316088
	Socket messages sent: 0
	Socket messages received: 0
	Signals delivered: 0
	Page size (bytes): 4096
	Exit status: 0

after the fix:
	Command being timed: "bitbake virtual/kernel"
	User time (seconds): 1050.97
	System time (seconds): 128.84
	Percent of CPU this job got: 434%
	Elapsed (wall clock) time (h:mm:ss or m:ss): 4:31.35
	Average shared text size (kbytes): 0
	Average unshared data size (kbytes): 0
	Average stack size (kbytes): 0
	Average total size (kbytes): 0
	Maximum resident set size (kbytes): 387148
	Average resident set size (kbytes): 0
	Major (requiring I/O) page faults: 1264
	Minor (reclaiming a frame) page faults: 52467379
	Voluntary context switches: 589830
	Involuntary context switches: 457987
	Swaps: 0
	File system inputs: 1107424
	File system outputs: 3363464
	Socket messages sent: 0
	Socket messages received: 0
	Signals delivered: 0
	Page size (bytes): 4096
	Exit status: 0


And consumed disk space decreased by 89.62%:

before the fix:
$ du -sh tmp/work/qemux86-poky-linux/linux-yocto/4.4.14+gitAUTOINC+4800a400d5_8361321fec-r0/deploy-linux-yocto/
106M

after the fix:
$ du -sh tmp/work/qemux86-poky-linux/linux-yocto/4.4.14+gitAUTOINC+86bf91f444_8361321fec-r0/deploy-linux-yocto/
11M

--
Regards,
Ed



More information about the Openembedded-core mailing list