Messages in this thread | | | Date | Mon, 22 Mar 2010 21:46:50 +0100 | From | Ingo Molnar <> | Subject | Re: [RFC] Unify KVM kernel-space and user-space code into a single project |
| |
* Avi Kivity <avi@redhat.com> wrote:
> On 03/22/2010 09:27 PM, Ingo Molnar wrote: > > > >> If your position basically boils down to, we can't trust userspace > >> and we can always trust the kernel, I want to eliminate any > >> userspace path, then I can't really help you out. > > > > Why would you want to 'help me out'? I can tell a good solution from a bad > > one just fine. > > You are basically making a kernel implementation a requirement, instead of > something that follows from the requirement.
No, i'm not.
> > You should instead read the long list of disadvantages above, invert them > > and list then as advantages for the kernel-based vcpu enumeration > > solution, apply common sense and go admit to yourself that indeed in this > > situation a kernel provided enumeration of vcpu contexts is the most > > robust solution. > > Having qemu enumerate guests one way or another is not a good idea IMO since > it is focused on one guest and doesn't have a system-wide entity. A > userspace system-wide entity will work just as well as kernel > implementation, without its disadvantages.
A system-wide user-space entity only solves one problem out of the 4 i listed, still leaving the other 3:
- Those special files can get corrupted, mis-setup, get out of sync, or can be hard to discover.
- Apps might start KVM vcpu instances without adhering to the system-wide access method.
- There is no guarantee for the system-wide process to reply to a request - while the kernel can always guarantee an enumeration result. I dont want 'perf kvm' to hang or misbehave just because the system-wide entity has hung.
Really, i think i have to give up and not try to convince you guys about this anymore - i dont think you are arguing constructively anymore and i dont want yet another pointless flamewar about this.
Please consider 'perf kvm' scrapped indefinitely, due to lack of robust KVM instrumentation features: due to lack of robust+universal vcpu/guest enumeration and due to lack of robust+universal symbol access on the KVM side. It was a really promising feature IMO and i invested two days of arguments into it trying to find a workable solution, but it was not to be.
Thanks,
Ingo
| |