summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/radeon/r100_track.h
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2011-02-14 03:01:10 +0300
committerDave Airlie <airlied@redhat.com>2011-02-14 03:12:14 +0300
commitfff1ce4dc6113b6fdc4e3a815ca5fd229408f8ef (patch)
tree67b3cf58e6b1a23a81bd45b1c98455020f6db248 /drivers/gpu/drm/radeon/r100_track.h
parent501834349e872ed4115eea3beef65ca9eeb5528e (diff)
downloadlinux-fff1ce4dc6113b6fdc4e3a815ca5fd229408f8ef.tar.xz
drm/radeon/kms: check AA resolve registers on r300
This is an important security fix because we allowed arbitrary values to be passed to AARESOLVE_OFFSET. This also puts the right buffer address in the register. Signed-off-by: Marek Olšák <maraeo@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/r100_track.h')
-rw-r--r--drivers/gpu/drm/radeon/r100_track.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/r100_track.h b/drivers/gpu/drm/radeon/r100_track.h
index ee85c4a1fc08..2fef9de7f363 100644
--- a/drivers/gpu/drm/radeon/r100_track.h
+++ b/drivers/gpu/drm/radeon/r100_track.h
@@ -66,15 +66,17 @@ struct r100_cs_track {
struct r100_cs_track_array arrays[11];
struct r100_cs_track_cb cb[R300_MAX_CB];
struct r100_cs_track_cb zb;
+ struct r100_cs_track_cb aa;
struct r100_cs_track_texture textures[R300_TRACK_MAX_TEXTURE];
bool z_enabled;
bool separate_cube;
bool zb_cb_clear;
bool blend_read_enable;
-
bool cb_dirty;
bool zb_dirty;
bool tex_dirty;
+ bool aa_dirty;
+ bool aaresolve;
};
int r100_cs_track_check(struct radeon_device *rdev, struct r100_cs_track *track);