From: Peng Zhang <zhangpeng.00@bytedance.com>
To: jason.sim@samsung.com
Cc: "Liam R. Howlett" <Liam.Howlett@oracle.com>,
kernel test robot <oliver.sang@intel.com>,
"oe-lkp@lists.linux.dev" <oe-lkp@lists.linux.dev>,
"lkp@intel.com" <lkp@intel.com>,
Linux Memory Management List <linux-mm@kvack.org>,
Andrew Morton <akpm@linux-foundation.org>,
Matthew Wilcox <willy@infradead.org>,
Peng Zhang <zhangpeng.00@bytedance.com>,
Suren Baghdasaryan <surenb@google.com>,
"maple-tree@lists.infradead.org" <maple-tree@lists.infradead.org>
Subject: Re: [linux-next:master] [maple_tree] 2041864a22: BUG:sleeping_function_called_from_invalid_context_at_include/linux/sched/mm.h
Date: Mon, 25 Sep 2023 20:47:36 +0800 [thread overview]
Message-ID: <08cffec5-a3ae-f02a-ca97-d93f7a17eaee@bytedance.com> (raw)
In-Reply-To: <20230925123907epcms1p82db5bc72fa25e390986f2e195a58b362@epcms1p8>
在 2023/9/25 20:39, Jaeseon Sim 写道:
>> Hello,
>>
>> kernel test robot noticed "BUG:sleeping_function_called_from_invalid_context_at_include/linux/sched/mm.h" on:
>>
>> commit: 2041864a22d4f4e900d0a3def4985432a21d8e6d ("maple_tree: use mas_node_count_gfp() in mas_expected_entries()")
>> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master
>>
>> [test failed on linux-next/master 940fcc189c51032dd0282cbee4497542c982ac59]
>>
>> in testcase: boot
>>
>> compiler: gcc-9
>> test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G
>>
>> (please refer to attached dmesg/kmsg for entire log/backtrace)
>>
>>
>>
>> If you fix the issue in a separate patch/commit (i.e. not just a new version of
>> the same patch/commit), kindly add following tags
>> | Reported-by: kernel test robot <oliver.sang@intel.com>
>> | Closes: https://lore.kernel.org/oe-lkp/202309242123.7ebe65b5-oliver.sang@intel.com
>>
>>
>> [ 113.582828][ T1] BUG: sleeping function called from invalid context at include/linux/sched/mm.h:306
>> [ 113.583602][ T1] in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 1, name: swapper/0
>> [ 113.584246][ T1] preempt_count: 1, expected: 0
>> [ 113.584613][ T1] RCU nest depth: 0, expected: 0
>> [ 113.584983][ T1] 1 lock held by swapper/0/1:
>> [ 113.585344][ T1] #0: ffffc9000001fc10 (&mt->ma_lock){+.+.}-{2:2}, at: check_forking+0x1e0/0x5c0
> Dear Liam,
>
> mas_expected_entries() in check_forking() tried to sleep while holding spinlock, and panic occurred.
> I think mas_expected_entries() in lib/test_maple_tree.c need to be modified to align with commit 2041864a22d4f.
> Do you have any idea for it? or Could you give some guide?
This is just a test module. The work[1] I'm doing modifies this place
and it will fix this bug.
Thanks.
[1]
https://lore.kernel.org/lkml/20230925035617.84767-1-zhangpeng.00@bytedance.com/
>
> Thanks
> Jaeseon
>
>> [ 113.586160][ T1] CPU: 1 PID: 1 Comm: swapper/0 Tainted: G TN 6.6.0-rc2-00018-g2041864a22d4 #1
>> [ 113.586924][ T1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
>> [ 113.587701][ T1] Call Trace:
>> [ 113.587949][ T1] <TASK>
>> [ 113.588172][ T1] dump_stack_lvl (lib/dump_stack.c:107)
>> [ 113.588540][ T1] dump_stack (lib/dump_stack.c:114)
>> [ 113.588668][ T1] __might_resched (kernel/sched/core.c:10188)
>> [ 113.588668][ T1] __might_sleep (kernel/sched/core.c:10117 (discriminator 17))
>> [ 113.588668][ T1] kmem_cache_alloc (include/linux/kernel.h:112 include/linux/sched/mm.h:306 mm/slab.h:709 mm/slub.c:3460 mm/slub.c:3486 mm/slub.c:3493 mm/slub.c:3502)
>> [ 113.588668][ T1] ? mas_alloc_nodes (lib/maple_tree.c:160 lib/maple_tree.c:1249)
>> [ 113.588668][ T1] mas_alloc_nodes (lib/maple_tree.c:160 lib/maple_tree.c:1249)
>> [ 113.588668][ T1] mas_node_count_gfp (lib/maple_tree.c:1331)
>> [ 113.588668][ T1] mas_expected_entries (lib/maple_tree.c:5580)
>> [ 113.588668][ T1] check_forking+0x205/0x5c0
>> [ 113.588668][ T1] ? check_mas_store_gfp+0x580/0x580
>> [ 113.588668][ T1] ? mt_destroy_walk (lib/maple_tree.c:5273)
>> [ 113.588668][ T1] ? mtree_destroy (lib/maple_tree.c:6392)
>> [ 113.588668][ T1] ? lock_downgrade (kernel/locking/lockdep.c:5761)
>> [ 113.588668][ T1] ? __raw_spin_lock_init (kernel/locking/spinlock_debug.c:26)
>> [ 113.588668][ T1] maple_tree_seed (lib/test_maple_tree.c:3584)
>> [ 113.588668][ T1] ? check_empty_area_window+0x3000/0x3000
>> [ 113.588668][ T1] ? trace_hardirqs_on (kernel/trace/trace_preemptirq.c:63 (discriminator 22))
>> [ 113.588668][ T1] ? write_comp_data (kernel/kcov.c:236)
>> [ 113.588668][ T1] ? check_empty_area_window+0x3000/0x3000
>> [ 113.588668][ T1] do_one_initcall (init/main.c:1232)
>> [ 113.588668][ T1] ? trace_event_raw_event_initcall_level (init/main.c:1223)
>> [ 113.588668][ T1] ? parameq (kernel/params.c:171)
>> [ 113.588668][ T1] ? __kasan_kmalloc (mm/kasan/common.c:384)
>> [ 113.588668][ T1] kernel_init_freeable (init/main.c:1293 init/main.c:1310 init/main.c:1329 init/main.c:1547)
>> [ 113.588668][ T1] ? rest_init (init/main.c:1429)
>> [ 113.588668][ T1] kernel_init (init/main.c:1439)
>> [ 113.588668][ T1] ? rest_init (init/main.c:1429)
>> [ 113.588668][ T1] ret_from_fork (arch/x86/kernel/process.c:153)
>> [ 113.588668][ T1] ? rest_init (init/main.c:1429)
>> [ 113.588668][ T1] ret_from_fork_asm (arch/x86/entry/entry_64.S:312)
>> [ 113.588668][ T1] </TASK>
>>
>>
>>
>> The kernel config and materials to reproduce are available at:
>> https://download.01.org/0day-ci/archive/20230924/202309242123.7ebe65b5-oliver.sang@intel.com
>>
>>
>>
>> --
>> 0-DAY CI Kernel Test Service
>> https://protect2.fireeye.com/v1/url?k=cc5f4a3e-add45f07-cc5ec171-000babffae10-d841b249634d3b66&q=1&e=af92f0ae-c873-480a-8f2b-9d5c35053b67&u=https%3A%2F%2Fgithub.com%2Fintel%2Flkp-tests%2Fwiki
>
next prev parent reply other threads:[~2023-09-25 12:47 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-24 13:50 kernel test robot
[not found] ` <CGME20230924135059epcas1p4c0595d07a7d50da7a877a0af696d9c78@epcms1p8>
2023-09-25 12:39 ` Jaeseon Sim
2023-09-25 12:47 ` Peng Zhang [this message]
2023-09-25 15:23 ` Liam R. Howlett
2023-09-26 2:55 ` Peng Zhang
2023-09-26 12:15 ` Jaeseon Sim
2023-09-27 15:29 ` Liam R. Howlett
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=08cffec5-a3ae-f02a-ca97-d93f7a17eaee@bytedance.com \
--to=zhangpeng.00@bytedance.com \
--cc=Liam.Howlett@oracle.com \
--cc=akpm@linux-foundation.org \
--cc=jason.sim@samsung.com \
--cc=linux-mm@kvack.org \
--cc=lkp@intel.com \
--cc=maple-tree@lists.infradead.org \
--cc=oe-lkp@lists.linux.dev \
--cc=oliver.sang@intel.com \
--cc=surenb@google.com \
--cc=willy@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox