[elrepo-devel] why it's not working for me?

Phil Perry phil at elrepo.org
Tue Sep 1 11:56:04 EDT 2009


Farkas Levente wrote:
> On 09/01/2009 02:34 PM, Farkas Levente wrote:
>> hi,
>> when i try to recompile kmod-w83627hf, kmod-w83627ehf or kmod-it87 it's
>> finish but my build always add and extra requires to the packages:
>> ksym(platform_device_add_data) = f6242885
>> what's the reason for this? and how can i solve it?
>> thanks in advance.
>> regards.
> 
> ok i find that it comes from redhat-rpm-config's:
> /usr/lib/rpm/redhat/find-requires.ksyms
> and that's why a modified find-requires.ksyms which delete the last two 
> lines was added to all kmods. the real question now, how can elrepo 
> build such a kmod packages in mock? i look into my mock's chroot and 
> redhat-rpm-config installed by default. so how can you avoid to add 
> these ksyms into the requires?
> 

Correct - and you've worked out the answer for yourself :)

The explanation:

In July 2007 these 3 particular drivers were converted to platform
drivers (using functions defined in <linux/platform_device.h>) in the
mainline kernel, from where the source is backported. Thus, when built
as a kABI-tracking package, they Require ksym(platform_device_add_data)
as you note. However, the current upstream el5.3 kernel doesn't have
ksym(platform_device_add_data) defined within it's ABI whitelist
(presumably because no modules within the kernel currently use this
function).

As the el5.3 kernel is unable to meet the requirement from within it's
ABI whitelist, there's no point building the package with that
requirement as it will never be met, so we don't.

As you've correctly deduced, that behaviour is determined by 
find-requires.ksyms, which we modify and build against. We don't use 
mock to build elrepo mods, but rather build on native architecture 
machines (doesn't matter whether virtual or real). If you wanted to 
build in mock then I guess you'd need to patch redhat-rpm-config 
installed in your local buildroot.




More information about the elrepo-devel mailing list