Re: Fwd: iwlmvm: Linux 6.7 pre-rc1 prints stack trace of iwl_op_mode_mvm_start; caused by commit b6e3d1ba4fcf

From: Damian Tometzki
Date: Sun Nov 12 2023 - 06:52:28 EST


On Sun, 12. Nov 18:18, Bagas Sanjaya wrote:
> Hi Niklāvs and Fabio,
>
> On Fri, Nov 03, 2023 at 08:13:39PM +0700, Bagas Sanjaya wrote:
> > Hi,
> >
> > I notice a regression report on Bugzilla [1]. Quoting from it:
> >
> > > When testing the branch that will become Linux 6.7-rc1, ever since commit b6e3d1ba4fcf02176846d03a930203d8133c0aaf I have observed the following abbreviated kernel stack trace (please see attachments for the full trace):
> > >
> > > ```
> > > [ 6.733281] ? __warn+0xc3/0x1d0
> > > [ 6.733284] ? iwl_op_mode_mvm_start+0x9c4/0x9d0 [iwlmvm]
> > > [ 6.733299] ? report_bug+0x167/0x220
> > > [ 6.733301] ? handle_bug+0x3d/0x90
> > > [ 6.733304] ? exc_invalid_op+0x1a/0x60
> > > [ 6.733306] ? asm_exc_invalid_op+0x1a/0x20
> > > [ 6.733309] ? iwl_op_mode_mvm_start+0x9c4/0x9d0 [iwlmvm]
> > > [ 6.733325] _iwl_op_mode_start+0x66/0xe0 [iwlwifi]
> > > [ 6.733338] iwl_opmode_register+0x87/0xd0 [iwlwifi]
> > > [ 6.733350] ? __cfi_init_module+0x10/0x10 [iwlmvm]
> > > [ 6.733364] init_module+0x22/0xff0 [iwlmvm]
> > > [ 6.733378] ? __cfi_init_module+0x10/0x10 [iwlmvm]
> > > [ 6.733392] do_one_initcall+0x129/0x380
> > > [ 6.733395] ? idr_alloc_cyclic+0x148/0x1e0
> > > [ 6.733397] ? security_kernfs_init_security+0x41/0x80
> > > [ 6.733399] ? __kernfs_new_node+0x1be/0x250
> > > [ 6.733401] ? preempt_count_add+0x55/0xb0
> > > [ 6.733404] ? up_write+0x4a/0xe0
> > > [ 6.733406] ? preempt_count_add+0x55/0xb0
> > > [ 6.733408] ? sysvec_call_function+0xa4/0xb0
> > > [ 6.733410] ? asm_sysvec_call_function+0x1a/0x20
> > > [ 6.733411] ? free_unref_page_prepare+0xf3/0x410
> > > [ 6.733413] ? preempt_count_add+0x62/0xb0
> > > [ 6.733415] ? _raw_spin_trylock+0x19/0x60
> > > [ 6.733417] ? _raw_spin_unlock+0x11/0x30
> > > [ 6.733419] ? __kmem_cache_free+0x29a/0x3c0
> > > [ 6.733421] ? vfree+0xd2/0x150
> > > [ 6.733422] ? slab_post_alloc_hook+0x76/0x3d0
> > > [ 6.733425] ? do_init_module+0x3f/0x230
> > > [ 6.733427] ? __kmem_cache_alloc_node+0x1fe/0x2f0
> > > [ 6.733430] do_init_module+0x7a/0x230
> > > [ 6.733432] __se_sys_init_module+0x1a0/0x220
> > > [ 6.733435] do_syscall_64+0x7a/0x100
> > > [ 6.733438] ? syscall_exit_to_user_mode+0x2d/0x1d0
> > > [ 6.733440] ? do_syscall_64+0x89/0x100
> > > [ 6.733442] ? do_user_addr_fault+0x4e7/0x680
> > > [ 6.733444] ? exc_page_fault+0x61/0x150
> > > [ 6.733446] entry_SYSCALL_64_after_hwframe+0x6e/0x76
> > > ```
> > >
> > > I did try reverting the offending commit but the result did not compile and I did not want to dig deeper to identify any subsequent commits what would need reverting to fix compilation.
> > >
> > > If it's relevant, I'm building the kernel with Clang 17.0.4 toolchain by setting the LLVM=1 variable. CFI is enabled but I'm not sure if it's actually functional.
> >
> > See Bugzilla for the full thread.
> >
> > Anyway, I'm adding this regression to regzbot:
> >
> > #regzbot introduced: b6e3d1ba4fcf02 https://bugzilla.kernel.org/show_bug.cgi?id=218095
> > #regzbot title: new iwlwifi firmware statistics API triggers stack trace
> >
>
> Emmanuel had sent a proposed fix at [1]. Please test.
Hello together,

i tested this fix and the dump is gone. It works.

Tested-by: Damian Tometzki <damian@xxxxxxxxxxxxxx>

Many thanks
Damian
>
> Thanks.
>
> [1]: https://lore.kernel.org/regressions/20231112100944.21177-1-emmanuel.grumbach@xxxxxxxxx/
>
> --
> An old man doll... just what I always wanted! - Clara