On Fri, Jan 25, 2013 at 07:32:13PM +0100, Borislav Petkov wrote: > On Fri, Jan 25, 2013 at 10:12:51AM -0800, Dmitry Torokhov wrote: > > Hi Borislav, > > > > On Fri, Jan 25, 2013 at 06:59:37PM +0100, Borislav Petkov wrote: > > > From: Borislav Petkov <bp@xxxxxxx> > > > > > > Put all config options needed to run Linux as a guest behind a > > > CONFIG_HYPERVISOR_GUEST menu so that they don't get built-in by > > > default but selected by the user. Also, move x86_hyper into an > > > unconditionally-built compilation unit because it is exported with the > > > non-GPL flavour and we can't know whatever uses it on the outside. > > > > I am confused by this statement... How can EXPORT_SYMBOL() vs > > EXPORT_SYMBOL_GPL() help you determining if it is used out of tree or > > not? > > Maybe this wasn't formulated clear enough - I wanted to say that with > the !GPL flavor, any code (proprietary included) can link to those > symbols and we cannot know who uses it and if we hide that symbol, > someone would probably come crying. > > Because if we could, I would've done trivial accessor functions which > would return NULL when CONFIG_HYPERVISOR_GUEST is not set so that those > cases build and boot fine, and we wouldn't have the need to have this > symbol always present (like is the case now and I had to move it to > setup.c). > > If it were _GPL, we would've fixed all its users to switch to the > accessors. > > Makes more sense? No, not really as EXPORT_SYMBOL_GPL() in no way implies that the code using it lives in the mainline. Also, EXPORT_SYMBOL() does not imply that it forms an ABI and can't be changed ever. Thanks. -- Dmitry _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel