Re: [PATCH 1/6] Suppress A.OUT library support if !CONFIG_BINFMT_AOUT [try #5]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> My thoughts go more into the direction that we have hundreds of similar
> cases where e.g. a VFS function might currently only by used by OCFS2
> and therefore be dead code for most users, and the only maintainable
> solution will be to solve these at the compiler and/or linker level.

 -ffunction-sections can mostly do it, but only for non modular kernels

One problem is that EXPORT_SYMBOL always creates a reference to the function
even when nothing uses it.

We would need a weak EXPORT_SYMBOL and some way to check references
over main kernel and modules. I suppose it could be done as part of modpost
and then generating a custom linker script that only includes the function
sections referenced by anybody. But to make this work it would require
putting all the EXPORT_SYMBOLs into own sections too, but I suppose
that would be possible.

In the past we had trouble that the explicit linker scripts mentioning every 
function section made the linker very slow, but perhaps that's fixed now.

The whole thing would likely made a lot of out of tree modules unhappy
though. Distribution kernels might need to turn it off generally because of 
that. 

The question is if it would be still have a large enough user base without the 
distribution kernels. If it would be only used by a few users I don't think 
the maintenance overhead would be worth it.

> Andi scheduled it for removal, and I don't know whether he already has a
> patch.

I don't have a patch yet, but I can submit one for -mm* if it's helpful.
It's not very difficult.

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

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux