#ifndef _PARISC_STAT_H #define _PARISC_STAT_H #include <linux/types.h> struct stat { unsigned int st_dev; /* dev_t is 32 bits on parisc */ ino_t st_ino; /* 32 bits */ mode_t st_mode; /* 16 bits */ unsigned short st_nlink; /* 16 bits */ unsigned short st_reserved1; /* old st_uid */ unsigned short st_reserved2; /* old st_gid */ unsigned int st_rdev; off_t st_size; time_t st_atime; unsigned int st_atime_nsec; time_t st_mtime; unsigned int st_mtime_nsec; time_t st_ctime; unsigned int st_ctime_nsec; int st_blksize; int st_blocks; unsigned int __unused1; /* ACL stuff */ unsigned int __unused2; /* network */ ino_t __unused3; /* network */ unsigned int __unused4; /* cnodes */ unsigned short __unused5; /* netsite */ short st_fstype; unsigned int st_realdev; unsigned short st_basemode; unsigned short st_spareshort; uid_t st_uid; gid_t st_gid; unsigned int st_spare4[3]; }; #define STAT_HAVE_NSEC typedef __kernel_off64_t off64_t; struct hpux_stat64 { unsigned int st_dev; /* dev_t is 32 bits on parisc */ ino_t st_ino; /* 32 bits */ mode_t st_mode; /* 16 bits */ unsigned short st_nlink; /* 16 bits */ unsigned short st_reserved1; /* old st_uid */ unsigned short st_reserved2; /* old st_gid */ unsigned int st_rdev; off64_t st_size; time_t st_atime; unsigned int st_spare1; time_t st_mtime; unsigned int st_spare2; time_t st_ctime; unsigned int st_spare3; int st_blksize; __u64 st_blocks; unsigned int __unused1; /* ACL stuff */ unsigned int __unused2; /* network */ ino_t __unused3; /* network */ unsigned int __unused4; /* cnodes */ unsigned short __unused5; /* netsite */ short st_fstype; unsigned int st_realdev; unsigned short st_basemode; unsigned short st_spareshort; uid_t st_uid; gid_t st_gid; unsigned int st_spare4[3]; }; /* This is the struct that 32-bit userspace applications are expecting. * How 64-bit apps are going to be compiled, I have no idea. But at least * this way, we don't have a wrapper in the kernel. */ struct stat64 { unsigned long long st_dev; unsigned int __pad1; unsigned int __st_ino; /* Not actually filled in */ unsigned int st_mode; unsigned int st_nlink; unsigned int st_uid; unsigned int st_gid; unsigned long long st_rdev; unsigned int __pad2; signed long long st_size; signed int st_blksize; signed long long st_blocks; signed int st_atime; unsigned int st_atime_nsec; signed int st_mtime; unsigned int st_mtime_nsec; signed int st_ctime; unsigned int st_ctime_nsec; unsigned long long st_ino; }; #endif