Failure booting hurd with qemu-system-i386 on ARM

Bug #1498144 reported by PeteVine
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Expired
Undecided
Unassigned

Bug Description

Trying to boot debian-hurd-20150320.img ends with:

qemu-system-i386: qemu-coroutine-lock.c:91: qemu_co_queue_restart_all: Assertion `qemu_in_coroutine()' failed.

Program received signal SIGABRT, Aborted.
__libc_do_syscall ()
    at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:44
44 ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S: No such file or directory.
(gdb) bt
#0 __libc_do_syscall ()
    at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:44
#1 0xb6ef8f0e in __GI_raise (sig=sig@entry=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#2 0xb6efb766 in __GI_abort () at abort.c:89
#3 0xb6ef4150 in __assert_fail_base (
    fmt=0x1 <error: Cannot access memory at address 0x1>,
    assertion=0x7f89a234 "qemu_in_coroutine()", assertion@entry=0x0,
    file=0x7f89da58 "qemu-coroutine-lock.c", file@entry=0xb5660000 "\001",
    line=91, line@entry=3069931692,
    function=function@entry=0x7f89ab78 "qemu_co_queue_restart_all")
    at assert.c:92
#4 0xb6ef41e6 in __GI___assert_fail (assertion=0x0, file=0xb5660000 "\001",
    line=3069931692, function=0x7f89ab78 "qemu_co_queue_restart_all")
    at assert.c:101
#5 0x7f59a6b4 in ?? ()

I was using the same setup as in Bug 893208 (i.e git checkout from 2015-09-15, armv7 Odroid C1)

PeteVine (davine-k)
description: updated
Revision history for this message
Laszlo Ersek (Red Hat) (lersek) wrote : Re: [Qemu-devel] [Bug 1498144] [NEW] Failure booting hurd with qemu-system-i386 on ARM

On 09/21/15 21:04, PeteVine wrote:
> Public bug reported:
>
> Trying to boot debian-hurd-20150320.img ends with:
>
> qemu-system-i386: qemu-coroutine-lock.c:91: qemu_co_queue_restart_all:
> Assertion `qemu_in_coroutine()' failed.
>
> Program received signal SIGABRT, Aborted.
> __libc_do_syscall ()
> at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:44
> 44 ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S: No such file or directory.
> (gdb) bt
> #0 __libc_do_syscall ()
> at ../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:44
> #1 0xb6ef8f0e in __GI_raise (sig=sig@entry=6)
> at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
> #2 0xb6efb766 in __GI_abort () at abort.c:89
> #3 0xb6ef4150 in __assert_fail_base (
> fmt=0x1 <error: Cannot access memory at address 0x1>,
> assertion=0x7f89a234 "qemu_in_coroutine()", assertion@entry=0x0,
> file=0x7f89da58 "qemu-coroutine-lock.c", file@entry=0xb5660000 "\001",
> line=91, line@entry=3069931692,
> function=function@entry=0x7f89ab78 "qemu_co_queue_restart_all")
> at assert.c:92
> #4 0xb6ef41e6 in __GI___assert_fail (assertion=0x0, file=0xb5660000 "\001",
> line=3069931692, function=0x7f89ab78 "qemu_co_queue_restart_all")
> at assert.c:101
> #5 0x7f59a6b4 in ?? ()
>
> I was using the same setup as in Bug 893208 (i.e git checkout from
> 2015-09-15)
>
> ** Affects: qemu
> Importance: Undecided
> Status: New
>

This backtrace is next to useless I believe, but it's not your fault. I
think "scripts/qemu-gdb.py" might be helpful (it has a little bit of
documentation too). See also commit 9eddd6a4.

Thanks
Laszlo

Revision history for this message
PeteVine (davine-k) wrote :

All right, I'll rebuild and try qemu-gdb.py if still necessary.
Do any fancy CFLAGS make a difference in performance or should they be avoided altogether on ARM?

Revision history for this message
PeteVine (davine-k) wrote :

I can't get any more useful info - either the script is expecting some outdated version of python or there's simply nothing else to see cause qemu failed to start.

For example:

(gdb) source qemu-gdb.py
(gdb) run
Starting program: /usr/bin/qemu-system-i386 -m 512 -hda /media/odroid/debian-hurd-20150320.img

and so on

(gdb) qemu mtree
Python Exception <class 'gdb.error'> No symbol "address_space_memory" in current context.:
Error occurred in Python command: No symbol "address_space_memory" in current context.

As for using:

qemu coroutine, I'm not sure where the pointer value should come from but feeding it a bogus one ends exactly as above.

Any suggestions?

Revision history for this message
Laszlo Ersek (Red Hat) (lersek) wrote : Re: [Qemu-devel] [Bug 1498144] Re: Failure booting hurd with qemu-system-i386 on ARM

On 09/23/15 17:13, PeteVine wrote:
> I can't get any more useful info - either the script is expecting some
> outdated version of python or there's simply nothing else to see cause
> qemu failed to start.
>
> For example:
>
> (gdb) source qemu-gdb.py
> (gdb) run
> Starting program: /usr/bin/qemu-system-i386 -m 512 -hda /media/odroid/debian-hurd-20150320.img
>
> and so on
>
> (gdb) qemu mtree
> Python Exception <class 'gdb.error'> No symbol "address_space_memory" in current context.:
> Error occurred in Python command: No symbol "address_space_memory" in current context.
>
> As for using:
>
> qemu coroutine, I'm not sure where the pointer value should come from
> but feeding it a bogus one ends exactly as above.
>
> Any suggestions?
>

Sorry, no idea.

Revision history for this message
PeteVine (davine-k) wrote :

I've just tried again with the latest commits - hurd boots, hooray!

Revision history for this message
PeteVine (davine-k) wrote :

Even though not related to the original issue (was also happening on i386 a few days ago), after getting to the login prompt inside hurd the keyboard doesn't work and the only clue from the kernel at boot time might be this:

'Unexpected ACK from keyboard'

or this:

'/bin/console: could not receive return value from the daemon process: Connection timed out'

I haven't got any more info so I'm not going to open a new bug myself. Thx.

Revision history for this message
PeteVine (davine-k) wrote :

Lastly, the machine 'power down' button doesn't work and a new message appeared inside hurd:

'kdb: queue full'

Revision history for this message
PeteVine (davine-k) wrote :

In case anyone's interested I've just discovered booting in recovery mode (root already logged in) doesn't exhibit the problem with non-working keyboard.

Revision history for this message
Thomas Huth (th-huth) wrote :

Looking through old bug tickets... can you still reproduce this issue with the latest version of QEMU? Or could we close this ticket nowadays?

Changed in qemu:
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for QEMU because there has been no activity for 60 days.]

Changed in qemu:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.