linux-kernel.vger.kernel.org archive mirror
 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).