mirror of
https://github.com/torvalds/linux.git
synced 2026-06-08 14:42:37 +02:00
xhci: check port array allocation was successful before dereferencing it
[ Upstream commit 8a157d2ff1 ]
return if rhub->ports is null after rhub->ports = kcalloc_node()
Klockwork reported issue
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20210406070208.3406266-2-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
b52b1b8c48
commit
2b195c32bc
|
|
@ -2263,6 +2263,9 @@ static void xhci_create_rhub_port_array(struct xhci_hcd *xhci,
|
||||||
return;
|
return;
|
||||||
rhub->ports = kcalloc_node(rhub->num_ports, sizeof(*rhub->ports),
|
rhub->ports = kcalloc_node(rhub->num_ports, sizeof(*rhub->ports),
|
||||||
flags, dev_to_node(dev));
|
flags, dev_to_node(dev));
|
||||||
|
if (!rhub->ports)
|
||||||
|
return;
|
||||||
|
|
||||||
for (i = 0; i < HCS_MAX_PORTS(xhci->hcs_params1); i++) {
|
for (i = 0; i < HCS_MAX_PORTS(xhci->hcs_params1); i++) {
|
||||||
if (xhci->hw_ports[i].rhub != rhub ||
|
if (xhci->hw_ports[i].rhub != rhub ||
|
||||||
xhci->hw_ports[i].hcd_portnum == DUPLICATE_ENTRY)
|
xhci->hw_ports[i].hcd_portnum == DUPLICATE_ENTRY)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user