[PATCH] drm/amd/amdgpu: Change vram debugfs to NO_KIQ for VM environments

Christian König deathsimple at vodafone.de
Wed Sep 13 18:47:46 UTC 2017


Am 13.09.2017 um 18:47 schrieb Deucher, Alexander:
>> -----Original Message-----
>> From: amd-gfx [mailto:amd-gfx-bounces at lists.freedesktop.org] On Behalf
>> Of Tom St Denis
>> Sent: Wednesday, September 13, 2017 12:38 PM
>> To: amd-gfx at lists.freedesktop.org
>> Cc: StDenis, Tom
>> Subject: [PATCH] drm/amd/amdgpu: Change vram debugfs to NO_KIQ for
>> VM environments
>>
>> Signed-off-by: Tom St Denis <tom.stdenis at amd.com>
> Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

Reviewed-by: Christian König <christian.koenig at amd.com>

BTW: There are another instance in amdgpu_ttm_access_memory() which 
needs to be fixed as well.

Might be a good idea to separate that into 
amdgpu_vram_read/amdgpu_vram_write functions as well.

Regards,
Christian.

>
>> ---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 12 ++++++------
>>   1 file changed, 6 insertions(+), 6 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>> index 0d4c2c5a7948..2180ed3eae3b 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>> @@ -1696,9 +1696,9 @@ static ssize_t amdgpu_ttm_vram_read(struct file
>> *f, char __user *buf,
>>   			return result;
>>
>>   		spin_lock_irqsave(&adev->mmio_idx_lock, flags);
>> -		WREG32(mmMM_INDEX, ((uint32_t)*pos) | 0x80000000);
>> -		WREG32(mmMM_INDEX_HI, *pos >> 31);
>> -		value = RREG32(mmMM_DATA);
>> +		WREG32_NO_KIQ(mmMM_INDEX, ((uint32_t)*pos) |
>> 0x80000000);
>> +		WREG32_NO_KIQ(mmMM_INDEX_HI, *pos >> 31);
>> +		value = RREG32_NO_KIQ(mmMM_DATA);
>>   		spin_unlock_irqrestore(&adev->mmio_idx_lock, flags);
>>
>>   		r = put_user(value, (uint32_t *)buf);
>> @@ -1739,9 +1739,9 @@ static ssize_t amdgpu_ttm_vram_write(struct file
>> *f, const char __user *buf,
>>   			return r;
>>
>>   		spin_lock_irqsave(&adev->mmio_idx_lock, flags);
>> -		WREG32(mmMM_INDEX, ((uint32_t)*pos) | 0x80000000);
>> -		WREG32(mmMM_INDEX_HI, *pos >> 31);
>> -		WREG32(mmMM_DATA, value);
>> +		WREG32_NO_KIQ(mmMM_INDEX, ((uint32_t)*pos) |
>> 0x80000000);
>> +		WREG32_NO_KIQ(mmMM_INDEX_HI, *pos >> 31);
>> +		WREG32_NO_KIQ(mmMM_DATA, value);
>>   		spin_unlock_irqrestore(&adev->mmio_idx_lock, flags);
>>
>>   		result += 4;
>> --
>> 2.12.0
>>
>> _______________________________________________
>> amd-gfx mailing list
>> amd-gfx at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx




More information about the amd-gfx mailing list