lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 9 May 2007 13:45:54 +0200
From:	"Rafael J. Wysocki" <rjw@...k.pl>
To:	tglx@...utronix.de, Andrew Morton <akpm@...ux-foundation.org>
Cc:	Ingo Molnar <mingo@...e.hu>, LKML <linux-kernel@...r.kernel.org>,
	John Stultz <johnstul@...ibm.com>, linux-acpi@...r.kernel.org
Subject: Re: [patch 3/3] clockevents: Fix resume logic - updated version

On Wednesday, 9 May 2007 10:59, Thomas Gleixner wrote:
> On Wed, 2007-05-09 at 01:31 -0700, Andrew Morton wrote:
> > > I suspect I just tested the wrong thing yesterday.  Let me recheck just
> > > these patches against 2.6.21.
> > 
> > yup, same hang with just these three:
> > 
> > origin
> > clocksource-fix-resume-logic
> > clockevents-fix-resume-logic-updated-version
> 
> I have no idea, how this affects acpi_evaluate_object()

I think the problem is that the ACPI code ordering here is broken in a
difficult to fix way.

Definitely, we shouldn't execute the _BFS method after creating the image
and most probably _WAK shouldn't be executed here either.  Moreover,
acpi_leave_sleep_state() enables the runtime GPEs, which AFAICS
is equivalent to allowing ACPI to generate SCIs.  I'm not sure if this is a
good idea to do such a thing in this particular place.

Andrew, could you please apply the appended patch and see if that
helps (should apply to -mm2)?

Rafael

---
NOTE: This is not a complete solution, because it removes the enabling of GPEs
from the resume-during-hibernation code path entirely, which probbably is not a
good idea in general.
---
 kernel/power/disk.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Index: linux-2.6.21/kernel/power/disk.c
===================================================================
--- linux-2.6.21.orig/kernel/power/disk.c
+++ linux-2.6.21/kernel/power/disk.c
@@ -131,7 +131,9 @@ int hibernation_snapshot(int platform_mo
 	}
 	enable_nonboot_cpus();
  Resume_devices:
-	platform_finish(platform_mode);
+	if (!in_suspend || error)
+		platform_finish(platform_mode);
+
 	device_resume();
 	resume_console();
  Finish:
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ