[Ocfs2-users] Floating Point Exception

Jeffery P. Humes jeff at bofus.org
Wed May 17 06:10:37 CDT 2006


Sunil,
Your help is very appreciated, here is the gdb run:

[mkfs.ocfs2]# gdb ./mkfs.ocfs2
GNU gdb Red Hat Linux (6.3.0.0-1.84rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain 
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host 
libthread_db library "/lib/libthread_db.so.1".

(gdb) set args -b 4K -C 32K -N 4 -L mail_data /dev/etherd/e0.12p1
(gdb) b ocfs2_get_device_sectsize
Breakpoint 1 at 0x805498f: file getsectsize.c, line 50.
(gdb) b ocfs2_get_device_size
Breakpoint 2 at 0x8054a93: file getsize.c, line 152.
(gdb) run
Starting program: 
/usr/src/INSTALL_OCFS/ocfs2-tools-1.2.1/mkfs.ocfs2/mkfs.ocfs2 -b 4K -C 
32K -N 4 -L mail_data /dev/etherd/e0.12p1
Reading symbols from shared object read from target memory...done.
Loaded system supplied DSO at 0x5da000
mkfs.ocfs2 1.2.1

Breakpoint 1, ocfs2_get_device_sectsize (file=0x96160e0 
"/dev/etherd/e0.12p1", sectsize=0xbfa4ea20) at getsectsize.c:50
50              fd = open64(file, O_RDONLY);
(gdb) n
54              if (fd < 0)
(gdb) n
58              if (ioctl(fd, BLKSSZGET, sectsize) >= 0) {
(gdb) n
59                      close(fd);
(gdb) n
60                      return 0;
(gdb) n
66      }
(gdb) n
fill_defaults (s=0x9616048) at mkfs.c:965
965             if (err) {
(gdb) c
Continuing.

Breakpoint 2, ocfs2_get_device_size (file=0x96160e0 
"/dev/etherd/e0.12p1", blocksize=4096, retblocks=0xbfa4ea18)
    at getsize.c:152
152             int     fd, rc = 0;
(gdb) n
153             int valid_blkgetsize64 = 1;
(gdb) n
171             fd = open64(file, O_RDONLY);
(gdb) n
175             if (fd < 0)
(gdb) n
190             if ((uname(&ut) == 0) &&
(gdb) n
195             if (valid_blkgetsize64 &&
(gdb) n
202                     *retblocks = size64 / blocksize;
(gdb) n
203                     goto out;
(gdb) n
291             close(fd);
(gdb) n
292             return rc;
(gdb) n
293     }
(gdb) n
fill_defaults (s=0x9616048) at mkfs.c:993
993                     if (err) {
(gdb) n
1000                    if (s->hb_dev) {
(gdb) n
1030                    s->volume_size_in_blocks = ret;
(gdb) n
1031                    if (s->specified_size_in_blocks) {
(gdb) n
1047            s->volume_size_in_bytes = s->volume_size_in_blocks * 
blocksize;
(gdb) n
1049            if (!s->blocksize) {
(gdb) n
1076            s->blocksize_bits = get_bits(s, s->blocksize);
(gdb) n
1078            if (!s->cluster_size) {
(gdb) n
1089            s->cluster_size_bits = get_bits(s, s->cluster_size);
(gdb) n
1092            s->volume_size_in_clusters = s->volume_size_in_bytes >> 
s->cluster_size_bits;
(gdb) n
1093            tmp = (uint64_t)s->volume_size_in_clusters;
(gdb) n
1094            s->volume_size_in_bytes = tmp << s->cluster_size_bits;
(gdb) n
1095            s->volume_size_in_blocks = s->volume_size_in_bytes >> 
s->blocksize_bits;
(gdb) n
1097            s->reserved_tail_size = 0;
(gdb) n
1099            ocfs2_calc_cluster_groups(s->volume_size_in_clusters, 
s->blocksize,
(gdb) n

Program received signal SIGFPE, Arithmetic exception.
0x0805f003 in __udivdi3 ()
(gdb) n
Single stepping until exit from function __udivdi3,
which has no line number information.

Program terminated with signal SIGFPE, Arithmetic exception.

Sunil Mushran wrote:

> So the exception is generated when mkfs is computing the size of the 
> device.
> It could be due to an unexpected value returned by one of the ioctls.
>
> Try this:
> # cd /../ocfs2-tools-1.2.1
> # ./configure --enable-debug
> # make all
> # cd mkfs.ocfs2
> # gdb ./mkfs.ocfs2
> (gdb) set args -b 4K -C 32K -N 4 -L mail_data /dev/etherd/e0.12p1
> (gdb) b ocfs2_get_device_sectsize
> (gdb) b ocfs2_get_device_size
>
> Set break point at ocfs2_get_device_sectsize() and 
> ocfs2_get_device_size()
> and run. See what the sectsize is. Then step thru the code in 
> get_device_size.
>
> If this is too much, at least generate the coredump and make it available
> for download.
>
> Please let me know the results.
>
> Thanks
> Sunil
>
> Jeffery P. Humes wrote:
>
>> Here is the output of an ltrace.
>> Please note that this is trying to create a partition on a Coraid AOE 
>> device.
>>
>> -JPH
>>
>> # ltrace mkfs.ocfs2 -v -b 4K -C 32K -N 4 -L mail_data 
>> /dev/etherd/e0.12p1
>>
>> __libc_start_main(0x804993d, 11, 0xbfa86b24, 0x805f1bc, 0x805f218 
>> <unfinished ...>
>> setbuf(0x8805e0, 
>> NULL)                                                      = <void>
>> setbuf(0x880480, 
>> NULL)                                                      = <void>
>> signal(15, 
>> 0x8049875)                                                       = NULL
>> signal(2, 
>> 0x8049875)                                                        = NULL
>> malloc(8)                                                                   
>> = 0x85de008
>> malloc(8)                                                                   
>> = 0x85de018
>> malloc(8)                                                                   
>> = 0x85de028
>> __xpg_basename(0xbfa87be4, 135168, 0, 0, 
>> 0x757fb4)                          = 0xbfa87be4
>> getopt_long(11, 0xbfa86b24, "b:C:L:N:J:vqVFHxT:", 0x80635e0, 
>> NULL)          = 118
>> getopt_long(11, 0xbfa86b24, "b:C:L:N:J:vqVFHxT:", 0x80635e0, 
>> NULL)          = 98
>> strtoull(0xbfa87bf5, 0xbfa863cc, 0, 0, 
>> 0)                                   = 4
>> getopt_long(11, 0xbfa86b24, "b:C:L:N:J:vqVFHxT:", 0x80635e0, 
>> NULL)          = 67
>> strtoull(0xbfa87bfb, 0xbfa863cc, 0, 0, 
>> 0)                                   = 32
>> getopt_long(11, 0xbfa86b24, "b:C:L:N:J:vqVFHxT:", 0x80635e0, 
>> NULL)          = 78
>> strtoul(0xbfa87c02, 0xbfa86440, 0, 0, 
>> 0x757fb4)                             = 4
>> getopt_long(11, 0xbfa86b24, "b:C:L:N:J:vqVFHxT:", 0x80635e0, 
>> NULL)          = 76
>> strdup("mail_data")                                                         
>> = 0x85de038
>> getopt_long(11, 0xbfa86b24, "b:C:L:N:J:vqVFHxT:", 0x80635e0, 
>> NULL)          = -1
>> malloc(148)                                                                 
>> = 0x85de048
>> memset(0x85de048, '\000', 
>> 148)                                              = 0x85de048
>> fprintf(0x880480, "%s %s\n", "mkfs.ocfs2", "1.2.1"mkfs.ocfs2 1.2.1
>> )                         = 17
>> strdup("/dev/etherd/e0.12p1")                                               
>> = 0x85de0e0
>> time(NULL)                                                                  
>> = 1147812553
>> __xstat(3, "/dev/etherd/e0.12p1", 
>> 0xbfa85f40)                               = 0
>> fopen("/proc/swaps", 
>> "r")                                                   = 0x85de0f8
>> fgets("Filename\t\t\t\tType\t\tSize\tUsed\tPrio"..., 1024, 
>> 0x85de0f8)       = 0xbfa85f98
>> feof(0x85de0f8)                                                             
>> = 0
>> fgets("/dev/mapper/VolGroup00-LogVol00 "..., 1024, 
>> 0x85de0f8)               = 0xbfa85f98
>> strchr("/dev/mapper/VolGroup00-LogVol00 "..., ' 
>> ')                          = "         partition\t3047416\t88\t-1"...
>> strchr("/dev/mapper/VolGroup00-LogVol00", 
>> '\t')                             = NULL
>> strcmp("/dev/mapper/VolGroup00-LogVol00", 
>> "/dev/etherd/e0.12p1")            = 1
>> __xstat(3, "/dev/mapper/VolGroup00-LogVol00", 
>> 0xbfa85f40)                   = 0
>> feof(0x85de0f8)                                                             
>> = 0
>> fgets("/dev/mapper/VolGroup00-LogVol00", 1024, 
>> 0x85de0f8)                   = NULL
>> fclose(0x85de0f8)                                                           
>> = 0
>> setmntent("/proc/mounts", 
>> "r")                                              = 0x85de0f8
>> __xstat(3, "/dev/etherd/e0.12p1", 
>> 0xbfa862f0)                               = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "rootfs")                                     = -1
>> __xstat(3, "rootfs", 
>> 0xbfa862f0)                                            = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev")                                       = 1
>> __xstat(3, "/dev", 
>> 0xbfa862f0)                                              = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/root")                                  = -1
>> __xstat(3, "/dev/root", 
>> 0xbfa862f0)                                         = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/proc")                                      = -1
>> __xstat(3, "/proc", 
>> 0xbfa862f0)                                             = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/proc/bus/usb")                              = -1
>> __xstat(3, "/proc/bus/usb", 
>> 0xbfa862f0)                                     = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/sys")                                       = -1
>> __xstat(3, "/sys", 
>> 0xbfa862f0)                                              = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/devpts")                                = 1
>> __xstat(3, "/dev/devpts", 
>> 0xbfa862f0)                                       = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/sda1")                                  = -1
>> __xstat(3, "/dev/sda1", 
>> 0xbfa862f0)                                         = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/shm")                                   = -1
>> __xstat(3, "/dev/shm", 
>> 0xbfa862f0)                                          = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "none")                                       = -1
>> __xstat(3, "none", 
>> 0xbfa862f0)                                              = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "sunrpc")                                     = -1
>> __xstat(3, "sunrpc", 
>> 0xbfa862f0)                                            = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "configfs")                                   = -1
>> __xstat(3, "configfs", 
>> 0xbfa862f0)                                          = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "ocfs2_dlmfs")                                = -1
>> __xstat(3, "ocfs2_dlmfs", 
>> 0xbfa862f0)                                       = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "automount(pid2223)")                         = -1
>> __xstat(3, "automount(pid2223)", 
>> 0xbfa862f0)                                = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/etherd/e0.11p1")                        = 1
>> __xstat(3, "/dev/etherd/e0.11p1", 
>> 0xbfa862f0)                               = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/BaculaVG/BaculaDataLV_1")               = 1
>> __xstat(3, "/dev/BaculaVG/BaculaDataLV_1", 
>> 0xbfa862f0)                      = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/BackupDataVG/BackupDataLV_1")           = 1
>> __xstat(3, "/dev/BackupDataVG/BackupDataLV_1", 
>> 0xbfa862f0)                  = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "nfsd")                                       = -1
>> __xstat(3, "nfsd", 
>> 0xbfa862f0)                                              = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "knfiler:/vol/vol0")                          = -1
>> __xstat(3, "knfiler:/vol/vol0", 
>> 0xbfa862f0)                                 = -1
>> getmntent(0x85de0f8)                                                        
>> = NULL
>> __xstat(3, "/", 
>> 0xbfa862f0)                                                 = 0
>> endmntent(0x85de0f8)                                                        
>> = 1
>> setmntent("/etc/mtab", 
>> "r")                                                 = 0x85de0f8
>> __xstat(3, "/dev/etherd/e0.12p1", 
>> 0xbfa862f0)                               = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/mapper/VolGroup00-LogVol01")            = -1
>> __xstat(3, "/dev/mapper/VolGroup00-LogVol01", 
>> 0xbfa862f0)                   = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/proc")                                  = -1
>> __xstat(3, "/dev/proc", 
>> 0xbfa862f0)                                         = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/sys")                                   = -1
>> __xstat(3, "/dev/sys", 
>> 0xbfa862f0)                                          = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/devpts")                                = 1
>> __xstat(3, "/dev/devpts", 
>> 0xbfa862f0)                                       = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/sda1")                                  = -1
>> __xstat(3, "/dev/sda1", 
>> 0xbfa862f0)                                         = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/shm")                                   = -1
>> __xstat(3, "/dev/shm", 
>> 0xbfa862f0)                                          = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "none")                                       = -1
>> __xstat(3, "none", 
>> 0xbfa862f0)                                              = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "sunrpc")                                     = -1
>> __xstat(3, "sunrpc", 
>> 0xbfa862f0)                                            = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "configfs")                                   = -1
>> __xstat(3, "configfs", 
>> 0xbfa862f0)                                          = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "ocfs2_dlmfs")                                = -1
>> __xstat(3, "ocfs2_dlmfs", 
>> 0xbfa862f0)                                       = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "automount(pid2223)")                         = -1
>> __xstat(3, "automount(pid2223)", 
>> 0xbfa862f0)                                = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/etherd/e0.11p1")                        = 1
>> __xstat(3, "/dev/etherd/e0.11p1", 
>> 0xbfa862f0)                               = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/mapper/BaculaVG-BaculaDataL"...)        = -1
>> __xstat(3, "/dev/mapper/BaculaVG-BaculaDataL"..., 
>> 0xbfa862f0)               = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "/dev/mapper/BackupDataVG-BackupD"...)        = -1
>> __xstat(3, "/dev/mapper/BackupDataVG-BackupD"..., 
>> 0xbfa862f0)               = 0
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "nfsd")                                       = -1
>> __xstat(3, "nfsd", 
>> 0xbfa862f0)                                              = -1
>> getmntent(0x85de0f8)                                                        
>> = 0x8821e0
>> strcmp("/dev/etherd/e0.12p1", 
>> "knfiler:/vol/vol0")                          = -1
>> __xstat(3, "knfiler:/vol/vol0", 
>> 0xbfa862f0)                                 = -1
>> getmntent(0x85de0f8)                                                        
>> = NULL
>> __xstat(3, "/", 
>> 0xbfa862f0)                                                 = 0
>> endmntent(0x85de0f8)                                                        
>> = 1
>> __xstat(3, "/dev/etherd/e0.12p1", 
>> 0xbfa863d4)                               = 0
>> open("/dev/etherd/e0.12p1", 128, 
>> 00)                                        = 3
>> close(3)                                                                    
>> = 0
>> malloc(132)                                                                 
>> = 0x85de0f8
>> malloc(20)                                                                  
>> = 0x85de180
>> malloc(20)                                                                  
>> = 0x85de198
>> strcpy(0x85de198, 
>> "/dev/etherd/e0.12p1")                                    = 0x85de198
>> open64("/dev/etherd/e0.12p1", 16386, 
>> 036706623)                             = 3
>> posix_memalign(0xbfa861b8, 512, 512, 0x8057284, 
>> 20)                         = 0
>> pread64(3, 0x85df400, 512, 0, 
>> 0)                                            = 512
>> free(0x85df400)                                                             
>> = <void>
>> uname(0xbfa86206)                                                           
>> = 0
>> malloc(20)                                                                  
>> = 0x85de1b0
>> strcpy(0x85de1b0, 
>> "/dev/etherd/e0.12p1")                                    = 0x85de1b0
>> posix_memalign(0xbfa863e0, 512, 512, 0x8057284, 
>> 0)                          = 0
>> pread64(3, 0x85df400, 512, 0, 
>> 0)                                            = 512
>> free(0x85df400)                                                             
>> = <void>
>> posix_memalign(0xbfa863e0, 512, 512, 0x8057284, 
>> 0x85df409)                  = 0
>> pread64(3, 0x85df400, 512, 1024, 
>> 0)                                         = 0
>> free(0x85df400)                                                             
>> = <void>
>> free(0x85de1b0)                                                             
>> = <void>
>> close(3)                                                                    
>> = 0
>> free(0x85de198)                                                             
>> = <void>
>> free(0x85de180)                                                             
>> = <void>
>> free(0x85de0f8)                                                             
>> = <void>
>> open64("/dev/etherd/e0.12p1", 16386, 
>> 027752076021)                          = 3
>> getpagesize()                                                               
>> = 4096
>> open64("/dev/etherd/e0.12p1", 0, 
>> 01001105565)                               = 4
>> ioctl(4, 4712, 
>> 0xbfa86450)                                                  = 0
>> close(4)                                                                    
>> = 0
>> open64("/dev/etherd/e0.12p1", 0, 
>> 01027372000)                               = 4
>> uname(0xbfa8621e)                                                           
>> = 0
>> ioctl(4, -2147216782, 
>> 0xbfa86210)                                           = 0
>> close(4)                                                                    
>> = 0
>> --- SIGFPE (Floating point exception) ---
>> +++ killed by SIGFPE +++
>>
>> Sunil Mushran wrote:
>>
>>> Did you try strace or ltrace?
>>>
>>> Jeffery P. Humes wrote:
>>>
>>>> I have a Fedora Core server running:
>>>> Fedora Core release 4 (Stentz)
>>>> kernel version: 2.6.15-1.1833_FC4smp
>>>> ( I have also tried kernel  version: 2.6.16-1.2108_FC4smp)
>>>>
>>>> I compiled the ocfs2 and ocfs2-tools using the following steps:
>>>>
>>>> # MODULES:
>>>> tar zxvpf ocfs2-1.2.1.tar.gz
>>>> cd ocfs2-1.2.1
>>>> ./configure
>>>> make
>>>> make install
>>>>
>>>> # TOOLS:
>>>> tar zxf ocfs2-tools-1.2.1.tar.gz
>>>> cd ocfs2-tools-1.2.1
>>>> ./configure --enable-dynamic-fsck=yes --enable-dynamic-ctl=yes 
>>>> --enable-ocfs2console=yes
>>>> make
>>>> make install
>>>>
>>>> cp vendor/common/ocfs2.init /etc/init.d/ocfs2
>>>> cp vendor/common/o2cb.init /etc/init.d/o2cb
>>>> cp vendor/common/o2cb.sysconfig /etc/sysconfig/o2cb
>>>>
>>>>
>>>> I have the cluster.conf configured and the cluster is running.
>>>>
>>>>
>>>>
>>>> Whenever I try to create an ocfs2 FS, I get the following error:
>>>> # mkfs.ocfs2 -v -b 4K -C 32K -N 4 -L mail_data /dev/etherd/e0.12p1
>>>> mkfs.ocfs2 1.2.1
>>>> Floating point exception
>>>>
>>>>
>>>> any comments or assistance would be appreciated.
>>>>
>>>> -Jeffery P Humes
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------ 
>>>>
>>>>
>>>> _______________________________________________
>>>> Ocfs2-users mailing list
>>>> Ocfs2-users at oss.oracle.com
>>>> http://oss.oracle.com/mailman/listinfo/ocfs2-users
>>>>   
>>>
>>
>> -- 
>> It's a trick, get an axe.
>> - Ash -
>>   
>

-- 
It's a trick, get an axe.
- Ash -

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://oss.oracle.com/pipermail/ocfs2-users/attachments/20060517/f295e4a6/attachment-0001.html


More information about the Ocfs2-users mailing list