[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ZjtRACHwOpkMHX5g@sashalap>
Date: Wed, 8 May 2024 06:16:32 -0400
From: Sasha Levin <sashal@...nel.org>
To: Stephen Boyd <sboyd@...nel.org>
Cc: linux-kernel@...r.kernel.org, stable@...r.kernel.org,
Douglas Anderson <dianders@...omium.org>, mturquette@...libre.com,
linux-clk@...r.kernel.org
Subject: Re: [PATCH AUTOSEL 5.4 6/8] clk: Don't hold prepare_lock when
calling kref_put()
On Tue, Apr 23, 2024 at 12:24:51PM -0700, Stephen Boyd wrote:
>Quoting Sasha Levin (2024-04-23 04:03:01)
>> From: Stephen Boyd <sboyd@...nel.org>
>>
>> [ Upstream commit 6f63af7511e7058f3fa4ad5b8102210741c9f947 ]
>>
>> We don't need to hold the prepare_lock when dropping a ref on a struct
>> clk_core. The release function is only freeing memory and any code with
>> a pointer reference has already unlinked anything pointing to the
>> clk_core. This reduces the holding area of the prepare_lock a bit.
>>
>> Note that we also don't call free_clk() with the prepare_lock held.
>> There isn't any reason to do that.
>
>You'll want the patch before this, 8358a76cfb47 ("clk: Remove
>prepare_lock hold assertion in __clk_release()"), to avoid lockdep
>warnings. And it looks like the problem was reported on v5.15.y so all
>5 patches from the series would need a backport.
>
> 8358a76cfb47 clk: Remove prepare_lock hold assertion in __clk_release()
> 6f63af7511e7 clk: Don't hold prepare_lock when calling kref_put()
> 9d05ae531c2c clk: Initialize struct clk_core kref earlier
> e581cf5d2162 clk: Get runtime PM before walking tree during disable_unused
> 9d1e795f754d clk: Get runtime PM before walking tree for clk_summary
Ack, looks like its already the case. Thanks!
--
Thanks,
Sasha
Powered by blists - more mailing lists