From bbcba83ef70013ea2e5daad86142d1fdc84939e4 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Mon, 2 Jan 2006 05:39:19 +0000 Subject: The radeon DRM wasn't passing sparse checking in the kernel, this fixes it by adding a new kernel internal cmd buffer type, that has no userspace members, and passes it around. --- shared-core/radeon_drv.h | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'shared-core/radeon_drv.h') diff --git a/shared-core/radeon_drv.h b/shared-core/radeon_drv.h index 615afc78..795e3691 100644 --- a/shared-core/radeon_drv.h +++ b/shared-core/radeon_drv.h @@ -277,6 +277,13 @@ typedef struct drm_radeon_buf_priv { u32 age; } drm_radeon_buf_priv_t; +typedef struct drm_radeon_kcmd_buffer { + int bufsz; + char *buf; + int nbox; + drm_clip_rect_t __user *boxes; +} drm_radeon_kcmd_buffer_t; + extern int radeon_no_wb; extern drm_ioctl_desc_t radeon_ioctls[]; extern int radeon_max_ioctl; @@ -330,10 +337,9 @@ extern long radeon_compat_ioctl(struct file *filp, unsigned int cmd, /* r300_cmdbuf.c */ extern void r300_init_reg_flags(void); -extern int r300_do_cp_cmdbuf( drm_device_t* dev, - DRMFILE filp, - drm_file_t* filp_priv, - drm_radeon_cmd_buffer_t* cmdbuf ); +extern int r300_do_cp_cmdbuf(drm_device_t *dev, DRMFILE filp, + drm_file_t* filp_priv, + drm_radeon_kcmd_buffer_t* cmdbuf); /* Flags for stats.boxes */ -- cgit v1.2.3