drm: NULL pointer dereference [null-pointer-deref] (CWE 476) problem

The Parfait (version 2.1.0) static code analysis tool found the
following NULL pointer derefernce problem.

- drivers/gpu/drm/drm_dp_mst_topology.c
The call to drm_dp_calculate_rad() in function drm_dp_port_setup_pdt()
could result in a NULL pointer being returned to port->mstb due to a
failure to allocate memory for port->mstb.

Signed-off-by: Joe Moriarty <joe.moriarty@oracle.com>
Reviewed-by: Steven Sistare <steven.sistare@oracle.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20180212195144.98323-3-joe.moriarty@oracle.com
This commit is contained in:
Joe Moriarty 2018-02-12 14:51:42 -05:00 committed by Daniel Vetter
parent b88132b4ab
commit 22a07038c0
1 changed files with 5 additions and 3 deletions

View File

@ -1082,10 +1082,12 @@ static bool drm_dp_port_setup_pdt(struct drm_dp_mst_port *port)
lct = drm_dp_calculate_rad(port, rad);
port->mstb = drm_dp_add_mst_branch_device(lct, rad);
port->mstb->mgr = port->mgr;
port->mstb->port_parent = port;
if (port->mstb) {
port->mstb->mgr = port->mgr;
port->mstb->port_parent = port;
send_link = true;
send_link = true;
}
break;
}
return send_link;