linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* BUG? lockf () on RAID5
@ 2003-03-02 22:56 Johnny Wezel
  0 siblings, 0 replies; only message in thread
From: Johnny Wezel @ 2003-03-02 22:56 UTC (permalink / raw)
  To: linux-raid

Hi

I moved my home directories onto a software RAID5 array, and from this 
time on, Mozilla refused to start.

Since I had some similar problems with pgp and StarOffice which turned 
out to be lock problems on NFS, I also suspected a lock problem here.

First, I tried to move to home directory onto a "normal" (ie. non-RAID 
hosted) directory, and Mozilla worked.

Then I wrote a short program, which tests the lockf () function:

#include <sys/types.h>                                                                                                                                               
#include <sys/stat.h>                                                                                                                                                
#include <fcntl.h>                                                                                                                                                   
#include <sys/file.h>                                                                                                                                                
#include <errno.h>                                                                                                                                                   
#include <stdio.h>                                                                                                                                                   
                                                                                                                                                                     
int main (int argc, char * argv [])                                                                                                                                  
{                                                                                                                                                                    
        int f, st;                                                                                                                                                   
        if (argc < 2) exit (1);                                                                                                                                      
        f = open (argv[1], O_RDWR);                                                                                                                                  
        st = lockf (f, F_LOCK, 1);                                                                                                                                   
        if (st) {                                                                                                                                                    
                fprintf (stderr, "Error %d: ", errno);                                                                                                               
                perror ("flock");                                                                                                                                    
                exit (1);                                                                                                                                            
        }                                                                                                                                                            
        exit (0);                                                                                                                                                    
}                                                                                                                                                                    

Executed on a file in a RAID directory, it returned

Error 37: flock: No locks available

On files in non-RAID-directories it worked without error.

So, I come to the conclusion, that the RAID system does not support 
locks, or the lock support is buggy.

The RAID hosts a ReiserFS. The kernel info is as follows:

Linux jellyfish 2.4.20 #3 Tue Feb 18 17:35:43 CET 2003 i686 unknown
 
Gnu C                  2.95.3
Gnu make               3.79.1
binutils               2.11.90.0.29
util-linux             2.11i
mount                  2.11i
modutils               2.4.8
e2fsprogs              1.24a
reiserfsprogs          3.x.0k-pre9
Linux C Library        x    1 root     root      1384072 Oct  1 18:10 /lib/libc.so.6
Dynamic linker (ldd)   2.2.4
Procps                 2.0.7
Net-tools              1.60
Kbd                    1.04
Sh-utils               2.0
Modules Loaded         isofs zlib_inflate vfat fat sr_mod cdrom sg ide-scsi reiserfs serial parport_pc lp parport nfsd lockd sunrpc uhci usbcore 8139too mii dummy0 nls_iso8859-1


The client kernl info is:

Linux beluga 2.4.20 #8 SMP Tue Feb 18 15:45:24 CET 2003 i686 Pentium III (Coppermine) GenuineIntel GNU/Linux
 
Gnu C                  3.2.1
Gnu make               3.80
util-linux             2.11y
mount                  2.11y
modutils               2.4.22
e2fsprogs              1.32
reiserfsprogs          3.6.4
Linux C Library        2.3.1
Dynamic linker (ldd)   2.3.1
Procps                 2.0.10
Net-tools              1.60
Kbd                    1.06
Sh-utils               2.0.15
Modules Loaded         snd-pcm-oss snd-mixer-oss parport_pc lp parport usb-uhci usbcore 8139too mii snd-intel8x0 snd-pcm snd-timer snd-ac97-codec snd-mpu401-uart snd-rawmidi snd-seq-device snd


Cheers
Johnny Wezel



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2003-03-02 22:56 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-03-02 22:56 BUG? lockf () on RAID5 Johnny Wezel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).