Re: [PATCH v2 00/17] [uq/master] Prepare for more qemu-kvm merging

Jan Kiszka
2011-01-04T08:42:06Z

[-- Attachment #1: Type: text/plain, Size: 1534 bytes --]

Am 03.01.2011 17:09, Avi Kivity wrote:
> On 01/03/2011 10:32 AM, Jan Kiszka wrote:
>> All previously sent patches against current uq combined, some smaller
>> tweaks applied, and 4 new patches added. Major news is support for
>> using up to 16M BIOSes and optional code dump for cpu_dump_state. Those
>> features are already present qemu-kvm but were reworked to provide
>> cleaner upstream versions.
>>
>
> Looks reasonable overall.
>
>> Based on this series, I've an experimental tree here where I eliminated
>> another 1500 LOC from qemu-kvm code. Specifically, that tree sets an end
>> to duplicate KVM and VCPU initialization functions, KVMState copies, and
>> redundant state saving/loading functions. Will be rolled out after some
>> more review and testing.
>
> Sounds really frightening... this glue code is a real breeding ground
> for subtle bugs and merge problems.

...and that's why we are more than late with unifying it into a single
code base.

After that upcoming cleanup round we will have three major remaining to-dos:
- in-kernel irqchip and PIT support with the subtopics
- VAPIC/TPR-patching support
- IRQ routing
- PCI device assignment
- VCPU & IO-thread execution model

While I'm not that concerned about the first two as they basically add
code that "just" needs to be refactored, the last one is worrying me. We
need to find a smart way to morph one into the other. The code is full
of subtle differences and is likely quite performance sensitive.

Jan

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 259 bytes --]