diff options
author | Jerome Glisse <jglisse@redhat.com> | 2010-03-17 10:44:29 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2010-03-30 23:11:42 -0400 |
commit | f9274562026558ab54a29331cf13e9ebec8cc890 (patch) | |
tree | 63088dab34efe13e0e23b769fa92d26e8600fe34 /drivers/gpu/drm/radeon/rs600.c | |
parent | 97f23b3d85a4d734a8584dade3a34579931c8f8d (diff) |
drm/radeon/kms: avoid possible oops (call gart_fini before gart_disable)
radeon_gart_fini might call GART unbind callback function which
might try to access GART table but if gart_disable is call first
the GART table will be unmapped so any access to it will oops.
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/rs600.c')
-rw-r--r-- | drivers/gpu/drm/radeon/rs600.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/rs600.c b/drivers/gpu/drm/radeon/rs600.c index df7a855c18ea..30c4b46f3521 100644 --- a/drivers/gpu/drm/radeon/rs600.c +++ b/drivers/gpu/drm/radeon/rs600.c | |||
@@ -268,9 +268,9 @@ void rs600_gart_disable(struct radeon_device *rdev) | |||
268 | 268 | ||
269 | void rs600_gart_fini(struct radeon_device *rdev) | 269 | void rs600_gart_fini(struct radeon_device *rdev) |
270 | { | 270 | { |
271 | radeon_gart_fini(rdev); | ||
271 | rs600_gart_disable(rdev); | 272 | rs600_gart_disable(rdev); |
272 | radeon_gart_table_vram_free(rdev); | 273 | radeon_gart_table_vram_free(rdev); |
273 | radeon_gart_fini(rdev); | ||
274 | } | 274 | } |
275 | 275 | ||
276 | #define R600_PTE_VALID (1 << 0) | 276 | #define R600_PTE_VALID (1 << 0) |