VCN_INFO_TABLE_MAX_NUM_INSTANCES vs AMDGPU_MAX_VCN_INSTANCES

Christian König ckoenig.leichtzumerken at gmail.com
Mon May 16 19:27:45 UTC 2022


Am 16.05.22 um 20:15 schrieb Alex Deucher:
> On Mon, May 16, 2022 at 2:10 PM Christian König
> <ckoenig.leichtzumerken at gmail.com> wrote:
>> Am 16.05.22 um 19:49 schrieb Ernst Sjöstrand:
>>
>> Den mån 16 maj 2022 kl 17:13 skrev Alex Deucher <alexdeucher at gmail.com>:
>>> On Sun, May 15, 2022 at 11:46 AM Ernst Sjöstrand <ernstp at gmail.com> wrote:
>>>> smatch found this problem on amd-staging-drm-next:
>>>>
>>>> drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c:1443 amdgpu_discovery_get_vcn_info() error: buffer overflow 'adev->vcn.vcn_codec_disable_mask' 2 <= 3
>>>>
>>>> This is caused by:
>>>> #define AMDGPU_MAX_VCN_INSTANCES 2
>>>> #define VCN_INFO_TABLE_MAX_NUM_INSTANCES 4
>>>>
>>>> Can we just drop VCN_INFO_TABLE_MAX_NUM_INSTANCES completely and use AMDGPU_MAX_VCN_INSTANCES everywhere instead (and bump it to 4)?
>>> We should be able to bump AMDGPU_MAX_VCN_INSTANCES to 4 (although it
>>> would waste some memory in the places it is used at this point).
>>> VCN_INFO_TABLE_MAX_NUM_INSTANCES is part of a firmware structure so we
>>> can't change that without breaking the firmware structure.
>>>
>>> Alex
>>
>> It would be nice to get rid of this pattern and make sure it doesn't happen again when the VCN info table is raised to 5.
>> It's very similar to the HWIP_MAX_INSTANCE issue.
>>
>>
>> No, as Alex explained that distinction is intentional.
>>
>> The firmware definition is 4 for future extensions, that doesn't mean that this is currently used.
>>
>> There is currently simply no need to set AMDGPU_MAX_VCN_INSTANCES to more than 2.
> Right.  The attached patch should protect against the scenario you are
> envisioning.

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

>
> Alex
>
>> Regards,
>> Christian.
>>
>>
>> //E
>>
>>



More information about the amd-gfx mailing list