[PATCH 2/2] drm/amdgpu: Bypass resizing bars for PVH dom0
Chen, Jiqian
Jiqian.Chen at amd.com
Thu Nov 7 02:17:50 UTC 2024
On 2024/11/6 23:50, Christian König wrote:
> Am 06.11.24 um 04:20 schrieb Chen, Jiqian:
>> On 2024/11/5 21:42, Christian König wrote:
>>> Am 05.11.24 um 07:05 schrieb Jiqian Chen:
>>>> VPCI of Xen doesn't support resizable bar. When discrete GPU is used on
>>>> PVH dom0 which using the VPCI, amdgpu fails to probe, so we need to
>>>> disable this capability for PVH dom0.
>>> What do you mean VPCI doesn't support resizeable BAR?
>> VPCI is a virtual pci of Xen hypervisor used for PVH dom0, it is worked to emulate and process pci devices configuration space access, all that access will trap into Xen and handled by VPCI.
>> But the Resizable Bars capability is not emulated now.
>
> That must be changed or otherwise you will run into more problems on hotplug for example.
>
>>> This is mandatory to be supported or otherwise general PCI resource assignment won't work either.
>>>
>>> In other words you can't hotplug something if that here doesn't work either.
>> Yes, once I added dGPU to Xen PVH dom0, it didn't work unless I added this patch to return success for Rebar.
>
> That's only the tip of the iceberg. You are trying to mitigate symptoms instead of fixing the underlying problem.
>
> So clear NAK from my side for this approach.
OK, I will try to find a solution on the Xen side and remove this patch from my series.
Thanks.
>
> Regards,
> Christian.
>
>>> Regards,
>>> Christian.
>>>
>>>> Signed-off-by: Jiqian Chen <Jiqian.Chen at amd.com>
>>>> Reviewed-by: Huang Rui <Ray.Huang at amd.com>
>>>> ---
>>>> drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 4 ++++
>>>> 1 file changed, 4 insertions(+)
>>>>
>>>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>>> index b3fb92bbd9e2..012feb3790dd 100644
>>>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>>> @@ -1619,6 +1619,10 @@ int amdgpu_device_resize_fb_bar(struct amdgpu_device *adev)
>>>> if (!IS_ENABLED(CONFIG_PHYS_ADDR_T_64BIT))
>>>> return 0;
>>>> + /* Bypass for PVH dom0 which doesn't support resizable bar */
>>>> + if (xen_initial_domain() && xen_pvh_domain())
>>>> + return 0;
>>>> +
>>>> /* Bypass for VF */
>>>> if (amdgpu_sriov_vf(adev))
>>>> return 0;
>
--
Best regards,
Jiqian Chen.
More information about the amd-gfx
mailing list