Thread (23 messages) 23 messages, 4 authors, 2020-08-22

Re: [mm] 8e63b8bbd7: WARNING:at_mm/memory.c:#__apply_to_page_range

From: Nicholas Piggin <npiggin@gmail.com>
Date: 2020-08-22 06:19:46
Also in: linux-arch, linux-mm, lkml

Excerpts from kernel test robot's message of August 22, 2020 9:24 am:
Greeting,

FYI, we noticed the following commit (built with gcc-9):

commit: 8e63b8bbd7d17f64ced151cebd151a2cd9f63c64 ("[PATCH v5 2/8] mm: apply_to_pte_range warn and fail if a large pte is encountered")
url: https://github.com/0day-ci/linux/commits/Nicholas-Piggin/huge-vmalloc-mappings/20200821-124543
base: https://git.kernel.org/cgit/linux/kernel/git/powerpc/linux.git next

in testcase: boot

on test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 8G

caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):


+-----------------------------------------------+------------+------------+
|                                               | 185311995a | 8e63b8bbd7 |
+-----------------------------------------------+------------+------------+
| boot_successes                                | 4          | 0          |
| boot_failures                                 | 0          | 4          |
| WARNING:at_mm/memory.c:#__apply_to_page_range | 0          | 4          |
| RIP:__apply_to_page_range                     | 0          | 4          |
+-----------------------------------------------+------------+------------+


If you fix the issue, kindly add following tag
Reported-by: kernel test robot <redacted>


[    0.786159] WARNING: CPU: 0 PID: 0 at mm/memory.c:2269 __apply_to_page_range+0x537/0x9c0
Hmm, I wonder if that's WARN_ON_ONCE(pmd_bad(*pmd))), which would be
odd. I don't know x86 asm well enough to see what the *pmd value would
be there.

I'll try to reproduce and work out what's going on.

Thanks,
Nick

	
[    0.786675] Modules linked in:
[    0.786888] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.9.0-rc1-00002-g8e63b8bbd7d17f #2
[    0.787402] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
[    0.787935] RIP: 0010:__apply_to_page_range+0x537/0x9c0
[    0.788280] Code: 8b 5c 24 50 48 39 5c 24 38 0f 84 6b 03 00 00 4c 8b 74 24 38 e9 63 fb ff ff 84 d2 0f 84 ba 01 00 00 48 8b 1c 24 e9 3c fe ff ff <0f> 0b 45 84 ed 0f 84 08 01 00 00 48 89 ef e8 8f 8f 02 00 48 89 e8
[    0.789467] RSP: 0000:ffffffff83e079d0 EFLAGS: 00010293
[    0.789805] RAX: 0000000000000000 RBX: fffff52000001000 RCX: 000fffffffe00000
[    0.790260] RDX: 0000000000000000 RSI: 000ffffffffff000 RDI: 0000000000000000
[    0.790724] RBP: ffff888107408000 R08: 0000000000000001 R09: 0000000107408000
[    0.791179] R10: ffffffff840dcb5b R11: fffffbfff081b96b R12: fffff520001fffff
[    0.791634] R13: 0000000000000001 R14: fffff52000000000 R15: dffffc0000000000
[    0.792090] FS:  0000000000000000(0000) GS:ffff8881eae00000(0000) knlGS:0000000000000000
[    0.792607] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    0.792977] CR2: ffff88823ffff000 CR3: 0000000003e14000 CR4: 00000000000406b0
[    0.793433] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[    0.793889] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[    0.794344] Call Trace:
[    0.794517]  ? memset+0x40/0x40
[    0.794745]  alloc_vmap_area+0x7a9/0x2280
[    0.795054]  ? trace_hardirqs_on+0x4f/0x2e0
[    0.795354]  ? _raw_spin_unlock_irqrestore+0x39/0x60
[    0.795682]  ? free_vmap_area+0x1a20/0x1a20
[    0.795959]  ? __kasan_kmalloc+0xbf/0xe0
[    0.796292]  __get_vm_area_node+0xd1/0x300
[    0.796605]  get_vm_area_caller+0x2d/0x40
[    0.796872]  ? acpi_os_map_iomem+0x3c3/0x4e0
[    0.797155]  __ioremap_caller+0x1d8/0x480
[    0.797486]  ? acpi_os_map_iomem+0x3c3/0x4e0
[    0.797770]  ? iounmap+0x160/0x160
[    0.798002]  ? __kasan_kmalloc+0xbf/0xe0
[    0.798335]  acpi_os_map_iomem+0x3c3/0x4e0
[    0.798612]  acpi_tb_acquire_table+0xb3/0x1c5
[    0.798910]  acpi_tb_validate_table+0x68/0xbf
[    0.799199]  acpi_tb_verify_temp_table+0xa1/0x640
[    0.799512]  ? __down_trylock_console_sem+0x7a/0xa0
[    0.799833]  ? acpi_tb_validate_temp_table+0x9d/0x9d
[    0.800159]  ? acpi_ut_init_stack_ptr_trace+0xaa/0xaa
[    0.800490]  ? vprintk_emit+0x10b/0x2a0
[    0.800748]  ? acpi_ut_acquire_mutex+0x1d7/0x32f
[    0.801056]  acpi_reallocate_root_table+0x339/0x385
[    0.801377]  ? acpi_tb_parse_root_table+0x5a5/0x5a5
[    0.801700]  ? dmi_matches+0xc6/0x120
[    0.801968]  acpi_early_init+0x116/0x3ae
[    0.802230]  start_kernel+0x2f7/0x39f
[    0.802477]  secondary_startup_64+0xa4/0xb0
[    0.802770] irq event stamp: 5137
[    0.802992] hardirqs last  enabled at (5145): [<ffffffff81295652>] console_unlock+0x632/0xa00
[    0.803539] hardirqs last disabled at (5152): [<ffffffff81295100>] console_unlock+0xe0/0xa00
[    0.804082] softirqs last  enabled at (4430): [<ffffffff81b5152f>] irq_read_recursion_soft_321+0xcf/0x160
[    0.804694] softirqs last disabled at (4428): [<ffffffff81b5152f>] irq_read_recursion_soft_321+0xcf/0x160
[    0.805311] ---[ end trace 1234c082d7e7fd6f ]---


To reproduce:

        # build kernel
	cd linux
	cp config-5.9.0-rc1-00002-g8e63b8bbd7d17f .config
	make HOSTCC=gcc-9 CC=gcc-9 ARCH=x86_64 olddefconfig prepare modules_prepare bzImage

        git clone https://github.com/intel/lkp-tests.git
        cd lkp-tests
        bin/lkp qemu -k <bzImage> job-script # job-script is attached in this email



Thanks,
lkp
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help