summaryrefslogtreecommitdiff
path: root/shared-core/mach64_drm.h
diff options
context:
space:
mode:
authorGeorge Sapountzis <gsap7@yahoo.gr>2006-10-02 06:13:38 +0300
committerGeorge Sapountzis <gsap7@yahoo.gr>2006-10-02 22:47:26 +0300
commitc9e3aa961eb90265ec024ff57013786e4d47d0e7 (patch)
tree459349e8afc6ece0ed0f383417ca06fb279ddc7f /shared-core/mach64_drm.h
parentf3deef730d52c94ce21ada7e4ceb63aa28a8601b (diff)
Bug 6242: [mach64] Use private DMA buffers, part #4.
mach64_state.c: convert the DRM_MACH64_BLIT ioctl to submit a pointer to user-space memory rather than a DMA buffer index, similar to DRM_MACH64_VERTEX. This change allows the DDX to map the DMA buffers read-only and eliminate a security problem where a client can alter the contents of the DMA buffer after submission to the DRM. This change also affects the DRI/DRM interface. Performace-wise, it basically affects PCI mode where I get a ~12% speedup for some Mesa demos I tested. This is mainly due to eliminating an ioctl for allocating the DMA buffer. mach64_dma.c: move the responsibility for allocating memory for the DMA ring in PCI mode to the DDX. This change affects the DDX/DRM interface and unifies a couple of PCI/AGP code paths for ring memory in the DRM. Bump the mach64 DRM version major and date.
Diffstat (limited to 'shared-core/mach64_drm.h')
-rw-r--r--shared-core/mach64_drm.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/shared-core/mach64_drm.h b/shared-core/mach64_drm.h
index 1fd8c002..083f959d 100644
--- a/shared-core/mach64_drm.h
+++ b/shared-core/mach64_drm.h
@@ -237,7 +237,7 @@ typedef struct drm_mach64_vertex {
} drm_mach64_vertex_t;
typedef struct drm_mach64_blit {
- int idx;
+ void *buf;
int pitch;
int offset;
int format;