Browse Source

drm/amd/amdgpu: Fix debugfs wave reader

On non VI/CZ platforms it would not free
the grbm index lock.

Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Tom St Denis <tom.stdenis@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Tom St Denis 8 years ago
parent
commit
5ecfb3b8fc
1 changed files with 3 additions and 2 deletions
  1. 3 2
      drivers/gpu/drm/amd/amdgpu/amdgpu_device.c

+ 3 - 2
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c

@@ -2958,13 +2958,14 @@ static ssize_t amdgpu_debugfs_wave_read(struct file *f, char __user *buf,
 		data[x++] = wave_read_ind(adev, 0x2378, 0x2379, simd, wave, 0x14);
 		data[x++] = wave_read_ind(adev, 0x2378, 0x2379, simd, wave, 0x1A);
 		data[x++] = wave_read_ind(adev, 0x2378, 0x2379, simd, wave, 0x1B);
-	} else {
-		return -EINVAL;
 	}
 
 	amdgpu_gfx_select_se_sh(adev, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF);
 	mutex_unlock(&adev->grbm_idx_mutex);
 
+	if (!x)
+		return -EINVAL;
+
 	while (size && (*pos < x * 4)) {
 		uint32_t value;