From nobody Sun Feb 8 06:55:49 2026 Received: from mail-ot1-f51.google.com (mail-ot1-f51.google.com [209.85.210.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 895B478F26 for ; Fri, 16 Jan 2026 16:03:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768579381; cv=none; b=GOEzcWalskwXA+uDn6kCXdB4eckBaui1c6RsHmSqsxAhr1yTPgQtTwax11WGWV2bGAyW4CR8By9jqDYRtqWyBq+6vNGpfXGCiym/jRJ/ON6cS6zeu6y5x+GBSORDfrwQaSmSvphbDqW2cT24LFFAlU2qLeED6ftwzE8ixygj8Xw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768579381; c=relaxed/simple; bh=kpcLiQfohLKKEwCR+1DImqn0DcEFSGsC82ZNUVwc2ps=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=ABs9o6Sefv5RJ3Am5u9Tm6t8C0lhkwvN5amNtbOQzXbcuLHSVwc/Nb02/uKFEfugaLqrvvKRxag3fSPHbFPbbnnZU9KkwXmBrnaBG0Z/npjBmQ14ZShzQrnVp4X6RgDpiL4J8exlXL3tD5iqXNPFTFFC7nCVyC379W0JZ4xcdmc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=V56nInte; arc=none smtp.client-ip=209.85.210.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="V56nInte" Received: by mail-ot1-f51.google.com with SMTP id 46e09a7af769-7cfd65ea639so1268491a34.0 for ; Fri, 16 Jan 2026 08:03:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768579379; x=1769184179; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=W0nqEVVndxyprWQvqqkhWD/cHaUoNQR8Bscbs9w/GDo=; b=V56nIntegNTh1bd3pSNvlKFUlbVJk3CnY8o+mzmqA/WQLoviyxAJyrRNkaRVF6+wWu +0VmJCXYjI6+NaSELXv1EV1CswHAIbdO5gxrXhizHutBWR86yxFK1WCo7XkAKu3n9HXD Q0DoAZ34ErCllIvvaq+rf8c8ONzv6prubsXNuzs1v1bFCki0brw2Whno6tXJ+8XOCkxJ W5pYh1cutUO4k6cSOVAr7D7C38sBM+6Hha8XQgXfOgQto9fYqAay53POWKnmx1gvhl87 nmoDQQ3HljOPlZf+gjVnPxuCowsoSh0XVqJxmYIjgCBLfx59SeUMYHAmlw7eeH0xrKTg rOUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768579379; x=1769184179; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=W0nqEVVndxyprWQvqqkhWD/cHaUoNQR8Bscbs9w/GDo=; b=LjgbE20LNOYo/SwRVI5vLFnh0s+BwG+jnyPDK5Wh/8PQeS7FPNKiu4cuq1flUkSBXv jc2ZRYPn+utKwb6p0TGt6ZLRYXkaxww5UBWlrFyk75ihiZxktQ5CUsk1cbQrzhyiV82W 6xyqqKKttpbyrsbjdxiHXARG92lpyeAFiE86Gv7t2usiyEApA3fYqR35d0n7fa+7jnVQ GJcyc8oqcGcLQHXfOBJQw6tMDsiEGgzZAkIe06P2sRR2czldZMVVfjEPakNJlg1a51wc Wb83i3kZ02kj8FjUA0aur1jATnjZgoshLZt7pNzKma/0MsUP+ZJkTiXe6UETIlfrKt8i krZA== X-Forwarded-Encrypted: i=1; AJvYcCWda7J3ep2sg5j0wEAqLjo2SKI6EdizLTyOFVpIQzikomwkEi8tLB9UWXcwGMzq1FbzN0NbvrpMjXd3HsI=@vger.kernel.org X-Gm-Message-State: AOJu0YyAmrcMjbU/12hBLjalGKFeyWP7pUdDS5TSop/pnhzvoMRzgF07 CvecEeVjBGdMqjvG1PMYDDR+sSB/X8NPupyJ803c72l0bKvvy1C1V/tN X-Gm-Gg: AY/fxX4ayfbftG9R5oWnq3hV6W0LqSSgAx52c9l7xdFzLt0e1q0QfxG3WegM84Tj+Kd AUjYLRnvEMM0DHTahIaYDgb2sBH+vkQeBsrt4H4VZ0Qp6M6kEn0dESEw5lXmhBjUjIrEaxqPk+g 7VhcyDo9E1m4j87ORndgj8Adu9j6dqM4L3PnYnViXYhz39PzZHfHqGiVow4oXeBl6KEoPCC7dV/ 3lI6hbBmzTNIYA+6Nv38q3xpOfXj8taXNH4ZeB3IbSzfbLY/lIfq1VCzBi/t/Aq+06P7TV+tOrH bP5+nGLLZGeSSnfKUd+VqNm7IUfJDXyGLurNjv36HPzLXQ5Tv2SAZ2DXnX47izW1i41stM5LhEM 5g1WwXq3tToe7NEZcPlsB/GMGhkoyw3YHcUgOL921NfIg9kYrX9ExpR0ILy1Bty6G6RbqH1u+AJ 52NwcRsZZpXUn4MWrSSRCaWmnf65nxEmWKFApPOzYbONE= X-Received: by 2002:a05:6830:6d24:b0:7c7:62d0:b462 with SMTP id 46e09a7af769-7cfded4ede1mr1798204a34.6.1768579379204; Fri, 16 Jan 2026 08:02:59 -0800 (PST) Received: from newman.cs.purdue.edu ([128.10.127.250]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-7cfdf28efefsm1880015a34.14.2026.01.16.08.02.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 16 Jan 2026 08:02:58 -0800 (PST) From: Jiasheng Jiang To: boris@bur.io Cc: clm@fb.com, dsterba@suse.com, jiashengjiangcool@gmail.com, linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] btrfs: remove unnecessary RCU protection in clear_incompat_bg_bits Date: Fri, 16 Jan 2026 16:02:56 +0000 Message-Id: <20260116160256.19783-1-jiashengjiangcool@gmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260115224724.GB2118372@zen.localdomain> References: <20260115224724.GB2118372@zen.localdomain> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function clear_incompat_bg_bits() currently uses list_for_each_entry_rcu() to iterate over the fs_info->space_info list without holding the RCU read lock. When CONFIG_PROVE_RCU_LIST is enabled, this triggers a false positive lockdep warning because the internal check inside the RCU iterator fails: WARNING: suspicious RCU usage ----------------------------- fs/btrfs/block-group.c:1014 suspicious rcu_dereference_check() usage! other info that might help us debug this: rcu_scheduler_active =3D 2, debug_locks =3D 1 1 lock held by ...: #0: ... (sb_internal_sem){.+.+}-{0:0}, at: start_transaction+0x... As established in commit 728049050012 ("btrfs: kill the RCU protection for fs_info->space_info"), the space_info list is stable (initialized upon mount and destroyed during unmount). RCU protection is unnecessary. Fix this by switching to the standard list_for_each_entry() iterator, which silences the warning. Signed-off-by: Jiasheng Jiang Reviewed-by: Boris Burkov --- fs/btrfs/block-group.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/btrfs/block-group.c b/fs/btrfs/block-group.c index 08b14449fabe..d2cb26f130eb 100644 --- a/fs/btrfs/block-group.c +++ b/fs/btrfs/block-group.c @@ -1011,7 +1011,7 @@ static void clear_incompat_bg_bits(struct btrfs_fs_in= fo *fs_info, u64 flags) struct list_head *head =3D &fs_info->space_info; struct btrfs_space_info *sinfo; =20 - list_for_each_entry_rcu(sinfo, head, list) { + list_for_each_entry(sinfo, head, list) { down_read(&sinfo->groups_sem); if (!list_empty(&sinfo->block_groups[BTRFS_RAID_RAID5])) found_raid56 =3D true; --=20 2.25.1