* linux-next: manual merge of the tip tree with the mm-hotfixes-unstable tree
From: Mark Brown @ 2026-07-26 21:33 UTC (permalink / raw)
To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin, Peter Zijlstra
Cc: Andrew Morton, Dave Hansen, Linux Kernel Mailing List,
Linux Next Mailing List, Lorenzo Stoakes, Mike Rapoport
[-- Attachment #1: Type: text/plain, Size: 2907 bytes --]
Hi all,
Today's linux-next merge of the tip tree got a conflict in:
arch/x86/mm/pat/set_memory.c
between commits:
7a7c16a2d2b4d ("x86/mm/pat: acquire init_mm read lock on attribute change to avoid UAF")
25a54f65ccbaf ("x86/mm/pat: allocate split page tables as kernel page tables")
from the mm-hotfixes-unstable tree and commit:
5fce67641a3ed ("x86/mm/pat: Don't gate cpa_lock on debug_pagealloc_enabled()")
from the tip tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
diff --cc arch/x86/mm/pat/set_memory.c
index 422ce7fba00c6,1f2a2ba9ce57d..0000000000000
--- a/arch/x86/mm/pat/set_memory.c
+++ b/arch/x86/mm/pat/set_memory.c
@@@ -440,30 -441,12 +443,32 @@@ static void __cpa_collapse_large_pages(
list_for_each_entry_safe(ptdesc, tmp, &pgtables, pt_list) {
list_del(&ptdesc->pt_list);
- pagetable_free(ptdesc);
+ /*
+ * Only early alloc'd direct map should not be flagged PG_table
+ * here and those shouldn't be collapsed. However be abundantly
+ * cautious and handle the !PG_table case too.
+ */
+ if (PageTable((ptdesc_page(ptdesc))))
+ pagetable_dtor_free(ptdesc);
+ else
+ pagetable_free(ptdesc);
}
+
+ spin_unlock(&cpa_lock);
}
+static void cpa_collapse_large_pages(struct cpa_data *cpa)
+{
+ /*
+ * Take the mmap write lock on init_mm to:
+ * - Avoid a use-after-free if raced by ptdump (which takes its own
+ * write lock on init_mm).
+ * - Serialise concurrent CPA walkers.
+ */
+ scoped_guard(mmap_write_lock, &init_mm)
+ __cpa_collapse_large_pages(cpa);
+}
+
static void cpa_flush(struct cpa_data *cpa, int cache)
{
unsigned int i;
@@@ -1254,22 -1237,16 +1258,20 @@@ __split_large_page(struct cpa_data *cpa
static int split_large_page(struct cpa_data *cpa, pte_t *kpte,
unsigned long address)
{
- struct ptdesc *ptdesc;
+ pte_t *pte;
- if (!debug_pagealloc_enabled())
- spin_unlock(&cpa_lock);
+ spin_unlock(&cpa_lock);
- ptdesc = pagetable_alloc(GFP_KERNEL, 0);
+ if (cpa->init_mm_read_locked)
+ mmap_read_unlock(&init_mm);
+ pte = pte_alloc_one_kernel(&init_mm);
+ if (cpa->init_mm_read_locked)
+ mmap_read_lock(&init_mm);
- if (!debug_pagealloc_enabled())
- spin_lock(&cpa_lock);
+ spin_lock(&cpa_lock);
- if (!ptdesc)
+ if (!pte)
return -ENOMEM;
- if (__split_large_page(cpa, kpte, address, ptdesc))
- pagetable_free(ptdesc);
+ if (__split_large_page(cpa, kpte, address, pte))
+ pte_free_kernel(&init_mm, pte);
return 0;
}
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply
* linux-next: manual merge of the drm tree with the drm-fixes tree
From: Mark Brown @ 2026-07-26 21:24 UTC (permalink / raw)
To: Dave Airlie, DRI
Cc: Alex Deucher, Leo Li, Linux Kernel Mailing List,
Linux Next Mailing List, Mario Limonciello, Matthew Schwartz
[-- Attachment #1: Type: text/plain, Size: 5056 bytes --]
Hi all,
Today's linux-next merge of the drm tree got a conflict in:
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c
between commits:
8382cd234981a ("drm/amd/display: consolidate DCN vblank/flip handling onto vupdate_no_lock")
82730dba0cf9d ("drm/amd/display: Fix flip-done timeouts on mode1 reset")
from the drm-fixes tree and commit:
c87e6635d2db0 ("drm/amd/display: consolidate DCN vblank/flip handling onto vupdate_no_lock")
from the drm tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
diff --combined drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c
index 95d3da3c4199b,d63688b9d93dd..0000000000000
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c
@@@ -34,6 -34,7 +34,7 @@@
#include "amdgpu_dm_plane.h"
#include "amdgpu_dm_trace.h"
#include "amdgpu_dm_debugfs.h"
+ #include "amdgpu_dm_kunit_helpers.h"
#include "modules/inc/mod_power.h"
#define HPD_DETECTION_PERIOD_uS 2000000
@@@ -65,6 -66,7 +66,7 @@@ bool amdgpu_dm_crtc_modeset_required(st
{
return crtc_state->active && drm_atomic_crtc_needs_modeset(crtc_state);
}
+ EXPORT_IF_KUNIT(amdgpu_dm_crtc_modeset_required);
bool amdgpu_dm_crtc_vrr_active_irq(struct amdgpu_crtc *acrtc)
@@@ -74,6 -76,7 +76,7 @@@
acrtc->dm_irq_params.freesync_config.state ==
VRR_STATE_ACTIVE_FIXED;
}
+ EXPORT_IF_KUNIT(amdgpu_dm_crtc_vrr_active_irq);
int amdgpu_dm_crtc_set_vupdate_irq(struct drm_crtc *crtc, bool enable)
{
@@@ -93,12 -96,14 +96,14 @@@
acrtc->crtc_id, enable ? "en" : "dis", rc);
return rc;
}
+ EXPORT_IF_KUNIT(amdgpu_dm_crtc_set_vupdate_irq);
bool amdgpu_dm_crtc_vrr_active(const struct dm_crtc_state *dm_state)
{
return dm_state->freesync_config.state == VRR_STATE_ACTIVE_VARIABLE ||
dm_state->freesync_config.state == VRR_STATE_ACTIVE_FIXED;
}
+ EXPORT_IF_KUNIT(amdgpu_dm_crtc_vrr_active);
/**
* amdgpu_dm_crtc_set_static_screen_optimze() - Toggle static screen optimizations.
@@@ -156,6 -161,7 +161,7 @@@ bool amdgpu_dm_is_headless(struct amdgp
drm_connector_list_iter_end(&iter);
return is_headless;
}
+ EXPORT_IF_KUNIT(amdgpu_dm_is_headless);
static void amdgpu_dm_idle_worker(struct work_struct *work)
{
@@@ -207,6 -213,7 +213,7 @@@ struct idle_workqueue *idle_create_work
return idle_work;
}
+ EXPORT_IF_KUNIT(idle_create_workqueue);
static void amdgpu_dm_crtc_vblank_control_worker(struct work_struct *work)
{
@@@ -280,19 -287,10 +287,21 @@@ static inline int amdgpu_dm_crtc_set_vb
* is enabled. On DCE, vupdate is only needed in VRR mode.
*/
if (amdgpu_ip_version(adev, DCE_HWIP, 0) != 0) {
+ rc = amdgpu_dm_crtc_set_vupdate_irq(crtc, enable);
+ } else if (dc_supports_vrr(dm->dc->ctx->dce_version)) {
if (enable) {
- /* vblank irq on -> Only need vupdate irq in vrr mode */
+ rc = amdgpu_irq_get(adev, &adev->vupdate_irq, irq_type);
+ drm_dbg_vbl(crtc->dev, "Get vupdate_irq ret=%d\n", rc);
+ } else {
+ rc = amdgpu_irq_put(adev, &adev->vupdate_irq, irq_type);
+ drm_dbg_vbl(crtc->dev, "Put vupdate_irq ret=%d\n", rc);
+ }
+ } else if (dc_supports_vrr(dm->dc->ctx->dce_version)) {
+ if (enable) {
+ /* vblank irq on -> Only need vupdate irq in vrr mode
+ * Not ref-counted since we need explicit enable/disable
+ * for DCE VRR handling
+ */
if (amdgpu_dm_crtc_vrr_active(acrtc_state))
rc = amdgpu_dm_crtc_set_vupdate_irq(crtc, true);
} else {
@@@ -460,13 -458,13 +469,13 @@@ static void amdgpu_dm_crtc_reset_state(
{
struct dm_crtc_state *state;
+ state = kzalloc_obj(*state);
+ if (!state)
+ return;
+
if (crtc->state)
amdgpu_dm_crtc_destroy_state(crtc, crtc->state);
- state = kzalloc_obj(*state);
- if (WARN_ON(!state))
- return;
-
__drm_atomic_helper_crtc_reset(crtc, &state->base);
}
@@@ -618,12 -616,13 +627,13 @@@ static void amdgpu_dm_crtc_update_crtc_
amdgpu_dm_crtc_count_crtc_active_planes(new_crtc_state);
}
- static bool amdgpu_dm_crtc_helper_mode_fixup(struct drm_crtc *crtc,
- const struct drm_display_mode *mode,
- struct drm_display_mode *adjusted_mode)
+ STATIC_IFN_KUNIT bool amdgpu_dm_crtc_helper_mode_fixup(struct drm_crtc *crtc,
+ const struct drm_display_mode *mode,
+ struct drm_display_mode *adjusted_mode)
{
return true;
}
+ EXPORT_IF_KUNIT(amdgpu_dm_crtc_helper_mode_fixup);
static int amdgpu_dm_crtc_helper_atomic_check(struct drm_crtc *crtc,
struct drm_atomic_commit *state)
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply
* linux-next: build failure after merge of the vfs-brauner tree
From: Mark Brown @ 2026-07-26 20:16 UTC (permalink / raw)
To: Jan Kara, Christian Brauner
Cc: Linux Kernel Mailing List, Linux Next Mailing List
[-- Attachment #1: Type: text/plain, Size: 470 bytes --]
Hi all,
After merging the vfs-brauner tree, today's linux-next build (x86_64
allmodconfig) failed like this:
/tmp/next/build/fs/bfs/inode.c:180:43: error: no member named 'ino' in 'struct inode'
180 | di = find_inode(inode->i_sb, (u16)inode->ino, &bh);
| ~~~~~ ^
1 error generated.
Caused by commit
763d78b5dbba6 (bfs: Fix data integrity writeout issues)
I have used the tree from next-20260723 instead.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply
* Re: linux-next: manual merge of the nfc tree with the nfc-fixes tree
From: David Heidelberg @ 2026-07-26 19:50 UTC (permalink / raw)
To: Zhou, Yun, Samuel Page
Cc: Linux Kernel Mailing List, Linux Next Mailing List, Samuel Page,
horms, Mark Brown
In-Reply-To: <22a9e54e-936d-45b8-9083-441c29d43621@windriver.com>
On 24/07/2026 05:18, Zhou, Yun wrote:
> Hi Mark, David,
>
> My patch (1d5fcb66b07a3) [1] was applied to the nfc tree on Jun 2, nearly a
> month before Samuel's (075f88b7d3b5c, Jun 24) [2] . They fix the same bug.
>
Hello Yun,
thank you for noticing me.
> But Samuel's v2 still has issues that I addressed during my v1 [3] --> v3
> iteration:
> 1. Error response handling: his patch requires sizeof(*rsp_1) before
> reading the status field. A valid NCI error response may only contain
> a 1-byte status — his code returns SYNTAX_ERROR instead of propagating
> the device's actual error code. I fixed this in v2 [4] by checking 1 byte first,
> then requiring the full header only after status == OK.
>
> 2. ndev state corruption: Simon flagged that if the length check fails
> after ndev fields are partially updated, it leaves ndev in an
> inconsistent state. My v3 defers all ndev updates until after
> validation passes.
Yes, now I see. I somehow must missed the part completely, maybe I looked at
older revision when comparing these two patches approaches.
Conclusion: I'm re-picking the original patch in v3, and will drop the
nfc: nci: fix uninit-value in nci_core_init_rsp_packet()
Thank you both for the contribution and sorry for the complications!
David
>
> [1] https://lore.kernel.org/all/20260527052625.3309581-1-yun.zhou@windriver.com/T/
> [2] https://lore.kernel.org/all/20260624224455.999374-1-sam@bynar.io/
> [3] https://lore.kernel.org/all/20260519013042.3459906-1-yun.zhou@windriver.com/T/
> [4] https://lore.kernel.org/all/20260522021326.1164807-1-yun.zhou@windriver.com/T/
>
> Was there something wrong with my version, or was it just a mechanical conflict
> resolution?
>
> Thanks,
> Yun
>
> On 6/29/2026 9:15 PM, Mark Brown wrote:
>> Hi all,
>>
>> Today's linux-next merge of the nfc tree got a conflict in:
>>
>> net/nfc/nci/rsp.c
>>
>> between commit:
>>
>> 075f88b7d3b5c ("nfc: nci: fix uninit-value in nci_core_init_rsp_packet()")
>>
>> from the nfc-fixes tree and commit:
>>
>> 1d5fcb66b07a3 ("nfc: nci: fix use of uninitialized memory in CORE_INIT_RSP
>> parsing")
>>
>> from the nfc tree.
>>
>> I fixed it up (see below) and can carry the fix as necessary. This
>> is now fixed as far as linux-next is concerned, but any non trivial
>> conflicts should be mentioned to your upstream maintainer when your tree
>> is submitted for merging. You may also want to consider cooperating
>> with the maintainer of the conflicting tree to minimise any particularly
>> complex conflicts.
>>
>> diff --cc net/nfc/nci/rsp.c
>> index 6b2fa6bdbd14b,85c3ff2b78cd9..0000000000000
>> --- a/net/nfc/nci/rsp.c
>> +++ b/net/nfc/nci/rsp.c
>> @@@ -50,7 -50,8 +50,8 @@@ static u8 nci_core_init_rsp_packet_v1(s
>> const struct nci_core_init_rsp_1 *rsp_1 = (void *)skb->data;
>> const struct nci_core_init_rsp_2 *rsp_2;
>> + /* Ensure that the status field can be accessed. */
>> - if (skb_headlen(skb) < 1)
>> + if (skb->len < sizeof(*rsp_1))
>> return NCI_STATUS_SYNTAX_ERROR;
>> pr_debug("status 0x%x\n", rsp_1->status);
>
--
David Heidelberg
^ permalink raw reply
* Re: [Re] kernel panic during shutdown in next-20260722
From: Bert Karwatzki @ 2026-07-26 18:47 UTC (permalink / raw)
To: linux-kernel, Rafal Ostrowski
Cc: linux-next, linux-rt-devel, amd-gfx, Alex Deucher,
Mario Limonciello, Sebastian Andrzej Siewior, Thomas Gleixner,
spasswolf
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
^ permalink raw reply related
* Re: Missing signoff in the driver-core tree
From: Danilo Krummrich @ 2026-07-26 18:30 UTC (permalink / raw)
To: Mark Brown; +Cc: Greg KH, Rafael J. Wysocki, linux-kernel, linux-next
In-Reply-To: <amZFO8eUhS9xhfCs@sirena.org.uk>
On Sun Jul 26, 2026 at 7:34 PM CEST, Mark Brown wrote:
> Commits
>
> 4e63c0582e2ae ("base: Remove unused DMA_FENCE_TRACE Kconfig symbol")
> 45dfa004893df ("driver core: soc: Unregister bus on early device registration failure")
> ba3dedcf3bd47 ("software node: Fix software_node_get_reference_args() with index -1")
> c3a280ff728a9 ("debugfs: warn if file creation failed due to uninitialized debugfs")
> 06553566a841c ("kernfs: Replace strcpy(s, "../") with memcpy(s, "../", 4)")
> d996995a0ffb8 ("kernfs: simplify kernfs_name_hash()")
> 32e21e9509915 ("docs: ABI: sysfs-uevent: add missing bracket")
> 38f5745f49e44 ("arch_numa: remove redundant nodemask clears in numa_init()")
> 8cfe7ad274bb4 ("driver core: attribute_container: Unwind device_add() on attr failure")
> 6e328b4a208f7 ("drivers: base: Remove statistics group if encryption group not created")
> c37ab60d55e34 ("device property: Refactor to use RAII approach")
> 1900692555826 ("device property: fix infinite loop in fwnode_for_each_child_node()")
> 10864921212fc ("driver core: avoid repeatedly printing the same 'Fixed dependency' log")
>
> are missing a Signed-off-by from their committers
Ah, that's because an unrelated preceding patch that was reported to break the
build by 0-day was dropped from driver-core-testing, so those commits
technically got rebased before they hit driver-core-next. Sorry about that.
^ permalink raw reply
* Re: Policy regarding linux-next only changes
From: Mark Brown @ 2026-07-26 17:49 UTC (permalink / raw)
To: Tetsuo Handa
Cc: Miguel Ojeda, Theodore Tso, Alexander Potapenko,
Christoph Hellwig, Aleksandr Nogikh, Boqun Feng, Gary Guo,
linux-next, linux-kernel, Miguel Ojeda, Linus Torvalds, peterz,
will, longman, mingo, gregkh
In-Reply-To: <8c3d90d5-747e-451b-bdcb-1cfe1d5fce53@I-love.SAKURA.ne.jp>
[-- Attachment #1: Type: text/plain, Size: 1333 bytes --]
On Sat, Jul 25, 2026 at 12:44:17PM +0900, Tetsuo Handa wrote:
> Excuse me, but what does "successfully unit tested" mean? Broken patches
> that do not build, or trigger oops by just "/bin/cat" _are_ arriving at
> linux-next tree, which in turn preventing continuous testing by syzbot.
You're supposed to make some reasonable effort to ensure that things
work, if you break things badly enough and pay little enough attention
your tree will get kicked. To even get merged in -next on a given day a
tree has to build in some of the more common configurations, and not
break KUnit. It's not expected that everything will be perfect, people
can't be reasonably expected to to test all possible configurations - a
big part of the point of -next is to pool coverage - but it's expected
that people will be making a reasonable effort.
> I am OK to post my debug patches to the relevant mailing list. But without
> responses from developers / maintainers, my debug patches won't be able to
> find a route to linux-next, which in turn prevents us from debugging.
The other side of this is that the reason people are noticing that you
have added these patches is that you are causing breakage and disruption
for them that catches them by surprise, a lot of what's coming through
here is that you need to work actively with other people.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply
* Missing signoff in the driver-core tree
From: Mark Brown @ 2026-07-26 17:34 UTC (permalink / raw)
To: Greg KH, Danilo Krummrich, Rafael J. Wysocki; +Cc: linux-kernel, linux-next
[-- Attachment #1: Type: text/plain, Size: 1100 bytes --]
Commits
4e63c0582e2ae ("base: Remove unused DMA_FENCE_TRACE Kconfig symbol")
45dfa004893df ("driver core: soc: Unregister bus on early device registration failure")
ba3dedcf3bd47 ("software node: Fix software_node_get_reference_args() with index -1")
c3a280ff728a9 ("debugfs: warn if file creation failed due to uninitialized debugfs")
06553566a841c ("kernfs: Replace strcpy(s, "../") with memcpy(s, "../", 4)")
d996995a0ffb8 ("kernfs: simplify kernfs_name_hash()")
32e21e9509915 ("docs: ABI: sysfs-uevent: add missing bracket")
38f5745f49e44 ("arch_numa: remove redundant nodemask clears in numa_init()")
8cfe7ad274bb4 ("driver core: attribute_container: Unwind device_add() on attr failure")
6e328b4a208f7 ("drivers: base: Remove statistics group if encryption group not created")
c37ab60d55e34 ("device property: Refactor to use RAII approach")
1900692555826 ("device property: fix infinite loop in fwnode_for_each_child_node()")
10864921212fc ("driver core: avoid repeatedly printing the same 'Fixed dependency' log")
are missing a Signed-off-by from their committers
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply
* Re: linux-next: manual merge of the wireless-next tree with the origin tree
From: Johannes Berg @ 2026-07-26 17:02 UTC (permalink / raw)
To: Zhao Li
Cc: Mark Brown, linux-wireless, linux-kernel, linux-next,
Miri Korenblit, Pagadala Yesu Anjaneyulu
In-Reply-To: <20260726164156.71624-1-enderaoelyther@gmail.com>
On Mon, 2026-07-27 at 00:41 +0800, Zhao Li wrote:
>
> For the record, destroy_assoc_data already does both. Since f13e573ab3f12
> moved drv_mgd_complete_tx() into ieee80211_destroy_assoc_data(), that label
> notifies the driver before the link is torn down, then abandons. No
> additional path would be needed. The impact is negligible either way, so I
> agree it is not worth touching now.
D'oh. Now I even remember I asked Anji to do that... Oops.
Well, it's not merged yet, so I guess I can update my suggested merge
resolution and send a message...
johannes
^ permalink raw reply
* Re: linux-next: manual merge of the wireless-next tree with the origin tree
From: Zhao Li @ 2026-07-26 16:41 UTC (permalink / raw)
To: Johannes Berg
Cc: Mark Brown, linux-wireless, Johannes Berg, linux-kernel,
linux-next, Miri Korenblit, Pagadala Yesu Anjaneyulu
In-Reply-To: <b99e4a1428546030b61883063b9542dd953a69f2.camel@sipsolutions.net>
On Sun, 26 Jul 2026 12:33:13 +0200, Johannes Berg wrote:
> But because I don't think (a) we should fix that in the merge, and (b)
> it's actually very important, I'm just going to leave it as
> "notify_driver".
I traced both paths again and I agree with you. Retrying against a broken
AP is the better failure mode than confusing the driver, and the trigger
needs an AP that reports success without an AID Response element, so it is
not worth changing the merge resolution.
> If we actually observe this in practice and want to get rid of the time
> wasting, I guess we could add a path out that does both, but I'm not
> sure it's worth it.
For the record, destroy_assoc_data already does both. Since f13e573ab3f12
moved drv_mgd_complete_tx() into ieee80211_destroy_assoc_data(), that label
notifies the driver before the link is torn down, then abandons. No
additional path would be needed. The impact is negligible either way, so I
agree it is not worth touching now.
Thanks for looking at it.
Zhao
^ permalink raw reply
* Missing signoff in the arm-soc tree
From: Mark Brown @ 2026-07-26 16:29 UTC (permalink / raw)
To: Arnd Bergmann, soc; +Cc: linux-kernel, linux-next
[-- Attachment #1: Type: text/plain, Size: 154 bytes --]
Commit
3edcea7f0413e ("Merge branch 'arm/fixes' into for-next")
is missing a Signed-off-by from its committer (and also isn't showing up
as a merge).
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply
* Missing signoff in the arm-soc tree
From: Mark Brown @ 2026-07-26 16:28 UTC (permalink / raw)
To: Arnd Bergmann, soc; +Cc: linux-kernel, linux-next
Commit
3edcea7f0413e ("Merge branch 'arm/fixes' into for-next")
is missing a Signed-off-by from its author (and isn't showing up as
a merge)
^ permalink raw reply
* Missing signoff in the mm-unstable tree
From: Mark Brown @ 2026-07-26 16:27 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel, linux-next
[-- Attachment #1: Type: text/plain, Size: 131 bytes --]
Commit
6955eebb93dca ("mm: page_alloc: move capture_control to the page allocator")
is missing a Signed-off-by from its author
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply
* Fixes tags need work in the trace-fixes tree
From: Mark Brown @ 2026-07-26 16:26 UTC (permalink / raw)
To: Steven Rostedt, Masami Hiramatsu; +Cc: linux-kernel, linux-next
[-- Attachment #1: Type: text/plain, Size: 231 bytes --]
In commit
c1d87e724ae55 ("tracing: Fix resource leak on mmiotrace trace_pipe close")
Fixes tag
Fixes: c521efd1700a8 ("tracing: Add pipe_close interface)
has these problem(s):
- Subject has leading but no trailing quotes
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply
* Re: linux-next: manual merge of the wireless-next tree with the origin tree
From: Johannes Berg @ 2026-07-26 10:33 UTC (permalink / raw)
To: Zhao Li, Mark Brown
Cc: linux-wireless, linux-kernel, linux-next, Miri Korenblit,
Pagadala Yesu Anjaneyulu
In-Reply-To: <20260723202153.97352-1-enderaoelyther@gmail.com>
On Fri, 2026-07-24 at 04:21 +0800, Zhao Li wrote:
>
> That last branch was introduced by 035ed430ce6a ("wifi: mac80211: avoid
> non-S1G AID fallback for S1G assoc") as:
>
> else if (status_code == WLAN_STATUS_SUCCESS)
> goto abandon_assoc;
>
> f13e573ab3f12 ("wifi: mac80211: notify driver before destroying assoc
> link") consolidated terminal association cleanup at destroy_assoc_data
> and removed abandon_assoc. The conflict resolution retargeted this branch
> to notify_driver, but notify_driver only calls drv_mgd_complete_tx()
> without destroying the association data.
>
> Since assoc_status is initialized to ASSOC_ABANDON at function entry, the
> equivalent target is destroy_assoc_data. A successful S1G association
> response with no AID Response element otherwise leaves assoc_data live
> instead of abandoning it.
>
> > but that is immediately after another goto notify_driver, there's
> > further notify_driver error handling afterwards and all the earlier
> > error handling is return statements so it looks at least unclear what's
> > supposed to be going on.
>
> Other goto notify_driver targets are intentional:
>
> - "if (!elems) goto notify_driver" is a pre-existing allocation failure
> bail-out; so association timeout handles cleanup.
>
> - The comeback path WLAN_STATUS_ASSOC_REJECTED_TEMPORARILY keeps
> assoc_data live deliberately for retry.
>
> A successful S1G response without an AID Response element is terminal.
> It needs to abandon association immediately, so the target should be
> destroy_assoc_data rather than notify_driver.
Actually, looking at this again because I was going to send a PR for
wireless-next, I disagree.
From userspace perspective, you're right, we could and perhaps should
abandon the assoc attempt entirely and send a "something went wrong" to
userspace.
However, from the driver's perspective, we're going to need the
notify_driver part, because we're done with the transmit/receive cycle.
Just abandoning it there would introduce a bug around this area.
But because I don't think (a) we should fix that in the merge, and (b)
it's actually very important, I'm just going to leave it as
"notify_driver". Sure, this means that for a bogus association response
we're going to try again (and who knows what the AP will do then), but
that only risks confusing the AP and potentially wasting some time
against a broken AP, rather than confusing the driver.
If we actually observe this in practice and want to get rid of the time
wasting, I guess we could add a path out that does both, but I'm not
sure it's worth it.
johannes
^ permalink raw reply
* Re: hang during shutdown in next-20260722+ with MT7925
From: Nicolas Cavallari @ 2026-07-26 9:20 UTC (permalink / raw)
To: Bert Karwatzki
Cc: linux-kernel, linux-next, linux-wireless, Felix Fietkau,
ryder.lee, lorenzo, legale.legale, sean.wang, shayne.chen
In-Reply-To: <20260724151419.26014-1-spasswolf@web.de>
On 7/24/26 17:14, Bert Karwatzki wrote:
> Since next-20260722 my debian sid system hangs when shutting down or
> rebooting (No error message when monitoring the shutdown process via
> netconsole). I bisected the error to commit
> 13b7e6a96a00 ("wifi: mt76: Disable napi when removing device")
> and reverting this commit in next-20260723 makes shutting down or
> rebooting work normally again.
You can probably reproduce the problem with more logs by just unloading
the mt7925 module. I'm on vacation on a half-broken laptop, but try this
patch:
diff --git a/drivers/net/wireless/mediatek/mt76/mt7925/pci.c
b/drivers/net/wireless/mediatek/mt76/mt7925/pci.c
index 4e734f4f65d1..f606c0a8ad29 100644
--- a/drivers/net/wireless/mediatek/mt76/mt7925/pci.c
+++ b/drivers/net/wireless/mediatek/mt76/mt7925/pci.c
@@ -50,8 +50,6 @@ static void mt7925e_unregister_device(struct
mt792x_dev *dev)
cancel_work_sync(&dev->reset_work);
cancel_work_sync(&dev->init_work);
mt76_unregister_device(&dev->mt76);
- mt76_for_each_q_rx(&dev->mt76, i)
- napi_disable(&dev->mt76.napi[i]);
cancel_delayed_work_sync(&pm->ps_work);
cancel_delayed_work_sync(&dev->mlo_pm_work);
cancel_work_sync(&pm->wake_work);
^ permalink raw reply related
* Re: [Re] kernel panic during shutdown in next-20260722
From: Bert Karwatzki @ 2026-07-25 23:16 UTC (permalink / raw)
To: linux-kernel, Rafal Ostrowski
Cc: linux-next, linux-rt-devel, amd-gfx, Alex Deucher,
Mario Limonciello, Sebastian Andrzej Siewior, Thomas Gleixner,
spasswolf
In-Reply-To: <dc5f1cfb267b0fb522b8aaa236b71b23e236df4d.camel@web.de>
Am Samstag, dem 25.07.2026 um 21:58 +0200 schrieb Bert Karwatzki:
> Am Freitag, dem 24.07.2026 um 17:08 +0200 schrieb Bert Karwatzki:
> >
> >
> > 2) The "scheduling while atomic" errors which occur in v7.2-rc4 and earlier, once I figure out
> > these I'll contiue here (v6.19 is free from these errors)
> >
> > Bert Karwatzki
>
> To figure out the "scheduling while atomic" errors when rebooting from v7.1 I first retested
>
> commit 8bf0cb97edb ("drm/amd/display: Move dml2_destroy to non-FPU compilation unit")
>
> which was supposed to fix "scheduling while atomic" errors introduced by these patches:
>
> 32c1c35b6d8b drm/amd/display: Move FPU Guards From DML To DC - Part 3
> 4bb2f0721ed8 drm/amd/display: Move FPU Guards From DML To DC - Part 2
> 3539437f354b drm/amd/display: Move FPU Guards From DML To DC - Part 1
>
> https://lore.kernel.org/lkml/20260409131411.10598-1-spasswolf@web.de/
>
>
> Which shows that the fix in commit 8bf0cb97edb may be incomplete.
>
> Bert Karwatzki
I did yet another test of
commit 8bf0cb97edb ("drm/amd/display: Move dml2_destroy to non-FPU compilation unit")
this time with CONFIG_LOCKDEP=y and got a kernel panic:
T4648;netconsole: network logging started
T4648;netconsole-setup: Test log message to verify netconsole configuration.
T1508;BUG: scheduling while atomic: Xorg/1508/0x00000003
T1508;4 locks held by Xorg/1508:
T1508; #0: ffffb949cd76b9f8 (crtc_ww_class_acquire){+.+.}-{0:0}, at: set_property_atomic+0x51/0x150 [drm]
T1508; #1: ffffb949cd76ba20 (crtc_ww_class_mutex){+.+.}-{4:4}, at: set_property_atomic+0x51/0x150 [drm]
T1508; #2: ffff980422565478 (&adev->dm.dc_lock){+.+.}-{4:4}, at: amdgpu_dm_atomic_commit_tail+0x120a/0x3460 [amdgpu]
T1508; #3: ffffffff9cdbcc50 (&zone->lock){+.+.}-{3:3}, at: get_page_from_freelist+0x261/0x19f0
T1508,ncfrag=0/979;Modules linked in: netconsole ccm snd_seq_dummy snd_hrtimer snd_seq nls_ascii nls_cp437 vfat fat mt7925e mt7925_common snd_hda_codec_atihdmi
joydev snd_usb_audio mt792x_lib snd_hda_codec_hdmi intel_rapl_msr mt76_connac_lib snd_usbmidi_lib snd_ump intel_rapl_common mt76 snd_rawmidi iosf_mbi
snd_seq_device snd_hda_intel mac80211 rapl wmi_bmof snd_hda_codec snd_hda_core libarc4 snd_intel_dspcfg spd5118 snd_hwdep cfg80211 regmap_i2c snd_pcm pcspkr
snd_timer snd rfkill soundcore evdev ccp k10temp 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 drm_kms_helper ahci libahci drm libata scsi_mod cec xhci_pci igc scsi_common crc16 xhci_hcd nvme nvme_core video usbcore nvme_keyring
nvme_auth hkd
T1508,ncfrag=918/979;f usb_common i2c_piix4 gpio_amdpt gpio_generic i2c_smbus wmi
T1508;CPU: 23 UID: 0 PID: 1508 Comm: Xorg Tainted: G W 7.0.0-rc7-lockdep-01908-g8bf0cb97edb6 #1264 PREEMPT_{RT,(full)}
T1508;Tainted: [W]=WARN
T1508;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
T1508;Call Trace:
T1508; <TASK>
T1508; ? dump_stack_lvl+0x5b/0x80
T1508; ? __schedule_bug.cold+0x5a/0x67
T1508; ? __schedule+0x1468/0x1ae0
T1508; ? rtlock_slowlock_locked+0x281/0x1aa0
T1508; ? mark_held_locks+0x40/0x70
T1508; ? schedule_rtlock+0x15/0x30
T1508; ? rtlock_slowlock_locked+0x5b4/0x1aa0
T1508; ? lock_acquire+0xbf/0x2e0
T1508; ? rt_spin_lock+0x85/0x1b0
T1508; ? get_page_from_freelist+0x261/0x19f0
T1508; ? __lock_acquire+0x49a/0x2590
T1508; ? dc_link_get_highest_encoding_format+0x61/0xb0 [amdgpu]
T1508; ? __alloc_frozen_pages_noprof+0x158/0x370
T1508; ? ___kmalloc_large_node+0xd7/0xf0
T1508; ? __kmalloc_large_node_noprof+0x1b/0x130
T1508; ? __kvmalloc_node_noprof+0x4ad/0x730
T1508; ? dc_create_plane_state+0x24/0x80 [amdgpu]
T1508; ? dc_create_plane_state+0x24/0x80 [amdgpu]
T1508; ? dc_state_create_phantom_plane+0x15/0x50 [amdgpu]
T1508; ? dml21_handle_phantom_streams_planes+0x292/0x510 [amdgpu]
T1508; ? dml21_mode_check_and_programming+0x157/0x7e0 [amdgpu]
T1508; ? spl_set_filters_data+0xbc/0xd0 [amdgpu]
T1508; ? spl_calculate_scaler_params+0x39d/0x1c00 [amdgpu]
T1508; ? dc_state_remove_plane+0xbf/0x160 [amdgpu]
T1508; ? dcn401_validate_bandwidth+0xb8/0x1f0 [amdgpu]
T1508; ? update_planes_and_stream_state+0xeb5/0x1520 [amdgpu]
T1508; ? __lock_acquire+0x49a/0x2590
T1508; ? update_planes_and_stream_prepare_v3+0xb3/0x430 [amdgpu]
T1508; ? dc_update_planes_and_stream+0x87/0x130 [amdgpu]
T1508; ? amdgpu_dm_atomic_commit_tail+0x126b/0x3460 [amdgpu]
T1508; ? commit_tail+0x9d/0x130 [drm_kms_helper]
T1508; ? drm_atomic_helper_commit+0x15a/0x1a0 [drm_kms_helper]
T1508; ? drm_atomic_commit+0xac/0xe0 [drm]
T1508; ? __drm_universal_plane_init.cold+0x17/0x17 [drm]
T1508; ? set_property_atomic+0x82/0x150 [drm]
T1508; ? drm_mode_obj_find_prop_id+0x60/0x60 [drm]
T1508; ? drm_mode_obj_set_property_ioctl+0xe6/0x150 [drm]
T1508; ? drm_ioctl_kernel+0xa7/0x100 [drm]
T1508; ? drm_ioctl+0x288/0x510 [drm]
T1508; ? drm_mode_obj_find_prop_id+0x60/0x60 [drm]
T1508; ? rt_mutex_slowunlock+0x3bd/0x420
T1508; ? amdgpu_drm_ioctl+0x4b/0x80 [amdgpu]
T1508; ? __x64_sys_ioctl+0x95/0xe0
T1508; ? do_syscall_64+0x129/0x6b0
T1508; ? kmem_cache_free+0x179/0x4c0
T1508; ? lockdep_hardirqs_on_prepare+0xd7/0x180
T1508; ? trace_hardirqs_on_prepare+0xdc/0x100
T1508; ? do_syscall_64+0x238/0x6b0
T1508; ? trace_hardirqs_off+0x4e/0xf0
T1508; ? exit_to_user_mode_loop+0xf8/0x460
T1508; ? trace_hardirqs_on_prepare+0xdc/0x100
T1508; ? do_syscall_64+0x238/0x6b0
T1508; ? vfs_writev+0x9a/0x490
T1508; ? find_held_lock+0x2b/0x80
T1508; ? __fget_files+0xbf/0x190
T1508; ? lock_release+0xd3/0x2f0
T1508; ? do_writev+0xf4/0x110
T1508; ? trace_hardirqs_on_prepare+0xdc/0x100
T1508; ? do_syscall_64+0x238/0x6b0
T1508; ? flush_tlb_func+0x74/0x340
T1508; ? do_writev+0xf4/0x110
T1508; ? trace_hardirqs_on_prepare+0xdc/0x100
T1508; ? do_syscall_64+0x238/0x6b0
T1508; ? trace_hardirqs_on_prepare+0xdc/0x100
T1508; ? lockdep_hardirqs_on_prepare+0xd7/0x180
T1508; ? irqentry_exit+0xbd/0x5a0
T1508; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
T1508; </TASK>
C23;------------[ cut here ]------------
T1508;WARNING: drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/dc_fpu.c:97 at dc_fpu_begin+0x160/0x170 [amdgpu], CPU#23: Xorg/1508
T1508,ncfrag=0/979;Modules linked in: netconsole ccm snd_seq_dummy snd_hrtimer snd_seq nls_ascii nls_cp437 vfat fat mt7925e mt7925_common snd_hda_codec_atihdmi
joydev snd_usb_audio mt792x_lib snd_hda_codec_hdmi intel_rapl_msr mt76_connac_lib snd_usbmidi_lib snd_ump intel_rapl_common mt76 snd_rawmidi iosf_mbi
snd_seq_device snd_hda_intel mac80211 rapl wmi_bmof snd_hda_codec snd_hda_core libarc4 snd_intel_dspcfg spd5118 snd_hwdep cfg80211 regmap_i2c snd_pcm pcspkr
snd_timer snd rfkill soundcore evdev ccp k10temp 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 drm_kms_helper ahci libahci drm libata scsi_mod cec xhci_pci igc scsi_common crc16 xhci_hcd nvme nvme_core video usbcore nvme_keyring
nvme_auth hkd
T1508,ncfrag=918/979;f usb_common i2c_piix4 gpio_amdpt gpio_generic i2c_smbus wmi
T1508;CPU: 23 UID: 0 PID: 1508 Comm: Xorg Tainted: G W 7.0.0-rc7-lockdep-01908-g8bf0cb97edb6 #1264 PREEMPT_{RT,(full)}
T1508;Tainted: [W]=WARN
T1508;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
T1508;RIP: 0010:dc_fpu_begin+0x160/0x170 [amdgpu]
T1508;Code: ff bf 02 00 00 00 89 4c 24 14 4c 89 4c 24 08 44 89 04 24 e8 c2 63 12 db 8b 4c 24 14 4c 8b 4c 24 08 44 8b 04 24 e9 f5 fe ff ff <0f> 0b e9 ce fe ff ff
66 0f 1f 84 00 00 00 00 00 0f 1f 40 d6 41 56
T1508;RSP: 0018:ffffb949cd76b570 EFLAGS: 00010206
T1508;RAX: 0000000000ff0000 RBX: ffff980423000000 RCX: 00000000000006c8
T1508;RDX: 0000000000ff0000 RSI: 00000000000006c8 RDI: ffffffffc11c3960
T1508;RBP: ffff980522a00000 R08: 0000000000005183 R09: ffffffffc11c3960
T1508;R10: ffffb949cd76b508 R11: 0000000000000002 R12: ffff980448140000
T1508;R13: 0000000000000001 R14: ffff980423000000 R15: ffff980566daa000
T1508;FS: 00007f93c3e6fb80(0000) GS:ffff9813a0a46000(0000) knlGS:0000000000000000
T1508;CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
T1508;CR2: 00007ff941d9d000 CR3: 000000011261e000 CR4: 0000000000f50ef0
T1508;PKRU: 55555554
T1508;Call Trace:
T1508; <TASK>
T1508; ? determine_pipe_unlock_order+0x78/0xf0 [amdgpu]
T1508; ? dcn401_prepare_mcache_programming+0x2f/0x70 [amdgpu]
T1508; ? commit_planes_for_stream+0x157/0x1870 [amdgpu]
T1508; ? update_planes_and_stream_execute_v3+0x3c/0xd0 [amdgpu]
T1508; ? dc_update_planes_and_stream+0xb6/0x130 [amdgpu]
T1508; ? amdgpu_dm_atomic_commit_tail+0x126b/0x3460 [amdgpu]
T1508; ? commit_tail+0x9d/0x130 [drm_kms_helper]
T1508; ? drm_atomic_helper_commit+0x15a/0x1a0 [drm_kms_helper]
T1508; ? drm_atomic_commit+0xac/0xe0 [drm]
T1508; ? __drm_universal_plane_init.cold+0x17/0x17 [drm]
T1508; ? set_property_atomic+0x82/0x150 [drm]
T1508; ? drm_mode_obj_find_prop_id+0x60/0x60 [drm]
T1508; ? drm_mode_obj_set_property_ioctl+0xe6/0x150 [drm]
T1508; ? drm_ioctl_kernel+0xa7/0x100 [drm]
T1508; ? drm_ioctl+0x288/0x510 [drm]
T1508; ? drm_mode_obj_find_prop_id+0x60/0x60 [drm]
T1508; ? rt_mutex_slowunlock+0x3bd/0x420
T1508; ? amdgpu_drm_ioctl+0x4b/0x80 [amdgpu]
T1508; ? __x64_sys_ioctl+0x95/0xe0
T1508; ? do_syscall_64+0x129/0x6b0
T1508; ? kmem_cache_free+0x179/0x4c0
T1508; ? lockdep_hardirqs_on_prepare+0xd7/0x180
T1508; ? trace_hardirqs_on_prepare+0xdc/0x100
T1508; ? do_syscall_64+0x238/0x6b0
T1508; ? trace_hardirqs_off+0x4e/0xf0
T1508; ? exit_to_user_mode_loop+0xf8/0x460
T1508; ? trace_hardirqs_on_prepare+0xdc/0x100
T1508; ? do_syscall_64+0x238/0x6b0
T1508; ? vfs_writev+0x9a/0x490
T1508; ? find_held_lock+0x2b/0x80
T1508; ? __fget_files+0xbf/0x190
T1508; ? lock_release+0xd3/0x2f0
T1508; ? do_writev+0xf4/0x110
T1508; ? trace_hardirqs_on_prepare+0xdc/0x100
T1508; ? do_syscall_64+0x238/0x6b0
T1508; ? flush_tlb_func+0x74/0x340
T1508; ? do_writev+0xf4/0x110
T1508; ? trace_hardirqs_on_prepare+0xdc/0x100
T1508; ? do_syscall_64+0x238/0x6b0
T1508; ? trace_hardirqs_on_prepare+0xdc/0x100
T1508; ? lockdep_hardirqs_on_prepare+0xd7/0x180
T1508; ? irqentry_exit+0xbd/0x5a0
T1508; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
T1508; </TASK>
T1508;irq event stamp: 11300063
T1508;hardirqs last enabled at (11300065): [<ffffffff9bb6683d>] vprintk_store+0x36d/0x5e0
T1508;hardirqs last disabled at (11300066): [<ffffffff9bb6685f>] vprintk_store+0x38f/0x5e0
T1508;softirqs last enabled at (11293958): [<ffffffff9bacb56b>] __local_bh_enable_ip+0xfb/0x140
T1508;softirqs last disabled at (11293948): [<ffffffff9c49b14d>] unix_release_sock+0xfd/0x540
T1508;---[ end trace 0000000000000000 ]---
C23;------------[ cut here ]------------
C23;kernel BUG at mm/vmalloc.c:3412!
C23;Oops: invalid opcode: 0000 [#1] SMP NOPTI
C23;CPU: 23 UID: 0 PID: 1508 Comm: Xorg Tainted: G W 7.0.0-rc7-lockdep-01908-g8bf0cb97edb6 #1264 PREEMPT_{RT,(full)}
C23;Tainted: [W]=WARN
C23;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
C23;RIP: 0010:vfree_atomic+0x55/0x60
C23;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
C23;RSP: 0018:ffffb949cd76b5f8 EFLAGS: 00010286
C23;RAX: 0000000000ff0000 RBX: ffffb949cdfd5000 RCX: 0000000000000183
C23;RDX: 0000000000ff0000 RSI: 000000000000003d RDI: ffffb949e08ad000
C23;RBP: ffff98058f900000 R08: 0000000000000000 R09: ffffffffc11e6d50
C23;R10: 0000000000000006 R11: ffff9804480c8ad0 R12: ffff980448140000
C23;R13: ffff980423000000 R14: 0000000000000001 R15: ffff980566daa000
C23;FS: 00007f93c3e6fb80(0000) GS:ffff9813a0a46000(0000) knlGS:0000000000000000
C23;CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
C23;CR2: 00007ff941d9d000 CR3: 000000011261e000 CR4: 0000000000f50ef0
C23;PKRU: 55555554
C23;Call Trace:
C23; <TASK>
C23; ? dml21_destroy+0x50/0xa0 [amdgpu]
C23; ? dml2_destroy+0x59/0x60 [amdgpu]
C23; ? dc_state_free+0x31/0x70 [amdgpu]
C23; ? update_planes_and_stream_cleanup_v3+0x4f/0x3e0 [amdgpu]
C23; ? dc_update_planes_and_stream+0xc4/0x130 [amdgpu]
C23; ? amdgpu_dm_atomic_commit_tail+0x126b/0x3460 [amdgpu]
C23; ? commit_tail+0x9d/0x130 [drm_kms_helper]
C23; ? drm_atomic_helper_commit+0x15a/0x1a0 [drm_kms_helper]
C23; ? drm_atomic_commit+0xac/0xe0 [drm]
C23; ? __drm_universal_plane_init.cold+0x17/0x17 [drm]
C23; ? set_property_atomic+0x82/0x150 [drm]
C23; ? drm_mode_obj_find_prop_id+0x60/0x60 [drm]
C23; ? drm_mode_obj_set_property_ioctl+0xe6/0x150 [drm]
C23; ? drm_ioctl_kernel+0xa7/0x100 [drm]
C23; ? drm_ioctl+0x288/0x510 [drm]
C23; ? drm_mode_obj_find_prop_id+0x60/0x60 [drm]
C23; ? rt_mutex_slowunlock+0x3bd/0x420
C23; ? amdgpu_drm_ioctl+0x4b/0x80 [amdgpu]
C23; ? __x64_sys_ioctl+0x95/0xe0
C23; ? do_syscall_64+0x129/0x6b0
C23; ? kmem_cache_free+0x179/0x4c0
C23; ? lockdep_hardirqs_on_prepare+0xd7/0x180
C23; ? trace_hardirqs_on_prepare+0xdc/0x100
C23; ? do_syscall_64+0x238/0x6b0
C23; ? trace_hardirqs_off+0x4e/0xf0
C23; ? exit_to_user_mode_loop+0xf8/0x460
C23; ? trace_hardirqs_on_prepare+0xdc/0x100
C23; ? do_syscall_64+0x238/0x6b0
C23; ? vfs_writev+0x9a/0x490
C23; ? find_held_lock+0x2b/0x80
C23; ? __fget_files+0xbf/0x190
C23; ? lock_release+0xd3/0x2f0
C23; ? do_writev+0xf4/0x110
C23; ? trace_hardirqs_on_prepare+0xdc/0x100
C23; ? do_syscall_64+0x238/0x6b0
C23; ? flush_tlb_func+0x74/0x340
C23; ? do_writev+0xf4/0x110
C23; ? trace_hardirqs_on_prepare+0xdc/0x100
C23; ? do_syscall_64+0x238/0x6b0
C23; ? trace_hardirqs_on_prepare+0xdc/0x100
C23; ? lockdep_hardirqs_on_prepare+0xd7/0x180
C23; ? irqentry_exit+0xbd/0x5a0
C23; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
C23; </TASK>
C23,ncfrag=0/979;Modules linked in: netconsole ccm snd_seq_dummy snd_hrtimer snd_seq nls_ascii nls_cp437 vfat fat mt7925e mt7925_common snd_hda_codec_atihdmi
joydev snd_usb_audio mt792x_lib snd_hda_codec_hdmi intel_rapl_msr mt76_connac_lib snd_usbmidi_lib snd_ump intel_rapl_common mt76 snd_rawmidi iosf_mbi
snd_seq_device snd_hda_intel mac80211 rapl wmi_bmof snd_hda_codec snd_hda_core libarc4 snd_intel_dspcfg spd5118 snd_hwdep cfg80211 regmap_i2c snd_pcm pcspkr
snd_timer snd rfkill soundcore evdev ccp k10temp 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 drm_kms_helper ahci libahci drm libata scsi_mod cec xhci_pci igc scsi_common crc16 xhci_hcd nvme nvme_core video usbcore nvme_keyring
nvme_auth hkdf
C23,ncfrag=920/979;usb_common i2c_piix4 gpio_amdpt gpio_generic i2c_smbus wmi
C23;---[ end trace 0000000000000000 ]---
C23;RIP: 0010:vfree_atomic+0x55/0x60
C23;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
C23;RSP: 0018:ffffb949cd76b5f8 EFLAGS: 00010286
C23;RAX: 0000000000ff0000 RBX: ffffb949cdfd5000 RCX: 0000000000000183
C23;RDX: 0000000000ff0000 RSI: 000000000000003d RDI: ffffb949e08ad000
C23;RBP: ffff98058f900000 R08: 0000000000000000 R09: ffffffffc11e6d50
C23;R10: 0000000000000006 R11: ffff9804480c8ad0 R12: ffff980448140000
C23;R13: ffff980423000000 R14: 0000000000000001 R15: ffff980566daa000
C23;FS: 00007f93c3e6fb80(0000) GS:ffff9813a0a46000(0000) knlGS:0000000000000000
C23;CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
C23;CR2: 00007ff941d9d000 CR3: 000000011261e000 CR4: 0000000000f50ef0
C23;PKRU: 55555554
C23;Kernel panic - not syncing: Fatal exception in interrupt
C23;Kernel Offset: 0x1a800000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)
C23;---[ end Kernel panic - not syncing: Fatal exception in interrupt ]---
This BUG_ON() is triggered:
void vfree_atomic(const void *addr)
{
struct vfree_deferred *p = raw_cpu_ptr(&vfree_deferred);
BUG_ON(in_nmi());
Bert Karwatzki
^ permalink raw reply
* Re: Policy regarding linux-next only changes
From: Theodore Tso @ 2026-07-25 22:00 UTC (permalink / raw)
To: Tetsuo Handa
Cc: Alexander Potapenko, Mark Brown, Christoph Hellwig,
Aleksandr Nogikh, Boqun Feng, Gary Guo, linux-next, linux-kernel,
Miguel Ojeda, Linus Torvalds, peterz, will, longman, mingo,
gregkh, Miguel Ojeda
In-Reply-To: <c0272e64-a849-4fe0-8131-ecf6c724f558@I-love.SAKURA.ne.jp>
On Sat, Jul 25, 2026 at 02:20:29PM -0500, Tetsuo Handa wrote:
> Not all developers have enough money to pay to companies/organizations.
> Some developers (including me) are contributing by spending their time
> instead of paying money.
>
> Your statements sound like "Poor men/women cannot participate into
> the Linux kernel development." Please don't assume that everything
> is controlled by "who pays the money?".
If they want to spend their own personal time, that's fine. I just
don't want companies or hobbists spending *my* personal time.
> Please respond to syzbot-related patches.
Oh, I, or some other ext4 developer do respond --- if it's a bug fix.
I wish more of the contributors would actually pay attention to the
Sashiko reviews, and actually *test* the patches using "kvm-xfstests
smoke" which takes 20 minutes, but we'll respond, one way or another.
We might NACK the patch if it destroys performance because it adds
tests in a hot path and it's addressing a really pointless syzbot scenario
which requires root privilegs to modify the loop device while the file
system is mounted, however.
However, if it's a debugging patch to fix what we might consider a
rather pointless syzbot bug (and there are an awful lot of those, at
least for ext4) it might take a while for me to respond. And if it's
about landing ext4 patches from a non-ext4 tree, abusing the
linux-next tree, that's a somewhat different matter....
- Ted
^ permalink raw reply
* Re: [Re] kernel panic during shutdown in next-20260722
From: Bert Karwatzki @ 2026-07-25 19:58 UTC (permalink / raw)
To: linux-kernel, Rafal Ostrowski
Cc: linux-next, linux-rt-devel, amd-gfx, Alex Deucher,
Mario Limonciello, Sebastian Andrzej Siewior, Thomas Gleixner,
spasswolf
In-Reply-To: <3c1be47abfcc907e7c1f9696cb25a24c93415a28.camel@web.de>
Am Freitag, dem 24.07.2026 um 17:08 +0200 schrieb Bert Karwatzki:
>
>
> 2) The "scheduling while atomic" errors which occur in v7.2-rc4 and earlier, once I figure out
> these I'll contiue here (v6.19 is free from these errors)
>
> Bert Karwatzki
To figure out the "scheduling while atomic" errors when rebooting from v7.1 I first retested
commit 8bf0cb97edb ("drm/amd/display: Move dml2_destroy to non-FPU compilation unit")
which was supposed to fix "scheduling while atomic" errors introduced by these patches:
32c1c35b6d8b drm/amd/display: Move FPU Guards From DML To DC - Part 3
4bb2f0721ed8 drm/amd/display: Move FPU Guards From DML To DC - Part 2
3539437f354b drm/amd/display: Move FPU Guards From DML To DC - Part 1
https://lore.kernel.org/lkml/20260409131411.10598-1-spasswolf@web.de/
On the 8th reboot I got an "scheduling while atomic" error (no panic though):
T4874;netconsole: network logging started
T4874;netconsole-setup: Test log message to verify netconsole configuration.
T1499;BUG: scheduling while atomic: Xorg/1499/0x00000003
T1499,ncfrag=0/979;Modules linked in: netconsole ccm snd_seq_dummy snd_hrtimer snd_seq nls_ascii nls_cp437 vfat fat joydev snd_usb_audio mt7925e intel_rapl_msr
mt7925_common snd_usbmidi_lib snd_ump mt792x_lib snd_hda_codec_atihdmi snd_rawmidi snd_hda_codec_hdmi snd_seq_device mt76_connac_lib intel_rapl_common mt76
iosf_mbi rapl snd_hda_intel mac80211 wmi_bmof snd_hda_codec snd_hda_core snd_intel_dspcfg pcspkr snd_hwdep spd5118 regmap_i2c snd_pcm libarc4 snd_timer cfg80211
snd soundcore k10temp rfkill evdev ccp nct6775 nct6775_core hwmon_vid configfs efi_pstore efivarfs autofs4 ext4 mbcache jbd2 amdgpu hid_generic drm_client_lib
i2c_algo_bit usbhid drm_buddy drm_ttm_helper hid ttm drm_exec drm_suballoc_helper mfd_core drm_panel_backlight_quirks gpu_sched amdxcp drm_display_helper ahci
libahci xhci_pci libata xhci_hcd drm_kms_helper drm usbcore scsi_mod nvme igc nvme_core cec scsi_common crc16 video usb_common nvme_keyring nvm
T1499,ncfrag=919/979;e_auth i2c_piix4 hkdf gpio_amdpt gpio_generic i2c_smbus wmi
T1499;CPU: 18 UID: 0 PID: 1499 Comm: Xorg Not tainted 7.0.0-rc7-bisect-01908-g8bf0cb97edb6 #1259 PREEMPT_{RT,(full)}
T1499;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
T1499;Call Trace:
T1499; <TASK>
T1499; ? dump_stack_lvl+0x4b/0x70
T1499; ? __schedule_bug.cold+0x3e/0x4a
T1499; ? __schedule+0xedf/0x15c0
T1499; ? schedule_rtlock+0x15/0x30
T1499; ? rtlock_slowlock_locked+0x30b/0xe50
T1499; ? rt_spin_lock+0xc3/0x120
T1499; ? get_page_from_freelist+0x243/0x1630
T1499; ? rt_spin_unlock+0x5a/0xa0
T1499; ? __alloc_frozen_pages_noprof+0x146/0x2b0
T1499; ? ___kmalloc_large_node+0xd7/0xf0
T1499; ? __kvmalloc_node_noprof+0x398/0x540
T1499; ? dcn401_build_pipe_pix_clk_params+0x10a/0x1f0 [amdgpu]
T1499; ? dc_create_plane_state+0x24/0x80 [amdgpu]
T1499; ? dc_state_create_phantom_plane+0x15/0x50 [amdgpu]
T1499; ? dml21_handle_phantom_streams_planes+0x292/0x510 [amdgpu]
T1499; ? dml21_mode_check_and_programming+0x157/0x7e0 [amdgpu]
T1499; ? spl_set_filters_data+0xbc/0xd0 [amdgpu]
T1499; ? dcn401_validate_bandwidth+0xb8/0x1f0 [amdgpu]
T1499; ? update_planes_and_stream_state+0xeb5/0x1520 [amdgpu]
T1499; ? update_planes_and_stream_prepare_v3+0xb3/0x430 [amdgpu]
T1499; ? amdgpu_device_wreg+0x1e/0xe0 [amdgpu]
T1499; ? amdgpu_device_wreg+0x1e/0xe0 [amdgpu]
T1499; ? dc_update_planes_and_stream+0x87/0x130 [amdgpu]
T1499; ? amdgpu_dm_atomic_commit_tail+0x1239/0x35e0 [amdgpu]
T1499; ? commit_tail+0xcd/0x160 [drm_kms_helper]
T1499; ? drm_atomic_helper_commit+0x137/0x180 [drm_kms_helper]
T1499; ? drm_atomic_commit+0xac/0xe0 [drm]
T1499; ? __drm_universal_plane_init.cold+0x12/0x12 [drm]
T1499; ? drm_atomic_helper_set_config+0x6f/0xb0 [drm_kms_helper]
T1499; ? drm_mode_setcrtc+0x443/0x8b0 [drm]
T1499; ? do_futex+0xc0/0x180
T1499; ? __x64_sys_futex+0x10d/0x200
T1499; ? drm_mode_getcrtc+0x180/0x180 [drm]
T1499; ? drm_ioctl_kernel+0xa1/0xf0 [drm]
T1499; ? drm_ioctl+0x27f/0x520 [drm]
T1499; ? drm_mode_getcrtc+0x180/0x180 [drm]
T1499; ? amdgpu_drm_ioctl+0x45/0x80 [amdgpu]
T1499; ? __x64_sys_ioctl+0x92/0xe0
T1499; ? do_syscall_64+0x118/0x5e0
T1499; ? irqentry_exit+0x325/0x560
T1499; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
T1499; </TASK>
T1499;------------[ cut here ]------------
T1499;WARNING: drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/dc_fpu.c:126 at dc_fpu_end+0x36/0x40 [amdgpu], CPU#17: Xorg/1499
T1499,ncfrag=0/979;Modules linked in: netconsole ccm snd_seq_dummy snd_hrtimer snd_seq nls_ascii nls_cp437 vfat fat joydev snd_usb_audio mt7925e intel_rapl_msr
mt7925_common snd_usbmidi_lib snd_ump mt792x_lib snd_hda_codec_atihdmi snd_rawmidi snd_hda_codec_hdmi snd_seq_device mt76_connac_lib intel_rapl_common mt76
iosf_mbi rapl snd_hda_intel mac80211 wmi_bmof snd_hda_codec snd_hda_core snd_intel_dspcfg pcspkr snd_hwdep spd5118 regmap_i2c snd_pcm libarc4 snd_timer cfg80211
snd soundcore k10temp rfkill evdev ccp nct6775 nct6775_core hwmon_vid configfs efi_pstore efivarfs autofs4 ext4 mbcache jbd2 amdgpu hid_generic drm_client_lib
i2c_algo_bit usbhid drm_buddy drm_ttm_helper hid ttm drm_exec drm_suballoc_helper mfd_core drm_panel_backlight_quirks gpu_sched amdxcp drm_display_helper ahci
libahci xhci_pci libata xhci_hcd drm_kms_helper drm usbcore scsi_mod nvme igc nvme_core cec scsi_common crc16 video usb_common nvme_keyring nvm
T1499,ncfrag=919/979;e_auth i2c_piix4 hkdf gpio_amdpt gpio_generic i2c_smbus wmi
T1499;CPU: 17 UID: 0 PID: 1499 Comm: Xorg Tainted: G W 7.0.0-rc7-bisect-01908-g8bf0cb97edb6 #1259 PREEMPT_{RT,(full)}
T1499;Tainted: [W]=WARN
T1499;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
T1499;RIP: 0010:dc_fpu_end+0x36/0x40 [amdgpu]
T1499;Code: 05 7f f9 76 f1 ff c8 74 10 78 1f 65 ff 0d a2 e9 75 f1 74 0c c3 cc cc cc cc e8 86 f3 72 f0 eb eb e8 6f 63 71 f0 c3 cc cc cc cc <0f> 0b eb dd 66 0f 1f
44 00 00 41 56 41 55 41 54 55 53 48 83 ec 10
T1499;RSP: 0018:ffffb02c0a13f670 EFLAGS: 00010296
T1499;RAX: 00000000ffffffff RBX: ffff973c82b80000 RCX: 0000000000000008
T1499;RDX: 0000000000000000 RSI: 00000000000006a4 RDI: ffffffffc1599830
T1499;RBP: 0000000000000001 R08: 0000000000000000 R09: 0000000000000001
T1499;R10: ffff973c82b80000 R11: 0000000000000002 R12: ffff973c40290000
T1499;R13: ffff973be0c00000 R14: 0000000000000000 R15: 0000000000000001
T1499;FS: 00007f0caaec0b80(0000) GS:ffff974acb3b9000(0000) knlGS:0000000000000000
T1499;CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
T1499;CR2: 00007fb6d8830990 CR3: 000000010a518000 CR4: 0000000000f50ef0
T1499;PKRU: 55555554
T1499;Call Trace:
T1499; <TASK>
T1499; ? dcn401_validate_bandwidth+0xd1/0x1f0 [amdgpu]
T1499; ? update_planes_and_stream_state+0xeb5/0x1520 [amdgpu]
T1499; ? update_planes_and_stream_prepare_v3+0xb3/0x430 [amdgpu]
T1499; ? amdgpu_device_wreg+0x1e/0xe0 [amdgpu]
T1499; ? amdgpu_device_wreg+0x1e/0xe0 [amdgpu]
T1499; ? dc_update_planes_and_stream+0x87/0x130 [amdgpu]
T1499; ? amdgpu_dm_atomic_commit_tail+0x1239/0x35e0 [amdgpu]
T1499; ? commit_tail+0xcd/0x160 [drm_kms_helper]
T1499; ? drm_atomic_helper_commit+0x137/0x180 [drm_kms_helper]
T1499; ? drm_atomic_commit+0xac/0xe0 [drm]
T1499; ? __drm_universal_plane_init.cold+0x12/0x12 [drm]
T1499; ? drm_atomic_helper_set_config+0x6f/0xb0 [drm_kms_helper]
T1499; ? drm_mode_setcrtc+0x443/0x8b0 [drm]
T1499; ? do_futex+0xc0/0x180
T1499; ? __x64_sys_futex+0x10d/0x200
T1499; ? drm_mode_getcrtc+0x180/0x180 [drm]
T1499; ? drm_ioctl_kernel+0xa1/0xf0 [drm]
T1499; ? drm_ioctl+0x27f/0x520 [drm]
T1499; ? drm_mode_getcrtc+0x180/0x180 [drm]
T1499; ? amdgpu_drm_ioctl+0x45/0x80 [amdgpu]
T1499; ? __x64_sys_ioctl+0x92/0xe0
T1499; ? do_syscall_64+0x118/0x5e0
T1499; ? irqentry_exit+0x325/0x560
T1499; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
T1499; </TASK>
T1499;---[ end trace 0000000000000000 ]---
T1499;------------[ cut here ]------------
T1499;WARNING: drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/dc_fpu.c:97 at dc_fpu_begin+0x4f/0x60 [amdgpu], CPU#17: Xorg/1499
T1499,ncfrag=0/979;Modules linked in: netconsole ccm snd_seq_dummy snd_hrtimer snd_seq nls_ascii nls_cp437 vfat fat joydev snd_usb_audio mt7925e intel_rapl_msr
mt7925_common snd_usbmidi_lib snd_ump mt792x_lib snd_hda_codec_atihdmi snd_rawmidi snd_hda_codec_hdmi snd_seq_device mt76_connac_lib intel_rapl_common mt76
iosf_mbi rapl snd_hda_intel mac80211 wmi_bmof snd_hda_codec snd_hda_core snd_intel_dspcfg pcspkr snd_hwdep spd5118 regmap_i2c snd_pcm libarc4 snd_timer cfg80211
snd soundcore k10temp rfkill evdev ccp nct6775 nct6775_core hwmon_vid configfs efi_pstore efivarfs autofs4 ext4 mbcache jbd2 amdgpu hid_generic drm_client_lib
i2c_algo_bit usbhid drm_buddy drm_ttm_helper hid ttm drm_exec drm_suballoc_helper mfd_core drm_panel_backlight_quirks gpu_sched amdxcp drm_display_helper ahci
libahci xhci_pci libata xhci_hcd drm_kms_helper drm usbcore scsi_mod nvme igc nvme_core cec scsi_common crc16 video usb_common nvme_keyring nvm
T1499,ncfrag=919/979;e_auth i2c_piix4 hkdf gpio_amdpt gpio_generic i2c_smbus wmi
T1499;CPU: 17 UID: 0 PID: 1499 Comm: Xorg Tainted: G W 7.0.0-rc7-bisect-01908-g8bf0cb97edb6 #1259 PREEMPT_{RT,(full)}
T1499;Tainted: [W]=WARN
T1499;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
T1499;RIP: 0010:dc_fpu_begin+0x4f/0x60 [amdgpu]
T1499;Code: d0 75 27 65 ff 05 f1 e9 75 f1 b8 01 00 00 00 65 0f c1 05 b4 f9 76 f1 85 c0 74 05 c3 cc cc cc cc bf 02 00 00 00 e9 41 f4 72 f0 <0f> 0b eb d5 66 90 66
66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 d6 b8
T1499;RSP: 0018:ffffb02c0a13f7e8 EFLAGS: 00010206
T1499;RAX: 0000000000ff0000 RBX: ffff973be0c00000 RCX: 0000000000000000
T1499;RDX: 0000000000ff0000 RSI: 00000000000006c8 RDI: ffffffffc1599800
T1499;RBP: ffff973c82b80000 R08: ffffb02c0a13f7bc R09: 000000000000000a
T1499;R10: ffffb02c0a13f760 R11: 0000000000000002 R12: ffff973c40290000
T1499;R13: 0000000000000001 R14: ffff973be0c00000 R15: ffff973b4e999000
T1499;FS: 00007f0caaec0b80(0000) GS:ffff974acb3b9000(0000) knlGS:0000000000000000
T1499;CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
T1499;CR2: 00007fb6d8830990 CR3: 000000010a518000 CR4: 0000000000f50ef0
T1499;PKRU: 55555554
T1499;Call Trace:
T1499; <TASK>
T1499; ? dcn401_prepare_mcache_programming+0x2f/0x70 [amdgpu]
T1499; ? commit_planes_for_stream+0x157/0x1870 [amdgpu]
T1499; ? update_planes_and_stream_execute_v3+0x3c/0xd0 [amdgpu]
T1499; ? dc_update_planes_and_stream+0xb6/0x130 [amdgpu]
T1499; ? amdgpu_dm_atomic_commit_tail+0x1239/0x35e0 [amdgpu]
T1499; ? commit_tail+0xcd/0x160 [drm_kms_helper]
T1499; ? drm_atomic_helper_commit+0x137/0x180 [drm_kms_helper]
T1499; ? drm_atomic_commit+0xac/0xe0 [drm]
T1499; ? __drm_universal_plane_init.cold+0x12/0x12 [drm]
T1499; ? drm_atomic_helper_set_config+0x6f/0xb0 [drm_kms_helper]
T1499; ? drm_mode_setcrtc+0x443/0x8b0 [drm]
T1499; ? do_futex+0xc0/0x180
T1499; ? __x64_sys_futex+0x10d/0x200
T1499; ? drm_mode_getcrtc+0x180/0x180 [drm]
T1499; ? drm_ioctl_kernel+0xa1/0xf0 [drm]
T1499; ? drm_ioctl+0x27f/0x520 [drm]
T1499; ? drm_mode_getcrtc+0x180/0x180 [drm]
T1499; ? amdgpu_drm_ioctl+0x45/0x80 [amdgpu]
T1499; ? __x64_sys_ioctl+0x92/0xe0
T1499; ? do_syscall_64+0x118/0x5e0
T1499; ? irqentry_exit+0x325/0x560
T1499; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
T1499; </TASK>
T1499;---[ end trace 0000000000000000 ]---
T1499;BUG: scheduling while atomic: Xorg/1499/0x00000000
T1499,ncfrag=0/979;Modules linked in: netconsole ccm snd_seq_dummy snd_hrtimer snd_seq nls_ascii nls_cp437 vfat fat joydev snd_usb_audio mt7925e intel_rapl_msr
mt7925_common snd_usbmidi_lib snd_ump mt792x_lib snd_hda_codec_atihdmi snd_rawmidi snd_hda_codec_hdmi snd_seq_device mt76_connac_lib intel_rapl_common mt76
iosf_mbi rapl snd_hda_intel mac80211 wmi_bmof snd_hda_codec snd_hda_core snd_intel_dspcfg pcspkr snd_hwdep spd5118 regmap_i2c snd_pcm libarc4 snd_timer cfg80211
snd soundcore k10temp rfkill evdev ccp nct6775 nct6775_core hwmon_vid configfs efi_pstore efivarfs autofs4 ext4 mbcache jbd2 amdgpu hid_generic drm_client_lib
i2c_algo_bit usbhid drm_buddy drm_ttm_helper hid ttm drm_exec drm_suballoc_helper mfd_core drm_panel_backlight_quirks gpu_sched amdxcp drm_display_helper ahci
libahci xhci_pci libata xhci_hcd drm_kms_helper drm usbcore scsi_mod nvme igc nvme_core cec scsi_common crc16 video usb_common nvme_keyring nvm
T1499,ncfrag=919/979;e_auth i2c_piix4 hkdf gpio_amdpt gpio_generic i2c_smbus wmi
T1499;CPU: 17 UID: 0 PID: 1499 Comm: Xorg Tainted: G W 7.0.0-rc7-bisect-01908-g8bf0cb97edb6 #1259 PREEMPT_{RT,(full)}
T1499;Tainted: [W]=WARN
T1499;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
T1499;Call Trace:
T1499; <TASK>
T1499; ? dump_stack_lvl+0x4b/0x70
T1499; ? __schedule_bug.cold+0x3e/0x4a
T1499; ? __schedule+0xedf/0x15c0
T1499; ? psi_task_change+0xbf/0xd0
T1499; ? lock_timer_base+0x6b/0x90
T1499; ? __mod_timer+0x116/0x330
T1499; ? schedule+0x22/0xd0
T1499; ? schedule_timeout+0x76/0xf0
T1499; ? hrtimers_cpu_dying+0x1a0/0x1a0
T1499; ? wait_for_completion_timeout+0x78/0x170
T1499; ? drm_atomic_helper_wait_for_flip_done+0x46/0x90 [drm_kms_helper]
T1499; ? amdgpu_dm_atomic_commit_tail+0x2c6d/0x35e0 [amdgpu]
T1499; ? commit_tail+0xcd/0x160 [drm_kms_helper]
T1499; ? drm_atomic_helper_commit+0x137/0x180 [drm_kms_helper]
T1499; ? drm_atomic_commit+0xac/0xe0 [drm]
T1499; ? __drm_universal_plane_init.cold+0x12/0x12 [drm]
T1499; ? drm_atomic_helper_set_config+0x6f/0xb0 [drm_kms_helper]
T1499; ? drm_mode_setcrtc+0x443/0x8b0 [drm]
T1499; ? do_futex+0xc0/0x180
T1499; ? __x64_sys_futex+0x10d/0x200
T1499; ? drm_mode_getcrtc+0x180/0x180 [drm]
T1499; ? drm_ioctl_kernel+0xa1/0xf0 [drm]
T1499; ? drm_ioctl+0x27f/0x520 [drm]
T1499; ? drm_mode_getcrtc+0x180/0x180 [drm]
T1499; ? amdgpu_drm_ioctl+0x45/0x80 [amdgpu]
T1499; ? __x64_sys_ioctl+0x92/0xe0
T1499; ? do_syscall_64+0x118/0x5e0
T1499; ? irqentry_exit+0x325/0x560
T1499; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
T1499; </TASK>
T1499;------------[ cut here ]------------
T1499;WARNING: drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/dc_fpu.c:58 at dc_assert_fp_enabled+0x14/0x20 [amdgpu], CPU#17: Xorg/1499
T1499,ncfrag=0/979;Modules linked in: netconsole ccm snd_seq_dummy snd_hrtimer snd_seq nls_ascii nls_cp437 vfat fat joydev snd_usb_audio mt7925e intel_rapl_msr
mt7925_common snd_usbmidi_lib snd_ump mt792x_lib snd_hda_codec_atihdmi snd_rawmidi snd_hda_codec_hdmi snd_seq_device mt76_connac_lib intel_rapl_common mt76
iosf_mbi rapl snd_hda_intel mac80211 wmi_bmof snd_hda_codec snd_hda_core snd_intel_dspcfg pcspkr snd_hwdep spd5118 regmap_i2c snd_pcm libarc4 snd_timer cfg80211
snd soundcore k10temp rfkill evdev ccp nct6775 nct6775_core hwmon_vid configfs efi_pstore efivarfs autofs4 ext4 mbcache jbd2 amdgpu hid_generic drm_client_lib
i2c_algo_bit usbhid drm_buddy drm_ttm_helper hid ttm drm_exec drm_suballoc_helper mfd_core drm_panel_backlight_quirks gpu_sched amdxcp drm_display_helper ahci
libahci xhci_pci libata xhci_hcd drm_kms_helper drm usbcore scsi_mod nvme igc nvme_core cec scsi_common crc16 video usb_common nvme_keyring nvm
T1499,ncfrag=919/979;e_auth i2c_piix4 hkdf gpio_amdpt gpio_generic i2c_smbus wmi
T1499;CPU: 17 UID: 0 PID: 1499 Comm: Xorg Tainted: G W 7.0.0-rc7-bisect-01908-g8bf0cb97edb6 #1259 PREEMPT_{RT,(full)}
T1499;Tainted: [W]=WARN
T1499;Hardware name: ASUS System Product Name/ROG STRIX B850-F GAMING WIFI, BIOS 1627 02/05/2026
T1499;RIP: 0010:dc_assert_fp_enabled+0x14/0x20 [amdgpu]
T1499;Code: 00 5b e9 ff 33 79 f0 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 0f 1f 40 d6 65 8b 05 25 fa 76 f1 85 c0 7e 05 c3 cc cc cc cc <0f> 0b c3 cc cc cc cc
0f 1f 44 00 00 0f 1f 40 d6 65 8b 05 05 fa 76
T1499;RSP: 0018:ffffb02c0a13f418 EFLAGS: 00010246
T1499;RAX: 0000000000000000 RBX: ffffb02c0a7c3128 RCX: 0000000000000000
T1499;RDX: 00000000000003d8 RSI: ffffffffc15b1c18 RDI: ffffb02c0a7c3cf0
T1499;RBP: ffff973be0c00000 R08: 0000000000000008 R09: ffffe3ef8492ebc0
T1499;R10: ffffe3ef8492ea00 R11: ffff974a7d86b408 R12: ffffb02c0a7c1008
T1499;R13: ffff973b83900010 R14: ffff973be0ee9fc8 R15: ffff973be0c00000
T1499;FS: 00007f0caaec0b80(0000) GS:ffff974acb3b9000(0000) knlGS:0000000000000000
T1499;CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
T1499;CR2: 0000564066480de0 CR3: 000000010a518000 CR4: 0000000000f50ef0
T1499;PKRU: 55555554
T1499;Call Trace:
T1499; <TASK>
T1499; ? dcn401_get_soc_bb+0x3f/0x70 [amdgpu]
T1499; ? dml21_populate_dml_init_params+0x61/0x1d0 [amdgpu]
T1499; ? dml21_init+0x6a/0x90 [amdgpu]
T1499; ? dml21_create+0x34/0x50 [amdgpu]
T1499; ? dc_state_create+0xc8/0x140 [amdgpu]
T1499; ? create_validate_stream_for_sink+0xb7/0x510 [amdgpu]
T1499; ? dm_update_crtc_state+0x2d0/0x810 [amdgpu]
T1499; ? amdgpu_dm_atomic_check+0x98f/0x1840 [amdgpu]
T1499; ? drm_atomic_check_only+0x5d9/0xa00 [drm]
T1499; ? drm_atomic_commit+0x6c/0xe0 [drm]
T1499; ? __drm_universal_plane_init.cold+0x12/0x12 [drm]
T1499; ? drm_client_modeset_commit_atomic+0x1c6/0x210 [drm]
T1499; ? drm_client_modeset_commit_locked+0x56/0x160 [drm]
T1499; ? __drm_fb_helper_restore_fbdev_mode_unlocked.part.0+0x22/0x80 [drm_kms_helper]
T1499; ? drm_fb_helper_set_par+0x52/0x70 [drm_kms_helper]
T1499; ? fb_set_var+0x234/0x3e0
T1499; ? prepend_copy+0x10/0x40
T1499; ? prepend_path+0x214/0x340
T1499; ? aa_audit_file+0x6e/0x1d0
T1499; ? mas_wr_node_store+0x1f2/0x390
T1499; ? fbcon_blank+0x1e4/0x2f0
T1499; ? do_unblank_screen+0xc3/0x1b0
T1499; ? down+0x19/0x60
T1499; ? vt_ioctl+0x563/0x13a0
T1499; ? rt_spin_lock+0x35/0x120
T1499; ? fsnotify_grab_connector+0x45/0x80
T1499; ? rt_spin_unlock+0x5a/0xa0
T1499; ? tty_ioctl+0xdf/0x960
T1499; ? __memcg_slab_free_hook+0xd0/0x120
T1499; ? rt_spin_unlock+0x5a/0xa0
T1499; ? kmem_cache_free+0x210/0x420
T1499; ? __x64_sys_ioctl+0x92/0xe0
T1499; ? do_syscall_64+0x118/0x5e0
T1499; ? do_syscall_64+0x574/0x5e0
T1499; ? filename_unlinkat+0xd2/0x290
T1499; ? rt_spin_unlock+0x5a/0xa0
T1499; ? kmem_cache_free+0x210/0x420
T1499; ? do_syscall_64+0x574/0x5e0
T1499; ? obj_cgroup_uncharge_pages+0x58/0xd0
T1499; ? __memcg_slab_free_hook+0xd0/0x120
T1499; ? rt_spin_unlock+0x5a/0xa0
T1499; ? do_wp_page+0x7f2/0xee0
T1499; ? rt_spin_unlock+0x5a/0xa0
T1499; ? refill_obj_stock+0x1be/0x340
T1499; ? __handle_mm_fault+0x393/0x3f0
T1499; ? do_epoll_ctl+0x2a2/0xe00
T1499; ? refill_obj_stock+0x1be/0x340
T1499; ? count_memcg_events+0x66/0x100
T1499; ? handle_mm_fault+0x1b4/0x2b0
T1499; ? do_user_addr_fault+0x203/0x640
T1499; ? irqentry_exit+0x325/0x560
T1499; ? entry_SYSCALL_64_after_hwframe+0x55/0x5d
T1499; </TASK>
T1499;---[ end trace 0000000000000000 ]---
T1265;wlp9s0: deauthenticating from 54:67:51:3d:a2:d2 by local choice (Reason: 3=DEAUTH_LEAVING)
T5206;EXT4-fs (nvme0n1p5): unmounting filesystem 15783f8d-d7dd-4c1a-a7f8-84d944f03886.
T5205;EXT4-fs (nvme0n1p4): unmounting filesystem ab8e4bed-5cab-4ae8-875a-8a42e075b551.
T1;systemd-shutdown[1]: Syncing filesystems and block devices.
T1;systemd-shutdown[1]: Sending SIGTERM to remaining processes...
T754;systemd-journald[754]: Received SIGTERM from PID 1 (systemd-shutdow).
T1;systemd-shutdown[1]: Sending SIGKILL to remaining processes...
T1;systemd-shutdown[1]: Unmounting file systems.
T5222;(sd-umount)[5222]: Unmounting '/run/credentials/systemd-journald.service'.
T5224;(sd-remount)[5224]: Remounting '/' read-only with options 'errors=remount-ro'.
T5224;EXT4-fs (nvme0n1p2): re-mounted 3d5cdc5d-1902-40bf-9e16-ca819372d350 ro.
T1;systemd-shutdown[1]: All filesystems unmounted.
T1;systemd-shutdown[1]: Deactivating swaps.
T1;systemd-shutdown[1]: All swaps deactivated.
T1;systemd-shutdown[1]: Detaching loop devices.
T1;systemd-shutdown[1]: All loop devices detached.
T1;systemd-shutdown[1]: Stopping MD devices.
T1;systemd-shutdown[1]: All MD devices stopped.
T1;systemd-shutdown[1]: Detaching DM devices.
T1;systemd-shutdown[1]: All DM devices detached.
T1;systemd-shutdown[1]: All filesystems, swaps, loop devices, MD devices and DM devices detached.
T1;systemd-shutdown[1]: Syncing filesystems and block devices.
T1;systemd-shutdown[1]
Which shows that the fix in commit 8bf0cb97edb may be incomplete.
Bert Karwatzki
^ permalink raw reply
* Re: Policy regarding linux-next only changes
From: Boqun Feng @ 2026-07-25 13:27 UTC (permalink / raw)
To: Tetsuo Handa
Cc: Miguel Ojeda, Theodore Tso, Alexander Potapenko, Mark Brown,
Christoph Hellwig, Aleksandr Nogikh, Gary Guo, linux-next,
linux-kernel, Miguel Ojeda, Linus Torvalds, peterz, will, longman,
mingo, gregkh
In-Reply-To: <468a1156-05c8-459a-a93e-b0a7d0aa1907@I-love.SAKURA.ne.jp>
On Sat, Jul 25, 2026 at 07:38:25PM +0900, Tetsuo Handa wrote:
> On 2026/07/25 18:38, Miguel Ojeda wrote:
> > No, what prevents you from debugging is that, from what you say,
> > nobody is giving enough compute resources for your task.
>
> OK. Let's go back to https://lkml.kernel.org/r/bc3703bd-65ee-4182-a742-56603d9b9bac@I-love.SAKURA.ne.jp .
>
> If I were able to use a kernel config option which minimizes impact for others,
> the technical problem for my task will be solved.
>
> But including what kernel config options (or kernel command line parameters) I can use, there
> hardly is a discussion from developers / maintainers. The last discussion was 6 years ago:
>
As I said [1], the reposting was stopped 6 years ago, and no one could
read other's mind to know whether it's still worth discussing.
> https://lkml.kernel.org/r/20200413063317.7164-1-penguin-kernel@I-love.SAKURA.ne.jp
> https://lkml.kernel.org/r/20200307135822.3894-1-penguin-kernel@I-love.SAKURA.ne.jp
>
> Can we resume this discussion so that we can minimize surprising other developers / maintainers?
>
Yes, resending the patches, talking about it in a conference, or giving
people a heads-up when planning to queue it via linux-next is the way to
resume the discussion. Could you please do any of these?
[1]: https://lore.kernel.org/lkml/akpxYEF2ZI7p1zn3@MacBook-0RXW5/
Regards,
Boqun
^ permalink raw reply
* Re: Policy regarding linux-next only changes
From: Tetsuo Handa @ 2026-07-25 10:38 UTC (permalink / raw)
To: Miguel Ojeda
Cc: Theodore Tso, Alexander Potapenko, Mark Brown, Christoph Hellwig,
Aleksandr Nogikh, Boqun Feng, Gary Guo, linux-next, linux-kernel,
Miguel Ojeda, Linus Torvalds, peterz, will, longman, mingo,
gregkh
In-Reply-To: <CANiq72=QFc1amaeoX3aceuQQCYbpkj_qb7bQgfGj1CRa=+NcOg@mail.gmail.com>
On 2026/07/25 18:38, Miguel Ojeda wrote:
> No, what prevents you from debugging is that, from what you say,
> nobody is giving enough compute resources for your task.
OK. Let's go back to https://lkml.kernel.org/r/bc3703bd-65ee-4182-a742-56603d9b9bac@I-love.SAKURA.ne.jp .
If I were able to use a kernel config option which minimizes impact for others,
the technical problem for my task will be solved.
But including what kernel config options (or kernel command line parameters) I can use, there
hardly is a discussion from developers / maintainers. The last discussion was 6 years ago:
https://lkml.kernel.org/r/20200413063317.7164-1-penguin-kernel@I-love.SAKURA.ne.jp
https://lkml.kernel.org/r/20200307135822.3894-1-penguin-kernel@I-love.SAKURA.ne.jp
Can we resume this discussion so that we can minimize surprising other developers / maintainers?
^ permalink raw reply
* Re: Policy regarding linux-next only changes
From: Miguel Ojeda @ 2026-07-25 9:38 UTC (permalink / raw)
To: Tetsuo Handa
Cc: Theodore Tso, Alexander Potapenko, Mark Brown, Christoph Hellwig,
Aleksandr Nogikh, Boqun Feng, Gary Guo, linux-next, linux-kernel,
Miguel Ojeda, Linus Torvalds, peterz, will, longman, mingo,
gregkh
In-Reply-To: <8c3d90d5-747e-451b-bdcb-1cfe1d5fce53@I-love.SAKURA.ne.jp>
On Sat, Jul 25, 2026 at 5:44 AM Tetsuo Handa
<penguin-kernel@i-love.sakura.ne.jp> wrote:
>
> Excuse me, but what does "successfully unit tested" mean? Broken patches
> that do not build, or trigger oops by just "/bin/cat" _are_ arriving at
> linux-next tree, which in turn preventing continuous testing by syzbot.
Yes, there are mistakes in linux-next all the time, and those mistakes
take time away from maintainers. Which is why adding more unexpected
patches makes it worse.
But, really, that is not the question at hand -- you say:
"my debug patches won't be able to find a route to linux-next, which
in turn prevents us from debugging."
No, what prevents you from debugging is that, from what you say,
nobody is giving enough compute resources for your task.
linux-next is just a way to access some resources. Which may be OK or
not to do so, but clearly it was not in agreement by everyone nor in
alignment with what linux-next is supposed to be so far, and that is
what I pointed out, nothing else.
Cheers,
Miguel
^ permalink raw reply
* Re: Policy regarding linux-next only changes
From: Tetsuo Handa @ 2026-07-25 5:20 UTC (permalink / raw)
To: Theodore Tso
Cc: Alexander Potapenko, Mark Brown, Christoph Hellwig,
Aleksandr Nogikh, Boqun Feng, Gary Guo, linux-next, linux-kernel,
Miguel Ojeda, Linus Torvalds, peterz, will, longman, mingo,
gregkh, Miguel Ojeda
In-Reply-To: <amPGflb7w6RcOO1M@mit.edu>
On 2026/07/25 6:05, Theodore Tso wrote:
> On Sat, Jul 25, 2026 at 12:29:27AM -0500, Tetsuo Handa wrote:
>> The problem is that a maintainer who has the permission to
>> accept/reject patches tends to become defunctional when syzbot is
>> involved. What actions can the Linux kernel community take in order
>> to address this problem (instead of just ignoring developers who are
>> trying to fix bugs)?
>
> Fundamentally, not all bugs are worth fixing. And if you believe that
> all bugs are worth fixing, you need to convince companies to **fund**
> that work, and not leave it as unfunded mandate. If you give me some
> minions who can be dedicated to help fix bugs, I'm certainly willing
> to provide technical direction. But there's no such thing as a free
> lunch --- and the business case is not as clear cut as you seem to be
> assuming.
Have you ever seen https://syzkaller.appspot.com/upstream/syz-dungeon which
ranks contributors (kernel developers) based on their achievements in fixing
bugs found by Syzkaller? You can find that I am the second top contributor.
Also, my activity for fixing bugs found by syzbot is not my $WORK. I am working
on those bugs using my private time. I am neither working at Google-related
companies nor a member of syzbot team (who can change kernel config for syzbot
kernels in order to help syzbot continue testing).
>
> In essence, this is a cost allocation problem. When you ask for help
> from other maintainers to fix something that you care about, if it's
> not important to them or their company / management chain, you are
> dumping costs from you to them. This can work if you can also help
> them in turn in other areas. This happens all the time, actually, and
> it's what makes Open Source work.
That is wrong. I make not only debug printk() patches but also bug-fix patches.
I am asking for approval from maintainers to fix bugs that syzbot found.
It is really annoying that maintainers keep silence for unknown reason
(maybe they are thinking that "I don't care about this bug"). I can't make
forward progress if maintainers keep silence. What are the maintainers for?
At the panel discussion in LinuxCon Europe 2011, Linus Torvalds has said
"the average age at the summit has risen by one year every year"
( https://lwn.net/Articles/464530/ ). If maintainers are there to let
developer's effort be sent to /dev/null, trying to contribute is waste of time
and new developers won't grow up.
>
> So I think the way we solve this problem is by finding ways to
> allocate the costs to those companies or organizations that think it
> is a good fit for their business, and to reduce the burden on those
> whose company (or management chain) doesn't think the business case is
> sufficiently compelling.
Not all developers have enough money to pay to companies/organizations.
Some developers (including me) are contributing by spending their time
instead of paying money.
Your statements sound like "Poor men/women cannot participate into the Linux
kernel development." Please don't assume that everything is controlled by
"who pays the money?".
>
> Other solutions might include finding some AI solution which can
> filter the low-priority quality Syzbot reports from the high-quality
> ones. If some companies or some departments may have different
> priorities, perhaps they can use different filuters, so they can work
> on those bugs that they think are important.
syzbot already has a priority filter. But trying to make patches based on
that filter will result in a waste of time if maintainers are not responding.
Please respond to syzbot-related patches. For example, if you are not
interested in a bug syzbot has reported, respond to that report like
"I do not think that this bug is important enough to fix. Therefore,
I won't give you Reveiwed-by: nor Acked-by: even if you propose a patch."
. Then, the developers can consider what to do. For example, use a different ML
which handles unloved patches, and make it possible to send the proposed patches
to linux-next and linux without Reveiwed-by: or Acked-by: from maintainers,
unless Sashiko finds a new problem introduced by the proposed patches.
Current situation (no response from developers / maintainers) is a deadlock.
^ permalink raw reply
* Re: Policy regarding linux-next only changes
From: Tetsuo Handa @ 2026-07-25 3:44 UTC (permalink / raw)
To: Miguel Ojeda
Cc: Theodore Tso, Alexander Potapenko, Mark Brown, Christoph Hellwig,
Aleksandr Nogikh, Boqun Feng, Gary Guo, linux-next, linux-kernel,
Miguel Ojeda, Linus Torvalds, peterz, will, longman, mingo,
gregkh
In-Reply-To: <CANiq72nXO0noq7qqLqvQuuAGjP1DE+k8=C6sZ7DZ2xYFCTSPPA@mail.gmail.com>
On 2026/07/25 2:49, Miguel Ojeda wrote:
> On Fri, Jul 24, 2026 at 4:35 PM Tetsuo Handa
> <penguin-kernel@i-love.sakura.ne.jp> wrote:
>>
>> Those who hate my attempts (i.e. sending patches to linux-next without
>> being reviewed/acked by maintainers) are expecting that any patch is
>> reviewed/acked by maintainers. But some maintainers are considering bugs
>
> It is not "hate", it is just the linux-next rules:
>
> "
> * submitted under GPL v2 (or later) and include the Contributor's
> Signed-off-by,
> * posted to the relevant mailing list,
> * reviewed by you (or another maintainer of your subsystem tree),
> * successfully unit tested, and
> * destined for the current or next Linux merge window.
> "
>
> That is why nobody is expecting random patches to appear there --
> because every maintainer receives those rules when they add their tree
> to linux-next.
Excuse me, but what does "successfully unit tested" mean? Broken patches
that do not build, or trigger oops by just "/bin/cat" _are_ arriving at
linux-next tree, which in turn preventing continuous testing by syzbot.
e.g. https://lkml.kernel.org/r/83eb9325-9688-4a6c-9727-e137df773694@I-love.SAKURA.ne.jp
(and I was using
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit?h=next-20260702&id=110ef9f94f84d425ab55d09b2d70ed12ceffdf08
in order to help syzbot continue testing)
e.g. https://lkml.kernel.org/r/ee4992b1-06ce-40f9-b554-bfcadd45cf97@I-love.SAKURA.ne.jp
(and I was using a linux-next only patch which disables this module for syzbot kernels
(link to this patch already gone because this patch was more than 3 months ago)
in order to help syzbot continue testing)
Also, WARN*() is abused just like printk() for catching oversights rather than
introducing grace period for confirmation, which is also preventing continuous testing
by syzbot. Sadly, developers/maintainers do not think that WARN*() is effectively panic()
for continuous testing systems. Unless developers/maintainers can apply all necessary
fixes within few days, WARN*() should not be used.
e.g. https://lkml.kernel.org/r/5b2dea50-2850-4876-b6e8-ba94b9a85034@I-love.SAKURA.ne.jp
(and I was not able to use a linux-next only patch because WQ is a core component
which cannot be disabled for syzbot kernels)
The latest one seems to be https://lore.kernel.org/all/al1pElMQZsDfpAYI@michalis-linux/T/
(but I am not able to use a linux-next only patch which disables this module
for syzbot kernels in order to help syzbot continue testing, for I currently
have no route to help syzbot continue testing)
>
> And those rules make sense -- adding patches that are not ready or
> unexpected can confuse others, break the build, add conflicts or,
> worse of all, silently invalidate testing of normal patches going to
> Linus.
I am OK to post my debug patches to the relevant mailing list. But without
responses from developers / maintainers, my debug patches won't be able to
find a route to linux-next, which in turn prevents us from debugging.
^ permalink raw reply
* Re: Policy regarding linux-next only changes
From: Theodore Tso @ 2026-07-24 21:05 UTC (permalink / raw)
To: Tetsuo Handa
Cc: Alexander Potapenko, Mark Brown, Christoph Hellwig,
Aleksandr Nogikh, Boqun Feng, Gary Guo, linux-next, linux-kernel,
Miguel Ojeda, Linus Torvalds, peterz, will, longman, mingo,
gregkh, Miguel Ojeda
In-Reply-To: <7250a5ad-ec2d-4852-af56-9c1c653d24c7@I-love.SAKURA.ne.jp>
On Sat, Jul 25, 2026 at 12:29:27AM -0500, Tetsuo Handa wrote:
> The problem is that a maintainer who has the permission to
> accept/reject patches tends to become defunctional when syzbot is
> involved. What actions can the Linux kernel community take in order
> to address this problem (instead of just ignoring developers who are
> trying to fix bugs)?
Fundamentally, not all bugs are worth fixing. And if you believe that
all bugs are worth fixing, you need to convince companies to **fund**
that work, and not leave it as unfunded mandate. If you give me some
minions who can be dedicated to help fix bugs, I'm certainly willing
to provide technical direction. But there's no such thing as a free
lunch --- and the business case is not as clear cut as you seem to be
assuming.
In essence, this is a cost allocation problem. When you ask for help
from other maintainers to fix something that you care about, if it's
not important to them or their company / management chain, you are
dumping costs from you to them. This can work if you can also help
them in turn in other areas. This happens all the time, actually, and
it's what makes Open Source work.
So I think the way we solve this problem is by finding ways to
allocate the costs to those companies or organizations that think it
is a good fit for their business, and to reduce the burden on those
whose company (or management chain) doesn't think the business case is
sufficiently compelling.
Other solutions might include finding some AI solution which can
filter the low-priority quality Syzbot reports from the high-quality
ones. If some companies or some departments may have different
priorities, perhaps they can use different filuters, so they can work
on those bugs that they think are important.
Perhaps AI's can do a better job at proposing some patches that
resolve the problem, or creating reliable reproducers that don't
require thousands of VM hours of testing.
One of the reasons why I am personally more supportive about Sashiko
than syzbot is because Sashiko is a technology which is reducing *my*
workload. It does transfer more work to the contributor, but if they
are trying to get code into the kernel and if their company think
there is a business case for that new feature, it seems right that we
require that pay the development costs of submitting high-quality
code.
Cheeres,
- Ted
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox