mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Linus Torvalds <torvalds@linux-foundation.org>
To: Jeff Chua <jeff.chua.linux@gmail.com>
Cc: Jesse Barnes <jesse.barnes@intel.com>,
	lkml <linux-kernel@vger.kernel.org>,
	Dave Airlie <airlied@linux.ie>, "Rafael J. Wysocki" <rjw@sisk.pl>,
	linux-acpi@vger.kernel.org,
	suspend-devel List <suspend-devel@lists.sourceforge.net>,
	Greg KH <gregkh@suse.de>
Subject: Re: 2.6.25-rc2 System no longer powers off after suspend-to-disk. Screen becomes green.
Date: Wed, 20 Feb 2008 10:37:04 -0800 (PST)	[thread overview]
Message-ID: <alpine.LFD.1.00.0802201007300.7833@woody.linux-foundation.org> (raw)
In-Reply-To: <b6a2187b0802200954p1cccb01aqbc48c865797f0af1@mail.gmail.com>



On Thu, 21 Feb 2008, Jeff Chua wrote:
> 
> > That said, before you do anything else, try if suspend-to-RAM works.
> 
> Linus, guess I missed this part ... so before touch anything, I did
> tried suspend-to-ram, and it works on console and in X.

Ok, so this is with clean current -git, and nothing disabled?

> And suspend-to-disk hangs, but I can still press and hold the power
> button to power it off.

The "press and hold for five seconds" is actually a hardware feature of 
the southbridge (well, I guess there is "software" in there too, but it's 
the embedded kind). So the fact that it powers off at that point means 
nothing, it just means that ok, your kernel is hung, but the hardware
still works ;)

This *sounds* like some part of the suspend-to-disk sequence is doing 
something stupid like trying to access the screen after it has been turned 
off, which doesn't surprise me at all. My oft-stated opinion has been that 
suspend-to-disk isn't a suspend at all, and should never have been 
confused with "suspending" anything.

It's "snapshot-and-restore", and my opinion is that:

 - it should *never* call "suspend()"/"resume()" at all (that should be
   reserved purely for suspend-to-RAM and has real power management 
   issues!)

 - it should have a totally separate "halt/unhalt/restore" thing 
   that has nothing what-so-ever to do with power management, and is 
   purely about stopping the hardware for things like USB and network 
   cards (which otherwise do things like scan their command lists 
   asynchronously) and making sure that the driver state is consistent 
   with that stopped hw state.

 - the people who confuse snapshot/restore with suspend/resume are 
   horrible people that cause problems exactly because driver people then 
   get those things mixed up, and something like the video suspend/resume 
   should probably never have impacted suspend-to-disk in the first place!

HOWEVER, that's a separate fight I've had, and in the meantime:

> Then upon powering on and resume, I get the ugly green "console" screen. 
> I can still type and move around. Starting X runs fine. Ctrl-Alt-Del or 
> switching back to console will get back to the green screen.

.. so this implies that while the laptop apparently hung at the end of the 
snapshotting, the snapshotting did actually work, and it must have hung at 
the very end, presumably when it tried to actually turn the power off.

So there seems to be two (probably largely independent) problems:

 - the hang at shutdown that requires you to press-and-hold the power 
   button to actually cut power.

   At a guess: putting the VGA device into D3hot makes the ACPI code that 
   actually does the shutoff unhappy. Probably because it wants to access 
   the device, and ends up not ever getting the replies it wants, since 
   the hardware has been turned off.

 - the fact that we restore something wrong for you and the screen is 
   green.

   At a guess: the restore_vga ends up restoring some state that wasn't 
   correctly and fully saved.

IOW, I think your patch that disables the two lines actually ends up 
pretty much matching the two *different* problems. Can you confirm that 
doing those two parts of that patch individually actually does 
individually fix the two issues? (Ie disabling D3hot makes it shut down 
nicely but resume with green text, while disabling just restore_vga() ends 
up with shutdown problems, but once you press-and-hold the power button, 
the thing will then restore nicely)+

		Linus

  reply	other threads:[~2008-02-20 18:38 UTC|newest]

Thread overview: 117+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-20 17:17 Jeff Chua
2008-02-20 17:19 ` Jeff Chua
2008-02-20 17:28 ` Linus Torvalds
2008-02-20 17:37   ` Jeff Chua
2008-02-20 17:52     ` Linus Torvalds
2008-02-20 18:02       ` Jeff Chua
2008-02-21 19:43         ` [Suspend-devel] 2.6.25-rc2 System no longer powers off aftersuspend-to-disk. " Romano Giannetti
2008-02-21 21:02           ` Jesse Barnes
2008-02-22  0:20             ` Jeff Chua
2008-02-22  0:23               ` Jesse Barnes
2008-02-22  0:42                 ` Jeff Chua
2008-02-22  0:46                   ` Jesse Barnes
2008-02-22  0:52                     ` Jeff Chua
2008-02-22  1:02                       ` Jesse Barnes
2008-02-22  1:27                         ` Jeff Chua
2008-02-22  1:28                         ` Linus Torvalds
2008-02-22  1:35                           ` Jesse Barnes
2008-02-22 10:37                   ` Matthew Garrett
2008-02-22 13:06                     ` Ingo Molnar
2008-02-22 16:10                       ` Rafael J. Wysocki
2008-02-22 16:50                       ` Linus Torvalds
2008-02-22 18:01                       ` Matthew Garrett
2008-02-23 11:17                         ` Ingo Molnar
2008-02-22  0:31               ` Rafael J. Wysocki
2008-02-22  0:42                 ` Jeff Chua
2008-02-22  1:01                   ` Jeff Chua
2008-02-22  1:06                     ` Rafael J. Wysocki
2008-02-22  0:46                 ` Linus Torvalds
2008-02-22  0:54                   ` Rafael J. Wysocki
2008-02-22  1:13                     ` Jesse Barnes
2008-02-22  1:44                       ` Jesse Barnes
2008-02-22 23:31                         ` i915 hibernation patch (was: Re: [Suspend-devel] 2.6.25-rc2 System no longer powers off aftersuspend-to-disk. Screen becomes green.) Rafael J. Wysocki
2008-02-23  1:00                           ` Linus Torvalds
2008-02-23  1:55                             ` Rafael J. Wysocki
2008-02-23  2:07                               ` Linus Torvalds
2008-02-23  4:36                                 ` Jeff Chua
2008-02-23 18:13                                   ` [PATCH] PM: Introduce PM_EVENT_HIBERNATE (was: Re: i915 hibernation patch (was: Re: 2.6.25-rc2 System no longer ...)) Rafael J. Wysocki
2008-02-23 18:43                                     ` Linus Torvalds
2008-02-24  8:29                                       ` Pavel Machek
2008-02-24 15:21                                       ` Jeff Chua
2008-02-24  4:16                                     ` Mirco Tischler
2008-02-24 11:11                                       ` Rafael J. Wysocki
2008-02-24 11:25                                         ` Rafael J. Wysocki
2008-02-23 11:17                               ` i915 hibernation patch (was: Re: [Suspend-devel] 2.6.25-rc2 System no longer powers off aftersuspend-to-disk. Screen becomes green.) Pavel Machek
2008-02-20 17:54   ` 2.6.25-rc2 System no longer powers off after suspend-to-disk. Screen becomes green Jeff Chua
2008-02-20 18:37     ` Linus Torvalds [this message]
2008-02-18  6:31       ` [Suspend-devel] " Pavel Machek
2008-02-20 18:49       ` Jeff Chua
2008-02-20 19:25         ` Matthew Garrett
2008-02-20 18:57       ` Jesse Barnes
2008-02-20 17:50 ` Jesse Barnes
2008-02-20 18:29   ` Jeff Chua
2008-02-20 18:53     ` Jesse Barnes
2008-02-20 19:10       ` Jeff Chua
2008-02-20 19:18         ` Jesse Barnes
2008-02-20 20:09           ` Jesse Barnes
2008-02-20 20:14             ` Rafael J. Wysocki
2008-02-20 20:29               ` Linus Torvalds
2008-02-20 20:33                 ` [Suspend-devel] " Pablo Sanchez
2008-02-20 20:41                 ` Jesse Barnes
2008-02-20 21:13                   ` Linus Torvalds
2008-02-20 21:44                     ` Jesse Barnes
2008-02-20 22:22                       ` Linus Torvalds
2008-02-21  8:30                         ` david
2008-02-22 16:56                           ` Mark Lord
2008-02-22 17:02                             ` Rafael J. Wysocki
2008-02-22 17:32                               ` Mark Lord
2008-02-22 17:44                                 ` Rafael J. Wysocki
2008-02-22 19:23                                   ` david
2008-02-22 23:16                                     ` Rafael J. Wysocki
2008-02-20 22:36                       ` Rafael J. Wysocki
2008-02-20 23:13                         ` Linus Torvalds
2008-02-20 23:35                           ` Rafael J. Wysocki
2008-02-21  0:00                             ` Linus Torvalds
2008-02-21  0:13                               ` Rafael J. Wysocki
2008-02-21  0:25                                 ` Linus Torvalds
2008-02-21  0:59                                   ` Rafael J. Wysocki
2008-02-22 16:54                             ` Mark Lord
2008-02-20 22:45                       ` Nigel Cunningham
2008-02-21  0:13                         ` Matthew Garrett
2008-02-21  0:40                           ` Nigel Cunningham
2008-02-21  0:46                             ` Greg KH
2008-02-21  1:17                               ` Nigel Cunningham
2008-02-21  4:43                                 ` Greg KH
2008-02-21  6:05                                   ` Nigel Cunningham
2008-02-21  6:37                                     ` Greg KH
2008-02-21  1:10                             ` Matthew Garrett
2008-02-21  1:25                               ` Nigel Cunningham
2008-02-20 20:45                 ` [Suspend-devel] " Rafael J. Wysocki
2008-02-20 21:26                   ` Alexey Starikovskiy
2008-02-20 21:37         ` Jesse Barnes
2008-02-21  0:35           ` Jeff Chua
2008-02-21  0:39             ` Jesse Barnes
2008-02-21  1:19               ` Jeff Chua
2008-02-21  1:21                 ` Jesse Barnes
2008-02-21  1:49                   ` Jeff Chua
2008-02-21  2:00               ` Jeff Chua
2008-02-21 16:27                 ` [Suspend-devel] " Rafael J. Wysocki
2008-02-21 18:34                   ` Jesse Barnes
2008-02-21 20:30                     ` Rafael J. Wysocki
2008-02-21 22:11                     ` Rafael J. Wysocki
2008-02-21 23:45                       ` Jesse Barnes
2008-02-22  0:28                         ` Rafael J. Wysocki
2008-02-22  0:48                         ` Jeff Chua
2008-02-20 22:32         ` Jesse Barnes
2008-02-20 23:03           ` Jesse Barnes
2008-02-20 23:34             ` Jesse Barnes
2008-02-20 23:49               ` Rafael J. Wysocki
2008-02-21  0:17                 ` Jesse Barnes
2008-02-21  1:07                   ` [Suspend-devel] " Rafael J. Wysocki
2008-02-20 18:47 ` Mark Lord
  -- strict thread matches above, loose matches on Subject: below --
2008-02-20  0:53 Jeff Chua
2008-02-20  1:00 ` Jesse Barnes
2008-02-20  1:06   ` Rafael J. Wysocki
2008-02-20  2:28   ` Linus Torvalds
2008-02-20  4:32     ` Jesse Barnes
2008-02-20  6:19       ` Jeff Chua

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LFD.1.00.0802201007300.7833@woody.linux-foundation.org \
    --to=torvalds@linux-foundation.org \
    --cc=airlied@linux.ie \
    --cc=gregkh@suse.de \
    --cc=jeff.chua.linux@gmail.com \
    --cc=jesse.barnes@intel.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rjw@sisk.pl \
    --cc=suspend-devel@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®