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