[PATCH] amdgpu: don't treat BAR resize failure due to unsupported requested size as an error

Christian König ckoenig.leichtzumerken at gmail.com
Thu Dec 10 10:04:47 UTC 2020


Am 09.12.20 um 19:55 schrieb Darren Salt:
> On the resize attempt failing with -EINVAL, instead report an informational
> message indicating that the requested BAR size is not listed as supported by
> the VBIOS.
>
> Without this, as I have an RX 5600 XT which lists only 256MB, 512MB and
> 1024MB as supported, I see
>      [drm:amdgpu_device_resize_fb_bar] *ERROR* Problem resizing BAR0 (-22).

Well NAK, we just recently discussed that internally and the key point 
is that we should not have tried to resize things in the first place 
since that means a lot of churn for the PCIe subsystem.

So this is really an error and we should try to avoid it.

But the fact that you run into this in the first place is really 
interesting, I thought we haven't sold hardware with that configuration yet.

Regards,
Christian.

>
> Signed-off-by: Darren Salt <devspam at moreofthesa.me.uk>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 2 ++
>   1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 355fa0057c26..d80ba03913a7 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -1136,6 +1136,8 @@ int amdgpu_device_resize_fb_bar(struct amdgpu_device *adev)
>   	r = pci_resize_resource(adev->pdev, 0, rbar_size);
>   	if (r == -ENOSPC)
>   		DRM_INFO("Not enough PCI address space for a large BAR.");
> +	else if (r == -EINVAL)
> +		DRM_INFO("VBIOS does not support exposing all VRAM via a large BAR.");
>   	else if (r && r != -ENOTSUPP)
>   		DRM_ERROR("Problem resizing BAR0 (%d).", r);
>   



More information about the amd-gfx mailing list