1 From 58fc8b8b041148803f4dfc0d4db288d2d2e8daf5 Mon Sep 17 00:00:00 2001
2 From: Gen Zhang <blackgod016574@gmail.com>
3 Date: Fri, 31 May 2019 09:24:18 +0800
4 Subject: mdesc: fix a missing-check bug in get_vdev_port_node_info()
6 [ Upstream commit 80caf43549e7e41a695c6d1e11066286538b336f ]
8 In get_vdev_port_node_info(), 'node_info->vdev_port.name' is allcoated
9 by kstrdup_const(), and it returns NULL when fails. So
10 'node_info->vdev_port.name' should be checked.
12 Signed-off-by: Gen Zhang <blackgod016574@gmail.com>
13 Signed-off-by: David S. Miller <davem@davemloft.net>
14 Signed-off-by: Sasha Levin <sashal@kernel.org>
16 arch/sparc/kernel/mdesc.c | 2 ++
17 1 file changed, 2 insertions(+)
19 diff --git a/arch/sparc/kernel/mdesc.c b/arch/sparc/kernel/mdesc.c
20 index 1ef6156b1530..8f24f3d60b8c 100644
21 --- a/arch/sparc/kernel/mdesc.c
22 +++ b/arch/sparc/kernel/mdesc.c
23 @@ -355,6 +355,8 @@ static int get_vdev_port_node_info(struct mdesc_handle *md, u64 node,
25 node_info->vdev_port.id = *idp;
26 node_info->vdev_port.name = kstrdup_const(name, GFP_KERNEL);
27 + if (!node_info->vdev_port.name)
29 node_info->vdev_port.parent_cfg_hdl = *parent_cfg_hdlp;