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

  #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

Popular posts from this blog

DCOM received error "2147746132" from...

ADFS 3.0 Event ID 4625 | An Error occurred During Logon | Status: 0xC000035B

DFSR RPC replication errors 5014 1726 with large files over VPN