From: syzbot <syzbot+4925d60532bf4c399608@syzkaller.appspotmail.com>
To: akpm@linux-foundation.org, aryabinin@virtuozzo.com,
christophe.leroy@c-s.fr, dja@axtens.net, dvyukov@google.com,
glider@google.com, gor@linux.ibm.com, hdanton@sina.com,
kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org,
linux-mm@kvack.org, mark.rutland@arm.com,
penguin-kernel@I-love.SAKURA.ne.jp,
syzkaller-bugs@googlegroups.com, urezki@gmail.com
Subject: Re: BUG: sleeping function called from invalid context in __alloc_pages_nodemask
Date: Sun, 01 Dec 2019 03:22:08 -0800 [thread overview]
Message-ID: <0000000000006e19cd0598a2ac48@google.com> (raw)
In-Reply-To: <000000000000c280ba05988b6242@google.com>
syzbot has found a reproducer for the following crash on:
HEAD commit: 419593da Add linux-next specific files for 20191129
git tree: linux-next
console output: https://syzkaller.appspot.com/x/log.txt?x=168e202ee00000
kernel config: https://syzkaller.appspot.com/x/.config?x=7c04b0959e75c206
dashboard link: https://syzkaller.appspot.com/bug?extid=4925d60532bf4c399608
compiler: gcc (GCC) 9.0.0 20181231 (experimental)
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=162234a2e00000
IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+4925d60532bf4c399608@syzkaller.appspotmail.com
BUG: sleeping function called from invalid context at mm/page_alloc.c:4681
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 9071, name:
kworker/0:3
4 locks held by kworker/0:3/9071:
#0: ffff8880aa026d28 ((wq_completion)events){+.+.}, at: __write_once_size
include/linux/compiler.h:247 [inline]
#0: ffff8880aa026d28 ((wq_completion)events){+.+.}, at: arch_atomic64_set
arch/x86/include/asm/atomic64_64.h:34 [inline]
#0: ffff8880aa026d28 ((wq_completion)events){+.+.}, at: atomic64_set
include/asm-generic/atomic-instrumented.h:868 [inline]
#0: ffff8880aa026d28 ((wq_completion)events){+.+.}, at: atomic_long_set
include/asm-generic/atomic-long.h:40 [inline]
#0: ffff8880aa026d28 ((wq_completion)events){+.+.}, at: set_work_data
kernel/workqueue.c:615 [inline]
#0: ffff8880aa026d28 ((wq_completion)events){+.+.}, at:
set_work_pool_and_clear_pending kernel/workqueue.c:642 [inline]
#0: ffff8880aa026d28 ((wq_completion)events){+.+.}, at:
process_one_work+0x88b/0x1740 kernel/workqueue.c:2235
#1: ffffc900021a7dc0 (pcpu_balance_work){+.+.}, at:
process_one_work+0x8c1/0x1740 kernel/workqueue.c:2239
#2: ffffffff8983ff20 (pcpu_alloc_mutex){+.+.}, at:
pcpu_balance_workfn+0xb7/0x1310 mm/percpu.c:1845
#3: ffffffff89851b18 (vmap_area_lock){+.+.}, at: spin_lock
include/linux/spinlock.h:338 [inline]
#3: ffffffff89851b18 (vmap_area_lock){+.+.}, at:
pcpu_get_vm_areas+0x3b27/0x3f00 mm/vmalloc.c:3431
Preemption disabled at:
[<ffffffff81a89ce7>] spin_lock include/linux/spinlock.h:338 [inline]
[<ffffffff81a89ce7>] pcpu_get_vm_areas+0x3b27/0x3f00 mm/vmalloc.c:3431
CPU: 0 PID: 9071 Comm: kworker/0:3 Not tainted
5.4.0-next-20191129-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
Workqueue: events pcpu_balance_workfn
Call Trace:
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x197/0x210 lib/dump_stack.c:118
___might_sleep.cold+0x1fb/0x23e kernel/sched/core.c:6800
__might_sleep+0x95/0x190 kernel/sched/core.c:6753
prepare_alloc_pages mm/page_alloc.c:4681 [inline]
__alloc_pages_nodemask+0x523/0x910 mm/page_alloc.c:4730
alloc_pages_current+0x107/0x210 mm/mempolicy.c:2211
alloc_pages include/linux/gfp.h:532 [inline]
__get_free_pages+0xc/0x40 mm/page_alloc.c:4786
kasan_populate_vmalloc_pte mm/kasan/common.c:762 [inline]
kasan_populate_vmalloc_pte+0x2f/0x1c0 mm/kasan/common.c:753
apply_to_pte_range mm/memory.c:2041 [inline]
apply_to_pmd_range mm/memory.c:2068 [inline]
apply_to_pud_range mm/memory.c:2088 [inline]
apply_to_p4d_range mm/memory.c:2108 [inline]
apply_to_page_range+0x445/0x700 mm/memory.c:2133
kasan_populate_vmalloc+0x68/0x90 mm/kasan/common.c:791
pcpu_get_vm_areas+0x3c77/0x3f00 mm/vmalloc.c:3439
pcpu_create_chunk+0x24e/0x7f0 mm/percpu-vm.c:340
pcpu_balance_workfn+0xf1b/0x1310 mm/percpu.c:1934
process_one_work+0x9af/0x1740 kernel/workqueue.c:2264
worker_thread+0x98/0xe40 kernel/workqueue.c:2410
kthread+0x361/0x430 kernel/kthread.c:255
ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:352
next prev parent reply other threads:[~2019-12-01 11:22 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-30 7:35 BUG: sleeping function called from invalid context in __alloc_pages_nodemask syzbot
2019-11-30 7:57 ` Dmitry Vyukov
2019-11-30 12:48 ` Tetsuo Handa
2019-11-30 13:44 ` Uladzislau Rezki
2019-12-01 11:22 ` syzbot [this message]
2019-12-01 15:11 ` syzbot
2019-12-02 4:07 ` syzbot
2019-12-02 4:07 ` syzbot
2019-12-02 4:07 ` [Bridge] " syzbot
-- strict thread matches above, loose matches on Subject: below --
2019-11-30 8:32 Hillf Danton
2019-11-30 11:50 ` Tetsuo Handa
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=0000000000006e19cd0598a2ac48@google.com \
--to=syzbot+4925d60532bf4c399608@syzkaller.appspotmail.com \
--cc=akpm@linux-foundation.org \
--cc=aryabinin@virtuozzo.com \
--cc=christophe.leroy@c-s.fr \
--cc=dja@axtens.net \
--cc=dvyukov@google.com \
--cc=glider@google.com \
--cc=gor@linux.ibm.com \
--cc=hdanton@sina.com \
--cc=kasan-dev@googlegroups.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mark.rutland@arm.com \
--cc=penguin-kernel@I-love.SAKURA.ne.jp \
--cc=syzkaller-bugs@googlegroups.com \
--cc=urezki@gmail.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.