nouveau.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [Nouveau] [PATCH 01/10] drm/nouveau/nvkm: fini object children in reverse order
@ 2023-05-25  0:30 Ben Skeggs
  2023-05-25  0:30 ` [Nouveau] [PATCH 02/10] drm/nouveau/nvkm: punt spurious irq messages to debug level Ben Skeggs
                   ` (10 more replies)
  0 siblings, 11 replies; 20+ messages in thread
From: Ben Skeggs @ 2023-05-25  0:30 UTC (permalink / raw)
  To: nouveau; +Cc: Ben Skeggs

From: Ben Skeggs <bskeggs@redhat.com>

Turns out, we're currently tearing down the disp core channel *before*
the satellite channels (wndw, etc) during suspend.

This makes RM return NV_ERR_NOT_SUPPORTED on attempting to reallocate
the core channel on resume for some reason, but we probably shouldn't
be doing it on HW either.

Tear down children in the reverse of allocation order instead.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
---
 drivers/gpu/drm/nouveau/nvkm/core/object.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/nouveau/nvkm/core/object.c b/drivers/gpu/drm/nouveau/nvkm/core/object.c
index 301a5e5b5f7f..7c554c14e884 100644
--- a/drivers/gpu/drm/nouveau/nvkm/core/object.c
+++ b/drivers/gpu/drm/nouveau/nvkm/core/object.c
@@ -185,7 +185,7 @@ nvkm_object_fini(struct nvkm_object *object, bool suspend)
 
 	nvif_debug(object, "%s children...\n", action);
 	time = ktime_to_us(ktime_get());
-	list_for_each_entry(child, &object->tree, head) {
+	list_for_each_entry_reverse(child, &object->tree, head) {
 		ret = nvkm_object_fini(child, suspend);
 		if (ret && suspend)
 			goto fail_child;
-- 
2.40.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2023-06-13 21:52 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-25  0:30 [Nouveau] [PATCH 01/10] drm/nouveau/nvkm: fini object children in reverse order Ben Skeggs
2023-05-25  0:30 ` [Nouveau] [PATCH 02/10] drm/nouveau/nvkm: punt spurious irq messages to debug level Ben Skeggs
2023-06-13 21:26   ` Karol Herbst
2023-05-25  0:30 ` [Nouveau] [PATCH 03/10] drm/nouveau/fb/gp102-ga100: switch to simpler vram size detection method Ben Skeggs
2023-06-13 21:29   ` Karol Herbst
2023-05-25  0:31 ` [Nouveau] [PATCH 04/10] drm/nouveau/fb/ga102-: construct vidmem heap via new gp102 paths Ben Skeggs
2023-05-25  0:31 ` [Nouveau] [PATCH 05/10] drm/nouveau/fifo: remove left-over references to nvkm_fifo_chan Ben Skeggs
2023-06-13 21:32   ` Karol Herbst
2023-05-25  0:31 ` [Nouveau] [PATCH 06/10] drm/nouveau/fifo: return ERR_PTR from nvkm_runl_new() Ben Skeggs
2023-06-13 21:32   ` Karol Herbst
2023-05-25  0:31 ` [Nouveau] [PATCH 07/10] drm/nouveau/fifo/ga100-: remove individual runlists rather than failing oneinit Ben Skeggs
2023-06-13 21:35   ` Karol Herbst
2023-05-25  0:31 ` [Nouveau] [PATCH 08/10] drm/nouveau/fifo/ga100-: add per-runlist nonstall intr handling Ben Skeggs
2023-06-13 21:41   ` Karol Herbst
2023-05-25  0:31 ` [Nouveau] [PATCH 09/10] drm/nouveau/nvif: fix potential double-free Ben Skeggs
2023-06-13 21:44   ` Karol Herbst
2023-05-25  0:31 ` [Nouveau] [PATCH 10/10] drm/nouveau/kms: don't call drm_dp_cec_set_edid() on TMDS Ben Skeggs
2023-06-13 21:44   ` Karol Herbst
2023-06-13 21:26 ` [Nouveau] [PATCH 01/10] drm/nouveau/nvkm: fini object children in reverse order Karol Herbst
2023-06-13 21:52 ` Lyude Paul

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).