From: sashiko-bot@kernel.org
To: "Lyude Paul" <lyude@redhat.com>
Cc: dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 1/2] Revert "nouveau/gsp: fix suspend/resume regression on r570 firmware"
Date: Thu, 25 Jun 2026 23:27:03 +0000 [thread overview]
Message-ID: <20260625232704.47CE71F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260625231252.89684-2-lyude@redhat.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
Pre-existing issues:
- [High] Hardware channels and BAR2 are left permanently disabled when r570_fbsr_suspend fails midway.
--
commit ba836a35e2d15cfdb3c33dd77c467b89aed9e52a
Author: Lyude Paul <lyude@redhat.com>
Revert "nouveau/gsp: fix suspend/resume regression on r570 firmware"
This reverts commit 8302d0afeaec0bc57d951dd085e0cffe997d4d18, which was
intended to fix a suspend/resume regression on r570 firmware but instead
caused runtime PM to fail on many laptops.
Cc: <stable@vger.kernel.org> # v6.19+
> diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c b/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c
> --- a/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c
> +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c
[ ... ]
> @@ -92,7 +92,7 @@ r570_fbsr_init(struct nvkm_gsp *gsp, struct sg_table *sgt, u64 size, bool runtim
> }
>
> static int
> -r570_fbsr_suspend(struct nvkm_gsp *gsp, bool runtime)
> +r570_fbsr_suspend(struct nvkm_gsp *gsp)
> {
> struct nvkm_subdev *subdev = &gsp->subdev;
> struct nvkm_device *device = subdev->device;
[ ... ]
> @@ -133,7 +133,7 @@ r570_fbsr_suspend(struct nvkm_gsp *gsp, bool runtime)
> return ret;
>
> /* Initialise FBSR on RM. */
> - ret = r570_fbsr_init(gsp, &gsp->sr.fbsr, size, runtime);
> + ret = r570_fbsr_init(gsp, &gsp->sr.fbsr, size);
> if (ret) {
> nvkm_gsp_sg_free(device, &gsp->sr.fbsr);
> return ret;
[Severity: High]
This is a pre-existing issue, but does this error path leave the GPU
unusable if it fails?
During the suspend sequence, r570_fbsr_suspend() disables channel
scheduling and BAR2 early on. If a subsequent operation like
r570_fbsr_init() (or nvkm_gsp_sg() earlier) fails, it returns an error
here without restoring the hardware state.
Since the PM core will abort the suspend on error and skip the resume
callback for this device, does this mean channels and BAR2 are never
re-enabled, leaving the device in an unrecoverable state until reboot?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260625231252.89684-1-lyude@redhat.com?part=1
next prev parent reply other threads:[~2026-06-25 23:27 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-25 23:10 [PATCH 0/2] drm/nouveau: Fix runtime suspend on R570 Lyude Paul
2026-06-25 23:10 ` Lyude Paul
2026-06-25 23:10 ` [PATCH 1/2] Revert "nouveau/gsp: fix suspend/resume regression on r570 firmware" Lyude Paul
2026-06-25 23:10 ` Lyude Paul
2026-06-25 23:27 ` sashiko-bot [this message]
2026-06-26 12:31 ` Andy Shevchenko
2026-06-26 12:31 ` Andy Shevchenko
2026-06-25 23:10 ` [PATCH 2/2] drm/nouveau/gsp/r570: Never enter Gcoff state Lyude Paul
2026-06-25 23:10 ` Lyude Paul
2026-06-25 23:25 ` sashiko-bot
2026-06-26 12:32 ` Andy Shevchenko
2026-06-26 12:32 ` Andy Shevchenko
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=20260625232704.47CE71F000E9@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=lyude@redhat.com \
--cc=sashiko-reviews@lists.linux.dev \
/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.