Re: [PATCH] mapletree-vs-khugepaged

From: Guenter Roeck
Date: Tue May 17 2022 - 09:23:31 EST


On 5/17/22 04:53, Heiko Carstens wrote:
On Fri, May 13, 2022 at 05:00:31PM +0000, Liam Howlett wrote:
* Sven Schnelle <svens@xxxxxxxxxxxxx> [220513 10:46]:
Heiko Carstens <hca@xxxxxxxxxxxxx> writes:
FWIW, same on s390 - linux-next is completely broken. Note: I didn't
bisect, but given that the call trace, and even the failing address
match, I'm quite confident it is the same reason.
IS that issue supposed to be fixed? git bisect pointed me to

# bad: [76535d42eb53485775a8c54ea85725812b75543f] Merge branch
'mm-everything' of
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

which isn't really helpful.

Anything we could help with debugging this?

I tested the maple tree on top of the s390 as it was the same crash and
it was okay. I haven't tested the mm-everything branch though. Can you
test mm-unstable?

I'll continue setting up a sparc VM for testing here and test
mm-everything on that and the s390

So due to reports here I did some sort of "special bisect": with today's
linux-next I did a hard reset to commit 562340595cbb ("Merge branch
'for-next/kspp' of
git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git"),
started a bisect on Andrew's tree between mm-stable and mm-unstable, and
merged whatever commit was about to be bisected into 562340595cbb.

This lead finally to commit f1297d3a2cb7 ("mm/mmap: reorganize munmap to
use maple states") as "first bad commit".

So given that we are shortly before the merge window and linux-next is
completely broken for s390, how do we proceed? Right now I have no idea if
there is anything else in linux-next that would break s390 because of this.

Even though I'm sure you won't like to hear this, but I'd appreciate if
this code could be removed from linux-next again.

I finally found some time to bisect the alpha boot failures in -next.
Bisect results below.

Guenter

---
# bad: [47c1c54d1bcd0a69a56b49473bc20f17b70e5242] Add linux-next specific files for 20220517
# good: [42226c989789d8da4af1de0c31070c96726d990c] Linux 5.18-rc7
git bisect start 'HEAD' 'v5.18-rc7'
# good: [27d9fca0814b912f762dd5adeb81d9ab250705a9] Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
git bisect good 27d9fca0814b912f762dd5adeb81d9ab250705a9
# good: [c57a4cecd8f02b365109fc326c7cde5ec6020a54] Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
git bisect good c57a4cecd8f02b365109fc326c7cde5ec6020a54
# good: [0389ffdcdd4eacf5cfcef2a5e25b49a1662f8a8b] Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git
git bisect good 0389ffdcdd4eacf5cfcef2a5e25b49a1662f8a8b
# good: [c506c5c327711f8bb522c10262ec3a932fe91cd2] Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/mic/linux.git
git bisect good c506c5c327711f8bb522c10262ec3a932fe91cd2
# bad: [b24964a75c5c0129fd6a0d9bcb0fb6e84fbac126] mm/mmap: drop range_has_overlap() function
git bisect bad b24964a75c5c0129fd6a0d9bcb0fb6e84fbac126
# good: [3cbab4ca1ea8752912d8719d72059869b4c18045] mm/damon/sysfs: use enum for 'state' input handling
git bisect good 3cbab4ca1ea8752912d8719d72059869b4c18045
# good: [9113eaf331bf44579882c001867773cf1b3364fd] mm/memory-failure.c: add hwpoison_filter for soft offline
git bisect good 9113eaf331bf44579882c001867773cf1b3364fd
# good: [2b2adc303cebc213072520eb2e86e4beb65e9499] mm: remove rb tree.
git bisect good 2b2adc303cebc213072520eb2e86e4beb65e9499
# bad: [bbd9f664c351fbe61afa949abaaa03aed5c84af9] fs/proc/task_mmu: stop using linked list and highest_vm_end
git bisect bad bbd9f664c351fbe61afa949abaaa03aed5c84af9
# bad: [3b150cc8ab608f7a7da76b036b0ba7513628b0be] arm64: remove mmap linked list from vdso
git bisect bad 3b150cc8ab608f7a7da76b036b0ba7513628b0be
# good: [282a3e65bd1dece042bb8cf3a1666d79af1553b0] mm: use maple tree operations for find_vma_intersection()
git bisect good 282a3e65bd1dece042bb8cf3a1666d79af1553b0
# good: [d175d2cc268623e3e68181235a4aa068b50a8213] mm: convert vma_lookup() to use mtree_load()
git bisect good d175d2cc268623e3e68181235a4aa068b50a8213
# bad: [f1297d3a2cb77261c10fbbd69d92bbca700108e0] mm/mmap: reorganize munmap to use maple states
git bisect bad f1297d3a2cb77261c10fbbd69d92bbca700108e0
# good: [a897bb88e1e61df70f350a51f51cade3930adc3c] mm/mmap: move mmap_region() below do_munmap()
git bisect good a897bb88e1e61df70f350a51f51cade3930adc3c
# first bad commit: [f1297d3a2cb77261c10fbbd69d92bbca700108e0] mm/mmap: reorganize munmap to use maple states