[amd-gfx] [PATCH] drm/amdgpu: fix num_rbs exposed to userspace

Alex Deucher alexdeucher at gmail.com
Fri Jun 17 15:37:35 UTC 2016


On Fri, Jun 17, 2016 at 11:31 AM, Nicolai Hähnle <nhaehnle at gmail.com> wrote:
> On 17.06.2016 16:20, Alex Deucher wrote:
>>
>> This was accidently broken for harvest cards when the
>> code was refactored for Polaris support.
>>
>> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
>> Cc: stable at vger.kernel.org
>> ---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
>> index 9ab28ca..e5c22cd 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
>> @@ -459,7 +459,7 @@ static int amdgpu_info_ioctl(struct drm_device *dev,
>> void *data, struct drm_file
>>                         dev_info.max_memory_clock = adev->pm.default_mclk
>> * 10;
>>                 }
>>                 dev_info.enabled_rb_pipes_mask =
>> adev->gfx.config.backend_enable_mask;
>> -               dev_info.num_rb_pipes = adev->gfx.config.num_rbs;
>> +               dev_info.num_rb_pipes =
>> adev->gfx.config.max_backends_per_se;
>
>
> At a glance, that looks suspicious to me. num_rb_pipes becomes rb_pipes in
> libdrmm and then num_render_backends. We divide num_render_backends by the
> number of SEs * SHs in radeonsi.
>
> In a nutshell, radeonsi expects this to be the total number of RBs
> (including disabled/harvested ones).

Right.  that's what this patch does.
adev->gfx.config.max_backends_per_se is the total number of RBs per SE
available on the asic. adev->gfx.config.num_rbs is the total number of
enabled RBs (max - disabled).  For non-harvest cards, they are the
same.

Alex

>
> Nicolai
>
>
>>                 dev_info.num_hw_gfx_contexts =
>> adev->gfx.config.max_hw_contexts;
>>                 dev_info._pad = 0;
>>                 dev_info.ids_flags = 0;
>>
>


More information about the amd-gfx mailing list