Received: by 2002:a05:7412:e79e:b0:f3:1519:9f41 with SMTP id o30csp269244rdd; Wed, 22 Nov 2023 15:51:48 -0800 (PST) X-Google-Smtp-Source: AGHT+IFvqODl5GbO+gJIrGvNo6ghvtBfoYlzYWCoakvBTEfKKBvpV+17SNb2fDse//LSEWJ6uX73 X-Received: by 2002:a17:902:d512:b0:1cc:5549:aabd with SMTP id b18-20020a170902d51200b001cc5549aabdmr5282713plg.8.1700697108091; Wed, 22 Nov 2023 15:51:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1700697108; cv=none; d=google.com; s=arc-20160816; b=mfFEu8b8nJQJG+HXd/cMj1fCH4lsP47daeWwkvmY2RM2aoRbn9B6nXRp3zeGYWoDoy eDvR1kUWPipYs95s+0mMlEUMNEoLMbEq/uEpMl//AYNEONB2SXmBMaQ9T9PE43ef04Fv 5YqQXkYxfG4mPIjQUq62s+oq3W9eDADVZUXgKN22CHOEVXz1/ntodOPaONGxFspmEBA0 MnlXDiR68ZC/kttiNo4Mt86Ekbx23uKorH8F95M/Y3YCJ+/g1E9GmBseKg1tiws28Uwq Q5lhA+uuAbovv+2DU9mzIW8n/NPJiB6JORQyTraX692wUZZF44W+F+jWd3tkuMlAmxDs gVBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=vHBOI/gb4bP4f3pn2dixxtLUAGn+Uu9iktX/uif8nNw=; fh=onECAbG0db6bZRGkmHaHumpjquwBTTaWawDwxHY33Hs=; b=lOR02pkw6/Ad35f7u+Dcm3aTgrXs2gmioQjGCxs6TsCqK8fCsds0iizboANkTmnWQi /ERBEh5qH0IoPcwmAOJLkJ7jowBXST2iKNXtllqMbzLe9SBVCfIopn2kKm7qDA1Cd9Ts rWLNdPs9cVtfJoeNj2GAZ6Mp6qWf4FrYinByiARjBEEE5ryV9JblzVu4Il93x28813B5 2y2JexV8RDgbUgcf0OJUCmy36Cpx4szdrxxOde9l+PFmvu63gjLjuZrpLccpDxUrh46t odkyW/P0L2ceLE+MRB6B/WD27tyQOKaclY77fpW/x1bZKs8I4Hv8Ewl0LVZFSPfesZ8X dibA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linux.dev header.s=key1 header.b=jDpMb3vX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linux.dev Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [2620:137:e000::3:3]) by mx.google.com with ESMTPS id l13-20020a170903244d00b001c9ad2bc71esi458768pls.251.2023.11.22.15.51.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 22 Nov 2023 15:51:48 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) client-ip=2620:137:e000::3:3; Authentication-Results: mx.google.com; dkim=pass header.i=@linux.dev header.s=key1 header.b=jDpMb3vX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linux.dev Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 1D6C1824E53A; Wed, 22 Nov 2023 15:51:42 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344368AbjKVXv3 (ORCPT + 99 others); Wed, 22 Nov 2023 18:51:29 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46610 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344204AbjKVXv2 (ORCPT ); Wed, 22 Nov 2023 18:51:28 -0500 Received: from out-177.mta0.migadu.com (out-177.mta0.migadu.com [IPv6:2001:41d0:1004:224b::b1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8BA091BE for ; Wed, 22 Nov 2023 15:51:22 -0800 (PST) X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1700697080; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=vHBOI/gb4bP4f3pn2dixxtLUAGn+Uu9iktX/uif8nNw=; b=jDpMb3vXniSRNiceRApcxGTittUE4JUykbUub21puPF98jZaSg+n+YSIaMLhDk7jIYei8u A3qjWKKOSLQPNh5jnrN/+F9bhMlo/+I5B/RB1NT9Tih+aGJ2MWz0CfIppuiG8wxU6bTzgz HgHJ+8gka7zN2f3luU3FAwM3hMXzUjw= From: Kent Overstreet To: linux-kernel@vger.kernel.org, linux-bcachefs@vger.kernel.org, peterz@infradead.org Cc: boqun.feng@gmail.com, longman@redhat.com, will@kernel.org, mingo@redhat.com, Kent Overstreet Subject: [PATCH 0/6] lockdep enhancements for bcachefs Date: Wed, 22 Nov 2023 18:51:07 -0500 Message-ID: <20231122235113.180132-1-kent.overstreet@linux.dev> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Wed, 22 Nov 2023 15:51:42 -0800 (PST) This adds: - lockdep_set_no_check_recursion(), which allows lockdep checking for bcachefs six locks bcachefs has a cycle detector for deadlock avoidance; there is no lock ordering for lockdep to check w.r.t. other btree node locks. However, we do want held btree node locks to be tracked, and lock ordering to be checked w.r.t. other locks. - lock_class_is_held(), which we use for some extra locking assertion We want to assert e.g. that we're not blocking on IO with btree node locks held. Kent Overstreet (6): locking/lockdep: lock_class_is_held() locking/lockdep: lockdep_set_no_check_recursion() bcachefs: Assert that btree node locks aren't being leaked bcachefs: Use lock_class_is_held() for btree locking asserts bcachefs: Check for btree locks held on transaction init bcachefs: Switch to lockdep_set_no_check_recursion() fs/bcachefs/btree_gc.c | 3 +++ fs/bcachefs/btree_iter.c | 2 ++ fs/bcachefs/btree_locking.c | 14 ++++++++--- fs/bcachefs/btree_types.h | 1 + include/linux/lockdep.h | 10 ++++++++ include/linux/lockdep_types.h | 2 +- kernel/locking/lockdep.c | 46 +++++++++++++++++++++++++++++++++++ 7 files changed, 73 insertions(+), 5 deletions(-) -- 2.42.0