From: Marek Czernohous <mczernohous@gmail.com>
To: nouveau@lists.freedesktop.org
Cc: dri-devel@lists.freedesktop.org, Marek Czernohous <marek@czernohous.de>
Subject: [PATCH 0/3] drm/nouveau: stability fixes for NVAC (MCP79/MCP7A)
Date: Thu, 9 Apr 2026 19:21:23 +0200 [thread overview]
Message-ID: <20260409172126.115441-1-marek@czernohous.de> (raw)
Hi,
this is my first patch series for the kernel. I'm running an Apple Mac
Mini with an NVAC (MCP79) chipset and DisplayPort output, and hit three
separate stability issues with the nouveau driver on kernel 6.18.
The patches are independent but together they bring the NVAC from
"needs NvMSI=0 workaround and can't run Wayland" to fully stable
operation with MSI enabled, working DPMS, and functional Wayland
(tested with Weston).
Patch 1: The MSI re-arm function for G94 uses memory-mapped register
access (nv40), which is unreliable on NVAC — the sister chipset NVAA
already has MSI disabled entirely for this reason. Switching to the
PCI config space method (nv46) fixes sporadic FIFO errors and hangs.
Patch 2: nv50_sor_atomic_disable() dereferences nv_encoder->crtc
unconditionally via container_of(). Under Wayland atomic modesetting,
the CRTC can become NULL between check and commit, causing a kernel
crash. Adding a NULL guard fixes Wayland session teardown.
Patch 3: Transient DisplayPort link glitches on NVAC cause unnecessary
disconnect/reconnect cycles. A single 100ms retry in the HPD IRQ
handler catches these without affecting real unplug detection.
All three patches were tested on the same machine (NVAC 0xac080b1,
DP output) over multiple days with DPMS cycling, VT switching, and
Wayland sessions.
Thanks,
Marek
Marek Czernohous (3):
drm/nouveau/pci: use nv46 MSI rearm for G94 (NVAC/MCP79)
drm/nouveau/kms: add NULL check for CRTC in nv50_sor_atomic_disable
drm/nouveau/dp: retry link check once on HPD IRQ before disconnect
drivers/gpu/drm/nouveau/dispnv50/disp.c | 8 +++++++-
drivers/gpu/drm/nouveau/nouveau_display.c | 4 ++++
drivers/gpu/drm/nouveau/nvkm/subdev/pci/g94.c | 2 +-
3 files changed, 12 insertions(+), 2 deletions(-)
--
2.52.0
next reply other threads:[~2026-04-10 7:06 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-09 17:21 Marek Czernohous [this message]
2026-04-09 17:21 ` [PATCH 1/3] drm/nouveau/pci: use nv46 MSI rearm for G94 (NVAC/MCP79) Marek Czernohous
2026-04-12 0:25 ` Claude review: " Claude Code Review Bot
2026-04-09 17:21 ` [PATCH 2/3] drm/nouveau/kms: add NULL check for CRTC in nv50_sor_atomic_disable Marek Czernohous
2026-04-12 0:25 ` Claude review: " Claude Code Review Bot
2026-04-09 17:21 ` [PATCH 3/3] drm/nouveau/dp: retry link check once on HPD IRQ before disconnect Marek Czernohous
2026-04-12 0:25 ` Claude review: " Claude Code Review Bot
2026-04-12 0:25 ` Claude review: drm/nouveau: stability fixes for NVAC (MCP79/MCP7A) Claude Code Review Bot
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=20260409172126.115441-1-marek@czernohous.de \
--to=mczernohous@gmail.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=marek@czernohous.de \
--cc=nouveau@lists.freedesktop.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox