On Fri, Jul 17, 2009 at 06:57:24PM +0200, Pritesh Kothari wrote: > Hi All, > > While reconnecting to vbox:///session, since the VBoxCGlueInit() is not > intialized, the g_pfnGetFunctions is NULL and thus reconnection fails with > SEGV. Fixed this in the patch below. I don't think this is quite correct. We call VBoxCGlueInit() in the vboxRegister() function, which is run when libvirt first initializes the whole library. The real bug is the vboxClose() method which calls vboxUninitialize() which is then calling VBoxCGlueTerm(). So if you have many virConectPtr objects open, the first one you call virConnectClose on will shutdown the entire vbox library, breaking all the other virConnectPtr instances you have active. IMHO, we should simply delete VBoxCGlueTerm() completely. Regards, Daniel > commit 9df6333b50a8b512b30ec5bbbfd01a2eec6cbf8b > Author: Pritesh Kothari <Pritesh.Kothari@xxxxxxx> > Date: Fri Jul 17 18:45:57 2009 +0200 > > libvirt: fixed the intialization routine > > diff --git a/src/vbox/vbox_tmpl.c b/src/vbox/vbox_tmpl.c > index 74c432e..2ccfbd8 100644 > --- a/src/vbox/vbox_tmpl.c > +++ b/src/vbox/vbox_tmpl.c > @@ -310,6 +310,12 @@ no_memory: > } > > static int vboxInitialize(virConnectPtr conn, vboxGlobalData *data) { > + > + /* Intialize the Glue Library else you can't get to the g_pfnGetFunctions > + * function which is needed to fetch the right version of driver */ > + if ((VBoxCGlueInit() < 0) || (g_pfnGetFunctions == NULL)) > + goto cleanup; > + > /* Get the API table for out version, g_pVBoxFuncs is for the oldest > version of the API that we support so we cannot use that. */ > data->pFuncs = g_pfnGetFunctions(VBOX_XPCOMC_VERSION); > -- > Libvir-list mailing list > Libvir-list@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/libvir-list -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list