qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v3 03/13] qemu-timer: move common code to qemu_r


From: Stefan Weil
Subject: Re: [Qemu-devel] [PATCH v3 03/13] qemu-timer: move common code to qemu_rearm_alarm_timer
Date: Wed, 02 Nov 2011 14:31:27 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.23) Gecko/20110921 Thunderbird/3.1.15

Am 02.11.2011 13:54, schrieb Paolo Bonzini:
On 10/31/2011 06:13 PM, Stefan Weil wrote:


They can't be more broken: I noticed today that QEMU on W32 aborts
with the default timer (mmtimer) very quickly.

Is there any reason why mmtimer2 is not the default (or indeed why mmtimer and win32 exist)?

Paolo


Commit 68c23e5520e8286d79d96ab47c0ea722ceb75041 removed
the multimedia timers, so only timer "win32" was left:

use win32 timer queues

    Multimedia timers are only useful for compatibility with Windows NT 4.0
and earlier. Plus, the implementation in Wine is extremely heavyweight.

Commit 2f9cba0c148af32fad6813480f5c92efe17c2d49 re-added
mmtimer2 because it had existed before (it was called "dynticks" and
the default for w32) and was needed for Linux. It also added mmtimer,
a multimedia timer without rearm.

qemu-timer: Fix timers for w32

    Commit 68c23e5520e8286d79d96ab47c0ea722ceb75041 removed the
    multimedia timer, but this timer is needed for certain
    Linux kernels. Otherwise Linux boot stops with this error:

        MP-BIOS bug: 8254 timer not connected to IO-APIC

    So the multimedia timer is added again here.

Now timers without rearm no longer work (abort in assertion).

I think mmtimer2 would be sufficient. For QEMU 1.0, it should be
the default, because otherwise w32 users won't be able to use it.

The arguments from the first patch are still valid, I suppose,
so removing the other timers (mmtimer and win32) should be
delayed until you, I (not before end of next week) or someone
else has done more tests on w32 and wine.

Regards
Stefan




reply via email to

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