diff mbox series

sparc/mm: add check for mdesc_grab()

Message ID 20230315053954.1740751-1-windhl@126.com
State New
Headers show
Series sparc/mm: add check for mdesc_grab() | expand

Commit Message

Liang He March 15, 2023, 5:39 a.m. UTC
In of_node_to_nid() and numa_parse_mdesc(), we should consider
the return value of mdesc_grab() as it may return NULL.
We should add check to avoid NPD bug.

Fixes: 27137e5285a3 ("sparc,sparc64: unify mm/")
Signed-off-by: Liang He <windhl@126.com>
---
 arch/sparc/mm/init_64.c | 5 +++++
 1 file changed, 5 insertions(+)
diff mbox series

Patch

diff --git a/arch/sparc/mm/init_64.c b/arch/sparc/mm/init_64.c
index 04f9db0c3111..d0a0c1a78b41 100644
--- a/arch/sparc/mm/init_64.c
+++ b/arch/sparc/mm/init_64.c
@@ -1176,6 +1176,8 @@  int of_node_to_nid(struct device_node *dp)
 	cfg_handle = (regs->phys_addr >> 32UL) & 0x0fffffff;
 
 	md = mdesc_grab();
+	if (!md)
+		return -1;
 
 	count = 0;
 	nid = NUMA_NO_NODE;
@@ -1449,6 +1451,9 @@  static int __init numa_parse_mdesc(void)
 	int i, j, err, count;
 	u64 node;
 
+	if (!md)
+		return -ENODEV;
+
 	node = mdesc_node_by_name(md, MDESC_NODE_NULL, "latency-groups");
 	if (node == MDESC_NODE_NULL) {
 		mdesc_release(md);