mailbox: pcc: Reset pcc_chan_count to zero in case of PCC probe failure
authorHuisong Li <lihuisong@huawei.com>
Sat, 12 Nov 2022 02:05:28 +0000 (10:05 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:31:57 +0000 (13:31 +0100)
[ Upstream commit 6d7d3c287410c0ad499e478e2338dc3d7e3392b1 ]

Currently, 'pcc_chan_count' is remains set to a non-zero value if PCC
subspaces are parsed successfully but something else fail later during
the initial PCC probing phase. This will result in pcc_mbox_request_channel
trying to access the resources that are not initialised or allocated and
may end up in a system crash.

Reset pcc_chan_count to 0 when the PCC probe fails in order to prevent
the possible issue as described above.

Fixes: ce028702ddbc ("mailbox: pcc: Move bulk of PCCT parsing into pcc_mbox_probe")
Signed-off-by: Huisong Li <lihuisong@huawei.com>
Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/mailbox/pcc.c

index 3c2bc0c..105d46c 100644 (file)
@@ -743,6 +743,7 @@ static int __init pcc_init(void)
 
        if (IS_ERR(pcc_pdev)) {
                pr_debug("Err creating PCC platform bundle\n");
+               pcc_chan_count = 0;
                return PTR_ERR(pcc_pdev);
        }