[v2] [PATCH 0/2] Populate rootfs asynchronously and early

Surbhi Palande surbhi.palande at canonical.com
Tue Dec 8 09:44:33 UTC 2009


These patches populate the rootfs asynchronously and early to improve the 
boot performance. They are tested against a 2.6.32 kernel on KVM and Dell
Mini 10v. On a  Dell Mini 10v, it was observed that the boot performance 
improved by 0.35 s with the 1st patch and by 0.37 s with the 1st and
the 2nd patch together. 

The 2nd patch starts the population of the rootfs as soon as the cores are 
up and the asynchronous calls are available for use. This patch might reduce 
the boot time, but this needs verification. On a Dell Mini 10v, the 2nd patch
gave an additional boot performance improvement of only 0.2s.

More testing from a wider audience will be appreciated.

Originally populate_rootfs() did not return any error code and hence
could be safely converted to a void function. async_synchronize_domain()
is called immediately after do_basic_setup() so that we wait only for
the completion of populate_rootfs and not the other functions.

The following changes since commit 41ff170f0e6769813433090444b14a2e33477fcd:
  Andy Whitcroft (1):
        UBUNTU: Start new release

are available in the git repository at:

  git://kernel.ubuntu.com/surbhi/ubuntu-lucid.git asyncrootfs

Surbhi Palande (2):
  Populate rootfs asynchronously for boot performance
  Start the population of rootfs early during boot

 include/asm-generic/vmlinux.lds.h |    1 +
 include/linux/init.h              |    3 +++
 init/initramfs.c                  |   17 +++++++++++++----
 init/main.c                       |    6 ++++++
 4 files changed, 23 insertions(+), 4 deletions(-)





More information about the kernel-team mailing list