lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1484f6d6-0eac-b3e0-57e5-0443043debd1@codeaurora.org>
Date:   Tue, 17 Aug 2021 21:43:25 -0700
From:   Mike Tipton <mdtipton@...eaurora.org>
To:     Bjorn Andersson <bjorn.andersson@...aro.org>,
        Stephen Boyd <swboyd@...omium.org>
Cc:     djakov@...nel.org, agross@...nel.org, saravanak@...gle.com,
        okukatla@...eaurora.org, linux-pm@...r.kernel.org,
        linux-kernel@...r.kernel.org, linux-arm-msm@...r.kernel.org,
        Alex Elder <elder@...aro.org>
Subject: Re: [PATCH v2 4/4] interconnect: qcom: icc-rpmh: Add BCMs to commit
 list in pre_aggregate

On 8/10/2021 5:18 PM, Bjorn Andersson wrote:
> On Tue 10 Aug 18:31 CDT 2021, Stephen Boyd wrote:
> 
>> Quoting Mike Tipton (2021-07-21 10:54:32)
>>> We're only adding BCMs to the commit list in aggregate(), but there are
>>> cases where pre_aggregate() is called without subsequently calling
>>> aggregate(). In particular, in icc_sync_state() when a node with initial
>>> BW has zero requests. Since BCMs aren't added to the commit list in
>>> these cases, we don't actually send the zero BW request to HW. So the
>>> resources remain on unnecessarily.
>>>
>>> Add BCMs to the commit list in pre_aggregate() instead, which is always
>>> called even when there are no requests.
>>>
>>> Fixes: 976daac4a1c5 ("interconnect: qcom: Consolidate interconnect RPMh support")
>>> Signed-off-by: Mike Tipton <mdtipton@...eaurora.org>
>>> ---
>>
>> This patch breaks reboot for me on sc7180 Lazor
>>
> 
> FWIW, it prevents at least SM8150 from booting (need to check my other
> boards as well), because its no longer okay to have the interconnect
> providers defined without having all client paths specified.

My testing was limited to sdm845, which didn't show any boot issues. But 
it's not terribly surprising for this to cause problems on some targets. 
Previously every node was enabled by default and left on permanently if 
nobody explicitly voted for them. This would happen even if these nodes 
weren't enabled in bootloaders, since most of the qcom providers aren't 
defining a get_bw() callback and thus the framework defaults 
init_avg/init_peak to INT_MAX. So any drivers relying on this default-on 
behavior would break.

We can try to get dumps of the NOC error registers at the time of 
failure to pinpoint the problematic access. Or we could try to narrow it 
down by marking more BCMs as keepalive. If they're marked as keepalive 
then we won't let them turn off even with this patch.

> 
> Regards,
> Bjorn
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ