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 E6DF0EC874B for ; Thu, 7 Sep 2023 19:08:19 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4CB2B8D0009; Thu, 7 Sep 2023 15:08:19 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 477B88D0002; Thu, 7 Sep 2023 15:08:19 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2CA0A8D0009; Thu, 7 Sep 2023 15:08:19 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 16F758D0002 for ; Thu, 7 Sep 2023 15:08:19 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id DAED7120FC6 for ; Thu, 7 Sep 2023 19:08:18 +0000 (UTC) X-FDA: 81210737076.28.DAEC89E Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf05.hostedemail.com (Postfix) with ESMTP id AC13210001E for ; Thu, 7 Sep 2023 19:08:15 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=ZFSi3eIC; spf=none (imf05.hostedemail.com: domain of peterz@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=peterz@infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1694113696; h=from:from:sender: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=B4i1Y+uIsJjker8fZgf0O6RAXwRq6XADTrBQGDyLQow=; b=5NKGK2pzy/NZ9+RuFs+n92m1WFQExl8whrhIUg+KGR71QdEmIrKOHgpyHLYFR8/VWudEKP 3cJRvh1Kj/fr4oDUl7HOR5XgTVtd07MxnkfKlQ+UMjZQjEFqSVvaPhf+/Mq1YGDUxs7GK7 IRt47ptqU1kE1h0mzMMAXYwJJpG83JE= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=ZFSi3eIC; spf=none (imf05.hostedemail.com: domain of peterz@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=peterz@infradead.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1694113696; a=rsa-sha256; cv=none; b=kIYQcv0+dbS/GZUAcR61pS61WxJQrRfX+OeCt3Bd2nWrpB/NavJruDOTa/O3InYDOKCGeG lZ1xFZFInW8Yv3JM2iKiEuaMH5/gGFd+6eq52ifQemNOIQY+4xsCU/N9IcPHESzLL0N47n wW3VC1FUpSIFf+JHFWOIlLqs/ZwmUkc= 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=B4i1Y+uIsJjker8fZgf0O6RAXwRq6XADTrBQGDyLQow=; b=ZFSi3eICHMVOlCUUhit/X0b6Td lHmhtDAQpQtTBZafTYoVSDoysU8usmnzoPrkPHxdLPxusXxUV2BDRK2gXpd8NC6oyfp+mDklLOFVq VrQ+zwK9Bq4h2AHDDzE32iZ0+tVPtFTHX6tbHjQjIZ4ywpy8uHEbNLx+Dc+kzqLwk5WmrltG5/FWQ b9OJzShdHcWFFOMUiZuzvy8SamI5lVY8RN9wFHwKzS7eO2XklI6OsR6zhWd5SRRYREmrDYESYGrpX hWp5W0GMIbPXXRVlbXl1mKObckmd31zT7ggmDZMfRNRU9ytT0XeKPC2M4uy6H7H1F53NoTCOVYGj5 aEolLXBg==; Received: from j130084.upc-j.chello.nl ([24.132.130.84] helo=noisy.programming.kicks-ass.net) by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux)) id 1qeKMN-00CtmW-57; Thu, 07 Sep 2023 19:08:11 +0000 Received: by noisy.programming.kicks-ass.net (Postfix, from userid 1000) id C9AB8300687; Thu, 7 Sep 2023 21:08:10 +0200 (CEST) Date: Thu, 7 Sep 2023 21:08:10 +0200 From: Peter Zijlstra To: "Matthew Wilcox (Oracle)" Cc: Ingo Molnar , Will Deacon , Waiman Long , linux-kernel@vger.kernel.org, linux-mm@kvack.org, Chandan Babu R , "Darrick J . Wong" , linux-xfs@vger.kernel.org Subject: Re: [PATCH 1/5] locking: Add rwsem_is_write_locked() Message-ID: <20230907190810.GA14243@noisy.programming.kicks-ass.net> References: <20230907174705.2976191-1-willy@infradead.org> <20230907174705.2976191-2-willy@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230907174705.2976191-2-willy@infradead.org> X-Rspamd-Queue-Id: AC13210001E X-Rspam-User: X-Stat-Signature: sraehyn5fs7btdrnpyznhyr334ag1epg X-Rspamd-Server: rspam01 X-HE-Tag: 1694113695-765015 X-HE-Meta: U2FsdGVkX1/ZKXVsnxrjAK6XV3dbatbHrJ4QUluJ7B8tq/GLC4iu8/sENVQoBOytRswlzuVCQTDzsegyEEkDSMAKyGyzlVzucMlbgmOzU3RXGpCm6ljf0j67lZhhfPJOkmTQZIKicLpudoljtnSDmveW5ncKwzOwdG037Oh8iqqJeoI1Yi4rDFXE+hFNbd+wkl8bH+f57DAv0Vt3MLc4v4PZ44LySDci4qHlFEDuSRtc0xrRW4SqxMyxiEYMhSMeF9kupbCw2x+unJt8r97FCqVezXolFher4dzKKiu/arxxPh6+CMQTjmlEcM3OT85IM6ae9wnKjm4la1z/gMdEfk/h0vbmCe4u0Lm7Bis3MZTIaI51zBfVfTx7DMsTJ2JcmY4o9Fsmuzs6n2XL2jYwlp7WOrSSjNFXaxiVNVqeuhYRToEyGsT2S99MMufkreEe8ZgfhUNwEAUUURhuxe6F8RH/Bv/OFx3gAQHu5344jHiRzw+Fmx7EsAR9f4kpBMgHFuXsfl+uNGdgbpNVyD6C0DwJDDl6TwyCPh4OkWNJSUE7V3bSoU/Gn+UY8IPZ875yQY5klXXRLUroQ+iMZtdrRho30nBkU+8mMaZgrNiFp2W58ZXsvhFOvzmyAzS3tGM77z4oVb/YDNj1O3n0dYCQD3xC4CYLeC210CJVXarXWf2btbVUZN7ed4MnW2QEPYF3yjXu2rGxaA9H/YwRRF2RUZNQtpF4iI/XBjik7z+zSH8j7g5rFqv4+Vbn5JqXUgLv7stNnZ4co9rRXXCh4aNpwSYRY8IZ0kkm1LjTeigW47VhakiI3NYbem3NiKlkOBRtvCPZUDH4xQ/uKoQraej6HUS/YReskjFnYGnb0c4fv8PdN24UUF/O4IVG+dSC/gQjl/xFpTGkzmrhPgzhsIYsrG08czh1mlwu/mQTkZ0X7nMDwLFsuxUGUakVgBF02b9AI9+pmGS4cD1+iKakd0B m1wFCFSM bWQVOeeYEzsCh26/O8j1AttLFtoxYlYHolcGC2ya17jdUQAgw1Yy0Rztg94YeJTkyde52E935rRaXXbtaejCDolMgkO5hIzebXdLUy+JujckjWc4BqAwmiJwKgF7XyVz4Z85hOe2eEic1z4Cwx6UGmQIDwGaI8C2Q6V1C5VWFhzW75pE7ZTF2Fz+q0UWV5eQZ0rls38mTJHYuKBE= 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 Thu, Sep 07, 2023 at 06:47:01PM +0100, Matthew Wilcox (Oracle) wrote: > Several places want to know whether the lock is held by a writer, instead > of just whether it's held. We can implement this for both normal and > rt rwsems. RWSEM_WRITER_LOCKED is declared in rwsem.c and exposing > it outside that file might tempt other people to use it, so just use > a comment to note that's what the 1 means, and help anybody find it if > they're looking to change the implementation. I'm presuming this is deep in a callchain where they know they hold the lock, but they lost in what capacity? In general I strongly dislike the whole _is_locked family, because it gives very poorly defined semantics if used by anybody but the owner. If these new functions are indeed to be used only by lock holders to determine what kind of lock they hold, could we please put: lockdep_assert_held() in them?