Re: [PATCH] peci: aspeed: Initialize state before requesting IRQ
From: Winiarska, Iwona
Date: Thu Sep 17 2026 - 20:16:44 EST
On Wed, 2026-09-02 at 22:26 +0800, Runyu Xiao wrote:
> The PECI interrupt handler uses the lock and completion object as soon as
> the interrupt is delivered. Initialize both before registering the
> handler so an early interrupt cannot access uninitialized state.
>
> Fixes: a85e4c52086c ("peci: Add peci-aspeed controller driver")
> Cc: stable@xxxxxxxxxxxxxxx
> Assisted-by: Codex:GPT-5
> Signed-off-by: Runyu Xiao <runyu.xiao@xxxxxxxxxx>
Reviewed-by: Iwona Winiarska <iwona.winiarska@xxxxxxxxx>
Thanks
-Iwona
> ---
> drivers/peci/controller/peci-aspeed.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/peci/controller/peci-aspeed.c
> b/drivers/peci/controller/peci-aspeed.c
> index a0c99ecf7..5d7f4f8fd 100644
> --- a/drivers/peci/controller/peci-aspeed.c
> +++ b/drivers/peci/controller/peci-aspeed.c
> @@ -529,14 +529,14 @@ static int aspeed_peci_probe(struct platform_device
> *pdev)
> if (priv->irq < 0)
> return priv->irq;
>
> + init_completion(&priv->xfer_complete);
> + spin_lock_init(&priv->lock);
> +
> ret = devm_request_irq(&pdev->dev, priv->irq,
> aspeed_peci_irq_handler,
> 0, "peci-aspeed", priv);
> if (ret)
> return ret;
>
> - init_completion(&priv->xfer_complete);
> - spin_lock_init(&priv->lock);
> -
> priv->rst = devm_reset_control_get(&pdev->dev, NULL);
> if (IS_ERR(priv->rst))
> return dev_err_probe(priv->dev, PTR_ERR(priv->rst),