Re: 2.6.10-mm1, class_simple_* and GPL addition

From: Dmitry Torokhov
Date: Wed Oct 27 2004 - 20:14:53 EST


On Wednesday 27 October 2004 10:37 am, Greg KH wrote:
> On Wed, Oct 27, 2004 at 03:50:52PM +0200, Norbert Preining wrote:
> > Hi Andrew!
> >
> > The change from
> > EXPORT_SYMBOL
> > to
> > EXPORT_SYMBOL_GPL
> > for class_simple_* makes the nvidia module useless as it uses several:
> > nvidia: Unknown symbol class_simple_device_add
> > nvidia: Unknown symbol class_simple_destroy
> > nvidia: Unknown symbol class_simple_device_remove
> > nvidia: Unknown symbol class_simple_create
>
> I think these changes are only in the Gentoo modified version of the
> driver, right? I don't think that nvidia wrote the driver that way.
>
> > I don't want to start a flame war and long discussion, just want to ask
> > wether this change (to _GPL) was intended,
>
> Yes it was.
>

I wonder what are the technical merits of this change. I certainly agree
with Pat's assertion that the rest of driver model functions should be used
by in-kernel subsystems (such as PCI, USB, serio etc) only and not exposed
to the outside world. This will allow freely fix/enhance the core without
fear of silently breaking external modules.

But class_simple is itself a limited and contained interface with well-
defined semantic. Which I believe was advertised aat one time as a wrapper
for the objects wanting to plug into hotplug/udev model but either living
outside of established subsystems or within subsystem not yet ready to
implement proper refcounting needed for full-blown sysfs integration.

I think it is a mistake to convert class_simple into GPL-only export.

--
Dmitry
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/