Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 908029 - amdgpu general protection fault in dc_plane_state_release when releasing display from standby
Summary: amdgpu general protection fault in dc_plane_state_release when releasing disp...
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal major
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL: https://gitlab.freedesktop.org/drm/am...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-06-07 21:42 UTC by Gil Kloepfer
Modified: 2023-07-02 15:05 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
dmesg from kernel 6.1.19 (dmesg-6.1.19.txt,76.53 KB, text/plain)
2023-06-07 21:42 UTC, Gil Kloepfer
Details
dmesg from 6.1.31 with problem (dmesg-6.1.31.txt,88.94 KB, text/plain)
2023-06-07 21:43 UTC, Gil Kloepfer
Details
kernel configuration used to compile kernel (config.gz,53.03 KB, application/gzip)
2023-06-07 21:44 UTC, Gil Kloepfer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Gil Kloepfer 2023-06-07 21:42:47 UTC
Created attachment 863526 [details]
dmesg from kernel 6.1.19

Experiencing intermittent kernel general protection fault when reviving display from power save "standby" (DPMS?) state.  When this happens, display remains blanked, and Xorg no longer responds.  Able to log-into system remotely over ssh (will attach the kernel call trace to this bug - both from 6.1.19 and in 6.1.31).

This happened both on 6.1.19 and 6.1.31 (both are compiled from sys-kernel/gentoo-sources).

This appears to be a bug in amdgpu specifically, but I am not sure how to approach this.  I tried looking at the kernel sources and the best I could tell without digging into this deeper than I am comfortable, it seems like an attempt to access a data structure that has been "free"d somewhere when the display (and thus the video port) is placed into DPMS power save state.  If the memory is still allocated somewhere else, it non-destructively continues and ultimately ends up doing the right thing.  If not, this kernel error occurs, and the driver becomes unresponsive.

Because it happens intermittently, I cannot provide a consistent means of making it happen.  It always occurs when awakening from a DPMS wakeup, though (not while actively working on the system).  Each time it does happen, I log-in remotely and 'dmesg' indicates the problem occurring in the same manner (same traceback).

Other items to note:

1.  The output I am using is DisplayPort-0, which is a "plain old" DisplayPort output.  There are multiple outputs, including HDMI, available on the system.

2.  I am NOT using a display manager (xdm) - basically, I am "old school" - I start X via 'startx' each time I log-in via the text console, and bring down X before logging off for the evening.

3.  I am using fluxbox as my window manager.  Again, fairly "old school."  I mostly run X terminals (classic xterm) for text-based applications, Firefox (www-client/firefox-bin), and a few applications under Wine.  The applications being run does not appear to affect the crashes.

4.  I use xrandr to turn on TearFree mode (xrandr --output DisplayPort-0 --set TearFree on) to prevent some "tearing" of window contents while moving windows.  I have experienced the problem when TearFree was off as well.

5.  I have not yet tried turning off DPMS power saving on the output to see if that improves the situation.  I will await further suggestions before trying these because of the intermittent nature of the problem.
Comment 1 Gil Kloepfer 2023-06-07 21:43:40 UTC
Created attachment 863527 [details]
dmesg from 6.1.31 with problem
Comment 2 Gil Kloepfer 2023-06-07 21:44:46 UTC
Created attachment 863528 [details]
kernel configuration used to compile kernel
Comment 3 Gil Kloepfer 2023-06-07 21:46:15 UTC
$ emerge --info
Portage 3.0.45.3 (python 3.11.3-final-0, default/linux/amd64/17.1, gcc-12, glibc-2.36-r8, 6.1.31-gentoo-x86_64 x86_64)
=================================================================
System uname: Linux-6.1.31-gentoo-x86_64-x86_64-AMD_Ryzen_9_5900HX_with_Radeon_Graphics-with-glibc2.36
KiB Mem:    32256576 total,  28864104 free
KiB Swap:   33554428 total,  33554428 free
Timestamp of repository gentoo: Tue, 06 Jun 2023 02:15:01 +0000
Head commit of repository gentoo: ff8eca0376bead405f86d2ae77e20841cfa3de5c
Timestamp of repository kloepfer: Tue, 06 Jun 2023 05:36:07 +0000
sh bash 5.1_p16-r4
ld GNU ld (Gentoo 2.39 p6) 2.39.0
app-misc/pax-utils:        1.3.5::gentoo
app-shells/bash:           5.1_p16-r4::gentoo
dev-lang/perl:             5.36.0-r2::gentoo
dev-lang/python:           3.11.3::gentoo
dev-lang/rust-bin:         1.69.0::gentoo
dev-util/cmake:            3.26.3::gentoo
dev-util/meson:            1.1.1::gentoo
sys-apps/baselayout:       2.13-r1::gentoo
sys-apps/openrc:           0.46::gentoo
sys-apps/sandbox:          2.29::gentoo
sys-devel/autoconf:        2.71-r5::gentoo
sys-devel/automake:        1.16.5::gentoo
sys-devel/binutils:        2.39-r5::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/gcc:             12.2.1_p20230428-r1::gentoo
sys-devel/gcc-config:      2.10::gentoo
sys-devel/libtool:         2.4.7-r1::gentoo
sys-devel/llvm:            15.0.7::gentoo
sys-devel/make:            4.4.1-r1::gentoo
sys-kernel/linux-headers:  6.1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.36-r8::gentoo
Repositories:

gentoo
    location: /space/sysbuild/portage
    sync-type: rsync
    sync-uri: rsync://rsync.us.gentoo.org/gentoo-portage
    priority: -1000
    volatile: True
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-max-age: 24
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: 

kloepfer
    location: /space/sysbuild/kloepfer-overlay
    masters: gentoo
    volatile: True

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=znver3 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /var/bin
d"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf
/etc/gconf /etc/gentoo-release /etc/init.d/ /etc/revdep-rebuild /etc/sandbox.d /
etc/terminfo"
CXXFLAGS="-O2 -march=znver3 -pipe"
DISTDIR="/sysbuild/distfiles"
EMERGE_DEFAULT_OPTS="--jobs=4 --load-average=7"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GO
BIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHO
RITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME
"
FCFLAGS="-O2 -march=znver3 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-mul
ti-instance buildpkg-live config-protect-if-modified distlocks ebuild-locks fixl
afiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetc
h pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfpe
rms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv
 usersandbox usersync xattr"
FFLAGS="-O2 -march=znver3 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LEX="flex"
MAKEOPTS="-j16"
PKGDIR="/sysbuild/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-
times --compress --force --whole-file --delete --stats --human-readable --timeou
t=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
SHELL="/bin/bash"
USE="X acl amd64 bzip2 cli crypt dri fortran gdbm iconv ipv6 libtirpc multilib n
curses nls nptl openmp pam pcre readline seccomp split-usr ssl test-rust unicode
 xattr zlib" ABI_X86="64" ADA_TARGET="gnat_2021" APACHE2_MODULES="authn_core aut
hz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon auth
n_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_hos
t authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate di
r disk_cache env expires ext_filter file_cache filter headers include info log_c
onfig logio mem_cache mime mime_magic negotiation rewrite setenvif speling statu
s unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets word
s" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS
_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 s
se4_1 sse4_2 sse4a ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate
evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip nav
com oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timi
ng tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="libinput"
 KERNEL="linux" L10N="en-US" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb
216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console prese
nter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENT
ATION="libreoffice" PHP_TARGETS="php7-4 php8-0" POSTGRES_TARGETS="postgres12 pos
tgres13" PYTHON_SINGLE_TARGET="python3_11" PYTHON_TARGETS="python3_11" RUBY_TARG
ETS="ruby30 ruby31" SANE_BACKENDS="genesys net" VIDEO_CARDS="amdgpu radeonsi rad
eon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p ifa
ce geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcp
mac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLA
GS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INST
ALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OB
JDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPR
ESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS,
STRIP, YACC, YFLAGS
Comment 4 Mike Pagano gentoo-dev 2023-06-11 22:37:15 UTC
Please report this upstream at:

https://gitlab.freedesktop.org/drm/amd
Comment 5 Gil Kloepfer 2023-06-11 22:48:37 UTC
Thank you, Mike.  That's a good suggestion, and exactly what I was looking to find.  It's sometimes hard to tell which project is handling these issues and it appears there is already someone there who reported a similar (but not exact) issue to mine.

With a bug report in the Gentoo Bugzilla, hopefully this will help others get to the correct place as well.
Comment 6 Gil Kloepfer 2023-06-12 03:11:37 UTC
Upstream bug report:
https://gitlab.freedesktop.org/drm/amd/-/issues/2620
Comment 7 Mike Pagano gentoo-dev 2023-07-02 15:05:35 UTC
Thanks for your report, we'll watch the  upstream bug and backport any fixes identified.