kernel-packages team mailing list archive
-
kernel-packages team
-
Mailing list archive
-
Message #168505
[Bug 1259861] Re: 5-10 second delay in kernel boot
After studying the code in net/ipv4/ipconfig.c I'm fairly confident
that the problem is caused by wait_for_devices() failing to find any
network interfaces and timing out. That function waits for 12 seconds
before giving up, and the time difference between the "IP-Config:
Entered" message and the end of the delay is just a hair over 12
seconds.
It makes sense that wait_for_devices() would fail: There are no
network devices until the initramfs loads the network interface
modules, and the initramfs init script doesn't start running until
after the kernel is done processing the ip=* argument.
So if the kernel fails to handle the ip=* argument, how does the ip=*
parameter work at all? The answer is the initramfs: The initramfs
init script parses the ip command-line argument and the
scripts/functions script runs the ipconfig utility with the
appropriate arguments to configure the interface.
I see a few ways to fix this:
* Modify the kernel source code to provide a way to change/disable
the timeout.
* Modify the kernel source code to allow the initramfs to load while
the kernel is still waiting for a network device to appear.
* Compile all network drivers into the kernel itself (don't build
them as modules).
* Modify the initramfs init script to introduce an alias for the
ip=* parameter, e.g., initramfs_ip=*. This would allow users to
avoid the pointless kernel processing.
The last option is probably the easiest and least likely to introduce
any unintended side effects.
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1259861
Title:
5-10 second delay in kernel boot
Status in linux package in Ubuntu:
Confirmed
Bug description:
In Trusty I see a big delay while the kernel boots that I did not see back in Precise.
Some people have been experiencing this in Saucy too, so I don't know exactly when it started happening.
Excerpt from dmesg:
[ 3.740100] Switched to clocksource tsc
[ 14.208118] PM: Hibernation image not present or could not be loaded.
[ 14.208885] Freeing unused kernel memory: 864K (c19ac000 - c1a84000)
The exact messages above don't matter, they are different on different boots or on different machines.
It even happens with e.g.
$ sudo kvm -m 768 -cdrom trusty-desktop-i386.iso
My current kernel is
Linux server 3.12.0-7-generic #15-Ubuntu SMP Sun Dec 8 23:42:09 UTC 2013 i686 i686 i686 GNU/Linux
...but the exact version, maybe from 3.8 to 3.12+, shouldn't matter, just run `dmesg` yourself and check if there's a big delay there.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1259861/+subscriptions
References