[Bug 508516] Re: wakeup from sleep fails on toshiba nb305

jim_charlton charltn at gmail.com
Sun Jun 20 17:20:42 UTC 2010


Progress is being made!
The boot process goes something like this. 1) the BIOS runs GRUB from the MBR on the disk, 2) GRUB loads the kernel image in initrd to a ramdisk filesystem 3) the initramfs "init" script is run, does some housekeeping and mounts the root of the real ubuntu file system, 4) the system chroots to the real disk file system and then runs the upstart process (by executing /sbin/init), 5) upstart runs the jobs described by the scripts in /etc/init; one of the jobs it runs is rc which runs the older init.d tasks.  Upstart is event driven rather than being a list of sequential tasks so that upstart jobs may execute simultaneously.

If I boot the NB305 with the kernel parameter "init=/bin/bash", the boot
process stops before upstart has run.  At that point if I run the
command "getty -n -l /bin/bash 38400 /dev/tty2 &" it starts another
shell running on tty2 and I can jump there with ctrl/alt/F2.  I go back
to the boot shell and type "exec init" to start upstart.  I immediately
go to the tty2 shell (ctrl/alt/F2) and type "initctl list".  This gives
a list of upstart jobs and their status.  Only mountall, plymouth and
ureadahaed are started/running.  All others are stopped/waiting.
Mountall is one of the first processes started and is needed to mount
the file system as described in /etc/fstab.  Plymouth is a graphical
splash screen that is just eye candy (I think).  I quote from the ubuntu
manual for ureadahead "ureadahead  (über-readahead)  is  used  during
boot  to  read files in advance of when they are needed such that they
are already in the page cache, improving boot performance".

So I booted the machine and moved ureadahead.conf and plymouth.conf out
of /etc/init (I put them in my home directory for safe keeping).  I then
rebooted with only "ro"on the command line.  The boot time went down to
about 2 minutes!  The resume from suspend went down to about 3 minutes.
Ureadahead makes parameter files that the boot process uses.  I didn't
know how to get rid of those (more reading required) but I just rebooted
the machine a few times and BINGO!  Boot times went down to 30 seconds!

Not only that... but when I boot with "init=/bin/bash" and check disk
performance (before upstart is run) I find the disk is running full
speed.  Ureadahead parameters appear to have been the cause of the poor
disk performance during boot.

The bottom line......  UREADAHEAD appears to be the problem with the
slow boot times on the Toshiba NB305.  Remove it and boot times
(eventually) go back to 30 seconds.

The bad news....  despite early results showing resume from suspend also
was faster... I found that after a few reboots, resume from suspend went
back to approximately a 6-7 minute delay! :-(  So there is still work to
be done.  But progress is being made.  I may eventually file another bug
report under ureadahead.

-- 
wakeup from sleep fails on toshiba nb305
https://bugs.launchpad.net/bugs/508516
You received this bug notification because you are a member of Kernel
Bugs, which is subscribed to linux in ubuntu.




More information about the kernel-bugs mailing list