On Wed, 31 Dec 2025 at 12:52, Yang Xiwen via B4 Relay <[email protected]> wrote: > > From: Yang Xiwen <[email protected]> > > Check the uclass id in clk_get_parent() before casting dev->priv to > struct clk *. This sanity check can be also found in some other places > and should be enforced. > > Signed-off-by: Yang Xiwen <[email protected]> > --- > drivers/clk/clk-uclass.c | 4 ++++ > 1 file changed, 4 insertions(+) >
Reviewed-by: Simon Glass <[email protected]> > diff --git a/drivers/clk/clk-uclass.c b/drivers/clk/clk-uclass.c > index 2167cd5ad0fe..bd18de972bb9 100644 > --- a/drivers/clk/clk-uclass.c > +++ b/drivers/clk/clk-uclass.c > @@ -502,6 +502,10 @@ struct clk *clk_get_parent(struct clk *clk) > pdev = dev_get_parent(clk->dev); > if (!pdev) > return ERR_PTR(-ENODEV); > + > + if (device_get_uclass_id(pdev) != UCLASS_CLK) > + return ERR_PTR(-ENODEV); > + > pclk = dev_get_clk_ptr(pdev); > if (!pclk) > return ERR_PTR(-ENODEV); > > -- > 2.43.0 > >

