headers_check warnings in drm headers
Sam Ravnborg
sam at ravnborg.org
Sun Aug 15 12:23:35 PDT 2010
When I ran "make headers_check" on upstream I got following
set of warnings for the drm headers:
usr/include/drm/drm_mode.h:85: found __[us]{8,16,32,64} type without #include <linux/types.h>
usr/include/drm/i915_drm.h:120: found __[us]{8,16,32,64} type without #include <linux/types.h>
usr/include/drm/mga_drm.h:260: found __[us]{8,16,32,64} type without #include <linux/types.h>
usr/include/drm/radeon_drm.h:758: found __[us]{8,16,32,64} type without #include <linux/types.h>
usr/include/drm/via_drm.h:117: found __[us]{8,16,32,64} type without #include <linux/types.h>
When I looked through the files I noticed a few things:
1) Several files uses a mixture of native types and linux types.
For example "unsigned int" and "__u32" in the same file.
2) drm.h contains:
#if defined(__linux__)
#include <linux/types.h>
#include <asm/ioctl.h>
typedef unsigned int drm_handle_t;
#else /* One of the BSDs */
#include <sys/ioccom.h>
#include <sys/types.h>
typedef int8_t __s8;
typedef uint8_t __u8;
typedef int16_t __s16;
typedef uint16_t __u16;
typedef int32_t __s32;
typedef uint32_t __u32;
typedef int64_t __s64;
typedef uint64_t __u64;
typedef unsigned long drm_handle_t;
#endif
Why this when no-one else require this treatment?
3) Lots of typedefs...
All in all - too much to dig into without knowing
the background for the current state.
At a minimum please get the warnings fixed.
Sam
More information about the dri-devel
mailing list