From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A509236D517 for ; Wed, 18 Mar 2026 20:29:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=90.155.50.34 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773865752; cv=none; b=s+6LydwxrX0lEQ62s777c+qBjj1P7gnvzo4mA1IykkDzJtNGa2vSrZz1ZVpLJivqGo0EI32I0tAW5VauEu5UazeHv29vhxRMtj93Cy7ZBXkrm6iDfMUp/fDMAr9a6v3ji7mfw8zREd95ink5MnMhMFHRC1IjJZrkpcxaZOlBe0w= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773865752; c=relaxed/simple; bh=3o6DVyh59+Ggr8Wlow/hjp+DMkTMN9CEK2MoyRH2iTc=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=Cr2SefHX6zjP9LV7iy9RGt3lwBj6qaBWxXuPkQO8A+cw31ii7OstVqW32G0FG2hz7lF6josQ3xrqOauWrSUQ+T2jgYXrSPsOxcD6APfViJLYd6WN9asSEWp3N58Vwq6nM9vlis905SQa2ehtafj06c2l6lA11I5OS71EMMIXt3I= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=infradead.org; spf=none smtp.mailfrom=infradead.org; dkim=pass (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b=rCwxzhtq; arc=none smtp.client-ip=90.155.50.34 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=infradead.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=infradead.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="rCwxzhtq" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=/XjtsFG9UgmxgMGtyMWo5JNaM3TlVuaYdDmiSIF570U=; b=rCwxzhtqvOpq6CqgiQ1dN3kP77 4nO3YIhGoBHFPB5zXOeAQQBOeeu+Fk3fDYyPJVl7gIkmFnQxAuTmllmP0XeeiAD+kxJZ1rXqx04I5 McSR1q9H9YZ2ANL0C28DUtYm1cDP6mMI9gGFu6CdH7hfM8Jn50KxW+mM06gjtU/t1t0qiWxxZ117n BPrrWrf9Qv2lx9bcVn+vUqR9egL9D7mTFxgOz0pxtPb8+UpLOJiRUO2Ey7ZqXKUYTk01Hr12Kx8Gv PdXIOs0SoxcHK8LSLkSj6R852Txoso9U/Uh0/5dcfZ1QrM/a3IUr6P42se3kR0tqboHOsOOSsfzAZ L2doCKKQ==; Received: from 77-249-17-252.cable.dynamic.v4.ziggo.nl ([77.249.17.252] helo=noisy.programming.kicks-ass.net) by casper.infradead.org with esmtpsa (Exim 4.98.2 #2 (Red Hat Linux)) id 1w2xVn-00000004yKW-17q2; Wed, 18 Mar 2026 20:29:03 +0000 Received: by noisy.programming.kicks-ass.net (Postfix, from userid 1000) id BC13B3004F8; Wed, 18 Mar 2026 21:28:51 +0100 (CET) Date: Wed, 18 Mar 2026 21:28:51 +0100 From: Peter Zijlstra To: Mark Brown Cc: "Matthew Wilcox (Oracle)" , Ingo Molnar , Will Deacon , Boqun Feng , Waiman Long , linux-kernel@vger.kernel.org, Aishwarya.TCV@arm.com Subject: Re: [PATCH 1/3] rwsem: Remove the list_head from struct rw_semaphore Message-ID: <20260318202851.GL3738010@noisy.programming.kicks-ass.net> References: <20260305195545.3707590-1-willy@infradead.org> <20260305195545.3707590-2-willy@infradead.org> <78e16f40-28f1-4dcb-a5ab-b2a29e43f048@sirena.org.uk> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="YY5KzuT9Ym/ckEPv" Content-Disposition: inline In-Reply-To: <78e16f40-28f1-4dcb-a5ab-b2a29e43f048@sirena.org.uk> --YY5KzuT9Ym/ckEPv Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Mar 18, 2026 at 07:07:24PM +0000, Mark Brown wrote: > On Thu, Mar 05, 2026 at 07:55:41PM +0000, Matthew Wilcox (Oracle) wrote: > > Instead of embedding a list_head in struct rw_semaphore, store a pointer > > to the first waiter. The list of waiters remains a doubly linked list > > so we can efficiently add to the tail of the list, remove from the front > > (or middle) of the list. >=20 > > Some of the list manipulation becomes more complicated, but it's a > > reasonable tradeoff on the slow paths to shrink some core data structur= es > > like struct inode. >=20 > In the past few days we've started seeing lockups when running LTP on > -next on a range of arm64 platforms which bisect to this patch. It > looks like corruption of some kind, the exact trigger varies but it's > very predictable that something goes wrong and we get lots of rwsem > related backtraces which do seem relevant to this commmit. This one > seems reasonably typical: I merged the fix in todays branch: https://lkml.kernel.org/r/177382097549.1647592.8219974128268935080.tip-bo= t2@tip-bot2 --YY5KzuT9Ym/ckEPv Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEv3OU3/byMaA0LqWJdkfhpEvA5LoFAmm7CvwACgkQdkfhpEvA 5Lpiow//VS2J3vaSElhYP1wt2wFHCObWQtKKQX4zIoQNE2r2hla+u9uMQvwrvFdS A1sGnnySxZsp0D1jJZ2TaVJrjFS7s7JJTQdgrdjwQeX+Qn5lXf7cHO6zlePnQMsJ RvG/y6FFmcz0mUas7WQ5Weue0Y4EV51Kexqguo0G3lkuGgQGsWHOs11Ogc4Qiroj aSkbVRcNQPgK3jkMhNLlY3pn60USwn9VfnNS/R5OokWh0GtZfyiXC54j804foPZQ 7ZGqmbbY+8q27P8Nm+5WXxiiG32r3dwFXsbro18l3Gh/hxRhKBw/kAJB4+WrmOVH 79F/AMmCeSv4cyxYR98m43c26ETVwWB2dB2gDh7K+daeZeHCqu4uxdDq/oYetb+m iQQQC+vgh4wS+nysJF6fbvSm0zdlp/32ZlNAN3+XdWk+sZByFxqfXhVyY5jzRK/r nGU1iCuP/vVSEW0JHlFkytg5DDUvhU+LbytEsYB+xWcIlPBgsJlhsQPFJzm86A6b PfzI4fW4VPR5YDvkhHhEXpnm3pdKxcw5wyDbBgcGlGPurOGLVVzH+mZwcNbtLIFI zWKHF9LQwh62INioeRLOhDZ3W7M+D6bmPRQk9/Y7mPXmVfCu4Nt2b3Qpovr6iJUc 2ZUqVa8Rj5VdSv5hd+DzkbFfnnCDWi84IGwQfwZhr44zzm9KJlc= =FnBI -----END PGP SIGNATURE----- --YY5KzuT9Ym/ckEPv--