[Linux-cluster] problem exporting GFS2 filesystem with NFS

Steven Whitehouse swhiteho at redhat.com
Wed Jan 24 11:49:07 UTC 2007


Hi,

On Wed, 2007-01-24 at 12:35 +0100, Benoit DUFFAU wrote:
> Le mercredi 24 janvier 2007 à 09:44 +0000, Steven Whitehouse a écrit :
> > Hi,
> > 
> > This problem (NFS readdirplus bug) should be fixed in the upstream
> > kernel as well as FC-6. Its due to NFS' readdirplus calling the vfs stat
> > function (gfs2_getattr) for the '.' directory from readdir's filldir
> > callback. As a result it tried to lock the directory twice which
> > triggers the recursive locking check.
> > 
> > The URL of the fix is:
> > http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=dcf3dd852f554bb0016aa23892596717cc123a26
> > 
> > Please let me know if that doesn't cure the problem,
> > 
> 
> Hi, 
> 
> thank you for answering me so quickly !!!
> 
> I patched my 2.6.19.2 kernel but this does not work. 
> 
> The kernel does not crash any longer (great ! :) ) but the export is now
> impossible ! 
> 
> when i try to mount the exported directory i have the following error on
> the client : 
> 
> client1:~# mount server1:/test /mnt -o defaults,udp,async,soft -t nfs
> mount: server1:/test: can't read superblock
> 
> i have one question :
> 
> when i compile the patched kernel it says : 
> 
> fs/gfs2/ops_inode.c: In function « gfs2_getattr »:
> fs/gfs2/ops_inode.c:1047: Warning : empty body in an if-statement
> 
> are you sure with your code ?? :
> 
> +       if (unlock);
> +               gfs2_glock_dq_uninit(&gh);
> 
> shouldn't it be : 
> 
> +       if (unlock)
> +               gfs2_glock_dq_uninit(&gh);
> 
> instead ???
> 
Yes, you are right it should be. I don't know how that stray ; got in
there and I'll fix that now.

> I completly don't understand what this piece of code is doing but i find
> it strange to do a if (var); ... 
> 
> the problem is that even if i try to compile another kernel without
> the ; after the if santance it crashes the same way before :(
> 
> here again the kernel dump
> 
> Jan 24 12:27:55 replica1 kernel: ------------[ cut here ]------------
> Jan 24 12:27:55 replica1 kernel: kernel BUG at fs/gfs2/glock.c:1193!
> Jan 24 12:27:55 replica1 kernel: invalid opcode: 0000 [#1]
> Jan 24 12:27:55 replica1 kernel: SMP
> Jan 24 12:27:55 replica1 kernel: CPU:    1
> Jan 24 12:27:55 replica1 kernel: EIP:    0060:[add_to_queue+181/297]
> Not tainted VLI
> Jan 24 12:27:55 replica1 kernel: EFLAGS: 00010282   (2.6.19.2-grsec #5)
> Jan 24 12:27:55 replica1 kernel: eax: 00000020   ebx: da62be68   ecx:
> da62ba28   edx: c05f1c60
> Jan 24 12:27:55 replica1 kernel: esi: ddc422fc   edi: da62ba88   ebp:
> dafff000   esp: da62ba24
> Jan 24 12:27:55 replica1 kernel: ds: 0068   es: 007b   ss: 0068
> Jan 24 12:27:55 replica1 kernel: Process nfsd (pid: 3123, ti=da62a000
> task=da81d560 task.ti=da62a000)
> Jan 24 12:27:55 replica1 kernel: Stack: c05f1c60 00000002 00000001
> ddc422fc da62ba88 00000000 dafff000 c02aa65c
> Jan 24 12:27:55 replica1 kernel:        da62ba88 dab35514 da630194
> da62ba88 da6301b0 c02accfc da62ba88 00000003
> Jan 24 12:27:55 replica1 kernel:        00000000 da62ba88 00000000
> dd028600 dab35514 c02b9698 dab35514 00000001
> Jan 24 12:27:55 replica1 kernel: Call Trace:
> 
The bit I really need to see is the next bit - i.e. the stack back
trace. Was it identical to the last trace you posted?

Steve.

> Benoit
> 
> +---------------------------------------------------------------------+
> Combining consulting and technology solutions offers enables Devoteam
> to provide its customers with independent advice and effective solutions
> that meet their strategic objectives (IT performance and optimisation)
> in complementary areas: networks, systems infrastructure, security
> and e-business applications.
> Created in 1995, Devoteam achieved in 2005 a turnover of 199 million euros
> and an operating margin of 7%. The group counts 2,400 employees through
> sixteen countries in Europe, the Middle East and North Africa.
> Listed on Euronext (Eurolist B compartment) since October 28, 1999.
> Part of the Nexteconomy, CAC SMALL 90, IT CAC 50, SBF 250 index of 
> Euronext Paris
> ISIN: FR 000007379 3, Reuters: DVTM.LM, Bloomberg: DEVO FP
> +---------------------------------------------------------------------+
> 




More information about the Linux-cluster mailing list