[PATCH 1/4] drm/amdgpu: Increase potential product_name to 64 characters
Christian König
ckoenig.leichtzumerken at gmail.com
Sat Dec 18 14:36:27 UTC 2021
Am 17.12.21 um 16:31 schrieb Kent Russell:
> Having seen at least 1 42-character product_name, bump the number up to
> 64, and put that definition into amdgpu.h to make future adjustments
> simpler.
>
> Signed-off-by: Kent Russell <kent.russell at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu.h | 3 ++-
> drivers/gpu/drm/amd/amdgpu/amdgpu_fru_eeprom.c | 12 +++++-------
> 2 files changed, 7 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
> index e701dedce344..4e6737e4c36c 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
> @@ -813,6 +813,7 @@ struct amd_powerplay {
>
> #define AMDGPU_RESET_MAGIC_NUM 64
> #define AMDGPU_MAX_DF_PERFMONS 4
> +#define PRODUCT_NAME_LEN 64
Please prefix all defines with AMDGPU_, apart from that looks good to me.
Regards,
Christian.
> struct amdgpu_device {
> struct device *dev;
> struct pci_dev *pdev;
> @@ -1083,7 +1084,7 @@ struct amdgpu_device {
>
> /* Chip product information */
> char product_number[16];
> - char product_name[32];
> + char product_name[PRODUCT_NAME_LEN];
> char serial[20];
>
> atomic_t throttling_logging_enabled;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fru_eeprom.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_fru_eeprom.c
> index 7709caeb233d..5ed24701f9cf 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fru_eeprom.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fru_eeprom.c
> @@ -88,7 +88,7 @@ static int amdgpu_fru_read_eeprom(struct amdgpu_device *adev, uint32_t addrptr,
>
> int amdgpu_fru_get_product_info(struct amdgpu_device *adev)
> {
> - unsigned char buff[34];
> + unsigned char buff[PRODUCT_NAME_LEN+2];
> u32 addrptr;
> int size, len;
>
> @@ -131,12 +131,10 @@ int amdgpu_fru_get_product_info(struct amdgpu_device *adev)
> }
>
> len = size;
> - /* Product name should only be 32 characters. Any more,
> - * and something could be wrong. Cap it at 32 to be safe
> - */
> - if (len >= sizeof(adev->product_name)) {
> - DRM_WARN("FRU Product Number is larger than 32 characters. This is likely a mistake");
> - len = sizeof(adev->product_name) - 1;
> + if (len >= PRODUCT_NAME_LEN) {
> + DRM_WARN("FRU Product Name is larger than %d characters. This is likely a mistake",
> + PRODUCT_NAME_LEN);
> + len = PRODUCT_NAME_LEN - 1;
> }
> /* Start at 2 due to buff using fields 0 and 1 for the address */
> memcpy(adev->product_name, &buff[2], len);
More information about the amd-gfx
mailing list