[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC v1 08/22] memory: provide defaults for MemoryListe
From: |
Avi Kivity |
Subject: |
Re: [Qemu-devel] [RFC v1 08/22] memory: provide defaults for MemoryListener operations |
Date: |
Thu, 04 Oct 2012 16:29:50 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20120911 Thunderbird/15.0.1 |
On 10/04/2012 04:05 PM, Anthony Liguori wrote:
> Avi Kivity <address@hidden> writes:
>
>> Many listeners don't need to respond to all MemoryListener callbacks;
>> provide suitable defaults instead.
>>
>> +#define MEMORY_LISTENER_DEFAULT_OPS \
>> + .begin = memory_listener_default_global, \
>> + .commit = memory_listener_default_global, \
>> + .region_add = memory_listener_default_section, \
>> + .region_del = memory_listener_default_section, \
>> + .region_nop = memory_listener_default_section, \
>> + .log_start = memory_listener_default_section, \
>> + .log_stop = memory_listener_default_section, \
>> + .log_sync = memory_listener_default_section, \
>> + .log_global_start = memory_listener_default_global, \
>> + .log_global_stop = memory_listener_default_global, \
>> + .eventfd_add = memory_listener_default_eventfd, \
>> + .eventfd_del = memory_listener_default_eventfd \
>> +
>> +void memory_listener_default_global(MemoryListener *listener);
>> +void memory_listener_default_section(MemoryListener *listener,
>> + MemoryRegionSection *section);
>> +void memory_listener_default_eventfd(MemoryListener *listener,
>> + MemoryRegionSection *section,
>> + bool match_data, uint64_t data,
>> EventNotifier *e);
>> +
>> /**
>> * memory_region_init: Initialize a memory region
>> *
>
> I think it'd be nicer to check for NULL when invoking the functions in
> the memory core.
>
> Then you avoid the exported stub functions entirely.
Yes, that's the common style, but I happen not to like the extra check,
both from a performance point of view (doesn't apply here of course) and
from a readability point of view.
--
error compiling committee.c: too many arguments to function
- Re: [Qemu-devel] [RFC v1 03/22] kvm: use separate MemoryListeners for memory and I/O, (continued)
[Qemu-devel] [RFC v1 13/22] xen: use new MEMORY_LISTENER_DEFAULT_OPS, Avi Kivity, 2012/10/03
[Qemu-devel] [RFC v1 10/22] vfio: use new MEMORY_LISTENER_DEFAULT_OPS, Avi Kivity, 2012/10/03
[Qemu-devel] [RFC v1 11/22] xen_pt: use new MEMORY_LISTENER_DEFAULT_OPS, Avi Kivity, 2012/10/03
[Qemu-devel] [RFC v1 12/22] kvm: use new MEMORY_LISTENER_DEFAULT_OPS, Avi Kivity, 2012/10/03
[Qemu-devel] [RFC v1 15/22] memory: move address_space_memory and address_space_io out of memory core, Avi Kivity, 2012/10/03