On Sun, Dec 04, 2011 at 07:53:37PM +0800, Liu ping fan wrote: > On Sat, Dec 3, 2011 at 2:26 AM, Jan Kiszka <jan.kiszka@xxxxxxxxxxx> wrote: > > On 2011-12-02 07:26, Liu Ping Fan wrote: > >> From: Liu Ping Fan <pingfank@xxxxxxxxxxxxxxxxxx> > >> > >> Currently, vcpu can be destructed only when kvm instance destroyed. > >> Change this to vcpu's destruction taken when its refcnt is zero, > >> and then vcpu MUST and CAN be destroyed before kvm's destroy. > > > > I'm lacking the big picture yet (would be good to have in the change log > > - at least I'm too lazy to read the code): > > > > What increments the refcnt, what decrements it again? IOW, how does user > > space controls the life-cycle of a vcpu after your changes? > > > In local APIC mode, delivering IPI to target APIC, target's refcnt is > incremented, and decremented when finished. At other times, using RCU to Why is this needed? > protect the vcpu's reference from its destruction. > > If kvm_vcpu is not needed by guest, user space can close the > kvm_vcpu's file > descriptors, and then,if the kvm_vcpu has crossed the period of local > APCI mode's reference,it will be destroyed. > > Regards, > ping fan > > > Thanks, > > Jan > > > > -- > > Siemens AG, Corporate Technology, CT T DE IT 1 > > Corporate Competence Center Embedded Linux -- Gleb. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html