[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 3/5] memory: Flush coalesced MMIO on mapping and
From: |
Avi Kivity |
Subject: |
Re: [Qemu-devel] [PATCH 3/5] memory: Flush coalesced MMIO on mapping and state changes |
Date: |
Mon, 25 Jun 2012 14:01:37 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120605 Thunderbird/13.0 |
On 06/25/2012 01:26 PM, Jan Kiszka wrote:
> On 2012-06-25 12:15, Jan Kiszka wrote:
>> On 2012-06-25 10:57, Avi Kivity wrote:
>>> The repetitiveness of this code suggests a different way of doing this:
>>> make every API call be its own subtransaction and perform the flush in
>>> memory_region_begin_transaction() (maybe that's the answer to my
>>> question above).
>>
>> So you want me to wrap the core of those services in
>> begin/commit_transaction instead? Just to be sure I got the idea.
>
> What we would lose this way (transaction_commit) is the ability to skip
> updates on !mr->enabled.
We could have an internal memory_region_begin_transaction_mr() which
checks mr->enabled and notes it if its clear (but anything else would
have to undo this). I don't think it's worth it, let's lose the
optimization and see if it shows up anywhere.
--
error compiling committee.c: too many arguments to function
[Qemu-devel] [PATCH 1/5] i82378: Remove bogus MMIO coalescing, Jan Kiszka, 2012/06/25