statvfs() system call fails with errno 88 in SUA 6.1
hello,
encountered problem statvfs() system call in sua 6.1 (windows server 2008 r2 64-bit, sua sdk version november 2010). returns errno 88 (value large stored in data type).
following program illustrates problem (compile gcc):
output of program is:
running truss shows system call problem:
know issue , more importantly, there fix or workaround available overcome problem?
regards,
rene
ibm germany
encountered problem statvfs() system call in sua 6.1 (windows server 2008 r2 64-bit, sua sdk version november 2010). returns errno 88 (value large stored in data type).
following program illustrates problem (compile gcc):
#include <fcntl.h> #include <sys/statvfs.h> #include <stdio.h> #include <errno.h> #include <string.h> int main(int argc, char* argv[]) { struct statvfs statvfsdata; int rc = statvfs("/dev/fs/c/", &statvfsdata); if(rc != 0) { printf("error statvfs(): errno = %d (%s)\n", errno, strerror(errno)); switch( errno ) { case eoverflow: printf("eoverflow: file size in bytes or number of blocks allocated file or file serial number cannot represented correctly in structure pointed buf.\n"); break; } exit(1); } printf("fs id = %d\n", statvfsdata.f_fsid); }
output of program is:
$ ./a.out error statvfs(): errno = 88 (value large stored in data type) eoverflow: file size in bytes or number of blocks allocated file or file serial number cannot represented correctly in structure pointed buf.
running truss shows system call problem:
$ truss ./a.out tracing pid 1193 getdata() getdata returned 0 getrlimit(1, ) getrlimit returned 0 pthread_inform_signals() pthread_inform_signals returned 0 unixpath2win("/usr/lib", 0x0, , ) unixpath2win returned 0 unixpath2win("/usr/lib", 0x0, , ) unixpath2win returned 0 unixpath2win("/usr/lib/x86/ld.so", 0x0, , ) unixpath2win returned 0 getids() getids returned 0 getids() getids returned 0 getids() getids returned 0 getids() getids returned 0 open("/usr/lib/x86/libc.so.5.2", 0x1) open returned 3 read(3, 0x81ebf4, 4096) read returned 4096 0x1000 close(3) close returned 0 unixpath2win("/usr/lib/x86/libc.so.5.2", 0x0, , ) unixpath2win returned 0 statvfs("/dev/fs/c/", ) statvfs failed: errno 88, value large stored in data type fstat(1, 0x13d0698) fstat ret: 0 dev: 0x0 ino: 0x00000000 isatty(1) isatty returned 0 isatty(1) isatty returned 0 write(1, 0x1d5590, 72) error statvfs(): errno = 88 (value large stored in data type) write returned 72 0x48 write(1, 0x1d5590, 174) eoverflow: file size in bytes or number of blocks allocated file or file seri al number cannot represented correctly in structure pointed buf. write returned 174 0xae lseek(0, 0, 1) lseek returned 0 lseek(0, 0, 0) lseek returned 0 exit(1) process exited status 1
know issue , more importantly, there fix or workaround available overcome problem?
regards,
rene
ibm germany
hi,
as issue related programmer/coding, suggest discussing in our msdn forum. best resource deal programmer/coding issues.
http://social.msdn.microsoft.com/forums/en/categories/
tim quan
Windows Server > Windows Server General Forum
Comments
Post a Comment