From: "Lazar, Lijo" <lijo.lazar@amd.com>
To: Ce Sun <cesun102@amd.com>, amd-gfx@lists.freedesktop.org
Cc: Hawking.Zhang@amd.com
Subject: Re: [PATCH] drm/amdgpu: correct single device PCIe reset flow for DPC status
Date: Fri, 10 Apr 2026 09:25:34 +0530 [thread overview]
Message-ID: <b82e93fa-b7c3-4ee3-906e-09a2cc89b72c@amd.com> (raw)
In-Reply-To: <20260408054126.2202627-1-cesun102@amd.com>
On 08-Apr-26 11:11 AM, Ce Sun wrote:
> For triggering the dpc event with a single device, we still need
> to set the in_link_reset flag and the dpc status.
>
> Signed-off-by: Ce Sun <cesun102@amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index deb41c095b59..0bdb54ab9a53 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -6291,6 +6291,9 @@ pci_ers_result_t amdgpu_pci_error_detected(struct pci_dev *pdev, pci_channel_sta
> amdgpu_reset_set_dpc_status(adev, true);
>
> mutex_lock(&hive->hive_lock);
> + } else {
> + if (amdgpu_device_bus_status_check(adev))
> + amdgpu_reset_set_dpc_status(adev, true);
> }
> memset(&reset_context, 0, sizeof(reset_context));
> INIT_LIST_HEAD(&device_list);
> @@ -6411,6 +6414,7 @@ pci_ers_result_t amdgpu_pci_slot_reset(struct pci_dev *pdev)
> list_for_each_entry(tmp_adev, &hive->device_list, gmc.xgmi.head)
> tmp_adev->pcie_reset_ctx.in_link_reset = true;
> } else {
> + adev->pcie_reset_ctx.in_link_reset = true;
For the device which gets into DPC, this status is set in detect stage
itself within amdgpu_device_recovery_prepare() -
https://github.com/torvalds/linux/blob/master/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c#L6245
You may keep the same for single device case also.
Thanks,
Lijo
> set_bit(AMDGPU_SKIP_HW_RESET, &reset_context.flags);
> }
>
> @@ -6467,8 +6471,10 @@ void amdgpu_pci_resume(struct pci_dev *pdev)
> tmp_adev->pcie_reset_ctx.in_link_reset = false;
> list_add_tail(&tmp_adev->reset_list, &device_list);
> }
> - } else
> + } else {
> + adev->pcie_reset_ctx.in_link_reset = false;
> list_add_tail(&adev->reset_list, &device_list);
> + }
>
> amdgpu_device_sched_resume(&device_list, NULL, NULL);
> amdgpu_device_gpu_resume(adev, &device_list, false);
prev parent reply other threads:[~2026-04-10 3:55 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-08 5:41 [PATCH] drm/amdgpu: correct single device PCIe reset flow for DPC status Ce Sun
2026-04-10 1:25 ` Sun, Ce(Overlord)
2026-04-10 3:55 ` Lazar, Lijo [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b82e93fa-b7c3-4ee3-906e-09a2cc89b72c@amd.com \
--to=lijo.lazar@amd.com \
--cc=Hawking.Zhang@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=cesun102@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.