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 1BE59CA550A for ; Wed, 13 Sep 2023 08:59:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 812756B016F; Wed, 13 Sep 2023 04:59:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7C3236B0170; Wed, 13 Sep 2023 04:59:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 689366B0171; Wed, 13 Sep 2023 04:59:22 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 571026B016F for ; Wed, 13 Sep 2023 04:59:22 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 2749AC03C4 for ; Wed, 13 Sep 2023 08:59:22 +0000 (UTC) X-FDA: 81230975364.02.7B833E5 Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) by imf14.hostedemail.com (Postfix) with ESMTP id 0D1DA10002B for ; Wed, 13 Sep 2023 08:59:19 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=infradead.org header.s=desiato.20200630 header.b=ngdjgQWj; spf=none (imf14.hostedemail.com: domain of peterz@infradead.org has no SPF policy when checking 90.155.92.199) 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=1694595560; 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=L3SwR6hKceOlWWcSwzNum5BemzOa6jq4Kj6VEs6rV8E=; b=uV85RdpDQjYNcCc0hsqnYHyFg1NBDQnNV3SE+57/FHQEP8ru0OtftUV1WT38BhsNolLL7c /uSrKaWdJ5uKX7XxVlrlFb1F9DBBcKrr4uF0MiFo13aFmBBUm5R+R8SXNSPzt9p14z2no4 ylioU9eTnHTY2/rr7WRtxalG+MCy5ak= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1694595560; a=rsa-sha256; cv=none; b=agtwF8jbbUzOax79NwAqnpbt3lFug5vM85Ob+SPkfvZwbtZ/bZKdHyC9wYuUTSYomgDNET YEY4fv57fBzCWIh9aQDwDt4oC+QSFkdQXD3TjxOvFlBQl0vhGGo87yMzFR6BkN/L+3QuWK eZJ5dU23Q2MPDXM7yxwt2bk+nqsb4IY= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=infradead.org header.s=desiato.20200630 header.b=ngdjgQWj; spf=none (imf14.hostedemail.com: domain of peterz@infradead.org has no SPF policy when checking 90.155.92.199) smtp.mailfrom=peterz@infradead.org; dmarc=none DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; 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=L3SwR6hKceOlWWcSwzNum5BemzOa6jq4Kj6VEs6rV8E=; b=ngdjgQWjtCltwMErjnQ9HTxowL cLOO7rhFYpVazeMHkGoLPauY0qKo+dw6JvAtN5cfcuW+u6U4PTxQNXFIqJEoMpsh4/rqDXj0cXAK4 Jc/8YLQIZYcjUnhPuy+EtjT2JR2CocNkPP6dI3yCwhDMYeufRDm2M7xnz3+8KnJ+gujganXTSHp8x 3uUb4Sl6Ue3zbeoONFB43yWdQ/gDX0vvcbmTp0TciKoAZyxdLfsFbpBkNGy8fw3k1n1XBYWKzbFvI 5YPVSYap5ZhmtT7nT6imFgAX+2zrj2ArF3EldtNqlHpKVghvqs956qnspB7V8G1kzyI7Vw7NEpH+c wtMMz6PA==; Received: from j130084.upc-j.chello.nl ([24.132.130.84] helo=noisy.programming.kicks-ass.net) by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1qgLiE-006wEO-20; Wed, 13 Sep 2023 08:59:08 +0000 Received: by noisy.programming.kicks-ass.net (Postfix, from userid 1000) id B37B6300348; Wed, 13 Sep 2023 10:59:07 +0200 (CEST) Date: Wed, 13 Sep 2023 10:59:07 +0200 From: Peter Zijlstra To: "Darrick J. Wong" Cc: Matthew Wilcox , Dave Chinner , Waiman Long , Ingo Molnar , Will Deacon , linux-kernel@vger.kernel.org, linux-mm@kvack.org, Chandan Babu R , linux-xfs@vger.kernel.org Subject: Re: [PATCH 1/5] locking: Add rwsem_is_write_locked() Message-ID: <20230913085907.GB692@noisy.programming.kicks-ass.net> References: <70d89bf4-708b-f131-f90e-5250b6804d48@redhat.com> <20230912090342.GC35261@noisy.programming.kicks-ass.net> <20230912135213.GA22127@noisy.programming.kicks-ass.net> <20230912142300.GC22127@noisy.programming.kicks-ass.net> <20230912152715.GS28202@frogsfrogsfrogs> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230912152715.GS28202@frogsfrogsfrogs> X-Rspamd-Queue-Id: 0D1DA10002B X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: w85o5unswd5ki8zypdhf7gsgrzxja5rx X-HE-Tag: 1694595559-356143 X-HE-Meta: U2FsdGVkX18mYljbKlqdmdCNDAiVz82sqVIYEzOxcKlMOneTApPCQlgsnI6hh8M4SfundRf9aMhXQvGQwslPxD1gWGB0bDtDTt64ayZmBiRmthZT6fk9uGgBa8Nf6U7K75l6b/EosSQfz60uq3V1rmzssD4BzCVdaKOpfsKyAm/2PDNo20jEPDjYD55Oh+q+TEEbJmQyJhmNe9Ikfj38k0Df1Q0hEFP7ZdotGLkWNEePXNz2OxbGcA5t8Ejz7iVjte97J3Oyolzh3Tf6Lx08DObTICwday9ZOyUDjMUl0fLlhUE2Ec301+Qeig1KuYyiAdagkybUGHEAgDZFoSO7tF2fHVfcg6oVC6KAQ43jLCG8dlyZSyRAtUnHPgRlR6XhRDw/8ZtLcxhqlwKzdNI1xBWPTI8CoFLFoWxZk2IypOCTkYxrf1Y43dyRmhMTaWJkmqhrmuhQ71VMpoqSQuaJjpgSD+HhRqw9SJMLJ1pMnTZpT7M1jDla8fMhhDpinFOJ9Mx8koEND8RJk+GJik1aoT3WdUJbGkp6vxclhDDgI0a6xBW8GGfA4BheJLOVn2nMqzReVX/SwSZKJOpyoyq/G5RPxnu0hgiYhjp8ZlCdu5LtA7TOE2senI2ZqPtkixgN7CEZJvHgs3T+gfk0teuBstasIujJczYPjuf+Bz5G/IDskV15pqF4iwhK3NxFeHIEwXCRvRbnG7TGr3zpilA71DLbFsYXI1dAAbRgC52Yp89aAIuL9sHfl5Ogv5dBkit3cZPfjyY/hIWcpxml7j5Fdn3jE8jiwJHgPYcpdfUv5qLzypNnL9n+SsaMxMIUXtnHl+5SrwzNchRfpRUcim93FJXf8e+HvkvaRJqNqkNXXneskeuj7vEBBjgg5V/OKoM2ubdU9+09PrqRxwwXLGx73jly/CGWftXGSulBEdJGhPpiEqeb0cKOh6y2TwQQ/UDMIEk4qBDZQLnufnFISzD CBoMRETH MPSTxr8swayoJl8VukOwO61p5wAj546zt7nvFRy9bA5mpMnWKMcUhdts06dVx8ZFUD4LdZWQ6jVGamHCvxXJC4p7MmZ8JsxB5i0mJW5xgZaBuf3LN7BjBAphicafPSuCRwokbVfWA+QKUspWoeS5Rct+pBLoXsPpPFKt3vUoh3SzXg0/q1cgbKjGgjhKqOsHwUqeiNq+L2YBGneukEeIpIBcbXwIu8nsIcbESuv5ZDKluKzQ= 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 Tue, Sep 12, 2023 at 08:27:15AM -0700, Darrick J. Wong wrote: > I could live with Longman's suggestion of an rwsem_assert_is_locked that > only exists if DEBUG_RWSEMS is enabled. Something like: > > #ifdef CONFIG_DEBUG_RWSEMS > static inline bool __rwsem_assert_is_locked(struct rw_semaphore *rwsem, > const char *file, int line) > { > bool ret = rwsem_is_locked(rwsem); > if (!ret) > WARN(1, "!rwsem_is_locked(rwsem) at %s line %d", file, line); > return ret; > } > #define rwsem_assert_is_locked(r) \ > __rwsem_assert_is_locked((r), __FILE__, __LINE__) > #endif > > and then XFS could do: > > ASSERT(rwsem_assert_is_locked(&VFS_I(ip)->i_rwsem)); > > Wherein ASSERT is only #defined if CONFIG_XFS_DEBUG, and XFS_DEBUG > selects DEBUG_RWSEMS, per Longman's suggestion. That's work for what we > want it for (simple cheap lock checking) without becoming a general > lockabuse predicate. Ack.