[CentOS-devel] CentOS plus kernel-devel x86_64 with incomplete Module.symvers?

Sun Feb 26 17:13:12 UTC 2012
Thomas Jacob <jacob at internet24.de>

Hello list,

While working on building a driver update module RPM for CentOS 6 x86_64
I noticed that that the Module.symvers file included in the non-debug kernel-devels
for the latest CentOS-Plus x86_64 kernels seems to be much shorter than that
for the debug version and also than both version for the i686 architecture 

$ awk '{print $4;}' /usr/src/kernels/2.6.32-220.4.2.el6.i686/Module.symvers | sort | uniq -c
   6124 EXPORT_SYMBOL
   3706 EXPORT_SYMBOL_GPL

$ awk '{print $4;}' /usr/src/kernels/2.6.32-220.4.2.el6.i686.debug/Module.symvers | sort | uniq -c
   6177 EXPORT_SYMBOL
   3734 EXPORT_SYMBOL_GPL

$ awk '{print $4;}' /usr/src/kernels/2.6.32-220.4.2.el6.x86_64/Module.symvers | sort | uniq -c
   *2716 EXPORT_SYMBOL*
   *1957 EXPORT_SYMBOL_GPL*

$ awk '{print $4;}' /usr/src/kernels/2.6.32-220.4.2.el6.x86_64.debug/Module.symvers | sort | uniq -c
   6147 EXPORT_SYMBOL
   3916 EXPORT_SYMBOL_GPL

This prevents the find  find-requires.ksyms script (part of the %kernel_module_package utility set)
from creating KABI dependencies properly on x86_64, for kernel module packages build according RHEL driver
update program (i.e. kmod-* package), in the sense that they are build without any KABI-requires
in the resulting kmod-RPM.

The standard CentOS kernel-devel (presumably RHEL upstream?) however, contains
similar numbers of symbols in Module.symvers also in the x86_64 architecture:

$ awk '{print $4;}' /usr/src/kernels/2.6.32-220.el6.i686/Module.symvers | sort | uniq -c
   6119 EXPORT_SYMBOL
   3706 EXPORT_SYMBOL_GPL

$ awk '{print $4;}' /usr/src/kernels/2.6.32-220.el6.x86_64/Module.symvers | sort | uniq -c
   6089 EXPORT_SYMBOL
   3888 EXPORT_SYMBOL_GPL

Could anyone confirm whether or not this is by design? Or should I report this
as a bug?

         TIA & Regards,
              Thomas