# git rev-parse -q --verify d883c6cf3b39f1f42506e82ad2779fb88004acf3^{commit} # git fetch -q -n -f git://fs.ozlabs.ibm.com/kernel/linus master # git rev-parse -q --verify d883c6cf3b39f1f42506e82ad2779fb88004acf3^{commit} d883c6cf3b39f1f42506e82ad2779fb88004acf3 # git checkout -q -f -B kisskb d883c6cf3b39f1f42506e82ad2779fb88004acf3 # git clean -qxdf # < git log -1 # commit d883c6cf3b39f1f42506e82ad2779fb88004acf3 # Author: Joonsoo Kim # Date: Wed May 23 10:18:21 2018 +0900 # # Revert "mm/cma: manage the memory of the CMA area by using the ZONE_MOVABLE" # # This reverts the following commits that change CMA design in MM. # # 3d2054ad8c2d ("ARM: CMA: avoid double mapping to the CMA area if CONFIG_HIGHMEM=y") # # 1d47a3ec09b5 ("mm/cma: remove ALLOC_CMA") # # bad8c6c0b114 ("mm/cma: manage the memory of the CMA area by using the ZONE_MOVABLE") # # Ville reported a following error on i386. # # Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) # microcode: microcode updated early to revision 0x4, date = 2013-06-28 # Initializing CPU#0 # Initializing HighMem for node 0 (000377fe:00118000) # Initializing Movable for node 0 (00000001:00118000) # BUG: Bad page state in process swapper pfn:377fe # page:f53effc0 count:0 mapcount:-127 mapping:00000000 index:0x0 # flags: 0x80000000() # raw: 80000000 00000000 00000000 ffffff80 00000000 00000100 00000200 00000001 # page dumped because: nonzero mapcount # Modules linked in: # CPU: 0 PID: 0 Comm: swapper Not tainted 4.17.0-rc5-elk+ #145 # Hardware name: Dell Inc. Latitude E5410/03VXMC, BIOS A15 07/11/2013 # Call Trace: # dump_stack+0x60/0x96 # bad_page+0x9a/0x100 # free_pages_check_bad+0x3f/0x60 # free_pcppages_bulk+0x29d/0x5b0 # free_unref_page_commit+0x84/0xb0 # free_unref_page+0x3e/0x70 # __free_pages+0x1d/0x20 # free_highmem_page+0x19/0x40 # add_highpages_with_active_regions+0xab/0xeb # set_highmem_pages_init+0x66/0x73 # mem_init+0x1b/0x1d7 # start_kernel+0x17a/0x363 # i386_start_kernel+0x95/0x99 # startup_32_smp+0x164/0x168 # # The reason for this error is that the span of MOVABLE_ZONE is extended # to whole node span for future CMA initialization, and, normal memory is # wrongly freed here. I submitted the fix and it seems to work, but, # another problem happened. # # It's so late time to fix the later problem so I decide to reverting the # series. # # Reported-by: Ville Syrjälä # Acked-by: Laura Abbott # Acked-by: Michal Hocko # Cc: Andrew Morton # Signed-off-by: Joonsoo Kim # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/gcc-4.6.3-nolibc/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-gcc --version # < git log --format=%s --max-count=1 d883c6cf3b39f1f42506e82ad2779fb88004acf3 # < make -s -j 80 ARCH=arm O=/kisskb/build/linus_rpc_defconfig_arm CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi- rpc_defconfig # make -s -j 80 ARCH=arm O=/kisskb/build/linus_rpc_defconfig_arm CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi- /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:183:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/base/regmap/regmap.c: In function 'regmap_raw_read': /kisskb/src/drivers/base/regmap/regmap.c:2497:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/base/regmap/regmap.c: In function '_regmap_raw_write': /kisskb/src/drivers/base/regmap/regmap.c:1819:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c: In function 'proc_reg_open': /kisskb/src/include/linux/list.h:65:12: warning: 'pdeo' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c:340:21: note: 'pdeo' was declared here Completed OK # rm -rf /kisskb/build/linus_rpc_defconfig_arm # Build took: 0:00:47.626749