• Stephen Boyd's avatar
    clk: Get runtime PM before walking tree for clk_summary · 9d1e795f
    Stephen Boyd authored
    Similar to the previous commit, we should make sure that all devices are
    runtime resumed before printing the clk_summary through debugfs. Failure
    to do so would result in a deadlock if the thread is resuming a device
    to print clk state and that device is also runtime resuming in another
    thread, e.g the screen is turning on and the display driver is starting
    up. We remove the calls to clk_pm_runtime_{get,put}() in this path
    because they're superfluous now that we know the devices are runtime
    resumed. This also squashes a bug where the return value of
    clk_pm_runtime_get() wasn't checked, leading to an RPM count underflow
    on error paths.
    
    Fixes: 1bb294a7 ("clk: Enable/Disable runtime PM for clk_summary")
    Cc: Taniya Das <quic_tdas@quicinc.com>
    Cc: Douglas Anderson <dianders@chromium.org>
    Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
    Link: https://lore.kernel.org/r/20240325184204.745706-6-sboyd@kernel.orgReviewed-by: default avatarDouglas Anderson <dianders@chromium.org>
    9d1e795f
clk.c 140 KB