[PATCH -v2 2/2] x86: Make Linux guest support optional

Dmitry Torokhov dmitry.torokhov at gmail.com
Fri Jan 25 18:42:32 UTC 2013

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 at suse.de>
> > > 
> > > 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.



More information about the devel mailing list