mbox series

[v1,0/6] QEMU: kvm: cleanup kvm_slot handling

Message ID 20170911174933.20789-1-david@redhat.com
Headers show
Series QEMU: kvm: cleanup kvm_slot handling | expand

Message

David Hildenbrand Sept. 11, 2017, 5:49 p.m. UTC
We can heavily simplify the kvm_slot code. Flatview will make sure that we
don't have to deal with overlapping slots. E.g. when a memory section is
resized, we are first notified about the removal and then about the new
memory section.

So basically, we can directly always map one memory section to one
kvm slot (if the fixed up size is > 0).


RFC -> v1:
- minor changes to avoid changing indentation, therefore making it easier
  to review


David Hildenbrand (6):
  kvm: require JOIN_MEMORY_REGIONS_WORKS
  kvm: factor out alignment of memory section
  kvm: use start + size for memory ranges
  kvm: we never have overlapping slots in kvm_set_phys_mem()
  kvm: kvm_log_start/stop are only called with known sections
  kvm: kvm_log_sync() is only called with known memory sections

 accel/kvm/kvm-all.c | 235 +++++++++++++++-------------------------------------
 1 file changed, 68 insertions(+), 167 deletions(-)

Comments

Paolo Bonzini Sept. 12, 2017, 7:39 a.m. UTC | #1
On 11/09/2017 19:49, David Hildenbrand wrote:
> We can heavily simplify the kvm_slot code. Flatview will make sure that we
> don't have to deal with overlapping slots. E.g. when a memory section is
> resized, we are first notified about the removal and then about the new
> memory section.
> 
> So basically, we can directly always map one memory section to one
> kvm slot (if the fixed up size is > 0).
> 
> 
> RFC -> v1:
> - minor changes to avoid changing indentation, therefore making it easier
>   to review

Queued, thanks!

Paolo

> 
> David Hildenbrand (6):
>   kvm: require JOIN_MEMORY_REGIONS_WORKS
>   kvm: factor out alignment of memory section
>   kvm: use start + size for memory ranges
>   kvm: we never have overlapping slots in kvm_set_phys_mem()
>   kvm: kvm_log_start/stop are only called with known sections
>   kvm: kvm_log_sync() is only called with known memory sections
> 
>  accel/kvm/kvm-all.c | 235 +++++++++++++++-------------------------------------
>  1 file changed, 68 insertions(+), 167 deletions(-)
>