Re: [PATCH] clk: starfive: Avoid casting iomem pointers
From: Stephen Boyd
Date: Thu Apr 13 2023 - 18:48:58 EST
Quoting Stephen Boyd (2023-04-13 13:55:28)
> Let's use a wrapper struct for the auxiliary_device made in
> jh7110_reset_controller_register() so that we can stop casting iomem
> pointers. The casts trip up tools like sparse, and make for some awkward
> casts that are largely unnecessary. While we're here, change the
> allocation from devm and actually free the auxiliary_device memory in
> the release function. This avoids any use after free problems where the
> parent device driver is unbound from the device but the
> auxiliuary_device is still in use accessing devm freed memory.
>
> Cc: Tommaso Merciai <tomm.merciai@xxxxxxxxx>
> Cc: Emil Renner Berthing <emil.renner.berthing@xxxxxxxxxxxxx>
> Cc: Hal Feng <hal.feng@xxxxxxxxxxxxxxxx>
> Cc: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
> Cc: Xingyu Wu <xingyu.wu@xxxxxxxxxxxxxxxx>
> Fixes: edab7204afe5 ("clk: starfive: Add StarFive JH7110 system clock driver")
> Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxx>
> ---
Applied to clk-next