2006-01-10 12:52:18 +08:00
|
|
|
#ifndef _ASM_GENERIC_IOCTL_H
|
|
|
|
#define _ASM_GENERIC_IOCTL_H
|
|
|
|
|
2012-10-05 01:20:15 +08:00
|
|
|
#include <uapi/asm-generic/ioctl.h>
|
2006-01-10 12:52:18 +08:00
|
|
|
|
2014-06-07 05:37:22 +08:00
|
|
|
#ifdef __CHECKER__
|
|
|
|
#define _IOC_TYPECHECK(t) (sizeof(t))
|
|
|
|
#else
|
2006-01-10 12:52:18 +08:00
|
|
|
/* provoke compile error for invalid uses of size argument */
|
|
|
|
extern unsigned int __invalid_size_argument_for_IOC;
|
|
|
|
#define _IOC_TYPECHECK(t) \
|
|
|
|
((sizeof(t) == sizeof(t[1]) && \
|
|
|
|
sizeof(t) < (1 << _IOC_SIZEBITS)) ? \
|
|
|
|
sizeof(t) : __invalid_size_argument_for_IOC)
|
2014-06-07 05:37:22 +08:00
|
|
|
#endif
|
|
|
|
|
2006-01-10 12:52:18 +08:00
|
|
|
#endif /* _ASM_GENERIC_IOCTL_H */
|