qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [RFC 0/8] CPU DeviceState v9


From: Andreas Färber
Subject: Re: [Qemu-devel] [RFC 0/8] CPU DeviceState v9
Date: Wed, 05 Dec 2012 15:50:47 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Thunderbird/17.0

Am 04.12.2012 17:40, schrieb Eduardo Habkost:
> On Tue, Dec 04, 2012 at 04:59:38PM +0100, Andreas Färber wrote:
>> Am 04.12.2012 14:19, schrieb Eduardo Habkost:
>>> Changes on v9:
>>>  - Instead of moving qemu_[un]register_reset() to reset.c and including
>>>    it on *-user, create stubs for them on libqemustub.a
>>
>> We compile cpu.c twice. Can't we do the same for qdev.c or whatever uses
>> those functions? I feel they have no business being used in *-user.
>> CC'ing Riku and Peter.
> 
> I don't understand what exactly you are suggesting. You suggest adding
> #ifdefs to qdev.c to compile out the qemu_[un]register_reset() calls?

Yes, that was my thought. It would've spared us the include troubles in
stubs/ for now. ;)

Andreas

> I had a version of this series that did exactly that[1], but IIRC
> somebody suggested using stub functions instead. And I agree with
> whoever suggested it, I believe stub functions are cleaner when the the
> stub version still have the semantics expected by the caller[2].
> 
> [1] http://article.gmane.org/gmane.comp.emulators.xen.devel/137686
> [2] e.g. a no-op qemu_register_reset() still does the job it's supposed
>     to do (making sure a function to be called when qemu_devices_reset()
>     is called), if we know qemu_devices_reset() is never called.
> 
> 
>>
>> Andreas
>>
>>>  - This is based on afaerber's qom-cpu branch, that has some header cleanup
>>>    changes. You can get the complete series in a git tree at:
>>>    https://github.com/ehabkost/qemu-hacks/tree/cpu_qdev.v9
>>>    git://github.com/ehabkost/qemu-hacks.git cpu_qdev.v9
>>>
>>> v8:
>>>  - Use a simpler copyright header on qdev-properties-system.c
>>>  - Use the new libqemustub.a mechanism instead of the (now exting)
>>>    QEMU_WEAK_ALIAS mechanism
>>>  - Move the reset-handler registration code to a new hw/reset.c file
>>>
>>> v7:
>>>  - Use the new QEMU_WEAK_ALIAS mechanism instead of the (now extinct)
>>>    GCC_WEAK attribute (patches 20 and 21)
>>>
>>> v6:
>>>  - Simple rebase against latest qemu.git master
>>>  - Patch 13: some new typedefs were added and others were removed
>>>  - Patch 19: trivial rebase
>>> v5:
>>>  - Tons of header cleanups just to eliminate qlist.h <-> cpu-common.h 
>>> circular
>>>    dependency (patches 1-17)
>>>  - Add copyright/license information to qdev-properties.c (patch 17)
>>>  - Add copyright/license information to qdev-properties-system.c (patch 22)
>>>  - use error_report()+abort() instead of hw_error() on qdev.c (patch 18)
>>>  - Move qemu_[un]register_reset() and qemu_devices_reset() to qdev-core.c
>>>    (patch 19)
>>>  - Make vmstate_[un]register() weak stubs, instead of a new function (patch 
>>> 20)
>>>  - Make sysbus_get_default() weak stub, instead of new qbus reset 
>>> (un)register
>>>    functions (patch 21)
>>>  - Eliminate qdev-system.c (all code is kept on qdev.c, now) (patch 22)
>>> v4:
>>>   - Add GCC_WEAK_DECL to functions that have GCC_WEAK versions
>>>   - Updated the qdev_init_gpio_in() code on qdev-system.c to current version
>>>   - Patch description updates (moved changelog below "---" and/or move info
>>>     about changes made by different authors between SoB lines)
>>> v3 (submitted by Igor):
>>>   - rebased on top of 8b4a3df (today's master)
>>>   - slight code reshuffling in (see commit's changelog)
>>>      "qdev: separate core from the code used only by qemu-system-*"
>>>      "move qemu_irq typedef out of cpu-common.h"
>>>   - commit messages cleanup
>>> v2:
>>>   Removes the CONFIG_USER_ONLY ifdefs, and use weak symbols to move
>>>   the vmstate and qemu_register_reset() handling to qdev-system.c

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

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