Re: VCN_INFO_TABLE_MAX_NUM_INSTANCES vs AMDGPU_MAX_VCN_INSTANCES

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 16.05.22 um 19:49 schrieb Ernst Sjöstrand:
Den mån 16 maj 2022 kl 17:13 skrev Alex Deucher <alexdeucher@xxxxxxxxx>:
On Sun, May 15, 2022 at 11:46 AM Ernst Sjöstrand <ernstp@xxxxxxxxx> 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.

Regards,
Christian.


//E



[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux