[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 0/7] kvm: Get coalesced MMIO flushing out of
From: |
Avi Kivity |
Subject: |
Re: [Qemu-devel] [PATCH v2 0/7] kvm: Get coalesced MMIO flushing out of the hot-path |
Date: |
Thu, 28 Jun 2012 19:09:50 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120605 Thunderbird/13.0 |
On 06/27/2012 07:27 PM, Jan Kiszka wrote:
> Changes in v2:
> - added memory_region_clear_flush_coalesced
> - call memory_region_clear_flush_coalesced from
> memory_region_clear_coalescing
> - wrap all region manipulations via memory_region_transaction_begin/
> commit internally
> - flush coalesced MMIO only on memory_region_transaction_begin
>
> Original description:
>
> We currently flush the coalesced MMIO buffer on every vmexit to
> userspace. KVM only provides a single buffer per VM, so a central lock
> is required to read from it. This is a contention point given a large
> enough VCPU set. Moreover, we need to hold the BQL while replaying the
> queued requests, probably for a long time until there is more fine
> grained locking available. Good reasons to overcome the unconditional
> flush.
>
> The series achieves this by flushing only on selected memory region
> accesses, either generically via the memory access dispatcher or
> directly on certain VGA PIO accesses that are not yet fully converted.
> Another reason to flush are remappings or other relevant region state
> changes.
Looks good; please see minor comment on patch 2.
--
error compiling committee.c: too many arguments to function
- [Qemu-devel] [PATCH v2 0/7] kvm: Get coalesced MMIO flushing out of the hot-path, Jan Kiszka, 2012/06/27
- [Qemu-devel] [PATCH v2 1/7] i82378: Remove bogus MMIO coalescing, Jan Kiszka, 2012/06/27
- [Qemu-devel] [PATCH v2 2/7] memory: Flush coalesced MMIO on selected region access, Jan Kiszka, 2012/06/27
- [Qemu-devel] [PATCH v2 6/7] VGA: Flush coalesced MMIO on related MMIO/PIO accesses, Jan Kiszka, 2012/06/27
- [Qemu-devel] [PATCH v2 5/7] memory: Flush coalesced MMIO on mapping and state changes, Jan Kiszka, 2012/06/27
- [Qemu-devel] [PATCH v2 4/7] memory: Fold memory_region_update_topology into memory_region_transaction_commit, Jan Kiszka, 2012/06/27
- [Qemu-devel] [PATCH v2 3/7] memory: Use transaction_begin/commit also for single-step operations, Jan Kiszka, 2012/06/27
- [Qemu-devel] [PATCH v2 7/7] kvm: Stop flushing coalesced MMIO on vmexit, Jan Kiszka, 2012/06/27
- Re: [Qemu-devel] [PATCH v2 0/7] kvm: Get coalesced MMIO flushing out of the hot-path,
Avi Kivity <=