xref: /linux/include/asm-generic/ioctl.h (revision 93df8a1ed6231727c5db94a80b1a6bd5ee67cec3)
1 #ifndef _ASM_GENERIC_IOCTL_H
2 #define _ASM_GENERIC_IOCTL_H
3 
4 #include <uapi/asm-generic/ioctl.h>
5 
6 #ifdef __CHECKER__
7 #define _IOC_TYPECHECK(t) (sizeof(t))
8 #else
9 /* provoke compile error for invalid uses of size argument */
10 extern unsigned int __invalid_size_argument_for_IOC;
11 #define _IOC_TYPECHECK(t) \
12 	((sizeof(t) == sizeof(t[1]) && \
13 	  sizeof(t) < (1 << _IOC_SIZEBITS)) ? \
14 	  sizeof(t) : __invalid_size_argument_for_IOC)
15 #endif
16 
17 #endif /* _ASM_GENERIC_IOCTL_H */
18