The st_size entry was in the wrong place
(see linux-2.6.29/arch/x86/include/asm/stat.h )
Also, the packed attribute is needed when compiling on a
64-bit machine, otherwise gcc adds extra padding that
break the layout of the structure.
uint32_t st_uid;
uint32_t st_gid;
uint64_t st_rdev;
- int64_t st_size;
uint8_t __pad3[4];
+ int64_t st_size;
uint32_t st_blksize;
uint64_t st_blocks;
uint32_t st_atimeX;
uint32_t st_ctimeX;
uint32_t st_ctime_nsec;
uint64_t st_ino;
- } tgt_stat64;
+ } __attribute__((__packed__)) tgt_stat64;
static OpenFlagTransTable openFlagTable[];