* hang after seabios
@ 2014-07-30 22:58 Zetan Drableg
2014-07-31 11:31 ` Richard W.M. Jones
0 siblings, 1 reply; 4+ messages in thread
From: Zetan Drableg @ 2014-07-30 22:58 UTC (permalink / raw)
To: kvm
Hi,
Locally I have a supermicro server running OEL 6.5 with KVM
can do virt-sysprep and libguestfs-test-tool no problem.
Linux 2.6.39-400.215.6.el6uek.x86_64
qemu-kvm-0.12.1.2-2.415.el6_5.10.x86_64
seabios-0.6.1.2-28.el6.x86_64
However I have a server in a datacenter (Sun X4-2) running the same
versions, and libguestfs-test-tool hangs when launching KVM.
virt-sysprep also hangs the same way when trying to access a disk image, so
I'm using libguestfs-test-tool as my example:
[root@kvm]# libguestfs-test-tool
************************************************************
* IMPORTANT NOTICE
*
* When reporting bugs, include the COMPLETE, UNEDITED
* output below in your bug report.
*
************************************************************
LIBGUESTFS_APPEND=edd=off
PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr
/sbin:/usr/bin:/root/bin
SELinux: Enforcing
library version: 1.20.11rhel=6,release=2.el6
guestfs_get_append: edd=off
guestfs_get_attach_method: appliance
guestfs_get_autosync: 1
guestfs_get_cachedir: /var/tmp
guestfs_get_direct: 0
guestfs_get_memsize: 500
guestfs_get_network: 0
guestfs_get_path: /usr/lib64/guestfs
guestfs_get_pgroup: 0
guestfs_get_qemu: /usr/libexec/qemu-kvm
guestfs_get_recovery_proc: 1
guestfs_get_selinux: 0
guestfs_get_smp: 1
guestfs_get_tmpdir: /tmp
guestfs_get_trace: 0
guestfs_get_verbose: 1
host_cpu: x86_64
Launching appliance, timeout set to 600 seconds.
libguestfs: launch: attach-method=appliance
libguestfs: launch: tmpdir=/tmp/libguestfspx9994
libguestfs: launch: umask=0077
libguestfs: launch: euid=0
libguestfs: command: run: febootstrap-supermin-helper
libguestfs: command: run: \ --verbose
libguestfs: command: run: \ -f checksum
libguestfs: command: run: \ /usr/lib64/guestfs/supermin.d
libguestfs: command: run: \ x86_64
supermin helper [00000ms] whitelist = (not specified), host_cpu =
x86_64, kernel = (null), initrd = (null), appliance = (null)
supermin helper [00000ms] inputs[0] = /usr/lib64/guestfs/supermin.d
checking modpath /lib/modules/2.6.32-279.el6.x86_64 is a directory
picked vmlinuz-2.6.32-279.el6.x86_64 because modpath /lib/modules/2.6.32-
279.el6.x86_64 exists
checking modpath /lib/modules/2.6.39-200.24.1.el6uek.x86_64 is a
directory
picked vmlinuz-2.6.39-200.24.1.el6uek.x86_64 because modpath /lib/modules
/2.6.39-200.24.1.el6uek.x86_64 exists
supermin helper [00000ms] finished creating kernel
supermin helper [00000ms] visiting /usr/lib64/guestfs/supermin.d
supermin helper [00000ms] visiting /usr/lib64/guestfs/supermin.d/base.img
supermin helper [00000ms] visiting /usr/lib64/guestfs/supermin.d/
daemon.img
supermin helper [00000ms] visiting /usr/lib64/guestfs/supermin.d/
hostfiles
supermin helper [00020ms] visiting /usr/lib64/guestfs/supermin.d/init.img
supermin helper [00020ms] visiting /usr/lib64/guestfs/supermin.d/
udev-rules.img
supermin helper [00020ms] adding kernel modules
supermin helper [00051ms] finished creating appliance
libguestfs: checksum of existing appliance:
4805d2b09b84366bd753e62706693476b59c3971f4c1808739426b92f8baa3bf
libguestfs: [00054ms] begin testing qemu features
libguestfs: command: run: /usr/libexec/qemu-kvm
libguestfs: command: run: \ -nographic
libguestfs: command: run: \ -help
libguestfs: command: run: /usr/libexec/qemu-kvm
libguestfs: command: run: \ -nographic
libguestfs: command: run: \ -version
libguestfs: qemu version 0.12
libguestfs: command: run: /usr/libexec/qemu-kvm
libguestfs: command: run: \ -nographic
libguestfs: command: run: \ -machine accel=kvm:tcg
libguestfs: command: run: \ -device ?
libguestfs: [00182ms] finished testing qemu features
libguestfs: accept_from_daemon: 0x2266e00 g->state = 1
[00183ms] /usr/libexec/qemu-kvm \
-global virtio-blk-pci.scsi=off \
-nodefconfig \
-nodefaults \
-nographic \
-machine accel=kvm:tcg \
-cpu host,+kvmclock \
-m 500 \
-no-reboot \
-kernel /var/tmp/.guestfs-0/kernel.47903 \
-initrd /var/tmp/.guestfs-0/initrd.47903 \
-device virtio-scsi-pci,id=scsi \
-drive file=/tmp/libguestfs-test-tool-sda-Iakpwe,cache=none,format
=raw,id=hd0,if=none \
-device scsi-hd,drive=hd0 \
-drive file=/var/tmp/.guestfs-0/root.47903,snapshot=on,id=appliance,
if=none,cache=unsafe \
-device scsi-hd,drive=appliance \
-device virtio-serial \
-serial stdio \
-device sga \
-chardev socket,path=/tmp/libguestfspx9994/guestfsd.sock,id=channel0
\
-device virtserialport,chardev=channel0,name=org.libguestfs.channel.0
\
-append 'panic=1 console=ttyS0 udevtimeout=600 no_timer_check
acpi=off printk.time=1 cgroup_disable=memory root=/dev/sdb selinux=0
guestfs_verbose=1 TERM=xterm edd=off'
\x1b[1;256r\x1b[256;256H\x1b[6n
Google, Inc.
Serial Graphics Adapter 10/14/11
SGABIOS $Id: sgabios.S 8 2010-04-22 00:03:40Z nlaredo $ (mockbuild@
ca-build44.us.oracle.com) Fri Oct 14 20:04:36 UTC 2011
Term: 80x24
4 0
SeaBIOS (version seabios-0.6.1.2-28.el6)
\x1b[2J
At this point it hangs forever.
When I strace virt-sysprep it hangs in the same place.
read(7, "\r\nGoogle, Inc.\r\nSerial Graphics "..., 8192) = 177
select(8, [5 7], NULL, NULL, NULL) = 1 (in [7])
nanosleep({0, 1000000}, NULL) = 0
read(7, ": 80x24\r\n4 0\r\n\33[2J\r*SeaBIOS *(vers"..., 8192) = 62
select(8, [5 7], NULL, NULL, NULL) = 1 (in [7])
nanosleep({0, 1000000}, NULL) = 0
read(7, "\r*Probing EDD (edd=off to disable*"..., 8192) = 37
select(8, [5 7], NULL, NULL, NULL) = 1 (in [7])
nanosleep({0, 1000000}, NULL) = 0
read(7, "ok\r\r\n\33[2J", 8192) = 9
select(8, [5 7], NULL, NULL, NULL
I updates seabios to 1.7.5 and saw no change.
No SELinux deny audit records.
Can someone help me figure out where the problem lies?
Thanks
-Zetan503
04ff711131--
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: hang after seabios
2014-07-30 22:58 hang after seabios Zetan Drableg
@ 2014-07-31 11:31 ` Richard W.M. Jones
2014-07-31 19:12 ` Zetan Drableg
0 siblings, 1 reply; 4+ messages in thread
From: Richard W.M. Jones @ 2014-07-31 11:31 UTC (permalink / raw)
To: Zetan Drableg; +Cc: kvm, libguestfs
On Wed, Jul 30, 2014 at 03:58:43PM -0700, Zetan Drableg wrote:
> [00183ms] /usr/libexec/qemu-kvm \
> -global virtio-blk-pci.scsi=off \
> -nodefconfig \
> -nodefaults \
> -nographic \
> -machine accel=kvm:tcg \
> -cpu host,+kvmclock \
> -m 500 \
> -no-reboot \
> -kernel /var/tmp/.guestfs-0/kernel.47903 \
> -initrd /var/tmp/.guestfs-0/initrd.47903 \
> -device virtio-scsi-pci,id=scsi \
> -drive file=/tmp/libguestfs-test-tool-sda-Iakpwe,cache=none,format
> =raw,id=hd0,if=none \
> -device scsi-hd,drive=hd0 \
> -drive file=/var/tmp/.guestfs-0/root.47903,snapshot=on,id=appliance,
> if=none,cache=unsafe \
> -device scsi-hd,drive=appliance \
> -device virtio-serial \
> -serial stdio \
> -device sga \
> -chardev socket,path=/tmp/libguestfspx9994/guestfsd.sock,id=channel0
> \
> -device virtserialport,chardev=channel0,name=org.libguestfs.channel.0
> \
> -append 'panic=1 console=ttyS0 udevtimeout=600 no_timer_check
> acpi=off printk.time=1 cgroup_disable=memory root=/dev/sdb selinux=0
> guestfs_verbose=1 TERM=xterm edd=off'
> \x1b[1;256r\x1b[256;256H\x1b[6n
> Google, Inc.
> Serial Graphics Adapter 10/14/11
> SGABIOS $Id: sgabios.S 8 2010-04-22 00:03:40Z nlaredo $ (mockbuild@
> ca-build44.us.oracle.com) Fri Oct 14 20:04:36 UTC 2011
> Term: 80x24
> 4 0
> SeaBIOS (version seabios-0.6.1.2-28.el6)
> \x1b[2J
>
> At this point it hangs forever.
These hangs can be tricky to diagnose.
There are a couple of things you can do however:
(1) strace qemu to find out what it is doing, or:
(2) [harder, but much more informative] gdb into the guest to find out
where the guest hangs, or:
(3) Take the command line above, and cut it down to try to isolate the
problematic options. I would concentrate on the following options as
being most likely to cause trouble:
-cpu
-machine
-kernel
-device sga (remove it)
For (1) and (2) you can use a qemu wrapper to modify the qemu command
that the test tool runs.
See also:
http://libguestfs.org/guestfs.3.html#qemu-wrappers
http://rwmj.wordpress.com/2011/10/12/tip-debugging-the-early-boot-process-with-qemu-and-gdb/#content
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: hang after seabios
2014-07-31 11:31 ` Richard W.M. Jones
@ 2014-07-31 19:12 ` Zetan Drableg
2014-07-31 19:17 ` Richard W.M. Jones
0 siblings, 1 reply; 4+ messages in thread
From: Zetan Drableg @ 2014-07-31 19:12 UTC (permalink / raw)
To: Richard W.M. Jones; +Cc: kvm, libguestfs
Hi Richard thanks for the info.
I took the strace approach and ran into this looping over and over again.
Is it failing to get time?
timer_gettime(0x8, {it_interval={0, 0}, it_value={0, 0}}) = 0
timer_settime(0x8, 0, {it_interval={0, 0}, it_value={0, 250000}}, NULL) = 0
timer_gettime(0x8, {it_interval={0, 0}, it_value={0, 204443}}) = 0
select(16, [0 6 9 13 15], [], [], {1, 0}) = 2 (in [6 13], left {0, 999998})
read(13, "\1\0\0\0\0\0\0\0", 4096) = 8
read(13, 0x7fffa2ed3f70, 4096) = -1 EAGAIN (Resource
temporarily unavailable)
read(6, "\0", 512) = 1
read(6, 0x7fffa2ed4d70, 512) = -1 EAGAIN (Resource
temporarily unavailable)
select(16, [0 6 9 13 15], [], [], {1, 0}) = 1 (in [15], left {0, 999998})
read(15, "\16\0\0\0\0\0\0\0\376\377\377\377\0\0\0\0\0\0\0\0\0\0\0\0\10\0\0\0\0\0\0\0"...,
128) = 128
rt_sigaction(SIGALRM, NULL, {0x7f6d8b8d17d0, ~[KILL STOP RTMIN RT_1],
SA_RESTORER, 0x7f6d8b211710}, 8) = 0
write(7, "\0", 1) = 1
write(14, "\1\0\0\0\0\0\0\0", 8) = 8
read(15, 0x7fffa2ed4ee0, 128) = -1 EAGAIN (Resource
temporarily unavailable)
timer_gettime(0x8, {it_interval={0, 0}, it_value={0, 0}}) = 0
timer_settime(0x8, 0, {it_interval={0, 0}, it_value={0, 988758000}}, NULL) = 0
select(16, [0 6 9 13 15], [], [], {1, 0}) = 2 (in [6 13], left {0, 999998})
read(13, "\1\0\0\0\0\0\0\0", 4096) = 8
read(13, 0x7fffa2ed3f70, 4096) = -1 EAGAIN (Resource
temporarily unavailable)
read(6, "\0", 512) = 1
read(6, 0x7fffa2ed4d70, 512) = -1 EAGAIN (Resource
temporarily unavailable)
It looks a lot like the bug you filed here.
https://bugzilla.redhat.com/show_bug.cgi?id=553689
There are quite a few hits on this trace but nothing real specific.
-Zetan
On Thu, Jul 31, 2014 at 4:31 AM, Richard W.M. Jones <rjones@redhat.com> wrote:
> On Wed, Jul 30, 2014 at 03:58:43PM -0700, Zetan Drableg wrote:
>> [00183ms] /usr/libexec/qemu-kvm \
>> -global virtio-blk-pci.scsi=off \
>> -nodefconfig \
>> -nodefaults \
>> -nographic \
>> -machine accel=kvm:tcg \
>> -cpu host,+kvmclock \
>> -m 500 \
>> -no-reboot \
>> -kernel /var/tmp/.guestfs-0/kernel.47903 \
>> -initrd /var/tmp/.guestfs-0/initrd.47903 \
>> -device virtio-scsi-pci,id=scsi \
>> -drive file=/tmp/libguestfs-test-tool-sda-Iakpwe,cache=none,format
>> =raw,id=hd0,if=none \
>> -device scsi-hd,drive=hd0 \
>> -drive file=/var/tmp/.guestfs-0/root.47903,snapshot=on,id=appliance,
>> if=none,cache=unsafe \
>> -device scsi-hd,drive=appliance \
>> -device virtio-serial \
>> -serial stdio \
>> -device sga \
>> -chardev socket,path=/tmp/libguestfspx9994/guestfsd.sock,id=channel0
>> \
>> -device virtserialport,chardev=channel0,name=org.libguestfs.channel.0
>> \
>> -append 'panic=1 console=ttyS0 udevtimeout=600 no_timer_check
>> acpi=off printk.time=1 cgroup_disable=memory root=/dev/sdb selinux=0
>> guestfs_verbose=1 TERM=xterm edd=off'
>> \x1b[1;256r\x1b[256;256H\x1b[6n
>> Google, Inc.
>> Serial Graphics Adapter 10/14/11
>> SGABIOS $Id: sgabios.S 8 2010-04-22 00:03:40Z nlaredo $ (mockbuild@
>> ca-build44.us.oracle.com) Fri Oct 14 20:04:36 UTC 2011
>> Term: 80x24
>> 4 0
>> SeaBIOS (version seabios-0.6.1.2-28.el6)
>> \x1b[2J
>>
>> At this point it hangs forever.
>
> These hangs can be tricky to diagnose.
>
> There are a couple of things you can do however:
>
> (1) strace qemu to find out what it is doing, or:
>
> (2) [harder, but much more informative] gdb into the guest to find out
> where the guest hangs, or:
>
> (3) Take the command line above, and cut it down to try to isolate the
> problematic options. I would concentrate on the following options as
> being most likely to cause trouble:
>
> -cpu
> -machine
> -kernel
> -device sga (remove it)
>
> For (1) and (2) you can use a qemu wrapper to modify the qemu command
> that the test tool runs.
>
> See also:
>
> http://libguestfs.org/guestfs.3.html#qemu-wrappers
>
> http://rwmj.wordpress.com/2011/10/12/tip-debugging-the-early-boot-process-with-qemu-and-gdb/#content
>
> Rich.
>
> --
> Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
> Read my programming and virtualization blog: http://rwmj.wordpress.com
> virt-builder quickly builds VMs from scratch
> http://libguestfs.org/virt-builder.1.html
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: hang after seabios
2014-07-31 19:12 ` Zetan Drableg
@ 2014-07-31 19:17 ` Richard W.M. Jones
0 siblings, 0 replies; 4+ messages in thread
From: Richard W.M. Jones @ 2014-07-31 19:17 UTC (permalink / raw)
To: Zetan Drableg; +Cc: libguestfs, kvm
On Thu, Jul 31, 2014 at 12:12:26PM -0700, Zetan Drableg wrote:
> Hi Richard thanks for the info.
> I took the strace approach and ran into this looping over and over again.
> Is it failing to get time?
>
> timer_gettime(0x8, {it_interval={0, 0}, it_value={0, 0}}) = 0
> timer_settime(0x8, 0, {it_interval={0, 0}, it_value={0, 250000}}, NULL) = 0
> timer_gettime(0x8, {it_interval={0, 0}, it_value={0, 204443}}) = 0
> select(16, [0 6 9 13 15], [], [], {1, 0}) = 2 (in [6 13], left {0, 999998})
> read(13, "\1\0\0\0\0\0\0\0", 4096) = 8
> read(13, 0x7fffa2ed3f70, 4096) = -1 EAGAIN (Resource
> temporarily unavailable)
> read(6, "\0", 512) = 1
> read(6, 0x7fffa2ed4d70, 512) = -1 EAGAIN (Resource
> temporarily unavailable)
> select(16, [0 6 9 13 15], [], [], {1, 0}) = 1 (in [15], left {0, 999998})
> read(15, "\16\0\0\0\0\0\0\0\376\377\377\377\0\0\0\0\0\0\0\0\0\0\0\0\10\0\0\0\0\0\0\0"...,
> 128) = 128
> rt_sigaction(SIGALRM, NULL, {0x7f6d8b8d17d0, ~[KILL STOP RTMIN RT_1],
> SA_RESTORER, 0x7f6d8b211710}, 8) = 0
> write(7, "\0", 1) = 1
> write(14, "\1\0\0\0\0\0\0\0", 8) = 8
> read(15, 0x7fffa2ed4ee0, 128) = -1 EAGAIN (Resource
> temporarily unavailable)
> timer_gettime(0x8, {it_interval={0, 0}, it_value={0, 0}}) = 0
> timer_settime(0x8, 0, {it_interval={0, 0}, it_value={0, 988758000}}, NULL) = 0
> select(16, [0 6 9 13 15], [], [], {1, 0}) = 2 (in [6 13], left {0, 999998})
> read(13, "\1\0\0\0\0\0\0\0", 4096) = 8
> read(13, 0x7fffa2ed3f70, 4096) = -1 EAGAIN (Resource
> temporarily unavailable)
> read(6, "\0", 512) = 1
> read(6, 0x7fffa2ed4d70, 512) = -1 EAGAIN (Resource
> temporarily unavailable)
>
> It looks a lot like the bug you filed here.
> https://bugzilla.redhat.com/show_bug.cgi?id=553689
I'm fairly sure this is just qemu running as normal. It's not a
duplicate of that ancient bug, because you can see from the messages
that SeaBIOS is running.
You need to `gdb' into the guest to see where the emulation got to.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-top is 'top' for virtual machines. Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://people.redhat.com/~rjones/virt-top
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-07-31 19:17 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-30 22:58 hang after seabios Zetan Drableg
2014-07-31 11:31 ` Richard W.M. Jones
2014-07-31 19:12 ` Zetan Drableg
2014-07-31 19:17 ` Richard W.M. Jones
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox