diff options
author | Dave Chinner <dchinner@redhat.com> | 2013-08-12 12:49:54 +0200 |
---|---|---|
committer | Ben Myers <bpm@sgi.com> | 2013-08-13 00:04:08 +0200 |
commit | 4f3d71f68bc976321b19efe2624cd91619af601f (patch) | |
tree | 177701e32b849b2ae80e0eac127f8d7bbef3a947 /fs/xfs/xfs_linux.h | |
parent | xfs: xfs_filestreams.h doesn't need __KERNEL__ (diff) | |
download | linux-4f3d71f68bc976321b19efe2624cd91619af601f.tar.xz linux-4f3d71f68bc976321b19efe2624cd91619af601f.zip |
xfs: move kernel specific type definitions to xfs.h
xfs_types.h is shared with userspace, so having kernel specific
types defined in it is problematic. Move all the kernel specific
defines to xfs_linux.h so we can remove the __KERNEL__ guards from
xfs_types.h.
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Mark Tinguely <tinguely@sgi.com>
Signed-off-by: Ben Myers <bpm@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_linux.h')
-rw-r--r-- | fs/xfs/xfs_linux.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/fs/xfs/xfs_linux.h b/fs/xfs/xfs_linux.h index 800f896a6cc4..3bc52b78f8b7 100644 --- a/fs/xfs/xfs_linux.h +++ b/fs/xfs/xfs_linux.h @@ -32,6 +32,38 @@ # define XFS_BIG_INUMS 0 #endif +/* + * Kernel specific type declarations for XFS + */ +typedef signed char __int8_t; +typedef unsigned char __uint8_t; +typedef signed short int __int16_t; +typedef unsigned short int __uint16_t; +typedef signed int __int32_t; +typedef unsigned int __uint32_t; +typedef signed long long int __int64_t; +typedef unsigned long long int __uint64_t; + +typedef __uint32_t inst_t; /* an instruction */ + +typedef __s64 xfs_off_t; /* <file offset> type */ +typedef unsigned long long xfs_ino_t; /* <inode> type */ +typedef __s64 xfs_daddr_t; /* <disk address> type */ +typedef char * xfs_caddr_t; /* <core address> type */ +typedef __u32 xfs_dev_t; +typedef __u32 xfs_nlink_t; + +/* __psint_t is the same size as a pointer */ +#if (BITS_PER_LONG == 32) +typedef __int32_t __psint_t; +typedef __uint32_t __psunsigned_t; +#elif (BITS_PER_LONG == 64) +typedef __int64_t __psint_t; +typedef __uint64_t __psunsigned_t; +#else +#error BITS_PER_LONG must be 32 or 64 +#endif + #include "xfs_types.h" #include "kmem.h" |