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]
Date:   Mon, 24 Oct 2022 19:13:53 -0500
From:   Alex Elder <elder@...aro.org>
To:     Caleb Connolly <caleb.connolly@...aro.org>,
        Alex Elder <elder@...aro.org>,
        "David S . Miller" <davem@...emloft.net>,
        Eric Dumazet <edumazet@...gle.com>,
        Jakub Kicinski <kuba@...nel.org>,
        Paolo Abeni <pabeni@...hat.com>,
        Jami Kettunen <jami.kettunen@...ainline.org>
Cc:     Alex Elder <elder@...nel.org>, linux-kernel@...r.kernel.org,
        netdev@...r.kernel.org
Subject: Re: [PATCH] net: ipa: don't configure IDLE_INDICATION on v3.1

On 10/24/22 6:48 PM, Caleb Connolly wrote:
> IPA v3.1 doesn't support the IDLE_INDICATION_CFG register, this was
> causing a harmless splat in ipa_idle_indication_cfg(), add a version
> check to prevent trying to fetch this register on v3.1
> 
> Fixes: 6a244b75cfab ("net: ipa: introduce ipa_reg()")

Actually, the bug first appeared long ago.  This commit:
   1bb1a117878b9 ("net: ipa: add IPA v3.1 configuration data")
marked IPA v3.1 supported.  But it did not update the code
to avoid accessing the IDLE_INDICATION register for IPA v3.1
(in ipa_reg_idle_indication_cfg_offset()).  That being said,
we have no evidence that it caused harm, and until we do I'd
rather not try to fix the problem that far back.

The commit you point out is the one where we actually
start checking (and WARNing), and I think it's reasonable
to say that's what this fixes.

> Signed-off-by: Caleb Connolly <caleb.connolly@...aro.org>
> ---
> This will need to wait for Jami's Tested-by as I don't have any v3.1 hardware.

I would very much like to get a Tested-by tag.

But from my perspective, this patch looks good.  Previously
offset 0x220 was used, even though it was not well-defined
for IPA v3.1.

This is a bug fix destined for the net/master branch.

Reviewed-by: Alex Elder <elder@...aro.org>

Thank you.

> ---
>   drivers/net/ipa/ipa_main.c | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/net/ipa/ipa_main.c b/drivers/net/ipa/ipa_main.c
> index 3461ad3029ab..49537fccf6ad 100644
> --- a/drivers/net/ipa/ipa_main.c
> +++ b/drivers/net/ipa/ipa_main.c
> @@ -434,6 +434,9 @@ static void ipa_idle_indication_cfg(struct ipa *ipa,
>   	const struct ipa_reg *reg;
>   	u32 val;
>   
> +	if (ipa->version < IPA_VERSION_3_5_1)
> +		return;
> +
>   	reg = ipa_reg(ipa, IDLE_INDICATION_CFG);
>   	val = ipa_reg_encode(reg, ENTER_IDLE_DEBOUNCE_THRESH,
>   			     enter_idle_debounce_thresh);

Powered by blists - more mailing lists