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] kexec regression between 3.1.0 and 3.1.3 ?

To: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] kexec regression between 3.1.0 and 3.1.3 ?
From: Ward Vandewege <ward@xxxxxxx>
Date: Thu, 7 Aug 2008 09:12:55 -0400
Delivery-date: Thu, 07 Aug 2008 06:13:19 -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.17+20080114 (2008-01-14)
(I sent this yesterday to xen-users but received no response at all. Perhaps
the dev list is the proper list for this kind of thing.)

Hi there,

There seems to be a regression with regard to kexec'ing into a Xen kernel
between Xen 3.1.0 (confirmed working) and 3.1.3 (confirmed not working). I
would try 3.1.1 and 3.1.2 but source for 3.1 versions older than 3.1.3 no
longer seems to be available for download. I still had source for 3.1.0 lying
around, luckily.

I'm building and running Xen on AMD64 systems, 64 bit.

Basically, up to 3.1.0 I can kexec into a Xen kernel like this:

# kexec --console-vga --console-serial -l /boot/xen-3.1.0.gz 
root=/dev/sda ro console=tty0 console=ttyS0,115200" 
--command-line="com1=115200,8n1 cdb=com1"
# kexec -e

>From 3.1.3, this no longer works:

# kexec --console-vga --console-serial -l /boot/xen-3.1.3.gz 
root=/dev/sda ro console=tty0 console=ttyS0,115200" 
--command-line="com1=115200,8n1 cdb=com1"
# kexec -e

Kexec loads the Xen kernel fine, but hangs when trying to execute it. I've
done some digging in the kexec source, and from what I can tell it hangs
sometime after running the __NR_reboot syscall, so presumably somewhere early
in the Xen kernel code.

If I add 'earlyprintk=ttyS0,115200,keep' to the kernel command line, I see

[    0.000000] Starting new kernel

and then nothing.

I'm using the latest version of kexec (2.0.0 from
http://www.kernel.org/pub/linux/kernel/people/horms/kexec-tools/), but I've
also tested older kexec versions which behave in the same way.

I first observed this on real iron, but I've now set up a test environment
with qemu which behaves identically.

Any suggestions?


Xen-devel mailing list