next/master boot bisection: next-20190215 on beaglebone-black

From: kernelci.org bot
Date: Fri Feb 15 2019 - 13:20:16 EST


* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* This automated bisection report was sent to you on the basis *
* that you may be involved with the breaking commit it has *
* found. No manual investigation has been done to verify it, *
* and the root cause of the problem may be somewhere else. *
* Hope this helps! *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

next/master boot bisection: next-20190215 on beaglebone-black

Summary:
Start: 7a92eb7cc1dc Add linux-next specific files for 20190215
Details: https://kernelci.org/boot/id/5c666ea959b514b017fe6017
Plain log: https://storage.kernelci.org//next/master/next-20190215/arm/multi_v7_defconfig+CONFIG_SMP=n/gcc-7/lab-collabora/boot-am335x-boneblack.txt
HTML log: https://storage.kernelci.org//next/master/next-20190215/arm/multi_v7_defconfig+CONFIG_SMP=n/gcc-7/lab-collabora/boot-am335x-boneblack.html
Result: 8dd037cc97d9 mm/shuffle: default enable all shuffling

Checks:
revert: PASS
verify: PASS

Parameters:
Tree: next
URL: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
Branch: master
Target: beaglebone-black
CPU arch: arm
Lab: lab-collabora
Compiler: gcc-7
Config: multi_v7_defconfig+CONFIG_SMP=n
Test suite: boot

Breaking commit found:

-------------------------------------------------------------------------------
commit 8dd037cc97d9226c97c2ee1abb4e97eff71e0c8d
Author: Dan Williams <dan.j.williams@xxxxxxxxx>
Date: Fri Feb 15 11:28:30 2019 +1100

mm/shuffle: default enable all shuffling

Per Andrew's request arrange for all memory allocation shuffling code to
be enabled by default.

The page_alloc.shuffle command line parameter can still be used to disable
shuffling at boot, but the kernel will default enable the shuffling if the
command line option is not specified.

Link: http://lkml.kernel.org/r/154943713572.3858443.11206307988382889377.stgit@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
Cc: Kees Cook <keescook@xxxxxxxxxxxx>
Cc: Michal Hocko <mhocko@xxxxxxxx>
Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
Cc: Keith Busch <keith.busch@xxxxxxxxx>

Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>

diff --git a/init/Kconfig b/init/Kconfig
index 4531a97092c7..9d4b05e79a2d 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1709,7 +1709,7 @@ config SLAB_MERGE_DEFAULT
command line.

config SLAB_FREELIST_RANDOM
- default n
+ default y
depends on SLAB || SLUB
bool "SLAB freelist randomization"
help
@@ -1728,7 +1728,7 @@ config SLAB_FREELIST_HARDENED

config SHUFFLE_PAGE_ALLOCATOR
bool "Page allocator randomization"
- default SLAB_FREELIST_RANDOM && ACPI_NUMA
+ default y
help
Randomization of the page allocator improves the average
utilization of a direct-mapped memory-side-cache. See section
diff --git a/mm/shuffle.c b/mm/shuffle.c
index 3ce12481b1dc..a979b48be469 100644
--- a/mm/shuffle.c
+++ b/mm/shuffle.c
@@ -9,8 +9,8 @@
#include "internal.h"
#include "shuffle.h"

-DEFINE_STATIC_KEY_FALSE(page_alloc_shuffle_key);
-static unsigned long shuffle_state __ro_after_init;
+DEFINE_STATIC_KEY_TRUE(page_alloc_shuffle_key);
+static unsigned long shuffle_state __ro_after_init = 1 << SHUFFLE_ENABLE;

/*
* Depending on the architecture, module parameter parsing may run
diff --git a/mm/shuffle.h b/mm/shuffle.h
index 777a257a0d2f..c1e91ec118be 100644
--- a/mm/shuffle.h
+++ b/mm/shuffle.h
@@ -19,7 +19,7 @@ enum mm_shuffle_ctl {
#define SHUFFLE_ORDER (MAX_ORDER-1)

#ifdef CONFIG_SHUFFLE_PAGE_ALLOCATOR
-DECLARE_STATIC_KEY_FALSE(page_alloc_shuffle_key);
+DECLARE_STATIC_KEY_TRUE(page_alloc_shuffle_key);
extern void page_alloc_shuffle(enum mm_shuffle_ctl ctl);
extern void __shuffle_free_memory(pg_data_t *pgdat);
static inline void shuffle_free_memory(pg_data_t *pgdat)
-------------------------------------------------------------------------------


Git bisection log:

-------------------------------------------------------------------------------
git bisect start
# good: [23e93c9b2cde73f9912d0d8534adbddd3dcc48f4] Revert "gfs2: read journal in large chunks to locate the head"
git bisect good 23e93c9b2cde73f9912d0d8534adbddd3dcc48f4
# bad: [7a92eb7cc1dc4c63e3a2fa9ab8e3c1049f199249] Add linux-next specific files for 20190215
git bisect bad 7a92eb7cc1dc4c63e3a2fa9ab8e3c1049f199249
# good: [3811b833d598702c05fd25e36a60f134dd5413b3] Merge remote-tracking branch 'crypto/master'
git bisect good 3811b833d598702c05fd25e36a60f134dd5413b3
# good: [c6cd1b643783f81eaa8e0d777ab0f887df905a45] Merge remote-tracking branch 'spi/for-next'
git bisect good c6cd1b643783f81eaa8e0d777ab0f887df905a45
# good: [36514d08b01218e91810d4007820e0f7d69851fa] Merge remote-tracking branch 'staging/staging-next'
git bisect good 36514d08b01218e91810d4007820e0f7d69851fa
# good: [f84af8a897075fa5f07cd3f1dba6a5be015028a1] Merge remote-tracking branch 'livepatching/for-next'
git bisect good f84af8a897075fa5f07cd3f1dba6a5be015028a1
# bad: [d9a4d0fe1030c19848a28f43f0ec1abc23303d94] dynamic_debug: move pr_err from module.c to ddebug_add_module
git bisect bad d9a4d0fe1030c19848a28f43f0ec1abc23303d94
# good: [803117e440dde7fe8b77f80a9e592281f39e3789] mm/vmalloc.c: fix kernel BUG at mm/vmalloc.c:512!
git bisect good 803117e440dde7fe8b77f80a9e592281f39e3789
# good: [131c16480ab397f4396dcba0e22edfe2fcb08702] mm, memcg: make memory.emin the baseline for utilisation determination
git bisect good 131c16480ab397f4396dcba0e22edfe2fcb08702
# good: [a5f4f868c87d60e55abf7bcf2175da5996aa8807] filemap-drop-the-mmap_sem-for-all-blocking-operations-v6
git bisect good a5f4f868c87d60e55abf7bcf2175da5996aa8807
# bad: [d658bb3b0f49638946d385055f6fcf5ed905128f] kernel/panic.c: taint: fix debugfs_simple_attr.cocci warnings
git bisect bad d658bb3b0f49638946d385055f6fcf5ed905128f
# bad: [66eeeef52ba15aff9b7c5276e805f2970b9bfd0e] fs/proc/self.c: code cleanup for proc_setup_self()
git bisect bad 66eeeef52ba15aff9b7c5276e805f2970b9bfd0e
# bad: [8dd037cc97d9226c97c2ee1abb4e97eff71e0c8d] mm/shuffle: default enable all shuffling
git bisect bad 8dd037cc97d9226c97c2ee1abb4e97eff71e0c8d
# good: [0828998415b687cfcac66446e8c1fac8fe6190ba] filemap-drop-the-mmap_sem-for-all-blocking-operations-checkpatch-fixes
git bisect good 0828998415b687cfcac66446e8c1fac8fe6190ba
# good: [8061021c7c102891803bda7eed4d21873f49a857] mm: don't expose page to fast gup before it's ready
git bisect good 8061021c7c102891803bda7eed4d21873f49a857
# first bad commit: [8dd037cc97d9226c97c2ee1abb4e97eff71e0c8d] mm/shuffle: default enable all shuffling
-------------------------------------------------------------------------------