From: Dan Aloni <da-x@monatomic.org>
To: Avi Kivity <avi@qumranet.com>
Cc: kvm-devel@lists.sourceforge.net
Subject: Re: kvm-60: kexec in guest crashes the host
Date: Wed, 20 Feb 2008 12:48:39 +0200 [thread overview]
Message-ID: <20080220104838.GA15252@localdomain> (raw)
In-Reply-To: <47BBEE58.4010801@qumranet.com>
[-- Attachment #1: Type: text/plain, Size: 1347 bytes --]
On Wed, Feb 20, 2008 at 11:09:44AM +0200, Avi Kivity wrote:
> Dan Aloni wrote:
> > It happens at 100% of the times I invoke kexec.
> >
> >
>
> Can you provide a commandline which triggers this? I'm completely
> ignorant wrt kexec.
I managed to verify that this problem can be reproduced with the
2.6.16.60 tree.
Also, it's worth to note that with '-no-kvm' the kexec procedure works
successfully and the second kernel executes.
Please use the .config that that I attached to this mail, and also apply
the patch I supplied (it fixes a build problem that 2.6.16 has with the
newer binutils versions and x86_64). I use gcc-4.1.2 to build the kernel.
Once you have the bzImage of that guest kernel, use a root filesystem
and boot it straight into /bin/bash.
Now, assuming that your guest rootfs has kexec-utils package installed,
do the following:
mount -t proc proc /proc
kexec -l bzImage --command-line='ro root=/dev/hda1 init=/bin/bash'
kexec -e
BTW, if you use the serial console with the '-nographic' switch, then
you might want to use kexec a little differently:
kexec -l bzImage --command-line='ro root=/dev/hda1 init=/bin/bash console=ttyS0,115200' --serial=ttyS0 --serial-baud=115200
Good luck,
--
Dan Aloni
XIV, an IBM (R) company. http://www.xivstorage.com
da-x (at) monatomic.org, dan (at) xiv.co.il
[-- Attachment #2: 2.6.16.60-guest-config.gz --]
[-- Type: application/octet-stream, Size: 7279 bytes --]
[-- Attachment #3: 2.6.16.60-build-patch.diff --]
[-- Type: text/x-diff, Size: 1266 bytes --]
diff --git a/arch/x86_64/boot/compressed/Makefile b/arch/x86_64/boot/compressed/Makefile
index f89d96f..c9688fb 100644
--- a/arch/x86_64/boot/compressed/Makefile
+++ b/arch/x86_64/boot/compressed/Makefile
@@ -12,6 +12,7 @@ EXTRA_AFLAGS := -traditional -m32
# cannot use EXTRA_CFLAGS because base CFLAGS contains -mkernel which conflicts with
# -m32
CFLAGS := -m32 -D__KERNEL__ -Iinclude -O2 -fno-strict-aliasing
+AFLAGS := $(CFLAGS) -D__ASSEMBLY__
LDFLAGS := -m elf_i386
LDFLAGS_vmlinux := -Ttext $(IMAGE_OFFSET) -e startup_32 -m elf_i386
diff --git a/arch/x86_64/boot/tools/build.c b/arch/x86_64/boot/tools/build.c
index c44f5e2..bcdbaf1 100644
--- a/arch/x86_64/boot/tools/build.c
+++ b/arch/x86_64/boot/tools/build.c
@@ -149,8 +149,8 @@ int main(int argc, char ** argv)
sz = sb.st_size;
fprintf (stderr, "System is %d kB\n", sz/1024);
sys_size = (sz + 15) / 16;
- /* 0x40000*16 = 4.0 MB, reasonable estimate for the current maximum */
- if (sys_size > (is_big_kernel ? 0x40000 : DEF_SYSSIZE))
+ /* 0x60000*16 = 6.0 MB, reasonable estimate for the current maximum */
+ if (sys_size > (is_big_kernel ? 0x60000 : DEF_SYSSIZE))
die("System is too big. Try using %smodules.",
is_big_kernel ? "" : "bzImage or ");
while (sz > 0) {
[-- Attachment #4: Type: text/plain, Size: 228 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
[-- Attachment #5: Type: text/plain, Size: 158 bytes --]
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel
next prev parent reply other threads:[~2008-02-20 10:48 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-19 10:25 kvm-60: kexec in guest crashes the host Dan Aloni
2008-02-19 16:03 ` Avi Kivity
2008-02-19 16:46 ` Dan Aloni
2008-02-20 9:09 ` Avi Kivity
2008-02-20 10:48 ` Dan Aloni [this message]
2008-02-25 19:25 ` Dan Aloni
2008-02-27 12:51 ` Avi Kivity
2008-02-27 14:02 ` Avi Kivity
2008-02-27 21:32 ` Dan Aloni
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=20080220104838.GA15252@localdomain \
--to=da-x@monatomic.org \
--cc=avi@qumranet.com \
--cc=kvm-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