[Lustre-discuss] Building 1.8.0 patchless client

Martin Pokorny mpokorny at nrao.edu
Mon May 18 16:24:59 PDT 2009


Hi all,

Between one and two years ago, I installed a Lustre filesystem on a 
development cluster to play around with. I am now at the stage where I 
want to install a Lustre filesystem on a "pre-production" cluster to do 
more meaningful tests to help determine whether Lustre will provide us 
with what we need from the cluster's file system. My plan at this point 
is to install the server nodes with the binary RPMs from Sun's download 
site, but I'd rather avoid doing that on the client nodes just yet. What 
I'd like to try is to build and install the patchless client Lustre s/w 
for the currently running kernel on those (RHEL5) nodes, that is, 
2.6.18-128.1.1.el5. I downloaded lustre-1.8.0.tar.gz from the Sun site, 
but had some trouble building the client s/w.

After running "configure --linux-src=/usr/src/linux", trying "make rpms" 
gives the following error:

In file included from 
/usr/src/redhat/BUILD/lustre-1.8.0/lustre/include/linux/lvfs.h:49,
                  from 
/usr/src/redhat/BUILD/lustre-1.8.0/lustre/include/lvfs.h:48,
                  from 
/usr/src/redhat/BUILD/lustre-1.8.0/lustre/include/obd_support.h:41,
                  from 
/usr/src/redhat/BUILD/lustre-1.8.0/lustre/include/lustre_cfg.h:207,
                  from 
/usr/src/redhat/BUILD/lustre-1.8.0/lustre/include/lustre_lib.h:47,
                  from 
/usr/src/redhat/BUILD/lustre-1.8.0/lustre/llite/lloop.c:111:
/usr/src/redhat/BUILD/lustre-1.8.0/lustre/include/linux/lustre_compat25.h:321: 
error: static declaration of 'filemap_fdatawrite_range' follows 
non-static declaration
/usr/src/linux/include/linux/fs.h:1681: error: previous declaration of 
'filemap_fdatawrite_range' was here
make[8]: *** [/usr/src/redhat/BUILD/lustre-1.8.0/lustre/lov/lov_log.o] 
Error 1

It seems that HAVE_FILEMAP_FDATAWRITE_RANGE is not defined in config.h, 
apparently because I am not building the Lustre server s/w.

What I ended up doing was to remove the conditional near line 2281 of 
aclocal.m4, and then completed the build with "make configure", 
"configure --linux-src=...", etc. Does anyone know if this will work, or 
was a risky thing to do? I know this isn't the "right thing to do", but 
I'm willing to do tests with the packages I built if there are no 
obvious reasons not to.

-- 
Martin



More information about the lustre-discuss mailing list