[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220616014956.6jgxvbzh4ld3c32q@revolver>
Date: Thu, 16 Jun 2022 01:50:04 +0000
From: Liam Howlett <liam.howlett@...cle.com>
To: Yu Zhao <yuzhao@...gle.com>
CC: Qian Cai <quic_qiancai@...cinc.com>,
"maple-tree@...ts.infradead.org" <maple-tree@...ts.infradead.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [PATCH v9 28/69] mm/mmap: reorganize munmap to use maple states
* Yu Zhao <yuzhao@...gle.com> [220615 17:17]:
...
> > Yes, I used the same parameters with 512GB of RAM, and the kernel with
> > KASAN and other debug options.
>
> Sorry, Liam. I got the same crash :(
Thanks for running this promptly. I am trying to get my own server
setup now.
>
> 9d27f2f1487a (tag: mm-everything-2022-06-14-19-05, akpm/mm-everything)
> 00d4d7b519d6 fs/userfaultfd: Fix vma iteration in mas_for_each() loop
> 55140693394d maple_tree: Make mas_prealloc() error checking more generic
> 2d7e7c2fcf16 maple_tree: Fix mt_destroy_walk() on full non-leaf non-alloc nodes
> 4d4472148ccd maple_tree: Change spanning store to work on larger trees
> ea36bcc14c00 test_maple_tree: Add tests for preallocations and large
> spanning writes
> 0d2aa86ead4f mm/mlock: Drop dead code in count_mm_mlocked_page_nr()
>
> ==================================================================
> BUG: KASAN: slab-out-of-bounds in mab_mas_cp+0x2d9/0x6c0
> Write of size 136 at addr ffff88c35a3b9e80 by task stress-ng/19303
>
> CPU: 66 PID: 19303 Comm: stress-ng Tainted: G S I 5.19.0-smp-DEV #1
> Call Trace:
> <TASK>
> dump_stack_lvl+0xc5/0xf4
> print_address_description+0x7f/0x460
> print_report+0x10b/0x240
> ? mab_mas_cp+0x2d9/0x6c0
> kasan_report+0xe6/0x110
> ? mast_spanning_rebalance+0x2634/0x29b0
> ? mab_mas_cp+0x2d9/0x6c0
> kasan_check_range+0x2ef/0x310
> ? mab_mas_cp+0x2d9/0x6c0
> ? mab_mas_cp+0x2d9/0x6c0
> memcpy+0x44/0x70
> mab_mas_cp+0x2d9/0x6c0
> mas_spanning_rebalance+0x1a3e/0x4f90
Does this translate to an inline around line 2997?
And then probably around 2808?
> ? stack_trace_save+0xca/0x160
> ? stack_trace_save+0xca/0x160
> mas_wr_spanning_store+0x16c5/0x1b80
> mas_wr_store_entry+0xbf9/0x12e0
> mas_store_prealloc+0x205/0x3c0
> do_mas_align_munmap+0x6cf/0xd10
> do_mas_munmap+0x1bb/0x210
> ? down_write_killable+0xa6/0x110
> __vm_munmap+0x1c4/0x270
Looks like a NULL entry being written.
> __x64_sys_munmap+0x60/0x70
> do_syscall_64+0x44/0xa0
> entry_SYSCALL_64_after_hwframe+0x46/0xb0
> RIP: 0033:0x589827
Thanks,
Liam
Powered by blists - more mailing lists