kernel: avoid copying unnecessary files during do_install
authorMark Asselstine <mark.asselstine@windriver.com>
Thu, 31 Jan 2013 18:31:03 +0000 (13:31 -0500)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 1 Feb 2013 15:54:00 +0000 (15:54 +0000)
commit2b624cca58e0eb8283f9fe835d347a15efc6b6b2
tree671e881f91be5b79307882a7dbef1b7cde0c9553
parent1c6a9e10c29e77543b211a4113676d3b9a53e035
kernel: avoid copying unnecessary files during do_install

kernel_do_install() populates $kerneldir with files needed to build
external modules. To accomplish this there are several copy commands
to get source from the kernel source tree and build trees after which
a 'clean' is performed. Since we are copying from the build tree we
get about 1G of .o and .cmd files copied over only to have them
removed when we clean. This adds additional IO overhead as well as
overhead caused by pseudo. By avoiding copying these files in the
first place we get multiple gains:
  * avoid initial copy
  * avoid file deletes during clean
  * reduce pseudo overhead

Additionally we are making use of cpio vs cp which tends to be
significantly faster at performing copies.

With these changes I observe a 15-30% decrease in the time to complete
the do_install() operation on the kernel.

[YOCTO #3517]

(From OE-Core rev: c753f9d59f4d0a5af4ea5deb6e2b9609e05314e2)

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/kernel.bbclass