On 08/23/2012 10:49 AM, Pandarathil, Vijaymohan R wrote: > Hi, > > I am looking for the recommended approach for accessing KVM driver data from other kernel components. In my case, I need to set some global variable/state in KVM driver from one of the NMI handlers. I see that using kvm_x86_ops is one option. I can define a new function as part of kvm_x86_ops and invoke that function from the NMI handler as below. > > nmi_handler() { > > ... > If (kvm_x86_ops) { > kvm_x86_ops->new_fn(); > > } > > after adding new_func() to struct kvm_x86_ops. > > Is this the right approach ? No, kvm_x86_ops is not available to the core kernel code. > Or is there some other existing mechanism ? Is KVM driver always loaded ? No. > I am fairly new to KVM and so any guidance is very much appreciated. Do something like void nmi_xyz_register(struct nmi_xyz *x); void nmi_xyz_unregister(struct nmi_xyz *x); struct nmi_xyz { void (*nmi)(void); }; then add code to kvm to use nmi_xyz (whatever that is). -- error compiling committee.c: too many arguments to function -- 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