make exported headers use strict posix types

A number of standard posix types are used in exported headers, which
is not allowed if __STRICT_KERNEL_NAMES is defined. In order to
get rid of the non-__STRICT_KERNEL_NAMES part and to make sane headers
the default, we have to change them all to safe types.

There are also still some leftovers in reiserfs_fs.h, elfcore.h
and coda.h, but these files have not compiled in user space for
a long time.

This leaves out the various integer types ({u_,u,}int{8,16,32,64}_t),
which we take care of separately.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Cc: David Airlie <airlied@linux.ie>
Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Cc: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Cc: netdev@vger.kernel.org
Cc: linux-ppp@vger.kernel.org
Cc: Jaroslav Kysela <perex@perex.cz>
Cc: Takashi Iwai <tiwai@suse.de>
Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Arnd Bergmann 2009-02-26 00:51:39 +01:00 committed by Ingo Molnar
parent 9d50638bae
commit 85efde6f4e
18 changed files with 67 additions and 66 deletions

View File

@ -117,9 +117,9 @@
struct flock { struct flock {
short l_type; short l_type;
short l_whence; short l_whence;
off_t l_start; __kernel_off_t l_start;
off_t l_len; __kernel_off_t l_len;
pid_t l_pid; __kernel_pid_t l_pid;
__ARCH_FLOCK_PAD __ARCH_FLOCK_PAD
}; };
#endif #endif
@ -140,9 +140,9 @@ struct flock {
struct flock64 { struct flock64 {
short l_type; short l_type;
short l_whence; short l_whence;
loff_t l_start; __kernel_loff_t l_start;
loff_t l_len; __kernel_loff_t l_len;
pid_t l_pid; __kernel_pid_t l_pid;
__ARCH_FLOCK64_PAD __ARCH_FLOCK64_PAD
}; };
#endif #endif

View File

@ -23,7 +23,7 @@ typedef union sigval {
#endif #endif
#ifndef __ARCH_SI_UID_T #ifndef __ARCH_SI_UID_T
#define __ARCH_SI_UID_T uid_t #define __ARCH_SI_UID_T __kernel_uid32_t
#endif #endif
/* /*
@ -47,13 +47,13 @@ typedef struct siginfo {
/* kill() */ /* kill() */
struct { struct {
pid_t _pid; /* sender's pid */ __kernel_pid_t _pid; /* sender's pid */
__ARCH_SI_UID_T _uid; /* sender's uid */ __ARCH_SI_UID_T _uid; /* sender's uid */
} _kill; } _kill;
/* POSIX.1b timers */ /* POSIX.1b timers */
struct { struct {
timer_t _tid; /* timer id */ __kernel_timer_t _tid; /* timer id */
int _overrun; /* overrun count */ int _overrun; /* overrun count */
char _pad[sizeof( __ARCH_SI_UID_T) - sizeof(int)]; char _pad[sizeof( __ARCH_SI_UID_T) - sizeof(int)];
sigval_t _sigval; /* same as below */ sigval_t _sigval; /* same as below */
@ -62,18 +62,18 @@ typedef struct siginfo {
/* POSIX.1b signals */ /* POSIX.1b signals */
struct { struct {
pid_t _pid; /* sender's pid */ __kernel_pid_t _pid; /* sender's pid */
__ARCH_SI_UID_T _uid; /* sender's uid */ __ARCH_SI_UID_T _uid; /* sender's uid */
sigval_t _sigval; sigval_t _sigval;
} _rt; } _rt;
/* SIGCHLD */ /* SIGCHLD */
struct { struct {
pid_t _pid; /* which child */ __kernel_pid_t _pid; /* which child */
__ARCH_SI_UID_T _uid; /* sender's uid */ __ARCH_SI_UID_T _uid; /* sender's uid */
int _status; /* exit code */ int _status; /* exit code */
clock_t _utime; __kernel_clock_t _utime;
clock_t _stime; __kernel_clock_t _stime;
} _sigchld; } _sigchld;
/* SIGILL, SIGFPE, SIGSEGV, SIGBUS */ /* SIGILL, SIGFPE, SIGSEGV, SIGBUS */

View File

@ -77,20 +77,20 @@ typedef struct _agp_setup {
* The "prot" down below needs still a "sleep" flag somehow ... * The "prot" down below needs still a "sleep" flag somehow ...
*/ */
typedef struct _agp_segment { typedef struct _agp_segment {
off_t pg_start; /* starting page to populate */ __kernel_off_t pg_start; /* starting page to populate */
size_t pg_count; /* number of pages */ __kernel_size_t pg_count; /* number of pages */
int prot; /* prot flags for mmap */ int prot; /* prot flags for mmap */
} agp_segment; } agp_segment;
typedef struct _agp_region { typedef struct _agp_region {
pid_t pid; /* pid of process */ __kernel_pid_t pid; /* pid of process */
size_t seg_count; /* number of segments */ __kernel_size_t seg_count; /* number of segments */
struct _agp_segment *seg_list; struct _agp_segment *seg_list;
} agp_region; } agp_region;
typedef struct _agp_allocate { typedef struct _agp_allocate {
int key; /* tag of allocation */ int key; /* tag of allocation */
size_t pg_count; /* number of pages */ __kernel_size_t pg_count;/* number of pages */
__u32 type; /* 0 == normal, other devspec */ __u32 type; /* 0 == normal, other devspec */
__u32 physical; /* device specific (some devices __u32 physical; /* device specific (some devices
* need a phys address of the * need a phys address of the
@ -100,7 +100,7 @@ typedef struct _agp_allocate {
typedef struct _agp_bind { typedef struct _agp_bind {
int key; /* tag of allocation */ int key; /* tag of allocation */
off_t pg_start; /* starting page to populate */ __kernel_off_t pg_start;/* starting page to populate */
} agp_bind; } agp_bind;
typedef struct _agp_unbind { typedef struct _agp_unbind {

View File

@ -65,20 +65,20 @@ struct proc_event {
} ack; } ack;
struct fork_proc_event { struct fork_proc_event {
pid_t parent_pid; __kernel_pid_t parent_pid;
pid_t parent_tgid; __kernel_pid_t parent_tgid;
pid_t child_pid; __kernel_pid_t child_pid;
pid_t child_tgid; __kernel_pid_t child_tgid;
} fork; } fork;
struct exec_proc_event { struct exec_proc_event {
pid_t process_pid; __kernel_pid_t process_pid;
pid_t process_tgid; __kernel_pid_t process_tgid;
} exec; } exec;
struct id_proc_event { struct id_proc_event {
pid_t process_pid; __kernel_pid_t process_pid;
pid_t process_tgid; __kernel_pid_t process_tgid;
union { union {
__u32 ruid; /* task uid */ __u32 ruid; /* task uid */
__u32 rgid; /* task gid */ __u32 rgid; /* task gid */
@ -90,8 +90,8 @@ struct proc_event {
} id; } id;
struct exit_proc_event { struct exit_proc_event {
pid_t process_pid; __kernel_pid_t process_pid;
pid_t process_tgid; __kernel_pid_t process_tgid;
__u32 exit_code, exit_signal; __u32 exit_code, exit_signal;
} exit; } exit;
} event_data; } event_data;

View File

@ -82,9 +82,9 @@ struct cyclades_monitor {
* open) * open)
*/ */
struct cyclades_idle_stats { struct cyclades_idle_stats {
time_t in_use; /* Time device has been in use (secs) */ __kernel_time_t in_use; /* Time device has been in use (secs) */
time_t recv_idle; /* Time since last char received (secs) */ __kernel_time_t recv_idle; /* Time since last char received (secs) */
time_t xmit_idle; /* Time since last char transmitted (secs) */ __kernel_time_t xmit_idle; /* Time since last char transmitted (secs) */
unsigned long recv_bytes; /* Bytes received */ unsigned long recv_bytes; /* Bytes received */
unsigned long xmit_bytes; /* Bytes transmitted */ unsigned long xmit_bytes; /* Bytes transmitted */
unsigned long overruns; /* Input overruns */ unsigned long overruns; /* Input overruns */

View File

@ -137,7 +137,7 @@ struct video_event {
#define VIDEO_EVENT_FRAME_RATE_CHANGED 2 #define VIDEO_EVENT_FRAME_RATE_CHANGED 2
#define VIDEO_EVENT_DECODER_STOPPED 3 #define VIDEO_EVENT_DECODER_STOPPED 3
#define VIDEO_EVENT_VSYNC 4 #define VIDEO_EVENT_VSYNC 4
time_t timestamp; __kernel_time_t timestamp;
union { union {
video_size_t size; video_size_t size;
unsigned int frame_rate; /* in frames per 1000sec */ unsigned int frame_rate; /* in frames per 1000sec */

View File

@ -26,7 +26,7 @@
*/ */
struct pppol2tp_addr struct pppol2tp_addr
{ {
pid_t pid; /* pid that owns the fd. __kernel_pid_t pid; /* pid that owns the fd.
* 0 => current */ * 0 => current */
int fd; /* FD of UDP socket to use */ int fd; /* FD of UDP socket to use */

View File

@ -65,7 +65,7 @@ struct mif6ctl {
mifi_t mif6c_mifi; /* Index of MIF */ mifi_t mif6c_mifi; /* Index of MIF */
unsigned char mif6c_flags; /* MIFF_ flags */ unsigned char mif6c_flags; /* MIFF_ flags */
unsigned char vifc_threshold; /* ttl limit */ unsigned char vifc_threshold; /* ttl limit */
u_short mif6c_pifi; /* the index of the physical IF */ __u16 mif6c_pifi; /* the index of the physical IF */
unsigned int vifc_rate_limit; /* Rate limiter values (NI) */ unsigned int vifc_rate_limit; /* Rate limiter values (NI) */
}; };

View File

@ -9,10 +9,10 @@
#define IPT_OWNER_COMM 0x10 #define IPT_OWNER_COMM 0x10
struct ipt_owner_info { struct ipt_owner_info {
uid_t uid; __kernel_uid32_t uid;
gid_t gid; __kernel_gid32_t gid;
pid_t pid; __kernel_pid_t pid;
pid_t sid; __kernel_pid_t sid;
char comm[16]; char comm[16];
u_int8_t match, invert; /* flags */ u_int8_t match, invert; /* flags */
}; };

View File

@ -8,10 +8,10 @@
#define IP6T_OWNER_SID 0x08 #define IP6T_OWNER_SID 0x08
struct ip6t_owner_info { struct ip6t_owner_info {
uid_t uid; __kernel_uid32_t uid;
gid_t gid; __kernel_gid32_t gid;
pid_t pid; __kernel_pid_t pid;
pid_t sid; __kernel_pid_t sid;
u_int8_t match, invert; /* flags */ u_int8_t match, invert; /* flags */
}; };

View File

@ -177,8 +177,8 @@ struct ppp_comp_stats {
* the last NP packet was sent or received. * the last NP packet was sent or received.
*/ */
struct ppp_idle { struct ppp_idle {
time_t xmit_idle; /* time since last NP packet sent */ __kernel_time_t xmit_idle; /* time since last NP packet sent */
time_t recv_idle; /* time since last NP packet received */ __kernel_time_t recv_idle; /* time since last NP packet received */
}; };
#endif /* _PPP_DEFS_H_ */ #endif /* _PPP_DEFS_H_ */

View File

@ -1,14 +1,15 @@
#ifndef _LINUX_SUSPEND_IOCTLS_H #ifndef _LINUX_SUSPEND_IOCTLS_H
#define _LINUX_SUSPEND_IOCTLS_H #define _LINUX_SUSPEND_IOCTLS_H
#include <linux/types.h>
/* /*
* This structure is used to pass the values needed for the identification * This structure is used to pass the values needed for the identification
* of the resume swap area from a user space to the kernel via the * of the resume swap area from a user space to the kernel via the
* SNAPSHOT_SET_SWAP_AREA ioctl * SNAPSHOT_SET_SWAP_AREA ioctl
*/ */
struct resume_swap_area { struct resume_swap_area {
loff_t offset; __kernel_loff_t offset;
u_int32_t dev; __u32 dev;
} __attribute__((packed)); } __attribute__((packed));
#define SNAPSHOT_IOC_MAGIC '3' #define SNAPSHOT_IOC_MAGIC '3'
@ -20,13 +21,13 @@ struct resume_swap_area {
#define SNAPSHOT_S2RAM _IO(SNAPSHOT_IOC_MAGIC, 11) #define SNAPSHOT_S2RAM _IO(SNAPSHOT_IOC_MAGIC, 11)
#define SNAPSHOT_SET_SWAP_AREA _IOW(SNAPSHOT_IOC_MAGIC, 13, \ #define SNAPSHOT_SET_SWAP_AREA _IOW(SNAPSHOT_IOC_MAGIC, 13, \
struct resume_swap_area) struct resume_swap_area)
#define SNAPSHOT_GET_IMAGE_SIZE _IOR(SNAPSHOT_IOC_MAGIC, 14, loff_t) #define SNAPSHOT_GET_IMAGE_SIZE _IOR(SNAPSHOT_IOC_MAGIC, 14, __kernel_loff_t)
#define SNAPSHOT_PLATFORM_SUPPORT _IO(SNAPSHOT_IOC_MAGIC, 15) #define SNAPSHOT_PLATFORM_SUPPORT _IO(SNAPSHOT_IOC_MAGIC, 15)
#define SNAPSHOT_POWER_OFF _IO(SNAPSHOT_IOC_MAGIC, 16) #define SNAPSHOT_POWER_OFF _IO(SNAPSHOT_IOC_MAGIC, 16)
#define SNAPSHOT_CREATE_IMAGE _IOW(SNAPSHOT_IOC_MAGIC, 17, int) #define SNAPSHOT_CREATE_IMAGE _IOW(SNAPSHOT_IOC_MAGIC, 17, int)
#define SNAPSHOT_PREF_IMAGE_SIZE _IO(SNAPSHOT_IOC_MAGIC, 18) #define SNAPSHOT_PREF_IMAGE_SIZE _IO(SNAPSHOT_IOC_MAGIC, 18)
#define SNAPSHOT_AVAIL_SWAP_SIZE _IOR(SNAPSHOT_IOC_MAGIC, 19, loff_t) #define SNAPSHOT_AVAIL_SWAP_SIZE _IOR(SNAPSHOT_IOC_MAGIC, 19, __kernel_loff_t)
#define SNAPSHOT_ALLOC_SWAP_PAGE _IOR(SNAPSHOT_IOC_MAGIC, 20, loff_t) #define SNAPSHOT_ALLOC_SWAP_PAGE _IOR(SNAPSHOT_IOC_MAGIC, 20, __kernel_loff_t)
#define SNAPSHOT_IOC_MAXNR 20 #define SNAPSHOT_IOC_MAXNR 20
#endif /* _LINUX_SUSPEND_IOCTLS_H */ #endif /* _LINUX_SUSPEND_IOCTLS_H */

View File

@ -12,14 +12,14 @@
#ifndef _STRUCT_TIMESPEC #ifndef _STRUCT_TIMESPEC
#define _STRUCT_TIMESPEC #define _STRUCT_TIMESPEC
struct timespec { struct timespec {
time_t tv_sec; /* seconds */ __kernel_time_t tv_sec; /* seconds */
long tv_nsec; /* nanoseconds */ long tv_nsec; /* nanoseconds */
}; };
#endif #endif
struct timeval { struct timeval {
time_t tv_sec; /* seconds */ __kernel_time_t tv_sec; /* seconds */
suseconds_t tv_usec; /* microseconds */ __kernel_suseconds_t tv_usec; /* microseconds */
}; };
struct timezone { struct timezone {

View File

@ -4,10 +4,10 @@
#include <linux/types.h> #include <linux/types.h>
struct tms { struct tms {
clock_t tms_utime; __kernel_clock_t tms_utime;
clock_t tms_stime; __kernel_clock_t tms_stime;
clock_t tms_cutime; __kernel_clock_t tms_cutime;
clock_t tms_cstime; __kernel_clock_t tms_cstime;
}; };
#endif #endif

View File

@ -4,8 +4,8 @@
#include <linux/types.h> #include <linux/types.h>
struct utimbuf { struct utimbuf {
time_t actime; __kernel_time_t actime;
time_t modtime; __kernel_time_t modtime;
}; };
#endif #endif

View File

@ -58,7 +58,7 @@ struct xfrm_selector
__u8 prefixlen_s; __u8 prefixlen_s;
__u8 proto; __u8 proto;
int ifindex; int ifindex;
uid_t user; __kernel_uid32_t user;
}; };
#define XFRM_INF (~(__u64)0) #define XFRM_INF (~(__u64)0)

View File

@ -84,8 +84,8 @@ struct otp_info {
#define MEMGETREGIONINFO _IOWR('M', 8, struct region_info_user) #define MEMGETREGIONINFO _IOWR('M', 8, struct region_info_user)
#define MEMSETOOBSEL _IOW('M', 9, struct nand_oobinfo) #define MEMSETOOBSEL _IOW('M', 9, struct nand_oobinfo)
#define MEMGETOOBSEL _IOR('M', 10, struct nand_oobinfo) #define MEMGETOOBSEL _IOR('M', 10, struct nand_oobinfo)
#define MEMGETBADBLOCK _IOW('M', 11, loff_t) #define MEMGETBADBLOCK _IOW('M', 11, __kernel_loff_t)
#define MEMSETBADBLOCK _IOW('M', 12, loff_t) #define MEMSETBADBLOCK _IOW('M', 12, __kernel_loff_t)
#define OTPSELECT _IOR('M', 13, int) #define OTPSELECT _IOR('M', 13, int)
#define OTPGETREGIONCOUNT _IOW('M', 14, int) #define OTPGETREGIONCOUNT _IOW('M', 14, int)
#define OTPGETREGIONINFO _IOW('M', 15, struct otp_info) #define OTPGETREGIONINFO _IOW('M', 15, struct otp_info)

View File

@ -385,7 +385,7 @@ struct snd_pcm_sw_params {
struct snd_pcm_channel_info { struct snd_pcm_channel_info {
unsigned int channel; unsigned int channel;
off_t offset; /* mmap offset */ __kernel_off_t offset; /* mmap offset */
unsigned int first; /* offset to first sample in bits */ unsigned int first; /* offset to first sample in bits */
unsigned int step; /* samples distance in bits */ unsigned int step; /* samples distance in bits */
}; };
@ -789,7 +789,7 @@ struct snd_ctl_elem_info {
snd_ctl_elem_type_t type; /* R: value type - SNDRV_CTL_ELEM_TYPE_* */ snd_ctl_elem_type_t type; /* R: value type - SNDRV_CTL_ELEM_TYPE_* */
unsigned int access; /* R: value access (bitmask) - SNDRV_CTL_ELEM_ACCESS_* */ unsigned int access; /* R: value access (bitmask) - SNDRV_CTL_ELEM_ACCESS_* */
unsigned int count; /* count of values */ unsigned int count; /* count of values */
pid_t owner; /* owner's PID of this control */ __kernel_pid_t owner; /* owner's PID of this control */
union { union {
struct { struct {
long min; /* R: minimum value */ long min; /* R: minimum value */