From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (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 B636935F19B for ; Tue, 9 Jun 2026 20:32:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781037148; cv=none; b=Vl5o2Kji6aQiIKhvsukNd0OIIbhy0XTU9OcbKIUlBnr/JNJLBDXZiW0lP4omibFnIvucQMPYtAXAnY/fjC8qHJ9XSlFjNwmqKYl/rGhqfiHdILhcO59WfqFLX5kV/KXmsksDeNO2aAwV5hd1E5EYyf3a4N0AAwKMqZBO2K0FRZY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781037148; c=relaxed/simple; bh=YN0SbEANukQcQ1r2At7ECDTvjaxSxkidBwVK0KHzNi8=; h=From:To:Cc:Subject:In-Reply-To:References:Date:Message-ID: MIME-Version:Content-Type; b=jk7uYi+MxBdaflhf9/l/vJG61dOuT++gCS7l3qiKKIPe0PbZEzYPsVgcxmYZFCKdHvpMRxCKpvGjzU1aAXwXuQHaDcLJHu77Pqo+5l30aA++Jr4rH8U+IiOSFYeISxsnXwC8lp8Xw+IHUhPgctKOheV+86p95rJD/OpSAIf6G84= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=DkP9aqNC; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="DkP9aqNC" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9C3A51F00893; Tue, 9 Jun 2026 20:32:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1781037147; bh=M7trOAmUhqZxf2JfgL+WcGw5FjvsHGXiVlAc7E6CKPk=; h=From:To:Cc:Subject:In-Reply-To:References:Date; b=DkP9aqNCZQJFGePfj5JY1aDwxyLFL26d7FMuddBuysmltXzeZxxV5ULhgSR4m/nVF otoU54TneK28pRQkrc4GqbVb8e9UpvmYo5lKIGJYdTHFaEQkpI54J/LZwOKyiEFOTP p1rgagWakguNzCQ2rO16zloH7H/aYdtRViCUeG9HDAhanY6bBIdoUN/V5s8lkMS5cN Zsi9oa9NYJluFkU0RTrkZWV6eACDCijCFxj3RmQJklrdvQt6b8lmX60I5vltrVIoa1 cpIanBKNECU+ZOR/80Yniigr2JsxsyyK2gACCB5kL77NZx+A606chkoo/YGANNXs9/ 5esMhCxHIr8Og== From: Thomas Gleixner To: Peter Zijlstra Cc: Breno Leitao , Ingo Molnar , Darren Hart , Davidlohr Bueso , =?utf-8?Q?Andr=C3=A9?= Almeida , linux-kernel@vger.kernel.org, puranjay@kernel.org, rmikey@meta.com, stuclar@meta.com, namhyung@kernel.org, kernel-team@meta.com Subject: Re: [PATCH RFC] futex: avoid false sharing between hb->chain and the bucket lock In-Reply-To: <20260609202527.GC187714@noisy.programming.kicks-ass.net> References: <20260605-futex-v1-1-4ad4a0d6f265@debian.org> <20260609104603.GA48970@noisy.programming.kicks-ass.net> <87mrx331wg.ffs@fw13> <20260609202527.GC187714@noisy.programming.kicks-ass.net> Date: Tue, 09 Jun 2026 22:32:24 +0200 Message-ID: <87jys7315z.ffs@fw13> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain On Tue, Jun 09 2026 at 22:25, Peter Zijlstra wrote: > On Tue, Jun 09, 2026 at 10:16:31PM +0200, Thomas Gleixner wrote: >> @@ -301,13 +304,12 @@ struct futex_private_hash *futex_private >> >> struct futex_hash_bucket *futex_hash(union futex_key *key) >> { >> - struct futex_private_hash *fph; >> + struct futex_private_hash *fph = NULL; >> struct futex_hash_bucket *hb; >> >> again: >> scoped_guard(rcu) { >> - hb = __futex_hash(key, NULL); >> - fph = hb->priv; >> + hb = __futex_hash(key, &fph); >> >> if (!fph || futex_private_hash_get(fph)) >> return hb; > > Also, same bug I had in my first patch, you need to re-set fph to NULL > on the goto again :-) Figured that out by now :)