[openib-general] OFED 1.1 Build Issue

Moni Shoua monis at voltaire.com
Tue Oct 31 02:14:26 PST 2006


Vladimir Sokolovsky wrote:

> The alternative way to resolve this issue is the following:
> Save Modules.symvers file generated by OFED kernel modules compilation 
> (drivers/infiniband/Modules.symvers).
> It can be added to the kernel-ib-devel RPM in the next OFED release.
> Then in order to compile external module copy this Modules.symvers to 
> the directory where external module is build.
>
> Regards,
> Vladimir
>
>
> Moni Shoua wrote:
>
>> We managed to avoid rebuilding the kernel to solve this issue.
>>
>> Before building any IB dependant modules (out of OFED) it is required to
>> update the Module.symvers.
>> The new values for the symbol CRCs can be taken from the modules
>> themselves ( nm IB_MODULE |grep __crc_)
>> When Module.symvers is up-to-date, there should be no problem building
>> and installing the IB dependant modules.
>>
>> The solution step-by-step
>> 1. The procedure should run after installing the kerne-ib-devel RPM. It
>> is possible to run it in %pre section of the spec file.
>> 2. Foreach IB module (ko) which is listed in $(rpm -ql kernel-ib) - 
>>     2.1 take out the __crc_ sybbols     2.2 extract the symbol name 
>> and it's CRC value (simple parsing)
>>     2.3 add  it (or replace the existing) to Module.symvers (usually
>> under /lib/modules/$(uname -r)/build/ or /lib/modules/$(uname
>> -r)/source/ )
>> 3. Save the diff of the current Module.symvers from the original (for
>> future restore)
>> 4. When kernel-ib-devel RPM is uninstalled use the patch from (3) to
>> restore Module.symvers. This can be done in the %postun of the spec
>> file)
>>
>> I'd be glad to get comments about this.
>>
>>
>>
>>
>> -----Original Message-----
>> From: openib-general-bounces at openib.org
>> [mailto:openib-general-bounces at openib.org] On Behalf Of Tom Tucker
>> Sent: Friday, October 27, 2006 5:30 PM
>> To: openib-general
>> Subject: [openib-general] OFED 1.1 Build Issue
>>
>>
>> I've been testing some code against the OFED 1.1 release and noticed
>> that if you build anything that depends on IB (RNFS in this case) into
>> the kernel, that the OFED kit doesn't work correctly. This is because
>> the dependent modules (ib_core, etc...) get sucked into the kernel
>> automagically and will cause the subsequent modprobe of the OFED module
>> to fail.
>>
>> I don't think you can fix this without rebuilding the kernel so it
>> should probably be listed in the OFED_release_notes as a known issue.
>> Providing a mechanism to rebuild the kernel as part of the OFED install
>> would be great too, sorry if it's already there and I missed it.
>>
>> Tom
>>
>>
>> _______________________________________________
>> openib-general mailing list
>> openib-general at openib.org
>> http://openib.org/mailman/listinfo/openib-general
>>
>> To unsubscribe, please visit
>> http://openib.org/mailman/listinfo/openib-general
>>
>>
>> _______________________________________________
>> openib-general mailing list
>> openib-general at openib.org
>> http://openib.org/mailman/listinfo/openib-general
>>
>> To unsubscribe, please visit 
>> http://openib.org/mailman/listinfo/openib-general
>>   
>
>
>
We already tried to go this way and found that a local Module.symvers is 
not always generated (but we might have missed something though).
I suggest that you check that this alternative way works under all OSs 
compilation (SuSE and RedHat to be precise)...

BTW, Why not updating the kernel Module.symvers when kernel-ib-devel is 
installed? This will free the developer from copying it to his/hers 
private directory.





More information about the general mailing list