[OpenAFS] SuSE 10.1 kernel 2.6.16.13-4/64Bit compile error -
OpenAFS 1.5.2
Jeffrey Hutzelman
jhutz@cmu.edu
Wed, 12 Jul 2006 18:16:25 -0400
On Wednesday, July 12, 2006 04:39:08 PM -0400 chas williams - CONTRACTOR
<chas@cmf.nrl.navy.mil> wrote:
> In message <3C3E144B9FABEF9D167B5E4B@bistromath.pc.cs.cmu.edu>,Jeffrey
> Hutzelma n writes:
>>> while on this subject, it looks like it will be necessary to build a
>>> complete module to test for certain features. the latest bleeding edge
>>> kernel has apparently made sys_open an exported gpl symbol. so while
>>> the symbol is present, it cant be used by osi_probe since openafs is
>>> not gpl.
>>
>> That's OK; the probe code checks at runtime to see what symbols are
>> available to it. It won't be able to use the exit+open method on
>> kernels which don't export sys_open, but that's OK; it'll just try a
>> different method.
>
> so you would think, but their kung fu is stronger:
>
> ...
> CC [M]
> /scratch/chas/tmp/openafs/trunk/2.6.17/src/libafs/MODLOAD-2.6.17-MP/AFS_c
> omponent_version_number.o CC [M]
> /scratch/chas/tmp/openafs/trunk/2.6.17/src/libafs/MODLOAD-2.6.17-MP/osi_p
> robe.o LD [M]
> /scratch/chas/tmp/openafs/trunk/2.6.17/src/libafs/MODLOAD-2.6.17-MP/libaf
> s.o Building modules, stage 2.
> MODPOST
> FATAL: modpost: GPL-incompatible module libafs.ko uses GPL-only symbol
> 'sys_open'
Bastards.
Well, I guess we could LINUX_VERSION_CODE it out or something. I hate to
break things if there's some older kernel where that's the only method that
works (though I can't think of a case where exit+open is known to work and
pattern scan isn't).