[Ocfs2-users] Floating Point Exception

Sunil Mushran Sunil.Mushran at oracle.com
Tue May 16 17:37:31 CDT 2006


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 -
>   



More information about the Ocfs2-users mailing list