qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] Windows build crash problem
@ 2007-12-12 16:25 武田 俊也
  2007-12-12 16:32 ` Filip Navara
  2007-12-16 12:45 ` andrzej zaborowski
  0 siblings, 2 replies; 3+ messages in thread
From: 武田 俊也 @ 2007-12-12 16:25 UTC (permalink / raw)
  To: qemu-devel

Hi all.

I encountered the crash problem with windows build on Core-Duo host.
Qemu crashes in cpu_interrupt() called from host_alarm_handler() in vl.c
because CPUState *env = next_cpu is null.

I tried the patch to check env is not null in host_alarm_handler()
and now qemu does not crash.

        CPUState *env = next_cpu;
+	if(env) {
        /* stop the currently executing cpu because a timer occured */
        cpu_interrupt(env, CPU_INTERRUPT_EXIT);
#ifdef USE_KQEMU
        if (env->kqemu_enabled) {
            kqemu_cpu_interrupt(env);
        }
#endif
+	}
        event_pending = 1;
}

This is very temporary patch and I need to investigate
why next_cpu is null but sorry now I dont have enough time.

Thanks,
TAKEDA, toshiya

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] Windows build crash problem
  2007-12-12 16:25 [Qemu-devel] Windows build crash problem 武田 俊也
@ 2007-12-12 16:32 ` Filip Navara
  2007-12-16 12:45 ` andrzej zaborowski
  1 sibling, 0 replies; 3+ messages in thread
From: Filip Navara @ 2007-12-12 16:32 UTC (permalink / raw)
  To: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 1041 bytes --]

Actually  somebody has already described the problem on the mailing list and
Paul Brook replied to that message. Hopefully you can find it in the
archives.

F.

On Dec 12, 2007 5:25 PM, 武田 俊也 <t-takeda@m1.interq.or.jp> wrote:

> Hi all.
>
> I encountered the crash problem with windows build on Core-Duo host.
> Qemu crashes in cpu_interrupt() called from host_alarm_handler() in vl.c
> because CPUState *env = next_cpu is null.
>
> I tried the patch to check env is not null in host_alarm_handler()
> and now qemu does not crash.
>
>        CPUState *env = next_cpu;
> +       if(env) {
>        /* stop the currently executing cpu because a timer occured */
>        cpu_interrupt(env, CPU_INTERRUPT_EXIT);
> #ifdef USE_KQEMU
>        if (env->kqemu_enabled) {
>            kqemu_cpu_interrupt(env);
>        }
> #endif
> +       }
>        event_pending = 1;
> }
>
> This is very temporary patch and I need to investigate
> why next_cpu is null but sorry now I dont have enough time.
>
> Thanks,
> TAKEDA, toshiya
>
>
>
>

[-- Attachment #2: Type: text/html, Size: 1521 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] Windows build crash problem
  2007-12-12 16:25 [Qemu-devel] Windows build crash problem 武田 俊也
  2007-12-12 16:32 ` Filip Navara
@ 2007-12-16 12:45 ` andrzej zaborowski
  1 sibling, 0 replies; 3+ messages in thread
From: andrzej zaborowski @ 2007-12-16 12:45 UTC (permalink / raw)
  To: qemu-devel

Hi,

On 12/12/2007, 武田 俊也 <t-takeda@m1.interq.or.jp> wrote:
> I encountered the crash problem with windows build on Core-Duo host.
> Qemu crashes in cpu_interrupt() called from host_alarm_handler() in vl.c
> because CPUState *env = next_cpu is null.
>
> I tried the patch to check env is not null in host_alarm_handler()
> and now qemu does not crash.
>
>         CPUState *env = next_cpu;
> +       if(env) {
>         /* stop the currently executing cpu because a timer occured */
>         cpu_interrupt(env, CPU_INTERRUPT_EXIT);
> #ifdef USE_KQEMU
>         if (env->kqemu_enabled) {
>             kqemu_cpu_interrupt(env);
>         }
> #endif
> +       }
>         event_pending = 1;
> }
>
> This is very temporary patch and I need to investigate
> why next_cpu is null but sorry now I dont have enough time.

It is NULL before main_loop starts. I thought the alarm wouldn't occur
before main_loop but apparently it happens. A better solution might be
not scheduling SIG_ALRM if next_cpu is unset, but that would be more
messy. _rearm must execute at least as many times as
host_alarm_handler so a check there would be less optimal. I committed
your patch.
Cheers

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-12-16 12:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-12 16:25 [Qemu-devel] Windows build crash problem 武田 俊也
2007-12-12 16:32 ` Filip Navara
2007-12-16 12:45 ` andrzej zaborowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).