Linux-Next discussions
 help / color / mirror / Atom feed
From: Bert Karwatzki <spasswolf@web.de>
To: linux-kernel@vger.kernel.org, Rafal Ostrowski <rafal.ostrowski@amd.com>
Cc: linux-next@vger.kernel.org, linux-rt-devel@lists.linux.dev,
	 amd-gfx@lists.freedesktop.org,
	Alex Deucher <alexander.deucher@amd.com>,
	 Mario Limonciello <mario.limonciello@amd.com>,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	Thomas Gleixner	 <tglx@linutronix.de>,
	spasswolf@web.de
Subject: Re: [Re] kernel panic during shutdown in  next-20260722
Date: Sun, 26 Jul 2026 20:47:09 +0200	[thread overview]
Message-ID: <6e0b713cffd64b3c30eb4ff04e50721bac9cf8ca.camel@web.de> (raw)
In-Reply-To: <4af8467060c5ee136c2b99ab855a007fec4e8c6c.camel@web.de>

Am Sonntag, dem 26.07.2026 um 01:16 +0200 schrieb Bert Karwatzki:


Now I've run a test with
commit 8bf0cb97edb ("drm/amd/display: Move dml2_destroy to non-FPU compilation unit")
with the following debugging patch:

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c b/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c
index 172999cc84e5..5015aea1b988 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/dc_fpu.c
@@ -95,7 +95,9 @@ void dc_fpu_begin(const char *function_name, const int line)
        int depth;
 
        WARN_ON_ONCE(!in_task());
+       printk(KERN_INFO "%s 0: preempt_count=%d %s %d\n", __func__, preempt_count(), function_name, line);
        preempt_disable();
+       printk(KERN_INFO "%s 1: preempt_count=%d %s %d\n", __func__, preempt_count(), function_name, line);
        depth = this_cpu_inc_return(fpu_recursion_depth);
        if (depth == 1) {
                BUG_ON(!kernel_fpu_available());
@@ -127,5 +129,7 @@ void dc_fpu_end(const char *function_name, const int line)
        }
 
        TRACE_DCN_FPU(false, function_name, line, depth);
+       printk(KERN_INFO "%s 0: preempt_count=%d %s %d\n", __func__, preempt_count(), function_name, line);
        preempt_enable();
+       printk(KERN_INFO "%s 1: preempt_count=%d %s %d\n", __func__, preempt_count(), function_name, line);
 }

This gives this log via netconsole in case of a kernel panic, after the "schduling while
atomic" message a preempt_count underflow occurs:

2026-07-26T16:32:29.090401+02:00 T4198;netconsole: network logging started
2026-07-26T16:32:29.091016+02:00 T4198;netconsole-setup: Test log message to verify netconsole configuration.
2026-07-26T16:32:32.377992+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_state_create_copy 287
2026-07-26T16:32:32.377992+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_state_create_copy 287
2026-07-26T16:32:32.378660+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 26
2026-07-26T16:32:32.386022+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 26
2026-07-26T16:32:32.386022+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 26
2026-07-26T16:32:32.386022+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 26
2026-07-26T16:32:32.386022+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 30
2026-07-26T16:32:32.386022+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 30
2026-07-26T16:32:32.389301+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 30
2026-07-26T16:32:32.389301+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 30
2026-07-26T16:32:32.389301+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 40
2026-07-26T16:32:32.389301+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 40
2026-07-26T16:32:32.389301+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 40
2026-07-26T16:32:32.389301+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 40
2026-07-26T16:32:32.390204+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_state_create_copy 289
2026-07-26T16:32:32.390204+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_state_create_copy 289
2026-07-26T16:32:32.390204+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dcn401_validate_bandwidth 1696
2026-07-26T16:32:32.390204+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dcn401_validate_bandwidth 1696
2026-07-26T16:32:32.395783+02:00 T1596;dc_fpu_end 0: preempt_count=1 dcn401_validate_bandwidth 1700
2026-07-26T16:32:32.395783+02:00 T1596;dc_fpu_end 1: preempt_count=0 dcn401_validate_bandwidth 1700
2026-07-26T16:32:32.395783+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_state_free 387
2026-07-26T16:32:32.395783+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_state_free 387
2026-07-26T16:32:32.395783+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_destroy 61
2026-07-26T16:32:32.395783+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_destroy 61
2026-07-26T16:32:32.395783+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_destroy 61
2026-07-26T16:32:32.395783+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_destroy 61
2026-07-26T16:32:32.395836+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_destroy 62
2026-07-26T16:32:32.395836+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_destroy 62
2026-07-26T16:32:32.395836+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_destroy 62
2026-07-26T16:32:32.395836+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_destroy 62
2026-07-26T16:32:32.399013+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml2_destroy 119
2026-07-26T16:32:32.399085+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml2_destroy 119
2026-07-26T16:32:32.399085+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml2_destroy 119
2026-07-26T16:32:32.399085+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml2_destroy 119
2026-07-26T16:32:32.399085+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_state_free 393
2026-07-26T16:32:32.399085+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_state_free 393
2026-07-26T16:32:32.405402+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_state_create_copy 287
2026-07-26T16:32:32.405402+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_state_create_copy 287
2026-07-26T16:32:32.406122+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 26
2026-07-26T16:32:32.406122+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 26
2026-07-26T16:32:32.408876+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 26
2026-07-26T16:32:32.408876+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 26
2026-07-26T16:32:32.408876+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 30
2026-07-26T16:32:32.408876+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 30
2026-07-26T16:32:32.416499+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 30
2026-07-26T16:32:32.416961+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 30
2026-07-26T16:32:32.416961+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 40
2026-07-26T16:32:32.416961+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 40
2026-07-26T16:32:32.431307+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 40
2026-07-26T16:32:32.431307+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 40
2026-07-26T16:32:32.431984+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_state_create_copy 289
2026-07-26T16:32:32.431984+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_state_create_copy 289
2026-07-26T16:32:32.431984+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dcn401_validate_bandwidth 1696
2026-07-26T16:32:32.431984+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dcn401_validate_bandwidth 1696
2026-07-26T16:32:32.431984+02:00 T1596;dc_fpu_end 0: preempt_count=1 dcn401_validate_bandwidth 1700
2026-07-26T16:32:32.431984+02:00 T1596;dc_fpu_end 1: preempt_count=0 dcn401_validate_bandwidth 1700
2026-07-26T16:32:32.431984+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_state_create_copy 287
2026-07-26T16:32:32.431984+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_state_create_copy 287
2026-07-26T16:32:32.431984+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 26
2026-07-26T16:32:32.431984+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 26
2026-07-26T16:32:32.432058+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 26
2026-07-26T16:32:32.432058+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 26
2026-07-26T16:32:32.432058+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 30
2026-07-26T16:32:32.432058+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 30
2026-07-26T16:32:32.432058+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 30
2026-07-26T16:32:32.432058+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 30
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 40
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 40
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 40
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 40
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_state_create_copy 289
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_state_create_copy 289
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dcn401_validate_bandwidth 1696
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dcn401_validate_bandwidth 1696
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_create_stream_for_sink 180
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_create_stream_for_sink 180
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_create_stream_for_sink 180
2026-07-26T16:32:32.432089+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_create_stream_for_sink 180
2026-07-26T16:32:32.432579+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_create_stream_for_sink 185
2026-07-26T16:32:32.432579+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_create_stream_for_sink 185
2026-07-26T16:32:32.432579+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_create_stream_for_sink 185
2026-07-26T16:32:32.432579+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_create_stream_for_sink 185
2026-07-26T16:32:32.432579+02:00 T1596;dc_fpu_end 0: preempt_count=1 dcn401_validate_bandwidth 1700
2026-07-26T16:32:32.432579+02:00 T1596;dc_fpu_end 1: preempt_count=0 dcn401_validate_bandwidth 1700
2026-07-26T16:32:32.432579+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_state_create_copy 287
2026-07-26T16:32:32.432579+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_state_create_copy 287
2026-07-26T16:32:32.432579+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 26
2026-07-26T16:32:32.432579+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 26
2026-07-26T16:32:32.433667+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 26
2026-07-26T16:32:32.433667+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 26
2026-07-26T16:32:32.433667+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 30
2026-07-26T16:32:32.433667+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 30
2026-07-26T16:32:32.434556+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 30
2026-07-26T16:32:32.434556+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 30
2026-07-26T16:32:32.434556+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 40
2026-07-26T16:32:32.434556+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 40
2026-07-26T16:32:32.434582+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 40
2026-07-26T16:32:32.434582+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 40
2026-07-26T16:32:32.434962+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_state_create_copy 289
2026-07-26T16:32:32.434962+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_state_create_copy 289
2026-07-26T16:32:32.434962+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dcn401_prepare_mcache_programming 1736
2026-07-26T16:32:32.434962+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dcn401_prepare_mcache_programming 1736
2026-07-26T16:32:32.434962+02:00 T1596;dc_fpu_end 0: preempt_count=1 dcn401_prepare_mcache_programming 1740
2026-07-26T16:32:32.434962+02:00 T1596;dc_fpu_end 1: preempt_count=0 dcn401_prepare_mcache_programming 1740
2026-07-26T16:32:32.434984+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_state_free 387
2026-07-26T16:32:32.434984+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_state_free 387
2026-07-26T16:32:32.434984+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_destroy 61
2026-07-26T16:32:32.434984+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_destroy 61
2026-07-26T16:32:32.434984+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_destroy 61
2026-07-26T16:32:32.434984+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_destroy 61
2026-07-26T16:32:32.434984+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_destroy 62
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_destroy 62
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_destroy 62
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_destroy 62
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml2_destroy 119
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml2_destroy 119
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml2_destroy 119
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml2_destroy 119
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_state_free 393
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_state_free 393
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dcn401_prepare_mcache_programming 1736
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dcn401_prepare_mcache_programming 1736
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_end 0: preempt_count=1 dcn401_prepare_mcache_programming 1740
2026-07-26T16:32:32.435010+02:00 T1596;dc_fpu_end 1: preempt_count=0 dcn401_prepare_mcache_programming 1740
2026-07-26T16:32:32.435305+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_state_free 387
2026-07-26T16:32:32.435305+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_state_free 387
2026-07-26T16:32:32.435305+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_destroy 61
2026-07-26T16:32:32.435305+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_destroy 61
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_destroy 61
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_destroy 61
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_destroy 62
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_destroy 62
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_destroy 62
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_destroy 62
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml2_destroy 119
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml2_destroy 119
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml2_destroy 119
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml2_destroy 119
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_state_free 393
2026-07-26T16:32:32.463118+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_state_free 393
2026-07-26T16:32:32.485076+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_state_create_copy 287
2026-07-26T16:32:32.485076+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_state_create_copy 287
2026-07-26T16:32:32.485076+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 26
2026-07-26T16:32:32.485076+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 26
2026-07-26T16:32:32.488796+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 26
2026-07-26T16:32:32.488796+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 26
2026-07-26T16:32:32.488796+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 30
2026-07-26T16:32:32.488796+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 30
2026-07-26T16:32:32.489469+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 30
2026-07-26T16:32:32.489469+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 30
2026-07-26T16:32:32.489469+02:00 T1596;dc_fpu_end 0: preempt_count=1 dml21_allocate_memory 40
2026-07-26T16:32:32.489469+02:00 T1596;dc_fpu_end 1: preempt_count=0 dml21_allocate_memory 40
2026-07-26T16:32:32.489469+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dml21_allocate_memory 40
2026-07-26T16:32:32.489469+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dml21_allocate_memory 40
2026-07-26T16:32:32.490008+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_state_create_copy 289
2026-07-26T16:32:32.490008+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_state_create_copy 289
2026-07-26T16:32:32.490008+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dcn401_validate_bandwidth 1696
2026-07-26T16:32:32.490008+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dcn401_validate_bandwidth 1696
2026-07-26T16:32:32.490008+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_create_stream_for_sink 180
2026-07-26T16:32:32.490008+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_create_stream_for_sink 180
2026-07-26T16:32:32.490408+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_create_stream_for_sink 180
2026-07-26T16:32:32.490408+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_create_stream_for_sink 180
2026-07-26T16:32:32.490408+02:00 T1596;dc_fpu_end 0: preempt_count=1 dc_create_stream_for_sink 185
2026-07-26T16:32:32.490408+02:00 T1596;dc_fpu_end 1: preempt_count=0 dc_create_stream_for_sink 185
2026-07-26T16:32:32.490408+02:00 T1596;dc_fpu_begin 0: preempt_count=0 dc_create_stream_for_sink 185
2026-07-26T16:32:32.492405+02:00 T1596;dc_fpu_begin 1: preempt_count=1 dc_create_stream_for_sink 185
2026-07-26T16:32:32.492405+02:00 T1596;BUG: scheduling while atomic: Xorg/1596/0x00000003
2026-07-26T16:32:32.492405+02:00 T1596;4 locks held by Xorg/1596:
2026-07-26T16:32:32.492405+02:00 T1596; #0: ffffaa7487f93ab0 (crtc_ww_class_acquire){+.+.}-{0:0}, at: drm_mode_setcrtc+0x153/0x8e0 [drm]
2026-07-26T16:32:32.492405+02:00 T1596; #1: ffffaa7487f93ad8 (crtc_ww_class_mutex){+.+.}-{4:4}, at: drm_mode_setcrtc+0x153/0x8e0 [drm]
2026-07-26T16:32:32.492405+02:00 T1596; #2: ffff9b1cd5b65478 (&adev->dm.dc_lock){+.+.}-{4:4}, at: amdgpu_dm_atomic_commit_tail+0x120a/0x3460 [amdgpu]
2026-07-26T16:32:32.492405+02:00 T1596; #3: ffffffff9afbcc50 (&zone->lock){+.+.}-{3:3}, at: get_page_from_freelist+0x261/0x19f0
2026-07-26T16:32:32.492454+02:00 T1596;Modules linked in: netconsole snd_seq_dummy snd_hrtimer snd_seq cfg80211 nls_ascii nls_cp437 vfat fat joydev
snd_usb_audio snd_usbmidi_lib intel_rapl_msr snd_ump snd_rawmidi intel_rapl_common snd_hda_codec_atihdmi snd_seq_device iosf_mbi snd_hda_codec_hdmi wmi_bmof
rapl snd_hda_intel pcspkr snd_hda_codec snd_hda_core spd5118 snd_intel_dspcfg regmap_i2c k10temp snd_hwdep snd_pcm snd_timer snd soundcore rfkill evdev ccp
nct6775 nct6775_core hwmon_vid efi_pstore configfs efivarfs autofs4 ext4 mbcache jbd2 amdgpu hid_generic usbhid hid drm_client_lib i2c_algo_bit drm_buddy
drm_ttm_helper ttm drm_exec drm_suballoc_helper mfd_core drm_panel_backlight_quirks gpu_sched amdxcp drm_display_helper ahci drm_kms_helper libahci xhci_pci drm
libata xhci_hcd nvme scsi_mod cec video nvme_core usbcore igc crc16 scsi_common nvme_keyring usb_common nvme_auth hkdf i2c_piix4 gpio_amdpt i2c_smbus wmi
gpio_generic
2026-07-26T16:32:32.492454+02:00 T1596;CPU: 25 UID: 0 PID: 1596 Comm: Xorg Not tainted 7.0.0-rc7-dcfpubad-01910-g3c2692d1b40e #1272 PREEMPT_{RT,(full)} 
2026-07-26T16:32:32.492454+02:00 T1596;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
2026-07-26T16:32:32.492454+02:00 T1596;Call Trace:
2026-07-26T16:32:32.492454+02:00 T1596; <TASK>
2026-07-26T16:32:32.492454+02:00 T1596; ? dump_stack_lvl+0x5b/0x80
2026-07-26T16:32:32.492454+02:00 T1596; ? __schedule_bug.cold+0x5a/0x67
2026-07-26T16:32:32.492454+02:00 T1596; ? __schedule+0x1468/0x1ae0
2026-07-26T16:32:32.492454+02:00 T1596; ? rtlock_slowlock_locked+0x281/0x1aa0
2026-07-26T16:32:32.492454+02:00 T1596; ? mark_held_locks+0x40/0x70
2026-07-26T16:32:32.492454+02:00 T1596; ? schedule_rtlock+0x15/0x30
2026-07-26T16:32:32.492454+02:00 T1596; ? rtlock_slowlock_locked+0x5b4/0x1aa0
2026-07-26T16:32:32.492454+02:00 T1596; ? lock_acquire+0xbf/0x2e0
2026-07-26T16:32:32.492454+02:00 T1596; ? rt_spin_lock+0x85/0x1b0
2026-07-26T16:32:32.492454+02:00 T1596; ? get_page_from_freelist+0x261/0x19f0
2026-07-26T16:32:32.492454+02:00 T1596; ? mark_held_locks+0x40/0x70
2026-07-26T16:32:32.492476+02:00 T1596; ? dc_link_get_highest_encoding_format+0x61/0xb0 [amdgpu]
2026-07-26T16:32:32.492476+02:00 T1596; ? __alloc_frozen_pages_noprof+0x158/0x370
2026-07-26T16:32:32.493359+02:00 T1596; ? ___kmalloc_large_node+0xd7/0xf0
2026-07-26T16:32:32.494837+02:00 T1596; ? __kmalloc_large_node_noprof+0x1b/0x130
2026-07-26T16:32:32.494837+02:00 T1596; ? __kvmalloc_node_noprof+0x4ad/0x730
2026-07-26T16:32:32.494837+02:00 T1596; ? dc_create_plane_state+0x24/0x80 [amdgpu]
2026-07-26T16:32:32.494837+02:00 T1596; ? dc_create_plane_state+0x24/0x80 [amdgpu]
2026-07-26T16:32:32.494837+02:00 T1596; ? dc_state_create_phantom_plane+0x15/0x50 [amdgpu]
2026-07-26T16:32:32.494837+02:00 T1596; ? dml21_handle_phantom_streams_planes+0x292/0x510 [amdgpu]
2026-07-26T16:32:32.494860+02:00 T1596; ? dml21_mode_check_and_programming+0x157/0x7e0 [amdgpu]
2026-07-26T16:32:32.494860+02:00 T1596; ? number+0x47c/0x580
2026-07-26T16:32:32.494860+02:00 T1596; ? desc_read_finalized_seq+0x27/0x80
2026-07-26T16:32:32.494860+02:00 T1596; ? _prb_read_valid+0x203/0x290
2026-07-26T16:32:32.494860+02:00 T1596; ? dcn401_validate_bandwidth+0xb8/0x1f0 [amdgpu]
2026-07-26T16:32:32.494860+02:00 T1596; ? update_planes_and_stream_state+0xeb5/0x1520 [amdgpu]
2026-07-26T16:32:32.495056+02:00 T1596; ? update_planes_and_stream_prepare_v3+0xb3/0x430 [amdgpu]
2026-07-26T16:32:32.495056+02:00 T1596; ? dc_update_planes_and_stream+0x87/0x130 [amdgpu]
2026-07-26T16:32:32.495056+02:00 T1596; ? amdgpu_dm_atomic_commit_tail+0x126b/0x3460 [amdgpu]
2026-07-26T16:32:32.495056+02:00 T1596; ? commit_tail+0x9d/0x130 [drm_kms_helper]
2026-07-26T16:32:32.495088+02:00 T1596; ? drm_atomic_helper_commit+0x15a/0x1a0 [drm_kms_helper]
2026-07-26T16:32:32.495088+02:00 T1596; ? drm_atomic_commit+0xac/0xe0 [drm]
2026-07-26T16:32:32.495088+02:00 T1596; ? __drm_universal_plane_init.cold+0x17/0x17 [drm]
2026-07-26T16:32:32.495088+02:00 T1596; ? drm_atomic_helper_set_config+0x6f/0xb0 [drm_kms_helper]
2026-07-26T16:32:32.495116+02:00 T1596; ? drm_mode_setcrtc+0x466/0x8e0 [drm]
2026-07-26T16:32:32.495116+02:00 T1596; ? lock_acquire+0xbf/0x2e0
2026-07-26T16:32:32.495116+02:00 T1596; ? rt_mutex_slowunlock+0x46/0x420
2026-07-26T16:32:32.495116+02:00 T1596; ? drm_mode_getcrtc+0x190/0x190 [drm]
2026-07-26T16:32:32.495116+02:00 T1596; ? drm_ioctl_kernel+0xa7/0x100 [drm]
2026-07-26T16:32:32.495116+02:00 T1596; ? drm_ioctl+0x288/0x510 [drm]
2026-07-26T16:32:32.495116+02:00 T1596; ? drm_mode_getcrtc+0x190/0x190 [drm]
2026-07-26T16:32:32.495141+02:00 T1596; ? amdgpu_drm_ioctl+0x4b/0x80 [amdgpu]
2026-07-26T16:32:32.495141+02:00 T1596; ? __x64_sys_ioctl+0x95/0xe0
2026-07-26T16:32:32.495141+02:00 T1596; ? do_syscall_64+0x129/0x6b0
2026-07-26T16:32:32.495141+02:00 T1596; ? rt_mutex_slowunlock+0x3bd/0x420
2026-07-26T16:32:32.495141+02:00 T1596; ? wake_up_q+0x32/0x80
2026-07-26T16:32:32.495141+02:00 T1596; ? futex_wake+0xa7/0x1c0
2026-07-26T16:32:32.495171+02:00 T1596; ? do_futex+0x11a/0x180
2026-07-26T16:32:32.495171+02:00 T1596; ? __x64_sys_futex+0x10d/0x200
2026-07-26T16:32:32.495171+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:32.495171+02:00 T1596; ? lockdep_hardirqs_on_prepare+0xd7/0x180
2026-07-26T16:32:32.495171+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:32.495171+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:32.495171+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:32.495171+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:32.495189+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:32.495189+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:32.495189+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:32.495189+02:00 T1596; ? lockdep_hardirqs_on_prepare+0xd7/0x180
2026-07-26T16:32:32.495189+02:00 T1596; ? irqentry_exit+0xbd/0x5a0
2026-07-26T16:32:32.495189+02:00 T1596; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
2026-07-26T16:32:32.495189+02:00 T1596; </TASK>
2026-07-26T16:32:32.495189+02:00 T1596;------------[ cut here ]------------
2026-07-26T16:32:32.495189+02:00 T1596;WARNING: drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/dc_fpu.c:128 at dc_fpu_end+0x145/0x150 [amdgpu], CPU#31:
Xorg/1596
2026-07-26T16:32:32.495189+02:00 T1596;Modules linked in: netconsole snd_seq_dummy snd_hrtimer snd_seq cfg80211 nls_ascii nls_cp437 vfat fat joydev
snd_usb_audio snd_usbmidi_lib intel_rapl_msr snd_ump snd_rawmidi intel_rapl_common snd_hda_codec_atihdmi snd_seq_device iosf_mbi snd_hda_codec_hdmi wmi_bmof
rapl snd_hda_intel pcspkr snd_hda_codec snd_hda_core spd5118 snd_intel_dspcfg regmap_i2c k10temp snd_hwdep snd_pcm snd_timer snd soundcore rfkill evdev ccp
nct6775 nct6775_core hwmon_vid efi_pstore configfs efivarfs autofs4 ext4 mbcache jbd2 amdgpu hid_generic usbhid hid drm_client_lib i2c_algo_bit drm_buddy
drm_ttm_helper ttm drm_exec drm_suballoc_helper mfd_core drm_panel_backlight_quirks gpu_sched amdxcp drm_display_helper ahci drm_kms_helper libahci xhci_pci drm
libata xhci_hcd nvme scsi_mod cec video nvme_core usbcore igc crc16 scsi_common nvme_keyring usb_common nvme_auth hkdf i2c_piix4 gpio_amdpt i2c_smbus wmi
gpio_generic
2026-07-26T16:32:32.495189+02:00 T1596;CPU: 31 UID: 0 PID: 1596 Comm: Xorg Tainted: G        W           7.0.0-rc7-dcfpubad-01910-g3c2692d1b40e #1272
PREEMPT_{RT,(full)} 
2026-07-26T16:32:32.495189+02:00 T1596;Tainted: [W]=WARN
2026-07-26T16:32:32.495238+02:00 T1596;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
2026-07-26T16:32:32.495238+02:00 T1596;RIP: 0010:dc_fpu_end+0x145/0x150 [amdgpu]
2026-07-26T16:32:32.495238+02:00 T1596;Code: c0 0f 85 22 ff ff ff 48 8d 3d 07 1f 4b 00 67 48 0f b9 3a e9 11 ff ff ff 44 89 04 24 e8 94 60 12 d9 44 8b 04 24 e9
e8 fe ff ff <0f> 0b e9 e1 fe ff ff 0f 1f 40 00 41 56 41 55 41 54 55 53 48 83 ec
2026-07-26T16:32:32.495238+02:00 T1596;RSP: 0018:ffffaa7487f93400 EFLAGS: 00010296
2026-07-26T16:32:32.495238+02:00 T1596;RAX: 0000000000000001 RBX: ffffffffc13c39b0 RCX: 0000000000000008
2026-07-26T16:32:32.495238+02:00 T1596;RDX: 0000000000000000 RSI: 00000000000006a4 RDI: ffffffffc13c39b0
2026-07-26T16:32:32.495238+02:00 T1596;RBP: 00000000000006a4 R08: 00000000ffffffff R09: 0000000000000001
2026-07-26T16:32:32.495238+02:00 T1596;R10: ffff9b1d19c80000 R11: 0000000000000002 R12: ffff9b1d066e0000
2026-07-26T16:32:32.495238+02:00 T1596;R13: ffff9b1ce5c00000 R14: 0000000000000000 R15: 0000000000000001
2026-07-26T16:32:32.495238+02:00 T1596;FS:  00007f92f4c39b80(0000) GS:ffff9b2c62a46000(0000) knlGS:0000000000000000
2026-07-26T16:32:32.496222+02:00 T1596;CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
2026-07-26T16:32:32.496222+02:00 T1596;CR2: 00007f2cedfb8990 CR3: 0000000127bee000 CR4: 0000000000f50ef0
2026-07-26T16:32:32.496222+02:00 T1596;PKRU: 55555554
2026-07-26T16:32:32.496222+02:00 T1596;Call Trace:
2026-07-26T16:32:32.496222+02:00 T1596; <TASK>
2026-07-26T16:32:32.496234+02:00 T1596; ? dcn401_validate_bandwidth+0xd1/0x1f0 [amdgpu]
2026-07-26T16:32:32.496234+02:00 T1596; ? update_planes_and_stream_state+0xeb5/0x1520 [amdgpu]
2026-07-26T16:32:32.496234+02:00 T1596; ? update_planes_and_stream_prepare_v3+0xb3/0x430 [amdgpu]
2026-07-26T16:32:32.496234+02:00 T1596; ? dc_update_planes_and_stream+0x87/0x130 [amdgpu]
2026-07-26T16:32:32.496269+02:00 T1596; ? amdgpu_dm_atomic_commit_tail+0x126b/0x3460 [amdgpu]
2026-07-26T16:32:32.496269+02:00 T1596; ? commit_tail+0x9d/0x130 [drm_kms_helper]
2026-07-26T16:32:32.496269+02:00 T1596; ? drm_atomic_helper_commit+0x15a/0x1a0 [drm_kms_helper]
2026-07-26T16:32:32.496269+02:00 T1596; ? drm_atomic_commit+0xac/0xe0 [drm]
2026-07-26T16:32:32.496269+02:00 T1596; ? __drm_universal_plane_init.cold+0x17/0x17 [drm]
2026-07-26T16:32:32.496269+02:00 T1596; ? drm_atomic_helper_set_config+0x6f/0xb0 [drm_kms_helper]
2026-07-26T16:32:32.496269+02:00 T1596; ? drm_mode_setcrtc+0x466/0x8e0 [drm]
2026-07-26T16:32:32.496269+02:00 T1596; ? lock_acquire+0xbf/0x2e0
2026-07-26T16:32:32.496269+02:00 T1596; ? rt_mutex_slowunlock+0x46/0x420
2026-07-26T16:32:32.496269+02:00 T1596; ? drm_mode_getcrtc+0x190/0x190 [drm]
2026-07-26T16:32:32.496269+02:00 T1596; ? drm_ioctl_kernel+0xa7/0x100 [drm]
2026-07-26T16:32:32.496269+02:00 T1596; ? drm_ioctl+0x288/0x510 [drm]
2026-07-26T16:32:32.496269+02:00 T1596; ? drm_mode_getcrtc+0x190/0x190 [drm]
2026-07-26T16:32:32.496269+02:00 T1596; ? amdgpu_drm_ioctl+0x4b/0x80 [amdgpu]
2026-07-26T16:32:32.496269+02:00 T1596; ? __x64_sys_ioctl+0x95/0xe0
2026-07-26T16:32:32.496313+02:00 T1596; ? do_syscall_64+0x129/0x6b0
2026-07-26T16:32:32.496313+02:00 T1596; ? rt_mutex_slowunlock+0x3bd/0x420
2026-07-26T16:32:32.496313+02:00 T1596; ? wake_up_q+0x32/0x80
2026-07-26T16:32:32.496313+02:00 T1596; ? futex_wake+0xa7/0x1c0
2026-07-26T16:32:32.496313+02:00 T1596; ? do_futex+0x11a/0x180
2026-07-26T16:32:32.496313+02:00 T1596; ? __x64_sys_futex+0x10d/0x200
2026-07-26T16:32:32.496313+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:32.496313+02:00 T1596; ? lockdep_hardirqs_on_prepare+0xd7/0x180
2026-07-26T16:32:32.496313+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:32.496313+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:32.496313+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:32.496313+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:32.496313+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:32.496313+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:32.496351+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:32.496351+02:00 T1596; ? lockdep_hardirqs_on_prepare+0xd7/0x180
2026-07-26T16:32:32.496351+02:00 T1596; ? irqentry_exit+0xbd/0x5a0
2026-07-26T16:32:32.496351+02:00 T1596; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
2026-07-26T16:32:32.496351+02:00 T1596; </TASK>
2026-07-26T16:32:32.496351+02:00 T1596;irq event stamp: 9309205
2026-07-26T16:32:32.496475+02:00 T1596;hardirqs last  enabled at (9309207): [<ffffffff99d6683d>] vprintk_store+0x36d/0x5e0
2026-07-26T16:32:32.496475+02:00 T1596;hardirqs last disabled at (9309208): [<ffffffff99d6685f>] vprintk_store+0x38f/0x5e0
2026-07-26T16:32:32.496475+02:00 T1596;softirqs last  enabled at (9297620): [<ffffffff99ccb56b>] __local_bh_enable_ip+0xfb/0x140
2026-07-26T16:32:32.496475+02:00 T1596;softirqs last disabled at (9297614): [<ffffffff9a4ea8bb>] __alloc_skb+0x24b/0x360
2026-07-26T16:32:32.496475+02:00 T1596;---[ end trace 0000000000000000 ]---
2026-07-26T16:32:32.496475+02:00 T1596;dc_fpu_end 0: preempt_count=0 dcn401_validate_bandwidth 1700

Here a preempt_count underflow is happening:
2147483647 is actually (-1 & ~PREEMPT_NEED_RESCHED)

static __always_inline int preempt_count(void)
{
 return raw_cpu_read_4(__preempt_count) & ~PREEMPT_NEED_RESCHED;
}


2026-07-26T16:32:32.496475+02:00 C15;dc_fpu_end 1: preempt_count=2147483647 dcn401_validate_bandwidth 1700
2026-07-26T16:32:32.496475+02:00 T1596;------------[ cut here ]------------
2026-07-26T16:32:32.496496+02:00 T1596;WARNING: drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/dc_fpu.c:97 at dc_fpu_begin+0x39/0x40 [amdgpu], CPU#15:
Xorg/1596
2026-07-26T16:32:32.496496+02:00 T1596;Modules linked in: netconsole snd_seq_dummy snd_hrtimer snd_seq cfg80211 nls_ascii nls_cp437 vfat fat joydev
snd_usb_audio snd_usbmidi_lib intel_rapl_msr snd_ump snd_rawmidi intel_rapl_common snd_hda_codec_atihdmi snd_seq_device iosf_mbi snd_hda_codec_hdmi wmi_bmof
rapl snd_hda_intel pcspkr snd_hda_codec snd_hda_core spd5118 snd_intel_dspcfg regmap_i2c k10temp snd_hwdep snd_pcm snd_timer snd soundcore rfkill evdev ccp
nct6775 nct6775_core hwmon_vid efi_pstore configfs efivarfs autofs4 ext4 mbcache jbd2 amdgpu hid_generic usbhid hid drm_client_lib i2c_algo_bit drm_buddy
drm_ttm_helper ttm drm_exec drm_suballoc_helper mfd_core drm_panel_backlight_quirks gpu_sched amdxcp drm_display_helper ahci drm_kms_helper libahci xhci_pci drm
libata xhci_hcd nvme scsi_mod cec video nvme_core usbcore igc crc16 scsi_common nvme_keyring usb_common nvme_auth hkdf i2c_piix4 gpio_amdpt i2c_smbus wmi
gpio_generic
2026-07-26T16:32:32.496496+02:00 T1596;CPU: 15 UID: 0 PID: 1596 Comm: Xorg Tainted: G        W           7.0.0-rc7-dcfpubad-01910-g3c2692d1b40e #1272
PREEMPT_{RT,(full)} 
2026-07-26T16:32:32.496496+02:00 T1596;Tainted: [W]=WARN
2026-07-26T16:32:32.496496+02:00 T1596;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
2026-07-26T16:32:32.496496+02:00 T1596;RIP: 0010:dc_fpu_begin+0x39/0x40 [amdgpu]
2026-07-26T16:32:32.496496+02:00 T1596;Code: 65 48 8b 05 d9 f2 63 da 65 8b 15 e2 f2 63 da 8b 80 6c 0a 00 00 89 d1 81 e1 00 00 ff 00 25 00 01 00 00 09 c8 0f 84
32 63 3a 00 <0f> 0b e9 2b 63 3a 00 0f 1f 40 d6 55 53 89 f5 48 89 fb 48 83 ec 10
2026-07-26T16:32:32.496496+02:00 T1596;RSP: 0018:ffffaa7487f93578 EFLAGS: 00010206
2026-07-26T16:32:32.496513+02:00 T1596;RAX: 0000000000ff0000 RBX: ffff9b1ce5c00000 RCX: 0000000000ff0000
2026-07-26T16:32:32.496513+02:00 T1596;RDX: 000000007fffffff RSI: 00000000000006c8 RDI: ffffffffc13c3980
2026-07-26T16:32:32.496513+02:00 T1596;RBP: ffff9b1d19c80000 R08: 0000000000005183 R09: ffffffffc13c3980
2026-07-26T16:32:32.496513+02:00 T1596;R10: 00000000000006c8 R11: 0000000000000000 R12: ffff9b1d066e0000
2026-07-26T16:32:32.496513+02:00 T1596;R13: 0000000000000001 R14: ffff9b1ce5c00000 R15: ffff9b1d043a0000
2026-07-26T16:32:32.496513+02:00 T1596;FS:  00007f92f4c39b80(0000) GS:ffff9b2c62646000(0000) knlGS:0000000000000000
2026-07-26T16:32:32.496513+02:00 T1596;CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
2026-07-26T16:32:32.496568+02:00 T1596;CR2: 00007ffb1496aff8 CR3: 0000000127bee000 CR4: 0000000000f50ef0
2026-07-26T16:32:32.496568+02:00 T1596;PKRU: 55555554
2026-07-26T16:32:32.496568+02:00 T1596;Call Trace:
2026-07-26T16:32:32.496568+02:00 T1596; <TASK>
2026-07-26T16:32:32.496568+02:00 T1596; ? determine_pipe_unlock_order+0x78/0xf0 [amdgpu]
2026-07-26T16:32:32.496568+02:00 T1596; ? dcn401_prepare_mcache_programming+0x2f/0x70 [amdgpu]
2026-07-26T16:32:32.496568+02:00 T1596; ? commit_planes_for_stream+0x157/0x1870 [amdgpu]
2026-07-26T16:32:32.496568+02:00 T1596; ? update_planes_and_stream_execute_v3+0x3c/0xd0 [amdgpu]
2026-07-26T16:32:32.496568+02:00 T1596; ? dc_update_planes_and_stream+0xb6/0x130 [amdgpu]
2026-07-26T16:32:32.496568+02:00 T1596; ? amdgpu_dm_atomic_commit_tail+0x126b/0x3460 [amdgpu]
2026-07-26T16:32:32.496568+02:00 T1596; ? commit_tail+0x9d/0x130 [drm_kms_helper]
2026-07-26T16:32:32.496568+02:00 T1596; ? drm_atomic_helper_commit+0x15a/0x1a0 [drm_kms_helper]
2026-07-26T16:32:32.496568+02:00 T1596; ? drm_atomic_commit+0xac/0xe0 [drm]
2026-07-26T16:32:32.496568+02:00 T1596; ? __drm_universal_plane_init.cold+0x17/0x17 [drm]
2026-07-26T16:32:32.496568+02:00 T1596; ? drm_atomic_helper_set_config+0x6f/0xb0 [drm_kms_helper]
2026-07-26T16:32:32.496603+02:00 T1596; ? drm_mode_setcrtc+0x466/0x8e0 [drm]
2026-07-26T16:32:32.496603+02:00 T1596; ? lock_acquire+0xbf/0x2e0
2026-07-26T16:32:32.496603+02:00 T1596; ? rt_mutex_slowunlock+0x46/0x420
2026-07-26T16:32:32.496603+02:00 T1596; ? drm_mode_getcrtc+0x190/0x190 [drm]
2026-07-26T16:32:32.496603+02:00 T1596; ? drm_ioctl_kernel+0xa7/0x100 [drm]
2026-07-26T16:32:32.496603+02:00 T1596; ? drm_ioctl+0x288/0x510 [drm]
2026-07-26T16:32:32.496603+02:00 T1596; ? drm_mode_getcrtc+0x190/0x190 [drm]
2026-07-26T16:32:39.401337+02:00 T1596; ? amdgpu_drm_ioctl+0x4b/0x80 [amdgpu]
2026-07-26T16:32:39.401337+02:00 T1596; ? __x64_sys_ioctl+0x95/0xe0
2026-07-26T16:32:39.401337+02:00 T1596; ? do_syscall_64+0x129/0x6b0
2026-07-26T16:32:39.401337+02:00 T1596; ? rt_mutex_slowunlock+0x3bd/0x420
2026-07-26T16:32:39.401337+02:00 T1596; ? wake_up_q+0x32/0x80
2026-07-26T16:32:39.401337+02:00 T1596; ? futex_wake+0xa7/0x1c0
2026-07-26T16:32:39.401337+02:00 T1596; ? do_futex+0x11a/0x180
2026-07-26T16:32:39.401337+02:00 T1596; ? __x64_sys_futex+0x10d/0x200
2026-07-26T16:32:39.401337+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:39.401337+02:00 T1596; ? lockdep_hardirqs_on_prepare+0xd7/0x180
2026-07-26T16:32:39.401337+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:39.401337+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:39.401337+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:39.401337+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:39.401337+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:39.401337+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:39.401337+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:39.401337+02:00 T1596; ? lockdep_hardirqs_on_prepare+0xd7/0x180
2026-07-26T16:32:39.401337+02:00 T1596; ? irqentry_exit+0xbd/0x5a0
2026-07-26T16:32:39.401337+02:00 T1596; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
2026-07-26T16:32:39.401337+02:00 T1596; </TASK>
2026-07-26T16:32:39.401337+02:00 T1596;irq event stamp: 9309525
2026-07-26T16:32:39.401337+02:00 T1596;hardirqs last  enabled at (9309527): [<ffffffff99d6683d>] vprintk_store+0x36d/0x5e0
2026-07-26T16:32:39.401337+02:00 T1596;hardirqs last disabled at (9309528): [<ffffffff99d6685f>] vprintk_store+0x38f/0x5e0
2026-07-26T16:32:39.401337+02:00 T1596;softirqs last  enabled at (9297620): [<ffffffff99ccb56b>] __local_bh_enable_ip+0xfb/0x140
2026-07-26T16:32:39.401337+02:00 T1596;softirqs last disabled at (9297614): [<ffffffff9a4ea8bb>] __alloc_skb+0x24b/0x360
2026-07-26T16:32:39.401337+02:00 T1596;---[ end trace 0000000000000000 ]---
2026-07-26T16:32:39.401337+02:00 C15;dc_fpu_begin 0: preempt_count=2147483647 dcn401_prepare_mcache_programming 1736
2026-07-26T16:32:39.401337+02:00 T1596;dc_fpu_begin 1: preempt_count=0 dcn401_prepare_mcache_programming 1736
2026-07-26T16:32:39.401337+02:00 T1596;dc_fpu_end 0: preempt_count=0 dcn401_prepare_mcache_programming 1740
2026-07-26T16:32:39.401337+02:00 C15;dc_fpu_end 1: preempt_count=2147483647 dcn401_prepare_mcache_programming 1740
2026-07-26T16:32:39.401337+02:00 C15;dc_fpu_begin 0: preempt_count=2147483647 dc_state_free 387
2026-07-26T16:32:39.401337+02:00 T1596;dc_fpu_begin 1: preempt_count=0 dc_state_free 387
2026-07-26T16:32:39.401337+02:00 T1596;dc_fpu_end 0: preempt_count=0 dml21_destroy 61
2026-07-26T16:32:39.401337+02:00 C15;dc_fpu_end 1: preempt_count=2147483647 dml21_destroy 61
2026-07-26T16:32:39.401337+02:00 T1596;------------[ cut here ]------------
2026-07-26T16:32:39.401337+02:00 T1596;kernel BUG at mm/vmalloc.c:3412!
2026-07-26T16:32:39.401337+02:00 T1596;Oops: invalid opcode: 0000 [#1] SMP NOPTI
2026-07-26T16:32:39.401337+02:00 T1596;CPU: 15 UID: 0 PID: 1596 Comm: Xorg Tainted: G        W           7.0.0-rc7-dcfpubad-01910-g3c2692d1b40e #1272
PREEMPT_{RT,(full)} 
2026-07-26T16:32:39.401337+02:00 T1596;Tainted: [W]=WARN
2026-07-26T16:32:39.401337+02:00 T1596;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
2026-07-26T16:32:39.401337+02:00 T1596;RIP: 0010:vfree_atomic+0x55/0x60
2026-07-26T16:32:39.401337+02:00 T1596;Code: 07 48 89 c1 f0 48 0f b1 3a 75 f3 48 85 c9 74 05 c3 cc cc cc cc 48 8b 35 a1 70 c1 00 48 83 c2 08 bf 20 00 00 00 e9
cb 29 d6 ff <0f> 0b 66 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 41 56 41 54 55 53 48
2026-07-26T16:32:39.401337+02:00 T1596;RSP: 0018:ffffaa7487f93600 EFLAGS: 00010286
2026-07-26T16:32:39.401337+02:00 T1596;RAX: 0000000000ff0000 RBX: ffffaa748748c000 RCX: 0000000000000027
2026-07-26T16:32:39.401337+02:00 T1596;RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffffaa748f056000
2026-07-26T16:32:39.401337+02:00 T1596;RBP: ffff9b1d1b400000 R08: 0000000000000004 R09: 0000000000000120
2026-07-26T16:32:39.401337+02:00 T1596;R10: 0000000000000200 R11: 0000000000000000 R12: ffff9b1d066e0000
2026-07-26T16:32:39.401337+02:00 T1596;R13: ffff9b1ce5c00000 R14: 0000000000000001 R15: ffff9b1d043a0000
2026-07-26T16:32:39.401337+02:00 T1596;FS:  00007f92f4c39b80(0000) GS:ffff9b2c62646000(0000) knlGS:0000000000000000
2026-07-26T16:32:39.401337+02:00 T1596;CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
2026-07-26T16:32:39.401337+02:00 T1596;CR2: 00007ffb1496aff8 CR3: 0000000127bee000 CR4: 0000000000f50ef0
2026-07-26T16:32:39.401337+02:00 T1596;PKRU: 55555554
2026-07-26T16:32:39.401337+02:00 T1596;Call Trace:
2026-07-26T16:32:39.401337+02:00 T1596; <TASK>
2026-07-26T16:32:39.401337+02:00 T1596; ? dml21_destroy+0x50/0xa0 [amdgpu]
2026-07-26T16:32:39.401419+02:00 T1596; ? dml2_destroy+0x59/0x60 [amdgpu]
2026-07-26T16:32:39.401419+02:00 T1596; ? dc_state_free+0x31/0x70 [amdgpu]
2026-07-26T16:32:39.401419+02:00 T1596; ? update_planes_and_stream_cleanup_v3+0x4f/0x3e0 [amdgpu]
2026-07-26T16:32:39.401419+02:00 T1596; ? dc_update_planes_and_stream+0xc4/0x130 [amdgpu]
2026-07-26T16:32:39.401419+02:00 T1596; ? amdgpu_dm_atomic_commit_tail+0x126b/0x3460 [amdgpu]
2026-07-26T16:32:39.401419+02:00 T1596; ? commit_tail+0x9d/0x130 [drm_kms_helper]
2026-07-26T16:32:39.401419+02:00 T1596; ? drm_atomic_helper_commit+0x15a/0x1a0 [drm_kms_helper]
2026-07-26T16:32:39.401419+02:00 T1596; ? drm_atomic_commit+0xac/0xe0 [drm]
2026-07-26T16:32:39.401446+02:00 T1596; ? __drm_universal_plane_init.cold+0x17/0x17 [drm]
2026-07-26T16:32:39.401446+02:00 T1596; ? drm_atomic_helper_set_config+0x6f/0xb0 [drm_kms_helper]
2026-07-26T16:32:39.401446+02:00 T1596; ? drm_mode_setcrtc+0x466/0x8e0 [drm]
2026-07-26T16:32:39.401446+02:00 T1596; ? lock_acquire+0xbf/0x2e0
2026-07-26T16:32:39.401446+02:00 T1596; ? rt_mutex_slowunlock+0x46/0x420
2026-07-26T16:32:39.401446+02:00 T1596; ? drm_mode_getcrtc+0x190/0x190 [drm]
2026-07-26T16:32:39.401446+02:00 T1596; ? drm_ioctl_kernel+0xa7/0x100 [drm]
2026-07-26T16:32:39.401446+02:00 T1596; ? drm_ioctl+0x288/0x510 [drm]
2026-07-26T16:32:39.401467+02:00 T1596; ? drm_mode_getcrtc+0x190/0x190 [drm]
2026-07-26T16:32:39.401467+02:00 T1596; ? amdgpu_drm_ioctl+0x4b/0x80 [amdgpu]
2026-07-26T16:32:39.401467+02:00 T1596; ? __x64_sys_ioctl+0x95/0xe0
2026-07-26T16:32:39.401467+02:00 T1596; ? do_syscall_64+0x129/0x6b0
2026-07-26T16:32:39.401467+02:00 T1596; ? rt_mutex_slowunlock+0x3bd/0x420
2026-07-26T16:32:39.401467+02:00 T1596; ? wake_up_q+0x32/0x80
2026-07-26T16:32:39.401467+02:00 T1596; ? futex_wake+0xa7/0x1c0
2026-07-26T16:32:39.401467+02:00 T1596; ? do_futex+0x11a/0x180
2026-07-26T16:32:39.401489+02:00 T1596; ? __x64_sys_futex+0x10d/0x200
2026-07-26T16:32:39.401489+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:39.401489+02:00 T1596; ? lockdep_hardirqs_on_prepare+0xd7/0x180
2026-07-26T16:32:39.401489+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:39.401489+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:39.401489+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:39.401489+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:39.401489+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:39.401580+02:00 T1596; ? do_syscall_64+0x238/0x6b0
2026-07-26T16:32:39.401580+02:00 T1596; ? trace_hardirqs_on_prepare+0xdc/0x100
2026-07-26T16:32:39.401580+02:00 T1596; ? lockdep_hardirqs_on_prepare+0xd7/0x180
2026-07-26T16:32:39.401580+02:00 T1596; ? irqentry_exit+0xbd/0x5a0
2026-07-26T16:32:39.401580+02:00 T1596; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
2026-07-26T16:32:39.401580+02:00 T1596; </TASK>
2026-07-26T16:32:39.401580+02:00 T1596;Modules linked in: netconsole snd_seq_dummy snd_hrtimer snd_seq cfg80211 nls_ascii nls_cp437 vfat fat joydev
snd_usb_audio snd_usbmidi_lib intel_rapl_msr snd_ump snd_rawmidi intel_rapl_common snd_hda_codec_atihdmi snd_seq_device iosf_mbi snd_hda_codec_hdmi wmi_bmof
rapl snd_hda_intel pcspkr snd_hda_codec snd_hda_core spd5118 snd_intel_dspcfg regmap_i2c k10temp snd_hwdep snd_pcm snd_timer snd soundcore rfkill evdev ccp
nct6775 nct6775_core hwmon_vid efi_pstore configfs efivarfs autofs4 ext4 mbcache jbd2 amdgpu hid_generic usbhid hid drm_client_lib i2c_algo_bit drm_buddy
drm_ttm_helper ttm drm_exec drm_suballoc_helper mfd_core drm_panel_backlight_quirks gpu_sched amdxcp drm_display_helper ahci drm_kms_helper libahci xhci_pci drm
libata xhci_hcd nvme scsi_mod cec video nvme_core usbcore igc crc16 scsi_common nvme_keyring usb_common nvme_auth hkdf i2c_piix4 gpio_amdpt i2c_smbus wmi
gpio_generic
2026-07-26T16:32:39.401580+02:00 T1596;---[ end trace 0000000000000000 ]---
2026-07-26T16:32:39.401580+02:00 C10;RIP: 0010:vfree_atomic+0x55/0x60
2026-07-26T16:32:39.401580+02:00 C10;Code: 07 48 89 c1 f0 48 0f b1 3a 75 f3 48 85 c9 74 05 c3 cc cc cc cc 48 8b 35 a1 70 c1 00 48 83 c2 08 bf 20 00 00 00 e9 cb
29 d6 ff <0f> 0b 66 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 41 56 41 54 55 53 48
2026-07-26T16:32:39.401580+02:00 C10;RSP: 0018:ffffaa7487f93600 EFLAGS: 00010286
2026-07-26T16:32:39.401580+02:00 C10;RAX: 0000000000ff0000 RBX: ffffaa748748c000 RCX: 0000000000000027
2026-07-26T16:32:39.401580+02:00 C10;RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffffaa748f056000
2026-07-26T16:32:39.401580+02:00 C10;RBP: ffff9b1d1b400000 R08: 0000000000000004 R09: 0000000000000120
2026-07-26T16:32:39.401580+02:00 C10;R10: 0000000000000200 R11: 0000000000000000 R12: ffff9b1d066e0000
2026-07-26T16:32:39.401580+02:00 C10;R13: ffff9b1ce5c00000 R14: 0000000000000001 R15: ffff9b1d043a0000
2026-07-26T16:32:39.401580+02:00 C10;FS:  00007f92f4c39b80(0000) GS:ffff9b2c62506000(0000) knlGS:0000000000000000
2026-07-26T16:32:39.401580+02:00 C10;CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
2026-07-26T16:32:39.401580+02:00 C10;CR2: 00007f1fb663c478 CR3: 0000000127bee000 CR4: 0000000000f50ef0
2026-07-26T16:32:39.401580+02:00 C10;PKRU: 55555554
2026-07-26T16:32:39.401580+02:00 T1596;Kernel panic - not syncing: Fatal exception in interrupt
2026-07-26T16:32:39.401580+02:00 T1596;Kernel Offset: 0x18a00000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)
2026-07-26T16:32:39.401580+02:00 T1596;---[ end Kernel panic - not syncing: Fatal exception in interrupt ]---

As the preempt_count_underflow happens in
dcn401_validate_bandwidth() I removed the DC_FP_{START,END} macros:

diff --git a/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c b/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c
index cb93bfbe9e9e..7a90098ec118 100644
--- a/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c
+++ b/drivers/gpu/drm/amd/display/dc/resource/dcn401/dcn401_resource.c
@@ -1693,11 +1693,9 @@ enum dc_status dcn401_validate_bandwidth(struct dc *dc,
        }
 
        if (dc->debug.using_dml2) {
-               DC_FP_START();
                status = dml2_validate(dc, context,
                                context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2,
                                validate_mode) ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE;
-               DC_FP_END();
        }
 
        if (validate_mode == DC_VALIDATE_MODE_AND_PROGRAMMING && status == DC_OK && dc_state_is_subvp_in_use(context)) {
@@ -1718,11 +1716,9 @@ enum dc_status dcn401_validate_bandwidth(struct dc *dc,
        if (validate_mode == DC_VALIDATE_MODE_AND_PROGRAMMING && status == DC_FAIL_HW_CURSOR_SUPPORT) {
                /* attempt to validate again with subvp disabled due to cursor */
                if (dc->debug.using_dml2) {
-                       DC_FP_START();
                        status = dml2_validate(dc, context,
                                        context->power_source == DC_POWER_SOURCE_DC ? context->bw_ctx.dml2_dc_power_source : context->bw_ctx.dml2,
                                        validate_mode) ? DC_OK : DC_FAIL_BANDWIDTH_VALIDATE;
-                       DC_FP_END();
                }
        }
 

With this patch I got 24 reboot cycles without any error, (no "scheduling while atomic", no panic
an no error from dc_assert_fp_enabled()).


Bert Karwatzki

  reply	other threads:[~2026-07-26 18:47 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20260723124353.13040-1-spasswolf@web.de>
2026-07-23 13:10 ` [Re] kernel panic during shutdown in v7.2-rc{3,4} and next-20260722 with PREEMPT_RT Bert Karwatzki
2026-07-23 13:23   ` Bert Karwatzki
2026-07-23 16:17     ` Bert Karwatzki
2026-07-23 22:51       ` [Re] kernel panic during shutdown in next-20260722 Bert Karwatzki
2026-07-24 15:08         ` Bert Karwatzki
2026-07-25 19:58           ` Bert Karwatzki
2026-07-25 23:16             ` Bert Karwatzki
2026-07-26 18:47               ` Bert Karwatzki [this message]
2026-07-26 22:52                 ` Bert Karwatzki

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=6e0b713cffd64b3c30eb4ff04e50721bac9cf8ca.camel@web.de \
    --to=spasswolf@web.de \
    --cc=alexander.deucher@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=bigeasy@linutronix.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-next@vger.kernel.org \
    --cc=linux-rt-devel@lists.linux.dev \
    --cc=mario.limonciello@amd.com \
    --cc=rafal.ostrowski@amd.com \
    --cc=tglx@linutronix.de \
    /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