Re: [RFC: 2.6 patch] kernel/sys.c: possible cleanups

Adrian Bunk
2006-05-01T08:13:36Z

On Mon, May 01, 2006 at 12:38:33AM -0700, Andrew Morton wrote:
> Adrian Bunk <bunk@stusta.de> wrote:
>...
> > > > - remove the following unused EXPORT_SYMBOL:
> > > > - in_egroup_p
> > > > - remove the following unused EXPORT_SYMBOL_GPL's:
> > > > - kernel_restart
> > > > - kernel_halt
> > >
> > > which I will not.
> > >
> > > We have a process for the latter. And even if we ignore that process, the
> > > patch ends up sitting in -mm for ages because of the API change, along with
> > > the cleanups, which could be merged up promptly.
> >
> > The problem is that we have a lack of a process at the other end:
> >
> > There is no process to review added exports.
>
> Yes there is - I and many others frequently query them. Sure, sometimes
> stuff slips through. But it's a very very minor problem.

Linus merges dozens of git trees, and we have exactly zero process for
noticing issues like [1]. Sure, you can say "Adrian will complain", but
others can complain equally when I unexport a symbol where I either
missed the in-kernel users or an in-kernel user is just about to be
submitted.

And where is a non-minor problem with unexports?

If it accidentially breaks in-kernel stuff people notice immediately,
and if it breaks external modules there is still the point that we do
not have a stable API for external modules.

And breaking external modules frequently is a _good_ thing since it
gives people them a reason for submitting their code for inclusion into
the kernel. LSM/AppArmor is an example for the benefits of threating
with immediate removal (no matter whether the result will be merging
AppArmor or a more secure implementation of AppArmor, or whatever else).

cu
Adrian

[1] http://lkml.org/lkml/2006/3/18/127

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed