Commit 019e3f45 authored by Harini T's avatar Harini T Committed by Jassi Brar
Browse files

mailbox: zynqmp-ipi: Remove dev.parent check in zynqmp_ipi_free_mboxes



The ipi_mbox->dev.parent check is unreliable proxy for registration
status as it fails to protect against probe failures that occur after
the parent is assigned but before device_register() completes.

device_is_registered() is the canonical and robust method to verify the
registration status.

Remove ipi_mbox->dev.parent check in zynqmp_ipi_free_mboxes().

Fixes: 4981b82b ("mailbox: ZynqMP IPI mailbox controller")
Signed-off-by: default avatarHarini T <harini.t@amd.com>
Reviewed-by: default avatarPeng Fan <peng.fan@nxp.com>
Signed-off-by: default avatarJassi Brar <jassisinghbrar@gmail.com>
parent 341867f7
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -893,12 +893,10 @@ static void zynqmp_ipi_free_mboxes(struct zynqmp_ipi_pdata *pdata)
	i = pdata->num_mboxes;
	for (; i >= 0; i--) {
		ipi_mbox = &pdata->ipi_mboxes[i];
		if (ipi_mbox->dev.parent) {
		if (device_is_registered(&ipi_mbox->dev))
			device_unregister(&ipi_mbox->dev);
	}
}
}

static int zynqmp_ipi_probe(struct platform_device *pdev)
{