Skip to content

Commit

Permalink
x86, x32: Use __kernel_long_t/__kernel_ulong_t in x86-64 stat.h
Browse files Browse the repository at this point in the history
Both x32 and x86-64 use the same stat system call interface.  But x32
long is 32-bit.  This patch changes x86 uapi <asm/stat.h> to use
 __kernel_long_t/__kernel_ulong_t in x86-64 stat.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
Link: http://lkml.kernel.org/r/CAMe9rOquPtWEro0GQ=Z95pZJ=c7GGkSHynjN4FbiB4p445x-Ng@mail.gmail.com
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
  • Loading branch information
H.J. Lu authored and H. Peter Anvin committed Dec 21, 2013
1 parent 319e2e3 commit b70fedc
Showing 1 changed file with 22 additions and 20 deletions.
42 changes: 22 additions & 20 deletions arch/x86/include/uapi/asm/stat.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
#ifndef _ASM_X86_STAT_H
#define _ASM_X86_STAT_H

#include <asm/posix_types.h>

#define STAT_HAVE_NSEC 1

#ifdef __i386__
Expand Down Expand Up @@ -78,26 +80,26 @@ struct stat64 {
#else /* __i386__ */

struct stat {
unsigned long st_dev;
unsigned long st_ino;
unsigned long st_nlink;

unsigned int st_mode;
unsigned int st_uid;
unsigned int st_gid;
unsigned int __pad0;
unsigned long st_rdev;
long st_size;
long st_blksize;
long st_blocks; /* Number 512-byte blocks allocated. */

unsigned long st_atime;
unsigned long st_atime_nsec;
unsigned long st_mtime;
unsigned long st_mtime_nsec;
unsigned long st_ctime;
unsigned long st_ctime_nsec;
long __unused[3];
__kernel_ulong_t st_dev;
__kernel_ulong_t st_ino;
__kernel_ulong_t st_nlink;

unsigned int st_mode;
unsigned int st_uid;
unsigned int st_gid;
unsigned int __pad0;
__kernel_ulong_t st_rdev;
__kernel_long_t st_size;
__kernel_long_t st_blksize;
__kernel_long_t st_blocks; /* Number 512-byte blocks allocated. */

__kernel_ulong_t st_atime;
__kernel_ulong_t st_atime_nsec;
__kernel_ulong_t st_mtime;
__kernel_ulong_t st_mtime_nsec;
__kernel_ulong_t st_ctime;
__kernel_ulong_t st_ctime_nsec;
__kernel_long_t __unused[3];
};

/* We don't need to memset the whole thing just to initialize the padding */
Expand Down

0 comments on commit b70fedc

Please sign in to comment.