[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#656433: [3.1.5 -> 3.1.6 regression] Thinkpad X220 fails to wake up after hibernate-ram



Hi,

Paul Seyfert wrote:

> I suspended my system with hibernate-ram. Opening the notebook later did not
> return me to my session (as desired). Instead after ~1 second I see the power
> LED turning off and hear the harddrive spin down. ~1 further second later, all
> LED light up (like they do if I turn the system on), the harddrive spins up
> shortly until everything shuts down again. Seems like the system is in a loop
> of turning on and off again every 2 seconds.
>
> The only way I found to exit this loop was removing the power supply and the
> battery (power button did not help).
> After downgrading to 3.1.5 the system wakes up as it should.

Can you bisect?  It works like this:

0. Install relevant tools: apt-get install git build-essential

1. Grab the stable kernel.

   git clone -o stable \
     git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git \
     linux

 If you already have a clone of Linus's tree, just add the relevant
 branches to it instead.

   cd linux
   git remote add -f stable \
     git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git

2. Make sure you can reproduce the bug with v3.1.6.

   git checkout v3.1.6
   cp /boot/config-$(uname -r) .config; # current configuration
   make localmodconfig; # optional, minimize configuration
   make deb-pkg; # add -j<num> to speed up by using multiple CPUs
   dpkg -i ../<name of package>; reboot; test test test

3. Make sure you can reproduce the lack of bug with v3.1.5.

   git checkout v3.1.5
   make silentoldconfig; # reuse configuration
   make deb-pkg; # optionally with -j<num>
   dpkg -i ../<name of package>; reboot; test test test

4. If v3.1.6 reproduced the problem and v3.1.5 did not, record that:

   git bisect start
   git bisect good v3.1.5
   git bisect bad v3.1.6

 Git checks out a revision halfway between to test.

   make silentoldconfig; # reuse configuration
   make deb-pkg
   dpkg -i ../<name of package>; reboot; test test test
   cd ~/src/linux
   git bisect bad; # if it reproduces the problem
   git bisect good; # if suspend-to-ram works fine
   git bisect skip; # if some other problem makes it hard to test

5. Git checks out a revision halfway between to test.  Rinse and
   repeat until it finds the "first bad commit" or until bored.

At any step you can run "git bisect visualize" if the gitk package
is installed to see the regression range narrowing.  Even a few
rounds can be very helpful in narrowing down which patch introduced
the bug; one way to report partial results is to send "git bisect log"
output.

I'd also be interested in full "dmesg" output from booting an affected
kernel and booting and suspending an unaffected one.  By the way, is
this reproducible without the virtualbox driver?

Thanks for reporting.

Sincerely,
Jonathan



Reply to: