There should only be a 'struct stat', not stat64, and it would be nice
to have that in asm-generic/stat.h.
I think it should be defined as
struct stat {
unsigned long long st_dev;
unsigned long long st_ino;
unsigned int st_mode;
unsigned int st_nlink;
unsigned int st_uid;
unsigned int st_gid;
unsigned long long st_rdev;
long long st_size;
unsigned int st_blksize;
unsigned int __unused1;
unsigned long long st_blocks; /* No. of 512-byte blocks allocated */
unsigned int st_atime;
unsigned int st_atime_nsec;
unsigned int st_mtime;
unsigned int st_mtime_nsec;
unsigned int st_ctime;
unsigned int st_ctime_nsec;
unsigned int __unused2;
unsigned int __unused3;
};
This way, you don't have any unnecessary padding, and the structure
is compatible in 32 and 64 bit architectures.
Arnd <><
--