diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2015-01-28 14:36:26 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2015-02-02 11:39:33 -0500 |
commit | 544143f9e01a60a93eb00ab4bfcb9bf4702a2a7d (patch) | |
tree | eee96f3a01586bdbafbceca451d2300f87d7268a /drivers/gpu/drm/radeon/radeon_gem.c | |
parent | 72edd83cc9e5819ed1ee771519143d7594e059f0 (diff) | |
download | op-kernel-dev-544143f9e01a60a93eb00ab4bfcb9bf4702a2a7d.zip op-kernel-dev-544143f9e01a60a93eb00ab4bfcb9bf4702a2a7d.tar.gz |
drm/radeon: don't init gpuvm if accel is disabled (v3)
If acceleration is disabled, it does not make sense
to init gpuvm since nothing will use it. Moreover,
if radeon_vm_init() gets called it uses accel to try
and clear the pde tables, etc. which results in a bug.
v2: handle vm_fini as well
v3: handle bo_open/close as well
Bug:
https://bugs.freedesktop.org/show_bug.cgi?id=88786
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_gem.c')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_gem.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_gem.c b/drivers/gpu/drm/radeon/radeon_gem.c index d0b4f7d..ac3c131 100644 --- a/drivers/gpu/drm/radeon/radeon_gem.c +++ b/drivers/gpu/drm/radeon/radeon_gem.c @@ -146,7 +146,8 @@ int radeon_gem_object_open(struct drm_gem_object *obj, struct drm_file *file_pri struct radeon_bo_va *bo_va; int r; - if (rdev->family < CHIP_CAYMAN) { + if ((rdev->family < CHIP_CAYMAN) || + (!rdev->accel_working)) { return 0; } @@ -176,7 +177,8 @@ void radeon_gem_object_close(struct drm_gem_object *obj, struct radeon_bo_va *bo_va; int r; - if (rdev->family < CHIP_CAYMAN) { + if ((rdev->family < CHIP_CAYMAN) || + (!rdev->accel_working)) { return; } |