qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: virtio-blk XFS corruption


From: Peter Lieven
Subject: [Qemu-devel] Re: virtio-blk XFS corruption
Date: Sun, 26 Sep 2010 18:00:59 +0200

Am 25.09.2010 um 20:11 schrieb Peter Lieven:

> 
> Am 25.09.2010 um 17:58 schrieb Christoph Hellwig:
> 
>> On Sat, Sep 25, 2010 at 05:40:34PM +0200, Peter Lieven wrote:
>>> 
>>> Am 25.09.2010 um 17:37 schrieb Christoph Hellwig:
>>> 
>>>> FYI, qemu 0.12.2 is missing:
>>> 
>>> you mean 0.12.4 not 0.12.2, don't you?
>> 
>> Yes, sorry. (but 0.12.2 is of course missing it, too..)
>> 
>>>> which in the past was very good at triggering XFS guest corruption.
>>>> Please try with the patch applied or even better latests qemu from git.
>>>> 
>>> 
>>> i'm just trying with 0.12.5. 
>>> 
>>> i'm not so familiar with git. is there a command to pull only patches
>>> that are marked as stable and will be in the next official release?
>> 
>> All the qemu stable releases are tagged and you can check do
>> 
>>      git-checkout v0.12.5
>> 
>> but that's not the main git HEAD which would also be interesting.
>> 
> 
> with v0.12.5 no xfs error, but the machine hangs after a few minutes...
> 
> (gdb)  thread apply all backtrace full
> 
> Thread 5 (Thread 0x7f15131c7950 (LWP 3579)):
> #0  0x00007f15136c1cd7 in ioctl () from /lib/libc.so.6
> No symbol table info available.
> #1  0x000000000042b9f1 in kvm_run (env=0x1d4cef0) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:921
>       r = 0
>       kvm = (kvm_context_t) 0x1d2b7b0
>       run = (struct kvm_run *) 0x7f1514c6f000
>       fd = 16
> #2  0x000000000042cf4e in kvm_cpu_exec (env=0x1d4cef0) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1651
>       r = 0
> #3  0x000000000042d6d8 in kvm_main_loop_cpu (env=0x1d4cef0) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1893
>       run_cpu = 1
> #4  0x000000000042d819 in ap_main_loop (_env=0x1d4cef0) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1943
>       env = (struct CPUX86State *) 0x1d4cef0
>       signals = {__val = {18446744067267100671, 18446744073709551615 <repeats 
> 15 times>}}
>       data = (struct ioperm_data *) 0x0
> #5  0x00007f15146473ba in start_thread () from /lib/libpthread.so.0
> No symbol table info available.
> #6  0x00007f15136c9fcd in clone () from /lib/libc.so.6
> No symbol table info available.
> #7  0x0000000000000000 in ?? ()
> No symbol table info available.
> 
> Thread 4 (Thread 0x7f15129c6950 (LWP 3580)):
> #0  0x00007f15136c1cd7 in ioctl () from /lib/libc.so.6
> No symbol table info available.
> #1  0x000000000042b9f1 in kvm_run (env=0x1d67010) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:921
>       r = 0
>       kvm = (kvm_context_t) 0x1d2b7b0
>       run = (struct kvm_run *) 0x7f1514c6c000
>       fd = 17
> #2  0x000000000042cf4e in kvm_cpu_exec (env=0x1d67010) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1651
>       r = 0
> #3  0x000000000042d6d8 in kvm_main_loop_cpu (env=0x1d67010) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1893
>       run_cpu = 1
> #4  0x000000000042d819 in ap_main_loop (_env=0x1d67010) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1943
>       env = (struct CPUX86State *) 0x1d67010
>       signals = {__val = {18446744067267100671, 18446744073709551615 <repeats 
> 15 times>}}
>       data = (struct ioperm_data *) 0x0
> #5  0x00007f15146473ba in start_thread () from /lib/libpthread.so.0
> No symbol table info available.
> #6  0x00007f15136c9fcd in clone () from /lib/libc.so.6
> No symbol table info available.
> #7  0x0000000000000000 in ?? ()
> No symbol table info available.
> 
> ---Type <return> to continue, or q <return> to quit---
> Thread 3 (Thread 0x7f15121c5950 (LWP 3581)):
> #0  0x00007f151464da94 in __lll_lock_wait () from /lib/libpthread.so.0
> No symbol table info available.
> #1  0x00007f1514649190 in _L_lock_102 () from /lib/libpthread.so.0
> No symbol table info available.
> #2  0x00007f1514648a7e in pthread_mutex_lock () from /lib/libpthread.so.0
> No symbol table info available.
> #3  0x000000000042b7dc in post_kvm_run (kvm=0x1d2b7b0, env=0x1d74d90) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:858
> No locals.
> #4  0x000000000042ba68 in kvm_run (env=0x1d74d90) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:930
>       r = -1
>       kvm = (kvm_context_t) 0x1d2b7b0
>       run = (struct kvm_run *) 0x7f1514c69000
>       fd = 18
> #5  0x000000000042cf4e in kvm_cpu_exec (env=0x1d74d90) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1651
>       r = 0
> #6  0x000000000042d6d8 in kvm_main_loop_cpu (env=0x1d74d90) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1893
>       run_cpu = 1
> #7  0x000000000042d819 in ap_main_loop (_env=0x1d74d90) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1943
>       env = (struct CPUX86State *) 0x1d74d90
>       signals = {__val = {18446744067267100671, 18446744073709551615 <repeats 
> 15 times>}}
>       data = (struct ioperm_data *) 0x0
> #8  0x00007f15146473ba in start_thread () from /lib/libpthread.so.0
> No symbol table info available.
> #9  0x00007f15136c9fcd in clone () from /lib/libc.so.6
> No symbol table info available.
> #10 0x0000000000000000 in ?? ()
> No symbol table info available.
> 
> Thread 2 (Thread 0x7f15119c4950 (LWP 3582)):
> #0  0x00007f151464da94 in __lll_lock_wait () from /lib/libpthread.so.0
> No symbol table info available.
> #1  0x00007f1514649190 in _L_lock_102 () from /lib/libpthread.so.0
> No symbol table info available.
> #2  0x00007f1514648a7e in pthread_mutex_lock () from /lib/libpthread.so.0
> No symbol table info available.
> #3  0x000000000042b7dc in post_kvm_run (kvm=0x1d2b7b0, env=0x1d82b10) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:858
> No locals.
> #4  0x000000000042ba68 in kvm_run (env=0x1d82b10) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:930
>       r = -1
>       kvm = (kvm_context_t) 0x1d2b7b0
>       run = (struct kvm_run *) 0x7f1514c66000
>       fd = 19
> #5  0x000000000042cf4e in kvm_cpu_exec (env=0x1d82b10) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1651
>       r = 0
> #6  0x000000000042d6d8 in kvm_main_loop_cpu (env=0x1d82b10) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1893
>       run_cpu = 1
> ---Type <return> to continue, or q <return> to quit---
> #7  0x000000000042d819 in ap_main_loop (_env=0x1d82b10) at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:1943
>       env = (struct CPUX86State *) 0x1d82b10
>       signals = {__val = {18446744067267100671, 18446744073709551615 <repeats 
> 15 times>}}
>       data = (struct ioperm_data *) 0x0
> #8  0x00007f15146473ba in start_thread () from /lib/libpthread.so.0
> No symbol table info available.
> #9  0x00007f15136c9fcd in clone () from /lib/libc.so.6
> No symbol table info available.
> #10 0x0000000000000000 in ?? ()
> No symbol table info available.
> 
> Thread 1 (Thread 0x7f1514c766f0 (LWP 3576)):
> #0  0x00007f15136c2742 in select () from /lib/libc.so.6
> No symbol table info available.
> #1  0x000000000040c25a in main_loop_wait (timeout=1000) at 
> /usr/src/qemu-kvm-0.12.5/vl.c:3994
>       ioh = (IOHandlerRecord *) 0x0
>       rfds = {fds_bits = {83886728, 0 <repeats 15 times>}}
>       wfds = {fds_bits = {0 <repeats 16 times>}}
>       xfds = {fds_bits = {0 <repeats 16 times>}}
>       ret = 3
>       nfds = 26
>       tv = {tv_sec = 0, tv_usec = 999994}
> #2  0x000000000042dd9d in kvm_main_loop () at 
> /usr/src/qemu-kvm-0.12.5/qemu-kvm.c:2126
>       fds = {24, 25}
>       mask = {__val = {268443712, 0 <repeats 15 times>}}
>       sigfd = 26
> #3  0x000000000040c98c in main_loop () at /usr/src/qemu-kvm-0.12.5/vl.c:4212
>       r = 0
> #4  0x000000000041055a in main (argc=39, argv=0x7fffe23b2838, 
> envp=0x7fffe23b2978) at /usr/src/qemu-kvm-0.12.5/vl.c:6256
>       gdbstub_dev = 0x0
>       boot_devices_bitmap = 12
>       i = 0
>       snapshot = 0
>       linux_boot = 0
>       initrd_filename = 0x0
>       kernel_filename = 0x0
>       kernel_cmdline = 0x58958c ""
>       boot_devices = "dc", '\0' <repeats 30 times>
>       ds = (DisplayState *) 0x1d9ff00
>       dcl = (DisplayChangeListener *) 0x0
>       cyls = 0
>       heads = 0
>       secs = 0
>       translation = 0
>       hda_opts = (QemuOpts *) 0x0
>       opts = (QemuOpts *) 0x1d2adc0
>       optind = 39
> ---Type <return> to continue, or q <return> to quit---
>       r = 0x7fffe23b4bf7 "-no-kvm-clock"
>       optarg = 0x0
>       loadvm = 0x0
>       machine = (QEMUMachine *) 0x862720
>       cpu_model = 0x7fffe23b4b80 "qemu64,model_id=Intel(R) Xeon(R) CPU", ' ' 
> <repeats 11 times>, "E5430  @ 2.66GHz,-tsc,-nx"
>       fds = {-499439560, 32767}
>       tb_size = 0
>       pid_file = 0x7fffe23b4b3f "/var/run/qemu/vm-244.pid"
>       incoming = 0x0
>       fd = 0
>       pwd = (struct passwd *) 0x0
>       chroot_dir = 0x0
>       run_as = 0x0
>       env = (struct CPUX86State *) 0x0
>       show_vnc_port = 0
>       params = {0x58d2a6 "order", 0x58d2ac "once", 0x58d2b1 "menu", 0x0}
> 

sorry people, i have to apologize. i was testing 0.12.5 on an old dell with a 
xeon e5430. obviously, something is broken on these systems.
if i run the same tests on a recent xeon L5640 everything runs flawlessly. no 
hangs and no kvm emulation errors.

my stress tests with xfs using a diablo newsserver have also not generated an 
xfs corruption within the last 24 hours with
0.12.5. with 0.12.4 it appeared always after a few hours.

i will keep you posted if anything changes.

thanks,
peter







reply via email to

[Prev in Thread] Current Thread [Next in Thread]