|
From: | Avi Kivity |
Subject: | Re: [Qemu-devel] [RFC v4 00/58] Memory API |
Date: | Tue, 19 Jul 2011 16:27:38 +0300 |
User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110428 Fedora/3.1.10-1.fc15 Thunderbird/3.1.10 |
On 07/19/2011 04:09 PM, Anthony Liguori wrote:
On 07/17/2011 06:13 AM, Avi Kivity wrote:New in this version: MemoryRegionOps gained .old_mmio and .old_portio members, which allowreusing old-style callbacks with the new API. All uses were converted,except for eepro100.c, which uses the same MemoryRegionOps for both portio and mmio. Some intermediate patches do introduce dispatching callbacks, but they are removed later. Caveats: - some devices still grab a global memory region instead of inheriting it from their bus. Seen in the code as #include "exec-memory.h"Could you write up a quick document on how to use this new api for docs/?
Sure. It's pretty simple.
There's bits I don't like about the interface
Which bits are these?
but I think it's a huge improvement over what we have now so I'm inclined to commit once it includes documentation.
My problem is that to start leveraging it, everything must flow through it. There are still several hundred call sites that are unconverted.
One option is to invert the relationship between ram_addr_t and MemoryRegion - implement the former in terms of the latter. That only works for uses which don't invoke IO_MEM_UNASSIGNED or address arithmetic.
-- error compiling committee.c: too many arguments to function
[Prev in Thread] | Current Thread | [Next in Thread] |