mailbox: pcc: Return early if no GAS register from pcc_mbox_cmd_complete_check
authorSudeep Holla <sudeep.holla@arm.com>
Thu, 13 Mar 2025 15:28:50 +0000 (15:28 +0000)
committerJassi Brar <jassisinghbrar@gmail.com>
Thu, 27 Mar 2025 01:58:25 +0000 (20:58 -0500)
pcc_mbox_cmd_complete_check() accesses pchan->cmd_complete.gas to check
command completion status. Even if GAS is NULL, pcc_chan_reg_read() gets
called which returns success doing nothing and then we return.

Add an early return if pchan->cmd_complete.gas == NULL before performing
any operations.

Acked-by: Huisong Li <lihuisong@huawei.com>
Tested-by: Huisong Li <lihuisong@huawei.com>
Tested-by: Adam Young <admiyo@os.amperecomputing.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>
drivers/mailbox/pcc.c

index 9cf0ca772c1adb73ceb91d25a2abd1d12c678d90..7105dd6bc2fc6b8d36cb62f7ecd1b578361f89b6 100644 (file)
@@ -245,13 +245,13 @@ static bool pcc_mbox_cmd_complete_check(struct pcc_chan_info *pchan)
        u64 val;
        int ret;
 
+       if (!pchan->cmd_complete.gas)
+               return true;
+
        ret = pcc_chan_reg_read(&pchan->cmd_complete, &val);
        if (ret)
                return false;
 
-       if (!pchan->cmd_complete.gas)
-               return true;
-
        /*
         * Judge if the channel respond the interrupt based on the value of
         * command complete.