[Linux-cluster] GFS and vanilla kernel

Matthew B. Brookover mbrookov at mines.edu
Mon Dec 13 17:09:48 UTC 2004


I have had successful builds and able to bring up a cluster on Fedora
core 3, GCC 3.4.2 and SUSE 9.1, GCC 3.3.3.  Both distributions ship with
a 2.6 kernel and I have used linux kernel 2.6.7, 2.6.8, and 2.6.9 on
both distributions.  I suspect that GFS can be made to run on any
distribution that has the 2.6 kernel.

You might try setting an include path for configure:
export CFLAGS='-I/<PATHTOYOURSOURCE>/cluster/build/incdir/'

I am not sure about RedHat 7.3 support for GFS.  I do know that a number
of packages that ship with RedHat 7.3 need updated to run a 2.6.x
kernel.  I doubt that these would keep the kernel from compiling.  Check
linux-2.6.9/documentation/changes for more info on what versions of each
tool are needed for the kernel.

Matt

On Mon, 2004-12-13 at 08:52, Anatoly Pugachev wrote:

> On Wed, Dec 08, 2004 at 10:32:33AM -0600, Michael Conrad Tadpol Tilstra wrote:
> > On Wed, Dec 08, 2004 at 08:49:47AM -0700, Matthew B. Brookover wrote:
> > > On Wed, 2004-12-08 at 07:19, Graham Wood wrote:
> > > > On Wed, Dec 08, 2004 at 04:33:12PM +0300, Anatoly Pugachev wrote:
> > > > > Hi
> > > > > help.  i'm stuck on the first stage compiling kernel.
> > > > Ahh - my fault.  I should have pointed out that patching the kernel
> > > > isn't necessarily going 
> > > > to work at the moment - according to someone on the list a few weeks
> > > > back, the patches there 
> > > > are not necessarily kept up to date with the code in the module form
> > > 
> > > It seems that there is some conflicting information.  Patching the
> > > kernel is necessary.  Without the patches you will get errors like:
> > > 
> > > FATAL: Error inserting gfs (/lib/modules/2.6.9/kernel/fs/gfs/gfs.ko):
> > > Unknown symbol in module, or unknown parameter (see dmesg)
> > > 
> > > gfs: no version for "lm_mount" found: kernel tainted.
> > > 
> > > gfs: Unknown symbol panic_on_oops" errors in the logs.
> > > 
> > > The patches for the 2.6.9 kernel include the panic_on_oops symbol as
> > > well as others.
> > 
> > There is now a patch that is required.  It wasn't there before.  All
> > this patch does is export the panic_on_oops symbol.  
> > cluster/gfs-kernel/patches/2.6.9/00006.patch
> > 
> > You can either apply the patches to the kernel, or apply 00006.patch
> > and build the modules from their source dirs.  Both ways should work.
> > 
> > I said a few weeks back that I forget to update the lock_gulm.patch when
> > I make changes to the module's code sometimes.  Ken is much better at
> > keeping his patches uptodate.  And in either case, you can always make
> > new ones with the make files in the source dirs for the modules. (peek
> > at the Makefile, you need to have the kernel source in the right place
> > for the make patches command to work.)
> > 
> > Sorry for confusing things.
> 
> 
> well, patched 2.6.9 kernel successfully. But still unable to compile.
> Compiling kernel modules:
> 
> ...
>   CC [M]  fs/gfs/glops.o
>   CC [M]  fs/gfs/inode.o
> fs/gfs/inode.c: In function `inode_init_and_link':
> fs/gfs/inode.c:1277: invalid lvalue in unary `&'
> fs/gfs/inode.c: In function `inode_alloc_hidden':
> fs/gfs/inode.c:2092: invalid lvalue in unary `&'
> make[2]: *** [fs/gfs/inode.o] Error 1
> make[1]: *** [fs/gfs] Error 2
> make: *** [fs] Error 2
> [mator at Test4 v9]$ gcc --version
> 2.96
> [mator at Test4 v9]$ cat /etc/redhat-release
> Red Hat Linux release 7.3 (Valhalla)
> [mator at Test4 v9]$
> 
> 
> and another check on my current gentoo with same kernel sources.
> 
> [mator at gentoo mator]$ gcc --version
> gcc (GCC) 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)
> Copyright (C) 2003 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> 
> [mator at gentoo mator]$ gcc --version
>   CC [M]  fs/gfs_locking/lock_dlm/main.o
> In file included from fs/gfs_locking/lock_dlm/main.c:14:
> fs/gfs_locking/lock_dlm/lock_dlm.h:28:28: cluster/cnxman.h: No such file or directory
> fs/gfs_locking/lock_dlm/lock_dlm.h:29:29: cluster/service.h: No such file or directory
> fs/gfs_locking/lock_dlm/lock_dlm.h:30:25: cluster/dlm.h: No such file or directory
> In file included from fs/gfs_locking/lock_dlm/main.c:14:
> fs/gfs_locking/lock_dlm/lock_dlm.h:89: error: syntax error before "dlm_lockspace_t"
> fs/gfs_locking/lock_dlm/lock_dlm.h:89: warning: no semicolon at end of struct or union
> fs/gfs_locking/lock_dlm/lock_dlm.h:96: error: `complete' redeclared as different kind of symbol
> include/linux/completion.h:31: error: previous declaration of `complete'
> fs/gfs_locking/lock_dlm/lock_dlm.h:125: error: syntax error before '}' token
> fs/gfs_locking/lock_dlm/lock_dlm.h:175: error: field `lksb' has incomplete type
> fs/gfs_locking/lock_dlm/lock_dlm.h:289: warning: `struct dlm_range' declared inside parameter list
> fs/gfs_locking/lock_dlm/lock_dlm.h:289: warning: its scope is only this definition or declaration, which is pr obably not what you want
> fs/gfs_locking/lock_dlm/lock_dlm.h:290: warning: `struct dlm_range' declared inside parameter list
> make[3]: *** [fs/gfs_locking/lock_dlm/main.o] Error 1
> make[2]: *** [fs/gfs_locking/lock_dlm] Error 2
> make[1]: *** [fs/gfs_locking] Error 2
> make: *** [fs] Error 2
> 
> 
> where do i missed cluster/cnxman.h , cluster/service.h and cluster/dlm.h ?
> 
> What should be installed prior to compiling patched kernel ?
> 
> Actually i'm interested in possibility of running GFS over redhat 7.3. But if
> it really hard to do, or unmaintainable, or even impossible, let's go with
> more fresh distro (read compiler/glibc).
> 
> Comments are greatly appreciated.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/linux-cluster/attachments/20041213/7cd39b56/attachment.htm>


More information about the Linux-cluster mailing list