[Lustre-discuss] Can Lustre be built on old IBM pSeries platform?
Andreas Dilger
adilger at sun.com
Fri Mar 7 16:06:46 PST 2008
On Mar 07, 2008 14:57 +0300, Grigory Shamov wrote:
> After applying patch 14844 as suggested by email I got from Oleg Drokin
> I've been able to compile it further. (Btw, there are many quite large
> patches, and quite recent patches -- do I need them all, and if yes, in
> which order to apply them?)
>
> But I hit the problem (with SLES kernel, 2.6.5) about "#error rdonly
> patchset must be updated [cfs bz11248]" at lvfs_linux.c" you already
> answered to another persson in lustre-discuss. Following your maillist
> message as above,
> ================
>>> Please try changing lvfs_linux.c:465 as below. This should work,
> though I haven't tried it myself. This part of the code isn't used on a
> client.
>>> -#ifdef LUSTRE_KERNEL_VERSION
>>> -#ifdef HAVE_CLEAR_RDONLY_ON_PUT
>>> -#error rdonly patchset must be updated [cfs bz11248]
>>> -#endif
>>> +#ifdef HAVE_CLEAR_RDONLY_ON_PUT
> ================
>
> I've been able to compile rather far, but hit the same error:
>
>
> CC [M] /root/lustre-1.6.4.2/lustre/obdclass/llog-test.o
> CC [M] /root/lustre-1.6.4.2/lustre/obdclass/linux/linux-module.o
> /root/lustre-1.6.4.2/lustre/obdclass/linux/linux-module.c:447:3: #error
> Cannot continue: Your Lustre kernel patch is older than the sources
> make[6]: *** [/root/lustre-1.6.4.2/lustre/obdclass/linux/linux-module.o]
> Error 1
> make[5]: *** [/root/lustre-1.6.4.2/lustre/obdclass] Error 2
> make[4]: *** [/root/lustre-1.6.4.2/lustre] Error 2
> make[3]: *** [_module_/root/lustre-1.6.4.2] Error 2
> make[3]: Leaving directory `/tmp/linux-2.6.5-7.286'
> make[2]: *** [modules] Error 2
> make[2]: Leaving directory `/root/lustre-1.6.4.2'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/root/lustre-1.6.4.2'
> make: *** [all] Error 2
> ========================================
You should apply the "2.6-suse-newer.series" patch series to your
SLES9 kernel. It fixes a bunch of bugs in the SLES9 kernel.
> I've also tried to build patched Lustre with the RHEL kernel 2.8.16 -- on
> both SLES9 and YD5 distros -- it seem to compile farther but then hits some
> library problems -- missing basic objects in liblustre.
You don't need liblustre, configure with --disable-liblustre. Using
RHEL5 or SLES10 kernel is preferable to SLES9.
> make[3]: Entering directory `/root/lustre-1.6.4.2/lustre/liblustre'
> Making all in .
> make[4]: Entering directory `/root/lustre-1.6.4.2/lustre/liblustre'
> make[4]: Nothing to be done for `all-am'.
> make[4]: Leaving directory `/root/lustre-1.6.4.2/lustre/liblustre'
> Making all in tests
> make[4]: Entering directory `/root/lustre-1.6.4.2/lustre/liblustre/tests'
> gcc -m64 -g -Wall -fPIC -g -O2 -o sanity sanity-sanity.o libtestcommon.a
> ../../../lustre/utils/liblustreapi.a ../../../lustre/liblustre/liblustre.a
> -lpthread
> /usr/lib/gcc-lib/powerpc-suse-linux/3.3.3/../../../../powerpc-suse-linux/bin/ld:
> warning: powerpc:common architecture of input file
> `../../../lustre/liblustre/liblustre.a(inode.o)' is incompatible with
> powerpc:common64 output
> /usr/lib/gcc-lib/powerpc-suse-linux/3.3.3/../../../../powerpc-suse-linux/bin/ld:
> warning: powerpc:common architecture of input file
> `../../../lustre/liblustre/liblustre.a(dev.o)' is incompatible with
> powerpc:common64 output
> /usr/lib/gcc-lib/powerpc-suse-linux/3.3.3/../../../../powerpc-suse-linux/bin/ld:
> can not size stub section: Bad value
> /usr/lib/gcc-lib/powerpc-suse-linux/3.3.3/../../../../lib64/crt1.o(.text+0x1c):
> In function `._start':
> ../sysdeps/powerpc/powerpc64/elf/start.S:58: undefined reference to
> `.__libc_start_main'
> sanity-sanity.o(.text+0x1c): In function `usage':
> /root/lustre-1.6.4.2/lustre/liblustre/tests/sanity.c:1384: undefined
> reference to `.printf'
> sanity-sanity.o(.text+0x2c):/root/lustre-1.6.4.2/lustre/liblustre/tests/sanity.c:1387:
> undefined reference to `.printf'
> sanity-sanity.o(.text+0x38):/root/lustre-1.6.4.2/lustre/liblustre/tests/sanity.c:1388:
> undefined reference to `.exit'
> sanity-sanity.o(.text+0xb4): In function `main':
> /root/lustre-1.6.4.2/lustre/liblustre/tests/sanity.c:1461: undefined
> reference to `.getopt_long'
> sanity-sanity.o(.text+0xf4):/root/lustre-1.6.4.2/lustre/liblustre/tests/sanity.c:1461:
> undefined reference to `.getopt_long'
> sanity-sanity.o(.text+0x108):/root/lustre-1.6.4.2/lustre/liblustre/tests/sanity.c:1465:
> undefined reference to `.getenv'
> sanity-sanity.o(.text+0x134):/root/lustre-1.6.4.2/lustre/liblustre/tests/sanity.c:1472:
> undefined reference to `.putchar'
>
> Etc., etc., many pages of it.
> ============================
>
> So, could you please advice me which patch I apply next? Sorry for rather
> unfocused message, and thank you in advance!
>
> --
> WBR, Grigory Shamov
>
> Andreas Dilger ?????:
>> On Mar 03, 2008 02:19 -0800, gas5x1 wrote:
>>> I'm trying to access my Lustre (1.6.4) filesystem from an old IBM
>>> pSeries cluster(the Linux is SLES9 for PPC64). I've built and started
>>> the patched kernel 2.6.18 and tried to compile the latest Lustre
>>> tarball, 1.6.4.2. It does configure, but dies at compile time saying
>>> following:
>>>
>>> ============
>>> CC [M] /root/lustre-1.6.4.2/lnet/klnds/socklnd/socklnd.o
>>> In file included from /root/lustre-1.6.4.2/lnet/klnds/socklnd/socklnd.h:34,
>>> from /root/lustre-1.6.4.2/lnet/klnds/socklnd/socklnd.c:26:
>>> /root/lustre-1.6.4.2/lnet/klnds/socklnd/socklnd_lib-linux.h:37:25: asm/segment.h: No such file or directory
>>> In file included from /root/lustre-1.6.4.2/lnet/include/libcfs/kp30.h:14,
>>> from /root/lustre-1.6.4.2/lnet/klnds/socklnd/socklnd_lib-linux.h:44,
>>> from /root/lustre-1.6.4.2/lnet/klnds/socklnd/socklnd.h:34,
>>> from /root/lustre-1.6.4.2/lnet/klnds/socklnd/socklnd.c:26:
>>> /root/lustre-1.6.4.2/lnet/include/libcfs/linux/kp30.h:26:26: asm/
>>> segment.h: No such file or directory
>>> make[7]: *** [/root/lustre-1.6.4.2/lnet/klnds/socklnd/socklnd.o] Error 1
>>>
>>> ============
>>>
>>> Could you please advice me whether there is a possibility to build
>>> Listre on PPC64, and if yes how to workaround the compile problems?
>>> Thank you very much in advance!
>>
>> Please see bug 14752, which tracks a number of issues related to Lustre
>> building on PPC. The problem you report above is fixed in bug 14844
>> already, and there are some others (e.g. bug 14845) that have patches
>> and others that do not.
>>
>> Feedback here, or in the bugs themselves, is welcomed as our ability
>> to test on PPC hardware is very limited.
>>
>> Cheers, Andreas
>> --
>> Andreas Dilger
>> Sr. Staff Engineer, Lustre Group
>> Sun Microsystems of Canada, Inc.
>>
>>
>
>
Cheers, Andreas
--
Andreas Dilger
Sr. Staff Engineer, Lustre Group
Sun Microsystems of Canada, Inc.
More information about the lustre-discuss
mailing list