This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] Question about Xen S3 and resume code - Linux dom0 never exi

To: kevin.tian@xxxxxxxxx, ke.yu@xxxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] Question about Xen S3 and resume code - Linux dom0 never exits the xen_safe_halt hypercall after resume
From: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Date: Thu, 16 Jun 2011 18:57:39 -0400
Delivery-date: Thu, 16 Jun 2011 15:59:47 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.21 (2010-09-15)
I've been eyeing the ACPI S3/S5 code to see what would be necessary to
retool, and while testing I found something strange..

I've stuck the code on

 git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git devel/acpi-s3.v1

I found out that if I don't have this patch:

commit 9f301b0a0081676dfc71b7f0898295e6bcba391a
Author: Yu Ke <ke.yu@xxxxxxxxx>
Date:   Thu Jun 16 17:15:26 2011 -0400

    xen/acpi: add xen acpi processor driver

(which is in the devel/acpi-s3.v0 branch).

the hypervisor, after an S3 resume sits forever in the default_idle. The
Linux dom0 is stuck looping (I think) around SCHEDOP_block hypercall.


If that patch above is present and I've cpufreq=xen on the Xen
hypervisor then Linux kernel gets unstuck and returns to userspace:


(however, if I set cpuidle=0 cpufreq=none on the hypervisor line and
have the 9f301b0a0081676dfc71b7f0898295e6bcba391a patch it still
gets stuck).

I figured that the primary reason the guest is allowed to
exit is SCHEDOP_block loop is b/c the pm_idle call is set to the
acp_processor_idle which does "something" extra after the machine comes
out of a S3 suspend.

Any ideas?

Xen-devel mailing list