qemu crashes on Darwin in qemu_iohandler_poll

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

Bug Description

I have an issue when I try to run qemu-system-arm on Mac OS X.
Sometime between 1 and 15 secs after qemu is started it crashes
as shown bellow.

Same thing on linux host works fine.

Is anybody else experiencing this?
Any Hints?

Thanks,

Damjan

(gdb) run
Starting program: /opt/arm-qemu/bin/qemu-system-arm -M verdex -pflash flash.img -nographic -monitor null -m 289
Reading symbols for shared libraries .++++++++++++++........................................................................................ done
pxa2xx_clkpwr_write: CPU frequency change attempt

U-Boot 1.2.0 (May 10 2008 - 21:17:19) - PXA270@400 MHz - 1604

*** Welcome to Gumstix ***

DRAM: 256 MB
Flash: 32 MB
Using default environment

Hit any key to stop autoboot: 1
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00007fff5fbfed30
0x00007fff5fbfed30 in ?? ()
(gdb)
(gdb) bt
#0 0x00007fff5fbfed30 in ?? ()
#1 0x00000001000c26f4 in qemu_iohandler_poll ()
#2 0x00000001001975ae in main_loop_wait ()
#3 0x00000001001976e2 in main_loop ()
#4 0x000000010019bfbc in qemu_main ()
#5 0x00000001000d63a5 in main ()
(gdb)

Revision history for this message
Damjan Marion (dmarion) wrote :

fter bisection seems that this starts happening after following patch:

commit 09716e45a05cc0c93bcf55bd0c0888dd678e490f
Author: Alexander Graf <email address hidden>
Date: Thu Jun 9 00:55:37 2011 +0200

   sigfd: use pthread_sigmask

diff --git a/compatfd.c b/compatfd.c
index bd377c4..41586ce 100644
--- a/compatfd.c
+++ b/compatfd.c
@@ -29,7 +29,7 @@ static void *sigwait_compat(void *opaque)
    sigset_t all;

    sigfillset(&all);
- sigprocmask(SIG_BLOCK, &all, NULL);
+ pthread_sigmask(SIG_BLOCK, &all, NULL);

    while (1) {

However before this patch qemu doesn't respond to keyboard (i.e. commit 31b7c261).

Last full working commit is 630ecca.

Revision history for this message
Oliver (oliverks1) wrote :

I am seeing the same think when I try to run a sample built under gcc from the TI tools

117 void qemu_iohandler_poll(fd_set *readfds, fd_set *writefds, fd_set *xfds, int ret)
118 {
119 if (ret > 0) {
120 IOHandlerRecord *pioh, *ioh;
121
122 QLIST_FOREACH_SAFE(ioh, &io_handlers, next, pioh) {
(gdb) l
123 if (!ioh->deleted && ioh->fd_read && FD_ISSET(ioh->fd, readfds)) {
124 ioh->fd_read(ioh->opaque);
125 }

(gdb) print ioh
$2 = (IOHandlerRecord *) 0x5

However Peter Maydell sent me a kernel image that runs fine on OS X. However when I try to run it under gdb I get the same problem that you see.

Oliver

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

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.