On Tue, May 07, 2013 at 06:16:09PM +0300, Gleb Natapov wrote:
> On Tue, May 07, 2013 at 06:11:33PM +0300, Michael S. Tsirkin wrote:
> > On Tue, May 07, 2013 at 11:05:12PM +0800, Asias He wrote:
> > > On Tue, May 07, 2013 at 05:59:38PM +0300, Michael S. Tsirkin wrote:
> > > > On Tue, May 07, 2013 at 10:54:16PM +0800, Asias He wrote:
> > > > > In commit a0f155e96 'KVM: Initialize irqfd from kvm_init()', when
> > > > > kvm_init() is called the second time (e.g kvm-amd.ko and 
> > > > > kvm-intel.ko),
> > > > > kvm_arch_init() will fail with -EEXIST,
> > > > 
> > > > Wow. Is this intentional?
> > > 
> > > I think it is. You can not be amd and intel at the same time ;-)
> > > 
> > > kvm_arch_init
> > > 
> > >     if (kvm_x86_ops) {
> > >             printk(KERN_ERR "kvm: already loaded the other module\n");
> > >             r = -EEXIST;
> > >             goto out;
> > >     }       
> > > 
> > 
> > Interesting. So we check it with
> >     if (kvm_x86_ops)
> >  and later we do
> >         kvm_x86_ops = ops;
> > 
> > 
> > This looks racy - or is something serializing
> > module loading?
> > 
> I think module loading is serialized.
>

Hmm then I don't understand ... both kvm-intel
and kvm-amd *can't* be loaded at the same time:
module loading fails for one of them.

 
> --
>                       Gleb.
_______________________________________________
Virtualization mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to