From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id A86ECC77B73 for ; Mon, 24 Apr 2023 18:34:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1563B6B0072; Mon, 24 Apr 2023 14:34:48 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 106746B0074; Mon, 24 Apr 2023 14:34:48 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F37606B0075; Mon, 24 Apr 2023 14:34:47 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id E3A0A6B0072 for ; Mon, 24 Apr 2023 14:34:47 -0400 (EDT) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id B7A3B1402DF for ; Mon, 24 Apr 2023 18:34:47 +0000 (UTC) X-FDA: 80717135814.05.21FD071 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf17.hostedemail.com (Postfix) with ESMTP id 091B54001E for ; Mon, 24 Apr 2023 18:34:44 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=h1dSPeSL; spf=pass (imf17.hostedemail.com: domain of paulmck@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=paulmck@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1682361285; h=from:from:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=tbqbcYrRU5FYNHE+BOqCb/rc6+IQPzKJ3y7CLGl2Gpo=; b=PF0RfcyK/6Bcg+D1a7gcV1NUPaxeXT3epdy9BR6jHh+gCjPl4tIgvugMXlcF6G50LjrvCm +8qyRBzfaOYRGmilQt6XYmw7Vxn1O7i28LLe9g3YLFSsYPrbQ7vEMK1BVufyqnSW8w+pJl HC8RtVeo4Ob97V3VRKtmyxJD+LP7wNo= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=h1dSPeSL; spf=pass (imf17.hostedemail.com: domain of paulmck@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=paulmck@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1682361285; a=rsa-sha256; cv=none; b=G3zXgG108o7tczA5hMMBC9Ffbue2ZR3Yq9RL3swYYoQIWx32kL+Q/bmxsKagrehH9ciPen AGYMgTze4eXoR88E+Eh6ozM8MQYyFGfJQZUeFP3kFBeAHu6AU1EfqK7LjS0n7M5yd2oufQ rLGb27SC603wE2k0HamWOIhI8JUzYyM= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 1D726620D6; Mon, 24 Apr 2023 18:34:44 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 39B70C433A4; Mon, 24 Apr 2023 18:34:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1682361283; bh=99mOoNg+t9iTEXLOHU2nKk4og2VJ/8Tifky4E0nqxWw=; h=Date:From:To:Cc:Subject:Reply-To:References:In-Reply-To:From; b=h1dSPeSL7ErLqQk+j1JK2wZ3w6G4hF5C8ygUMbLsIv+UAVBen6p/Y0aQ2GarpA7mQ b7EdpdHrfzn607N5xgRC3QlqolSg96iJQ12Y0KVxL0NixdHtOmoTcEidKvkx7MGOy9 dSi+tkvLGKCBUx/InNgeAod8EJSgTVEmcpH8GfqSxkwYxH4IlH/iGSew+MY+fMcu/w ivhMgjxcZzd1qyJC15gGp/qatNBOFlU3Tu3ybY+zpr8d6/gFwI/lsn5o0/5LrlM99t C/lR9/3Pd4xqRaC7zQh2s0Nw1io9AwDYCrwfQjcQi5ynGZ3O1VnnjiRThEi9qFedRu YxaJE+2fp6/yw== Received: by paulmck-ThinkPad-P72.home (Postfix, from userid 1000) id C67F115404E7; Mon, 24 Apr 2023 11:34:42 -0700 (PDT) Date: Mon, 24 Apr 2023 11:34:42 -0700 From: "Paul E. McKenney" To: SeongJae Park Cc: akpm@linux-foundation.org, vbabka@suse.cz, willy@infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v4 2/2] mm/slab: break up RCU readers on SLAB_TYPESAFE_BY_RCU example code Message-ID: Reply-To: paulmck@kernel.org References: <20230417190450.1682-1-sj@kernel.org> <20230417190450.1682-3-sj@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230417190450.1682-3-sj@kernel.org> X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 091B54001E X-Rspam-User: X-Stat-Signature: f8of496mqdohjpi66nu6gmiripwjwn47 X-HE-Tag: 1682361284-293887 X-HE-Meta: U2FsdGVkX19LXl77a9LwKJU/K6ADJwhXl2OGJvJ01uXltx3s7CEorJjjYKK43T6OivFkOFGIbaO/l7eSxHrSWAqYewH+sCgP/WGV+P2KkzDrYjIrX2aQKanibmsXPpOOcK5IRGn9r8IjAYQui76FMFoKBXzrzm6l8qV5KzM7+XBX2AyyqwKyHgqu/5N/G/WoAGOQIVN70FVtRCPJ2aBusWlFLxCHLRbG2ug+M0NhZNu2iktTmDTU8a6anlgorgeJLMDTgFMqsSXPPOsXUGTFJG6+kMnPCciN7XFwGPAW/YLN54D6NAtEviwnDngsfy8zYHVLLfYjfgeLc2VQkMRquM2StIMaAWdFlNTx2kqakdWFRh/m/IJgidoIglReAU0fFgXwzTovo4dDnscChD78GbPDrB71Dr/+YkilXtfw0eAVBsUtq8mr7vkWBbYd+SMXi6bfIVh0pwNYY/HXOwmK0HI9WcpUyGBYWZmyPF9hIcCDe4y6NjvK9zu9y9yjkVQ1qvtanKFU/C/Rp4edh8+JeyFU5GC7HqrzYk68MhUuGtGubJ/WjJAhV0XVpLhySnmheTsAHWqPKSIZLfNcsB0Nj2NADJGaT8iytaRYLqh3nD0dQlE8YLKQC4aPAGoOGRCz8H7pHLmNZYcLNtiU6PbkREX3paSnWZ4YtC1G9VMbd/exM6HtkjBw6mEGOEFy1rwG1pUAsurvRMynL23504802a6jCHVz52bszL81un3UimI0oyI+/b6DbcpPdPOkE82WOuSUXVskwMZFHk2daEd3iMIag9PiJPaK3fGbuuJQDooa+xDG4wSrRpj5KsJTPZkXhNpsFn1hEIA16813lFLbr3gXywq4dwAwuaXaK5e+HZFFmg4vmywWh+hmksYF46VSeNnNvA4hYp8M3vJr7/Bj4XACrF63MW5ELI8D7gLX25OPweyyUkNSW6ORGgYPtioC0vPH+ax6t4u7Ij1YzLR /xnXvC5a Uh7/ChzPLx1Bw2TSvET9ds90vplCaSBAhyPMMuMERfQUOxxhIk67Vi8/fMsNqbR9nfnY3UGlhPcgptNmHPA/WaoM19pU9KM1ZqDcd0/AxdybD4vRTkU7RPDmuREvEFVKjy/tYGGKlh+j2LS2kYa7awyTcYHBEs705ZhLei21c32AvjC/eDGwT1iidK0Hk7DcmOKrGNZGILeubUr84wHXqk62moIv/DFsbVIpyKAFTw5D3vfQ50Jzuwjz1HVve8/kB62t6qGObD9GLiT3/yr5tzF/G2Fl1VOpqx+OwKa3cPKBfZTsn5z4it9hfrPm8AmMUILSk2cPwrAegakQsn3LZWpRB6D79RwqgGxPOgE1+mRbxyEG1d7x2VWzYqZSjOrJ86/pml8RweupyP0q/3uHePkWl13hna369dH7E93e1feIxTTJ7Qh3RoK1u5lvIZpP/yWbKWRWVtkn5fS3DSFBknvRj84ULJIqKKz+2iiZgxaA5bRE= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Mon, Apr 17, 2023 at 07:04:50PM +0000, SeongJae Park wrote: > The SLAB_TYPESAFE_BY_RCU example code snippet uses a single RCU > read-side critical section for retries. > 'Documentation/RCU/rculist_nulls.rst' has similar example code snippet, > and commit da82af04352b ("doc: Update and wordsmith rculist_nulls.rst") > broke it up. Apply the change to SLAB_TYPESAFE_BY_RCU example code > snippet, too. > > Signed-off-by: SeongJae Park Reviewed-by: Paul E. McKenney > --- > include/linux/slab.h | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/include/linux/slab.h b/include/linux/slab.h > index b18e56c6f06c..6acf1b7c6551 100644 > --- a/include/linux/slab.h > +++ b/include/linux/slab.h > @@ -53,16 +53,18 @@ > * stays valid, the trick to using this is relying on an independent > * object validation pass. Something like: > * > + * begin: > * rcu_read_lock(); > - * again: > * obj = lockless_lookup(key); > * if (obj) { > * if (!try_get_ref(obj)) // might fail for free objects > - * goto again; > + * rcu_read_unlock(); > + * goto begin; > * > * if (obj->key != key) { // not the object we expected > * put_ref(obj); > - * goto again; > + * rcu_read_unlock(); > + * goto begin; > * } > * } > * rcu_read_unlock(); > -- > 2.25.1 >