LKML Archive on lore.kernel.org
 help / color / Atom feed
From: Borislav Petkov <bp@alien8.de>
To: "Kirill A. Shutemov" <kirill@shutemov.name>
Cc: Wei Yang <richard.weiyang@gmail.com>,
	tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com,
	tj@kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [Patch V2 2/2] x86/mm/numa: remove the numa_nodemask_from_meminfo()
Date: Thu, 6 Apr 2017 16:59:37 +0200
Message-ID: <20170406145937.docce7sa5tuqyon4@pd.tnic> (raw)
In-Reply-To: <20170406124459.dwn5zhpr2xqg3lqm@node.shutemov.name>

On Thu, Apr 06, 2017 at 03:44:59PM +0300, Kirill A. Shutemov wrote:
> I've got the crash below on master/tip. Reveting the patch helps.
> 
> ================================================================================
> UBSAN: Undefined behaviour in /home/kas/linux/la57/mm/sparse.c:336:9
> member access within null pointer of type 'struct pglist_data'
> CPU: 0 PID: 0 Comm: swapper Not tainted 4.11.0-rc5-00604-gf03eaf0479bc #5084
> Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015

Oh, qemu, how do you trigger this exactly? .config and qemu cmdline pls?

Alternatively, can you run this debug diff and give me the output?

I'd like to know what is happening and how did I miss that during
review.

Thanks.

---



Oh, qemu, how do you trigger this exactly? .config and qemu cmdline pls?

Alternatively, can you run this debug diff and give me the output?

I'd like to know what is happening and how did I miss that during review.

Thanks.

---
diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
index 29bfcb42c4f5..e20101fed1d9 100644
--- a/arch/x86/mm/numa.c
+++ b/arch/x86/mm/numa.c
@@ -517,11 +517,19 @@ static int __init numa_register_memblks(struct numa_meminfo *mi)
 
 	/* Account for nodes with cpus and no memory */
 	node_possible_map = numa_nodes_parsed;
+
+	pr_info("%s: numa_nodes_parsed: %*pbl\n",
+		__func__, nodemask_pr_args(&numa_nodes_parsed));
+
 	if (WARN_ON(nodes_empty(node_possible_map)))
 		return -EINVAL;
 
 	for (i = 0; i < mi->nr_blks; i++) {
 		struct numa_memblk *mb = &mi->blk[i];
+
+		if (mb->nid != NUMA_NO_NODE)
+			pr_info("%s: nid: %d\n", __func__, mb->nid);
+
 		memblock_set_node(mb->start, mb->end - mb->start,
 				  &memblock.memory, mb->nid);
 	}
diff --git a/mm/sparse.c b/mm/sparse.c
index db6bf3c97ea2..1f4cb635a111 100644
--- a/mm/sparse.c
+++ b/mm/sparse.c
@@ -333,6 +333,7 @@ static unsigned long * __init
 sparse_early_usemaps_alloc_pgdat_section(struct pglist_data *pgdat,
 					 unsigned long size)
 {
+	pr_info("%s: node_id: %d\n", __func__, pgdat->node_id);
 	return memblock_virt_alloc_node_nopanic(size, pgdat->node_id);
 }
 

-- 
Regards/Gruss,
    Boris.

Good mailing practices for 400: avoid top-posting and trim the reply.

  reply index

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-14  3:08 [Patch V2 1/2] x86/mm/numa: trivial fix on typo and error message Wei Yang
2017-03-14  3:08 ` [Patch V2 2/2] x86/mm/numa: remove the numa_nodemask_from_meminfo() Wei Yang
2017-04-03  9:58   ` [tip:x86/mm] x86/mm/numa: Remove numa_nodemask_from_meminfo() tip-bot for Wei Yang
2017-04-06 12:44   ` [Patch V2 2/2] x86/mm/numa: remove the numa_nodemask_from_meminfo() Kirill A. Shutemov
2017-04-06 14:59     ` Borislav Petkov [this message]
2017-04-06 15:42       ` Kirill A. Shutemov
2017-04-06 18:01         ` Borislav Petkov
2017-04-06 18:21           ` Kirill A. Shutemov
2017-04-06 18:48             ` Borislav Petkov
2017-04-09  3:12               ` Wei Yang
2017-04-10 12:43                 ` Borislav Petkov
2017-04-10 16:39                   ` Wei Yang
2017-04-03  9:57 ` [tip:x86/mm] x86/mm/numa: Improve alloc_node_data() error path message tip-bot for Wei Yang

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=20170406145937.docce7sa5tuqyon4@pd.tnic \
    --to=bp@alien8.de \
    --cc=hpa@zytor.com \
    --cc=kirill@shutemov.name \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=richard.weiyang@gmail.com \
    --cc=tglx@linutronix.de \
    --cc=tj@kernel.org \
    /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

LKML Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/lkml/0 lkml/git/0.git
	git clone --mirror https://lore.kernel.org/lkml/1 lkml/git/1.git
	git clone --mirror https://lore.kernel.org/lkml/2 lkml/git/2.git
	git clone --mirror https://lore.kernel.org/lkml/3 lkml/git/3.git
	git clone --mirror https://lore.kernel.org/lkml/4 lkml/git/4.git
	git clone --mirror https://lore.kernel.org/lkml/5 lkml/git/5.git
	git clone --mirror https://lore.kernel.org/lkml/6 lkml/git/6.git
	git clone --mirror https://lore.kernel.org/lkml/7 lkml/git/7.git
	git clone --mirror https://lore.kernel.org/lkml/8 lkml/git/8.git
	git clone --mirror https://lore.kernel.org/lkml/9 lkml/git/9.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 lkml lkml/ https://lore.kernel.org/lkml \
		linux-kernel@vger.kernel.org
	public-inbox-index lkml

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git