[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
!qemu_in_coroutine() assert on ARM64 XEN
From: |
Peng Fan |
Subject: |
!qemu_in_coroutine() assert on ARM64 XEN |
Date: |
Mon, 8 Jan 2024 01:01:51 +0000 |
Hi All,
When enabling virtio disk and virtio net on Xen, I could see qemu blk assert
and being killed sometimes, This is not 100% reproducible. I am using
qemu master branch
7425b6277f12e82952cede1f531bfc689bf77fb1 (HEAD -> dummy, origin/staging,
origin/master, origin/HEAD, master) Merge tag 'tracing-pull-request'
of https://gitlab.com/stefanha/qemu into staging
The qemu built option is the one in xen tool/Makefile, I just
change to qemu-system-aarch64.
Anyone has suggestions?
The coredump stack:
Symbols already loaded for /usr/lib/libc.so.6
(gdb) bt
#0 __pthread_kill_implementation (threadid=<optimized out>,
signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1 0x0000ffff9e100568 in __pthread_kill_internal (signo=6,
threadid=<optimized out>) at pthread_kill.c:78
#2 0x0000ffff9e0bacd0 in __GI_raise (sig=sig@entry=6)
at /usr/src/debug/glibc/2.38+git-r0/sysdeps/posix/raise.c:26
#3 0x0000ffff9e0a6ef0 in __GI_abort () at abort.c:79
#4 0x0000ffff9e0b43f8 in __assert_fail_base (
fmt=0xffff9e1ca8a8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n",
assertion=assertion@entry=0xaaaae0d25740 "!qemu_in_coroutine()",
file=file@entry=0xaaaae0d301a8 "../qemu-xen-dir-remote/block/graph-lock.c",
line=line@entry=260,
function=function@entry=0xaaaae0e522c0 <__PRETTY_FUNCTION__.3>
"bdrv_graph_rdlock_main_loop") at assert.c:92
#5 0x0000ffff9e0b4470 in __assert_fail (
assertion=assertion@entry=0xaaaae0d25740 "!qemu_in_coroutine()",
file=file@entry=0xaaaae0d301a8 "../qemu-xen-dir-remote/block/graph-lock.c",
line=line@entry=260,
function=function@entry=0xaaaae0e522c0 <__PRETTY_FUNCTION__.3>
"bdrv_graph_rdlock_main_loop") at assert.c:101
#6 0x0000aaaae0a66a60 in bdrv_graph_rdlock_main_loop ()
at ../qemu-xen-dir-remote/block/graph-lock.c:260
#7 0x0000aaaae0a6d9e0 in graph_lockable_auto_lock_mainloop (x=<optimized out>)
--Type <RET> for more, q to quit, c to continue without paging--
at
/home/Freenix/work/sw-stash/xen/upstream/tools/qemu-xen-dir-remote/include/block/graph-lock.h:259
#8 bdrv_unregister_buf (bs=bs@entry=0xaaaaf619d5a0,
host=host@entry=0xffff742c8000, size=size@entry=2097152)
at ../qemu-xen-dir-remote/block/io.c:3362
#9 0x0000aaaae0a5ddd4 in blk_unregister_buf (blk=<optimized out>,
host=0xffff742c8000, size=2097152)
at ../qemu-xen-dir-remote/block/block-backend.c:2859
#10 0x0000aaaae060aab4 in ram_block_removed (n=<optimized out>,
host=<optimized out>, size=<optimized out>, max_size=<optimized out>)
at ../qemu-xen-dir-remote/block/block-ram-registrar.c:33
#11 0x0000aaaae0399318 in ram_block_notify_remove (host=0xffff742c8000,
size=2097152, max_size=2097152)
at ../qemu-xen-dir-remote/hw/core/numa.c:883
#12 0x0000aaaae097cf84 in xen_invalidate_map_cache_entry_unlocked (
buffer=buffer@entry=0xffff743c5000 "")
at ../qemu-xen-dir-remote/hw/xen/xen-mapcache.c:475
#13 0x0000aaaae097dad0 in xen_invalidate_map_cache_entry (
buffer=buffer@entry=0xffff743c5000 "")
at ../qemu-xen-dir-remote/hw/xen/xen-mapcache.c:487
#14 0x0000aaaae0993e18 in address_space_unmap (
as=as@entry=0xaaaae1ca3ae8 <address_space_memory>, buffer=0xffff743c5000,
len=<optimized out>, is_write=is_write@entry=true,
--Type <RET> for more, q to quit, c to continue without paging--
access_len=access_len@entry=32768)
at ../qemu-xen-dir-remote/system/physmem.c:3199
#15 0x0000aaaae095cc9c in dma_memory_unmap (access_len=32768,
dir=DMA_DIRECTION_FROM_DEVICE, len=<optimized out>,
buffer=<optimized out>, as=0xaaaae1ca3ae8 <address_space_memory>)
at
/home/Freenix/work/sw-stash/xen/upstream/tools/qemu-xen-dir-remote/include/sysemu/dma.h:236
#16 virtqueue_unmap_sg (vq=vq@entry=0xffff965cc010,
elem=elem@entry=0xaaaaf620aa30, len=len@entry=32769)
at ../qemu-xen-dir-remote/hw/virtio/virtio.c:758
#17 0x0000aaaae095efa4 in virtqueue_fill (vq=vq@entry=0xffff965cc010,
elem=elem@entry=0xaaaaf620aa30, len=len@entry=32769, idx=idx@entry=0)
at ../qemu-xen-dir-remote/hw/virtio/virtio.c:919
#18 0x0000aaaae095f0b8 in virtqueue_push (vq=0xffff965cc010,
elem=elem@entry=0xaaaaf620aa30, len=32769)
at ../qemu-xen-dir-remote/hw/virtio/virtio.c:994
#19 0x0000aaaae091a608 in virtio_blk_req_complete (
req=req@entry=0xaaaaf620aa30, status=status@entry=0 '\000')
at ../qemu-xen-dir-remote/hw/block/virtio-blk.c:67
#20 0x0000aaaae091bdc8 in virtio_blk_rw_complete (opaque=<optimized out>,
ret=0) at ../qemu-xen-dir-remote/hw/block/virtio-blk.c:136
#21 0x0000aaaae0a5a938 in blk_aio_complete (acb=acb@entry=0xffff880015f0)
at ../qemu-xen-dir-remote/block/block-backend.c:1559
--Type <RET> for more, q to quit, c to continue without paging--
#22 0x0000aaaae0a5b58c in blk_aio_read_entry (opaque=0xffff880015f0)
at ../qemu-xen-dir-remote/block/block-backend.c:1614
#23 0x0000aaaae0b96c2c in coroutine_trampoline (i0=<optimized out>,
i1=<optimized out>) at ../qemu-xen-dir-remote/util/coroutine-ucontext.c:177
#24 0x0000ffff9e0bfb40 in ?? ()
at ../sysdeps/unix/sysv/linux/aarch64/setcontext.S:123
from /usr/lib/libc.so.6
(gdb) thread apply all bt
Thread 10 (Thread 0xffff951348c0 (LWP 5460)):
#0 0x0000ffff9e15d8c4 in __GI___libc_read (nbytes=16, buf=0xffff7c000cf0,
fd=38) at /usr/src/debug/glibc/2.38+git-r0/sysdeps/unix/sysv/linux/read.c:26
#1 __GI___libc_read (fd=fd@entry=38, buf=buf@entry=0xffff7c000cf0,
nbytes=nbytes@entry=16) at
/usr/src/debug/glibc/2.38+git-r0/sysdeps/unix/sysv/linux/read.c:24
#2 0x0000ffff9f3828d8 in read (__nbytes=16, __buf=0xffff7c000cf0, __fd=38) at
/home/Freenix/tools/fsl-imx-internal-xwayland/sysroots/armv8a-poky-linux/usr/include/bits/unistd.h:28
#3 read_all (fd=38, data=data@entry=0xffff7c000cf0, len=len@entry=16,
nonblocking=nonblocking@entry=0) at xs.c:422
#4 0x0000ffff9f382a08 in read_message (h=h@entry=0xaaaaf6352030,
nonblocking=nonblocking@entry=0) at xs.c:1303
#5 0x0000ffff9f383390 in read_thread (arg=0xaaaaf6352030) at xs.c:1396
#6 0x0000ffff9e0fe978 in start_thread (arg=0x19) at pthread_create.c:444
#7 0x0000ffff9e16708c in thread_start () at
../sysdeps/unix/sysv/linux/aarch64/clone3.S:76
Thread 9 (Thread 0xffff96f02920 (LWP 5457)):
#0 0x0000ffff9e0fb1e4 in __futex_abstimed_wait_common64 (private=0,
cancel=true, abstime=0xffff96f01f18, op=393, expected=0,
futex_word=0xaaaaf5e5a3a0) at futex-internal.c:57
--Type <RET> for more, q to quit, c to continue without paging--
#1 __futex_abstimed_wait_common (cancel=true, private=0,
abstime=0xffff96f01f18, clockid=-169499744, expected=0,
futex_word=0xaaaaf5e5a3a0) at futex-internal.c:87
#2 __GI___futex_abstimed_wait_cancelable64
(futex_word=futex_word@entry=0xaaaaf5e5a3a0, expected=expected@entry=0,
clockid=clockid@entry=0, abstime=abstime@entry=0xffff96f01f18,
private=private@entry=0) at futex-internal.c:139
#3 0x0000ffff9e0fe038 in __pthread_cond_wait_common (abstime=0xffff96f01f18,
clockid=0, mutex=0xaaaaf5e5a300, cond=0xaaaaf5e5a378) at pthread_cond_wait.c:503
#4 ___pthread_cond_timedwait64 (cond=cond@entry=0xaaaaf5e5a378,
mutex=mutex@entry=0xaaaaf5e5a300, abstime=abstime@entry=0xffff96f01f18) at
pthread_cond_wait.c:643
#5 0x0000aaaae0b80938 in qemu_cond_timedwait_ts
(cond=cond@entry=0xaaaaf5e5a378, mutex=mutex@entry=0xaaaaf5e5a300,
ts=ts@entry=0xffff96f01f18, file=file@entry=0xaaaae0d72a30
"../qemu-xen-dir-remote/util/thread-pool.c", line=line@entry=91) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:239
#6 0x0000aaaae0b8125c in qemu_cond_timedwait_impl (cond=0xaaaaf5e5a378,
mutex=0xaaaaf5e5a300, ms=<optimized out>, file=0xaaaae0d72a30
"../qemu-xen-dir-remote/util/thread-pool.c", line=91) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:253
#7 0x0000aaaae0b97368 in worker_thread (opaque=opaque@entry=0xaaaaf5e5a2f0) at
../qemu-xen-dir-remote/util/thread-pool.c:91
#8 0x0000aaaae0b80af4 in qemu_thread_start (args=0xaaaaf6344f60) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:541
--Type <RET> for more, q to quit, c to continue without paging--
#9 0x0000ffff9e0fe978 in start_thread (arg=0x0) at pthread_create.c:444
#10 0x0000ffff9e16708c in thread_start () at
../sysdeps/unix/sysv/linux/aarch64/clone3.S:76
Thread 8 (Thread 0xffff972378c0 (LWP 5455)):
#0 0x0000ffff9e15d8c4 in __GI___libc_read (nbytes=16, buf=0xffff8c000e40,
fd=31) at /usr/src/debug/glibc/2.38+git-r0/sysdeps/unix/sysv/linux/read.c:26
#1 __GI___libc_read (fd=fd@entry=31, buf=buf@entry=0xffff8c000e40,
nbytes=nbytes@entry=16) at
/usr/src/debug/glibc/2.38+git-r0/sysdeps/unix/sysv/linux/read.c:24
#2 0x0000ffff9f3828d8 in read (__nbytes=16, __buf=0xffff8c000e40, __fd=31) at
/home/Freenix/tools/fsl-imx-internal-xwayland/sysroots/armv8a-poky-linux/usr/include/bits/unistd.h:28
#3 read_all (fd=31, data=data@entry=0xffff8c000e40, len=len@entry=16,
nonblocking=nonblocking@entry=0) at xs.c:422
#4 0x0000ffff9f382a08 in read_message (h=h@entry=0xaaaaf61d1970,
nonblocking=nonblocking@entry=0) at xs.c:1303
#5 0x0000ffff9f383390 in read_thread (arg=0xaaaaf61d1970) at xs.c:1396
#6 0x0000ffff9e0fe978 in start_thread (arg=0x0) at pthread_create.c:444
#7 0x0000ffff9e16708c in thread_start () at
../sysdeps/unix/sysv/linux/aarch64/clone3.S:76
Thread 7 (Thread 0xffff972698c0 (LWP 5454)):
--Type <RET> for more, q to quit, c to continue without paging--
#0 0x0000ffff9e15d8c4 in __GI___libc_read (nbytes=16, buf=0xffff88001540,
fd=28) at /usr/src/debug/glibc/2.38+git-r0/sysdeps/unix/sysv/linux/read.c:26
#1 __GI___libc_read (fd=fd@entry=28, buf=buf@entry=0xffff88001540,
nbytes=nbytes@entry=16) at
/usr/src/debug/glibc/2.38+git-r0/sysdeps/unix/sysv/linux/read.c:24
#2 0x0000ffff9f3828d8 in read (__nbytes=16, __buf=0xffff88001540, __fd=28) at
/home/Freenix/tools/fsl-imx-internal-xwayland/sysroots/armv8a-poky-linux/usr/include/bits/unistd.h:28
#3 read_all (fd=28, data=data@entry=0xffff88001540, len=len@entry=16,
nonblocking=nonblocking@entry=0) at xs.c:422
#4 0x0000ffff9f382a08 in read_message (h=h@entry=0xaaaaf61d1240,
nonblocking=nonblocking@entry=0) at xs.c:1303
#5 0x0000ffff9f383390 in read_thread (arg=0xaaaaf61d1240) at xs.c:1396
#6 0x0000ffff9e0fe978 in start_thread (arg=0x0) at pthread_create.c:444
#7 0x0000ffff9e16708c in thread_start () at
../sysdeps/unix/sysv/linux/aarch64/clone3.S:76
Thread 6 (Thread 0xffff97bfa920 (LWP 5453)):
#0 0x0000ffff9e15d2ec in __GI___poll (fds=0xffff90000d50, nfds=4,
timeout=<optimized out>) at
/usr/src/debug/glibc/2.38+git-r0/sysdeps/unix/sysv/linux/poll.c:41
#1 0x0000ffff9e92d2e0 in ?? () from /usr/lib/libglib-2.0.so.0
#2 0x0000ffff9e92ddf4 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
--Type <RET> for more, q to quit, c to continue without paging--
#3 0x0000aaaae0a2c004 in iothread_run (opaque=opaque@entry=0xaaaaf5ea8410) at
../qemu-xen-dir-remote/iothread.c:70
#4 0x0000aaaae0b80af4 in qemu_thread_start (args=0xaaaaf5e5f2f0) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:541
#5 0x0000ffff9e0fe978 in start_thread (arg=0x4d) at pthread_create.c:444
#6 0x0000ffff9e16708c in thread_start () at
../sysdeps/unix/sysv/linux/aarch64/clone3.S:76
Thread 5 (Thread 0xffff75bdc920 (LWP 5562)):
#0 0x0000ffff9e0fb1e4 in __futex_abstimed_wait_common64 (private=0,
cancel=true, abstime=0xffff75bdbf18, op=393, expected=0,
futex_word=0xffff7800c270) at futex-internal.c:57
#1 __futex_abstimed_wait_common (cancel=true, private=0,
abstime=0xffff75bdbf18, clockid=2013315696, expected=0,
futex_word=0xffff7800c270) at futex-internal.c:87
#2 __GI___futex_abstimed_wait_cancelable64
(futex_word=futex_word@entry=0xffff7800c270, expected=expected@entry=0,
clockid=clockid@entry=0, abstime=abstime@entry=0xffff75bdbf18,
private=private@entry=0) at futex-internal.c:139
#3 0x0000ffff9e0fe038 in __pthread_cond_wait_common (abstime=0xffff75bdbf18,
clockid=0, mutex=0xffff7800c1d0, cond=0xffff7800c248) at pthread_cond_wait.c:503
#4 ___pthread_cond_timedwait64 (cond=cond@entry=0xffff7800c248,
mutex=mutex@entry=0xffff7800c1d0, abstime=abstime@entry=0xffff75bdbf18) at
pthread_cond_wait.c:643
--Type <RET> for more, q to quit, c to continue without paging--
#5 0x0000aaaae0b80938 in qemu_cond_timedwait_ts
(cond=cond@entry=0xffff7800c248, mutex=mutex@entry=0xffff7800c1d0,
ts=ts@entry=0xffff75bdbf18, file=file@entry=0xaaaae0d72a30
"../qemu-xen-dir-remote/util/thread-pool.c", line=line@entry=91) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:239
#6 0x0000aaaae0b8125c in qemu_cond_timedwait_impl (cond=0xffff7800c248,
mutex=0xffff7800c1d0, ms=<optimized out>, file=0xaaaae0d72a30
"../qemu-xen-dir-remote/util/thread-pool.c", line=91) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:253
#7 0x0000aaaae0b97368 in worker_thread (opaque=opaque@entry=0xffff7800c1c0) at
../qemu-xen-dir-remote/util/thread-pool.c:91
#8 0x0000aaaae0b80af4 in qemu_thread_start (args=0xffff7800c330) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:541
#9 0x0000ffff9e0fe978 in start_thread (arg=0x0) at pthread_create.c:444
#10 0x0000ffff9e16708c in thread_start () at
../sysdeps/unix/sysv/linux/aarch64/clone3.S:76
Thread 4 (Thread 0xffff95944920 (LWP 5459)):
#0 0x0000ffff9e15d7e8 in __GI_ppoll (fds=0xffff78000bb0, nfds=2,
timeout=<optimized out>, timeout@entry=0x0, sigmask=sigmask@entry=0x0) at
/usr/src/debug/glibc/2.38+git-r0/sysdeps/unix/sysv/linux/ppoll.c:42
#1 0x0000aaaae0b981cc in ppoll (__ss=0x0, __timeout=0x0, __nfds=<optimized
out>, __fds=<optimized out>) at
/home/Freenix/tools/fsl-imx-internal-xwayland/sysroots/armv8a-poky-linux/usr/include/bits/poll2.h:88
--Type <RET> for more, q to quit, c to continue without paging--
#2 qemu_poll_ns (fds=<optimized out>, nfds=<optimized out>,
timeout=timeout@entry=-1) at ../qemu-xen-dir-remote/util/qemu-timer.c:339
#3 0x0000aaaae0b7e134 in fdmon_poll_wait (ctx=0xaaaaf6351e20,
ready_list=0xffff95943f28, timeout=-1) at
../qemu-xen-dir-remote/util/fdmon-poll.c:79
#4 0x0000aaaae0b7dc50 in aio_poll (ctx=0xaaaaf6351e20,
blocking=blocking@entry=true) at ../qemu-xen-dir-remote/util/aio-posix.c:670
#5 0x0000aaaae0a2bfe4 in iothread_run (opaque=opaque@entry=0xaaaaf5df5dc0) at
../qemu-xen-dir-remote/iothread.c:63
#6 0x0000aaaae0b80af4 in qemu_thread_start (args=0xaaaaf634a6b0) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:541
#7 0x0000ffff9e0fe978 in start_thread (arg=0x0) at pthread_create.c:444
#8 0x0000ffff9e16708c in thread_start () at
../sysdeps/unix/sysv/linux/aarch64/clone3.S:76
Thread 3 (Thread 0xffff96584920 (LWP 5458)):
#0 0x0000ffff9e0fb1e4 in __futex_abstimed_wait_common64 (private=0,
cancel=true, abstime=0x0, op=393, expected=0, futex_word=0xaaaaf6349718) at
futex-internal.c:57
#1 __futex_abstimed_wait_common (cancel=true, private=0, abstime=0x0,
clockid=0, expected=0, futex_word=0xaaaaf6349718) at futex-internal.c:87
#2 __GI___futex_abstimed_wait_cancelable64
(futex_word=futex_word@entry=0xaaaaf6349718, expected=expected@entry=0,
clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at
futex-internal.c:139
--Type <RET> for more, q to quit, c to continue without paging--
#3 0x0000ffff9e0fdd58 in __pthread_cond_wait_common (abstime=0x0, clockid=0,
mutex=0xaaaaf6349728, cond=0xaaaaf63496f0) at pthread_cond_wait.c:503
#4 ___pthread_cond_wait (cond=cond@entry=0xaaaaf63496f0,
mutex=mutex@entry=0xaaaaf6349728) at pthread_cond_wait.c:618
#5 0x0000aaaae0b81188 in qemu_cond_wait_impl (cond=0xaaaaf63496f0,
mutex=0xaaaaf6349728, file=0xaaaae0c13b08
"../qemu-xen-dir-remote/ui/vnc-jobs.c", line=248) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:225
#6 0x0000aaaae032dda0 in vnc_worker_thread_loop
(queue=queue@entry=0xaaaaf63496f0) at ../qemu-xen-dir-remote/ui/vnc-jobs.c:248
#7 0x0000aaaae032e14c in vnc_worker_thread (arg=arg@entry=0xaaaaf63496f0) at
../qemu-xen-dir-remote/ui/vnc-jobs.c:362
#8 0x0000aaaae0b80af4 in qemu_thread_start (args=0xaaaaf6349790) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:541
#9 0x0000ffff9e0fe978 in start_thread (arg=0x2) at pthread_create.c:444
#10 0x0000ffff9e16708c in thread_start () at
../sysdeps/unix/sysv/linux/aarch64/clone3.S:76
Thread 2 (Thread 0xffff9c8fe920 (LWP 5452)):
#0 syscall () at ../sysdeps/unix/sysv/linux/aarch64/syscall.S:38
#1 0x0000aaaae0b80a20 in qemu_futex_wait (f=f@entry=0xaaaae1cb7e00
<rcu_call_ready_event>, val=val@entry=4294967295) at
/home/Freenix/work/sw-stash/xen/upstream/tools/qemu-xen-dir-remote/include/qemu/futex.h:29
#2 0x0000aaaae0b816b4 in qemu_event_wait (ev=ev@entry=0xaaaae1cb7e00
<rcu_call_--Type <RET> for more, q to quit, c to continue without paging--
ready_event>) at ../qemu-xen-dir-remote/util/qemu-thread-posix.c:464
#3 0x0000aaaae0b8aa94 in call_rcu_thread (opaque=opaque@entry=0x0) at
../qemu-xen-dir-remote/util/rcu.c:278
#4 0x0000aaaae0b80af4 in qemu_thread_start (args=0xaaaaf5da9a10) at
../qemu-xen-dir-remote/util/qemu-thread-posix.c:541
#5 0x0000ffff9e0fe978 in start_thread (arg=0x2) at pthread_create.c:444
#6 0x0000ffff9e16708c in thread_start () at
../sysdeps/unix/sysv/linux/aarch64/clone3.S:76
Thread 1 (Thread 0xffff9f4f5020 (LWP 5449)):
#0 __pthread_kill_implementation (threadid=<optimized out>,
signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1 0x0000ffff9e100568 in __pthread_kill_internal (signo=6, threadid=<optimized
out>) at pthread_kill.c:78
#2 0x0000ffff9e0bacd0 in __GI_raise (sig=sig@entry=6) at
/usr/src/debug/glibc/2.38+git-r0/sysdeps/posix/raise.c:26
#3 0x0000ffff9e0a6ef0 in __GI_abort () at abort.c:79
#4 0x0000ffff9e0b43f8 in __assert_fail_base (fmt=0xffff9e1ca8a8 "%s%s%s:%u:
%s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0xaaaae0d25740
"!qemu_in_coroutine()", file=file@entry=0xaaaae0d301a8
"../qemu-xen-dir-remote/block/graph-lock.c", line=line@entry=260,
function=function@entry=0xaaaae0e522c0 <__PRETTY_FUNCTION__.3>
"bdrv_graph_rdlock_main_loop") at assert.c:92
#5 0x0000ffff9e0b4470 in __assert_fail
(assertion=assertion@entry=0xaaaae0d2574--Type <RET> for more, q to quit, c to
continue without paging--
0 "!qemu_in_coroutine()", file=file@entry=0xaaaae0d301a8
"../qemu-xen-dir-remote/block/graph-lock.c", line=line@entry=260,
function=function@entry=0xaaaae0e522c0 <__PRETTY_FUNCTION__.3>
"bdrv_graph_rdlock_main_loop") at assert.c:101
#6 0x0000aaaae0a66a60 in bdrv_graph_rdlock_main_loop () at
../qemu-xen-dir-remote/block/graph-lock.c:260
#7 0x0000aaaae0a6d9e0 in graph_lockable_auto_lock_mainloop (x=<optimized out>)
at
/home/Freenix/work/sw-stash/xen/upstream/tools/qemu-xen-dir-remote/include/block/graph-lock.h:259
#8 bdrv_unregister_buf (bs=bs@entry=0xaaaaf619d5a0,
host=host@entry=0xffff742c8000, size=size@entry=2097152) at
../qemu-xen-dir-remote/block/io.c:3362
#9 0x0000aaaae0a5ddd4 in blk_unregister_buf (blk=<optimized out>,
host=0xffff742c8000, size=2097152) at
../qemu-xen-dir-remote/block/block-backend.c:2859
#10 0x0000aaaae060aab4 in ram_block_removed (n=<optimized out>, host=<optimized
out>, size=<optimized out>, max_size=<optimized out>) at
../qemu-xen-dir-remote/block/block-ram-registrar.c:33
#11 0x0000aaaae0399318 in ram_block_notify_remove (host=0xffff742c8000,
size=2097152, max_size=2097152) at ../qemu-xen-dir-remote/hw/core/numa.c:883
#12 0x0000aaaae097cf84 in xen_invalidate_map_cache_entry_unlocked
(buffer=buffer@entry=0xffff743c5000 "") at
../qemu-xen-dir-remote/hw/xen/xen-mapcache.c:475
#13 0x0000aaaae097dad0 in xen_invalidate_map_cache_entry
(buffer=buffer@entry=0xffff743c5000 "") at
../qemu-xen-dir-remote/hw/xen/xen-mapcache.c:487
#14 0x0000aaaae0993e18 in address_space_unmap (as=as@entry=0xaaaae1ca3ae8
<address_space_memory>, buffer=0xffff743c5000, len=<optimized out>,
is_write=is_write@--Type <RET> for more, q to quit, c to continue without
paging--
entry=true, access_len=access_len@entry=32768) at
../qemu-xen-dir-remote/system/physmem.c:3199
#15 0x0000aaaae095cc9c in dma_memory_unmap (access_len=32768,
dir=DMA_DIRECTION_FROM_DEVICE, len=<optimized out>, buffer=<optimized out>,
as=0xaaaae1ca3ae8 <address_space_memory>) at
/home/Freenix/work/sw-stash/xen/upstream/tools/qemu-xen-dir-remote/include/sysemu/dma.h:236
#16 virtqueue_unmap_sg (vq=vq@entry=0xffff965cc010,
elem=elem@entry=0xaaaaf620aa30, len=len@entry=32769) at
../qemu-xen-dir-remote/hw/virtio/virtio.c:758
#17 0x0000aaaae095efa4 in virtqueue_fill (vq=vq@entry=0xffff965cc010,
elem=elem@entry=0xaaaaf620aa30, len=len@entry=32769, idx=idx@entry=0) at
../qemu-xen-dir-remote/hw/virtio/virtio.c:919
#18 0x0000aaaae095f0b8 in virtqueue_push (vq=0xffff965cc010,
elem=elem@entry=0xaaaaf620aa30, len=32769) at
../qemu-xen-dir-remote/hw/virtio/virtio.c:994
#19 0x0000aaaae091a608 in virtio_blk_req_complete
(req=req@entry=0xaaaaf620aa30, status=status@entry=0 '\000') at
../qemu-xen-dir-remote/hw/block/virtio-blk.c:67
#20 0x0000aaaae091bdc8 in virtio_blk_rw_complete (opaque=<optimized out>,
ret=0) at ../qemu-xen-dir-remote/hw/block/virtio-blk.c:136
#21 0x0000aaaae0a5a938 in blk_aio_complete (acb=acb@entry=0xffff880015f0) at
../qemu-xen-dir-remote/block/block-backend.c:1559
#22 0x0000aaaae0a5b58c in blk_aio_read_entry (opaque=0xffff880015f0) at
../qemu-xen-dir-remote/block/block-backend.c:1614
#23 0x0000aaaae0b96c2c in coroutine_trampoline (i0=<optimized out>,
i1=<optimize--Type <RET> for more, q to quit, c to continue without paging--
d out>) at ../qemu-xen-dir-remote/util/coroutine-ucontext.c:177
#24 0x0000ffff9e0bfb40 in ?? () at
../sysdeps/unix/sysv/linux/aarch64/setcontext.S:123 from /usr/lib/libc.so.6
Backtrace stopped: not enough registers or memory available to unwind further
Thanks,
Peng.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- !qemu_in_coroutine() assert on ARM64 XEN,
Peng Fan <=