All of lore.kernel.org
 help / color / mirror / Atom feed
From: Zi Yan <ziy@nvidia.com>
To: Mel Gorman <mgorman@techsingularity.net>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	Vlastimil Babka <vbabka@suse.cz>,
	Michal Hocko <mhocko@kernel.org>,
	Jesper Dangaard Brouer <brouer@redhat.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Linux-MM <linux-mm@kvack.org>
Subject: Re: [PATCH 2/2] mm/page_alloc: Allow high-order pages to be stored on the per-cpu lists
Date: Thu, 10 Jun 2021 07:40:47 -0400	[thread overview]
Message-ID: <3B44DF44-5669-40B6-A122-011F1A749FAA@nvidia.com> (raw)
In-Reply-To: <20210610111821.GY30378@techsingularity.net>

[-- Attachment #1: Type: text/plain, Size: 5825 bytes --]

On 10 Jun 2021, at 7:18, Mel Gorman wrote:

> On Wed, Jun 09, 2021 at 02:30:18PM -0400, Zi Yan wrote:
>> On 3 Jun 2021, at 10:22, Mel Gorman wrote:
>>> Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
>>> Acked-by: Vlastimil Babka <vbabka@suse.cz>
>>> ---
>>>  include/linux/mmzone.h |  20 +++++-
>>>  mm/internal.h          |   2 +-
>>>  mm/page_alloc.c        | 159 +++++++++++++++++++++++++++++------------
>>>  mm/swap.c              |   2 +-
>>>  4 files changed, 135 insertions(+), 48 deletions(-)
>>>
>>
>> Hi Mel,
>>
>> I am not able to boot my QEMU VM with v5.13-rc5-mmotm-2021-06-07-18-33.
>> git bisect points to this patch. The VM got stuck at ???Booting from ROM??????.
>>
>> My kernel config is attached and my qemu command is:
>>
>> qemu-system-x86_64 -kernel ~/repos/linux-1gb-thp/arch/x86/boot/bzImage \
>>     -drive file=~/qemu-image/vm.qcow2,if=virtio \
>>     -append "nokaslr root=/dev/vda1 rw console=ttyS0 " \
>>     -pidfile vm.pid \
>>     -netdev user,id=mynet0,hostfwd=tcp::11022-:22 \
>>     -device virtio-net-pci,netdev=mynet0 \
>>     -m 16g -smp 6 -cpu host -enable-kvm -nographic \
>>     -machine hmat=on -object memory-backend-ram,size=8g,id=m0 \
>>     -object memory-backend-ram,size=8g,id=m1 \
>>     -numa node,memdev=m0,nodeid=0 -numa node,memdev=m1,nodeid=1
>>
>> The attached config has THP disabled. The VM cannot boot with THP enabled,
>> either.
>>
>
> There is not a lot of information to go on here. Can you confirm that a
> revert of that specific patch from mmotm-2021-06-07-18-33 also boots? It
> sounds like your console log is empty, does anything useful appear if
> you add "earlyprintk=serial,ttyS0,115200" to the kernel command line?

Sure. I can confirm that reverting the patch makes the VM boot.
The important information I forgot to mention is that after I remove
the NUMA setting in the QEMU, the VM can boot too.

earlyprintk gave the error message (page out of zone boundary) when the VM could not boot:

[    0.120569] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.161237] Memory: 16396772K/16776684K available (18452K kernel code, 3336K rwdata, 8000K rodata, 1852K init, 1444K bss, 379656K reserved, 0K cma-reserve)
[    0.162451] page 0x100041 outside node 1 zone Normal [ 0x240000 - 0x440000 ]
[    0.163057] page:(____ptrval____) refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x100041
[    0.163863] flags: 0x200000000000000(node=0|zone=2)
[    0.164283] raw: 0200000000000000 dead000000000100 dead000000000122 0000000000000000
[    0.164950] raw: 0000000000000000 0000000000000000 00000000ffffffff 0000000000000000
[    0.165621] page dumped because: VM_BUG_ON_PAGE(page && bad_range(zone, page))
[    0.166617] ------------[ cut here ]------------
[    0.167355] kernel BUG at mm/page_alloc.c:3764!
[    0.168079] invalid opcode: 0000 [#1] SMP NOPTI
[    0.168801] CPU: 0 PID: 0 Comm: swapper Not tainted 5.13.0-rc5-mm1+ #381
[    0.169870] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.14.0-2 04/01/2014
[    0.171057] RIP: 0010:get_page_from_freelist+0x10e5/0x1410
[    0.171763] Code: 4c 24 18 4c 89 ee 8b 14 24 e8 67 d8 fc ff e9 af f6 ff ff 45 31 ff e9 41 fe ff ff 48 c7 c6 60 51 a3 82 4c 89 ff e8 db 82 fd ff <0f> 0b 658
[    0.174173] RSP: 0000:ffffffff82c03d08 EFLAGS: 00010046
[    0.174767] RAX: 0000000000000042 RBX: ffff88843fffad00 RCX: 00000000ffffdfff
[    0.175381] RDX: 0000000000000000 RSI: 00000000ffffffea RDI: 0000000000000000
[    0.175998] RBP: ffff888237c28300 R08: ffffffff82d509c8 R09: 0000000000009ffb
[    0.176613] R10: 00000000ffffe000 R11: 3fffffffffffffff R12: ffff888237c28408
[    0.177229] R13: 0000000000000000 R14: 0000000000000001 R15: ffffea0004001040
[    0.177852] FS:  0000000000000000(0000) GS:ffff888237c00000(0000) knlGS:0000000000000000
[    0.178550] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    0.179045] CR2: ffff88843ffff000 CR3: 0000000002c0c000 CR4: 00000000000406b0
[    0.179664] Call Trace:
[    0.179876]  ? should_fail_alloc_page+0x5/0x10
[    0.180260]  ? prepare_alloc_pages+0xb4/0x190
[    0.180637]  __alloc_pages+0xe6/0x210
[    0.180952]  allocate_slab+0x9a/0x470
[    0.181275]  __kmem_cache_create+0x259/0x510
[    0.181645]  create_boot_cache+0x72/0x96
[    0.181998]  kmem_cache_init+0xb4/0x17b
[    0.182332]  start_kernel+0x3d5/0x695
[    0.182649]  ? x86_family+0x5/0x20
[    0.182945]  secondary_startup_64_no_verify+0xb0/0xbb
[    0.183383] Modules linked in:
[    0.183649] random: get_random_bytes called from oops_exit+0x35/0x60 with crng_init=0
[    0.183655] ---[ end trace 5a27ab5b99c01a0e ]---
[    0.184731] RIP: 0010:get_page_from_freelist+0x10e5/0x1410
[    0.185203] Code: 4c 24 18 4c 89 ee 8b 14 24 e8 67 d8 fc ff e9 af f6 ff ff 45 31 ff e9 41 fe ff ff 48 c7 c6 60 51 a3 82 4c 89 ff e8 db 82 fd ff <0f> 0b 658
[    0.186828] RSP: 0000:ffffffff82c03d08 EFLAGS: 00010046
[    0.187283] RAX: 0000000000000042 RBX: ffff88843fffad00 RCX: 00000000ffffdfff
[    0.187900] RDX: 0000000000000000 RSI: 00000000ffffffea RDI: 0000000000000000
[    0.188522] RBP: ffff888237c28300 R08: ffffffff82d509c8 R09: 0000000000009ffb
[    0.189134] R10: 00000000ffffe000 R11: 3fffffffffffffff R12: ffff888237c28408
[    0.189752] R13: 0000000000000000 R14: 0000000000000001 R15: ffffea0004001040
[    0.190374] FS:  0000000000000000(0000) GS:ffff888237c00000(0000) knlGS:0000000000000000
[    0.191074] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    0.191572] CR2: ffff88843ffff000 CR3: 0000000002c0c000 CR4: 00000000000406b0
[    0.192188] Kernel panic - not syncing: Attempted to kill the idle task!
[    0.192791] ---[ end Kernel panic - not syncing: Attempted to kill the idle task! ]---

—
Best Regards,
Yan, Zi

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 854 bytes --]

  reply	other threads:[~2021-06-10 11:40 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-03 14:22 [PATCH 0/2] Allow high order pages to be stored on PCP v2 Mel Gorman
2021-06-03 14:22 ` [PATCH 1/2] mm/page_alloc: Move free_the_page Mel Gorman
2021-06-03 14:22 ` [PATCH 2/2] mm/page_alloc: Allow high-order pages to be stored on the per-cpu lists Mel Gorman
2021-06-09 18:30   ` Zi Yan
2021-06-10 11:18     ` Mel Gorman
2021-06-10 11:40       ` Zi Yan [this message]
2021-06-10 22:59         ` Andrew Morton
2021-06-11  0:38           ` Stephen Rothwell
2021-06-11  8:10         ` Mel Gorman
2021-06-11  8:34         ` Mel Gorman
2021-06-11 12:17           ` Zi Yan
2021-06-11 13:58             ` Mel Gorman
  -- strict thread matches above, loose matches on Subject: below --
2021-06-03  8:46 [PATCH 0/2] Allow high order pages to be stored on PCP Mel Gorman
2021-06-03  8:46 ` [PATCH 2/2] mm/page_alloc: Allow high-order pages to be stored on the per-cpu lists Mel Gorman
2021-06-03 11:12   ` Vlastimil Babka
2021-06-03 12:34     ` Mel Gorman
2021-06-03 13:04       ` Vlastimil Babka
2021-05-31 12:04 [RFC PATCH 0/2] Allow high order pages to be stored on PCP Mel Gorman
2021-05-31 12:04 ` [PATCH 2/2] mm/page_alloc: Allow high-order pages to be stored on the per-cpu lists Mel Gorman
2021-05-31 15:23   ` Jesper Dangaard Brouer
2021-06-01 12:45     ` Mel Gorman
2021-06-02 13:53       ` Jesper Dangaard Brouer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3B44DF44-5669-40B6-A122-011F1A749FAA@nvidia.com \
    --to=ziy@nvidia.com \
    --cc=akpm@linux-foundation.org \
    --cc=brouer@redhat.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@techsingularity.net \
    --cc=mhocko@kernel.org \
    --cc=vbabka@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.