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: <2023072538-corned-falsify-d054@gregkh>
Date: Tue, 25 Jul 2023 09:08:10 +0200
From: Greg KH <gregkh@...uxfoundation.org>
To: Alex Elder <elder@...aro.org>
Cc: davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org,
	pabeni@...hat.com, dianders@...omium.org, caleb.connolly@...aro.org,
	mka@...omium.org, evgreen@...omium.org, andersson@...nel.org,
	quic_cpratapa@...cinc.com, quic_avuyyuru@...cinc.com,
	quic_jponduru@...cinc.com, quic_subashab@...cinc.com,
	elder@...nel.org, netdev@...r.kernel.org,
	linux-arm-msm@...r.kernel.org, linux-kernel@...r.kernel.org,
	stable@...r.kernel.org
Subject: Re: [PATCH net] net: ipa: only reset hashed tables when supported

On Mon, Jul 24, 2023 at 05:41:06PM -0500, Alex Elder wrote:
> Last year, the code that manages GSI channel transactions switched
> from using spinlock-protected linked lists to using indexes into the
> ring buffer used for a channel.  Recently, Google reported seeing
> transaction reference count underflows occasionally during shutdown.
> 
> Doug Anderson found a way to reproduce the issue reliably, and
> bisected the issue to the commit that eliminated the linked lists
> and the lock.  The root cause was ultimately determined to be
> related to unused transactions being committed as part of the modem
> shutdown cleanup activity.  Unused transactions are not normally
> expected (except in error cases).
> 
> The modem uses some ranges of IPA-resident memory, and whenever it
> shuts down we zero those ranges.  In ipa_filter_reset_table() a
> transaction is allocated to zero modem filter table entries.  If
> hashing is not supported, hashed table memory should not be zeroed.
> But currently nothing prevents that, and the result is an unused
> transaction.  Something similar occurs when we zero routing table
> entries for the modem.
> 
> By preventing any attempt to clear hashed tables when hashing is not
> supported, the reference count underflow is avoided in this case.
> 
> Note that there likely remains an issue with properly freeing unused
> transactions (if they occur due to errors).  This patch addresses
> only the underflows that Google originally reported.
> 
> Fixes: d338ae28d8a8 ("net: ipa: kill all other transaction lists")
> Cc: <stable@...r.kernel.org>    # 6.1.x
> Tested-by: Douglas Anderson <dianders@...omium.org>
> Signed-off-by: Alex Elder <elder@...aro.org>
> ---
>  drivers/net/ipa/ipa_table.c | 26 ++++++++++++++------------
>  1 file changed, 14 insertions(+), 12 deletions(-)

You sent 2 different versions of this patch?  Which one is for what
tree?  Is this in Linus's tree already?  If so, what's the git id?

confused,

greg k-h

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ