Received: by 2002:ab2:6857:0:b0:1ef:ffd0:ce49 with SMTP id l23csp2583133lqp; Mon, 25 Mar 2024 03:30:55 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCU9MWIvXg6BPpnABxr7c1Uq33g24DQdZizF+uWOMr7HnRc3LUHjmEu/7FS7s+YJ00em6ApeXSuie6mYtrX99urw0y9O8pVW7OqNitQQ4w== X-Google-Smtp-Source: AGHT+IHfVTWudKMN/lDkTIAkl9gJ4yoXyy9L+1Hx1UR+TZW8G50DC8RgNIi6ujIgNMC0l4EMO1dF X-Received: by 2002:ae9:ec0f:0:b0:789:f0e3:d8a9 with SMTP id h15-20020ae9ec0f000000b00789f0e3d8a9mr8794986qkg.13.1711362655720; Mon, 25 Mar 2024 03:30:55 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1711362655; cv=pass; d=google.com; s=arc-20160816; b=RzGKSGv2fsHZNYUHCfG9jIZDGpAey1SBJOFoF3H7oyfFICpJa+m/89uwSko2QEKfES amR/Rmdz5J4+zxIeEa641Xl0oq5pwH7HojYzAFR78doMy58UDNE/OQGAF4ZtQpTLY7wa UbDJNbmSpzGYtT0WOJ7oYKOEa5N7AIem5UQm1HBwsOKysrPYF2S6Ky/fGkCZhzBEHR3o bx32zifsakJ71BNscvTBdbaQ6Hi3q2xfkNcY5/KVrggN3gwWF9m/lCWz/43tnkXty6CW BninuhR2GvGATaZfeTrRb3RUrrxaYN/aK78VaFUBgC/IjQe13OwVieGObt4MJMyj1cln qKrA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=cBctz2vS7ZQHMa/RdDALuFNulXH2vW+EwxErnv7Ra1A=; fh=Zmpj+eEw8bontgjCMaR+NHTW26su+RlmTr0uahtQMWU=; b=AHMqG5fi7yT1Z/D4XrCG0A+Zuny5EvagmrCtuYPs2GpCsXQBQlgkXfatjHrjidag7P z4Thbb/MHSCwm/VrxBe3riZeSk5RirDHMj/nC9GTEcywXuluQvq6RvC0J6DJy0LjCn5o AubTWQv3SoxAEeqkesbEGqZVilfmvzGEvMLPfBER3VZA93jBkKE5UDNJraO72RjmXi6m DSC2xS1xCi8yumWTplQlDXciRORWbFw6TbQj4/k+8Qg1KGauKxSpWWzy5Xh/ufFuIMv+ dwZvOA0hRpzcfy1GAoWJZGeqGo7Y8ytOutpvTJ/ySMjycOJ6iMFklW4siNpFWHt/rNf8 l0Mw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=drkJB0sr; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-115302-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-115302-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [147.75.199.223]) by mx.google.com with ESMTPS id f26-20020a05620a20da00b00789f691a17bsi4921907qka.12.2024.03.25.03.30.55 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Mar 2024 03:30:55 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-115302-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) client-ip=147.75.199.223; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=drkJB0sr; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-115302-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-115302-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 7547F1C33336 for ; Mon, 25 Mar 2024 10:30:55 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 1B5371D6848; Mon, 25 Mar 2024 02:32:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="drkJB0sr" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 66E437F7D6; Sun, 24 Mar 2024 22:48:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711320492; cv=none; b=Hi7alKC/cfx2nL+IXouuikTbsU2wG/9rWRvVBmOKIe3fmR8KJTmAVw2pX2OQ/XQLFqH0ciBXcIhkBlQvlMrS5wWg+uOH4PsWx9JFH51tkDsU+rKJVkEkAjGeXPHlgnV4lYMzBQP/Auh0yZNQ4GXBWJdoOtHl1A18NvKj0trSaDY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711320492; c=relaxed/simple; bh=vOIDdeDxdOI0karp+xCw4ebzSWVXYKI3oMsxVYitKmI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=F7UnEx/gJUTzXO2qB844ee7/77JKHf4YKErIPKMso+wXIuq/HsWX4l6PZCRjeijjTBhcQC9eBtjjeAMkXefiZHmqHfPpf6iphFgiC8w+A9G1WrwC0lEmqGIynJxTOPgZbi6Kj6YbC92jhvHo8j1ZVR+3D1TdIMRdJKNU6Cd3tN8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=drkJB0sr; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id 59CEFC43390; Sun, 24 Mar 2024 22:48:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711320492; bh=vOIDdeDxdOI0karp+xCw4ebzSWVXYKI3oMsxVYitKmI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=drkJB0srBDBGlhAsUfB5261i06MGd9xWqMUuVxuaGRLBCG4EYloNUZD3GUH6b/z+D mfJQIREIpO4s5PotHeBUlW+lL4yYoJ5Jvoub2zPxCzGCWxridROwJ/OMghTHGjA+Dj U+Bfe50ny1tJs4VGu0i4vQDvQMQSDHB4HmdokvpjyESc30aA0I1ql1AAmyvBfoVgLN tqqO0JeJjwLfStJk6+fXIPJtTCV5jGPoZAcwzr0VL1MizKjKPSyfu+0uXSw5ZYO8b5 XHklKD28EghH2dt0NiPklm5Rxx2YK0+f+69Rx/XOWP9pps2mbwjn+z/+LL6CH/FFbo 0R10p43mbytJg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Johannes Thumshirn , HAN Yuwei , Boris Burkov , Naohiro Aota , David Sterba , Sasha Levin Subject: [PATCH 6.7 051/713] btrfs: zoned: don't skip block group profile checks on conventional zones Date: Sun, 24 Mar 2024 18:36:17 -0400 Message-ID: <20240324224720.1345309-52-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324224720.1345309-1-sashal@kernel.org> References: <20240324224720.1345309-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit From: Johannes Thumshirn [ Upstream commit 5906333cc4af7b3fdb8cfff1cb3e8e579bd13174 ] On a zoned filesystem with conventional zones, we're skipping the block group profile checks for the conventional zones. This allows converting a zoned filesystem's data block groups to RAID when all of the zones backing the chunk are on conventional zones. But this will lead to problems, once we're trying to allocate chunks backed by sequential zones. So also check for conventional zones when loading a block group's profile on them. Reported-by: HAN Yuwei Link: https://lore.kernel.org/all/1ACD2E3643008A17+da260584-2c7f-432a-9e22-9d390aae84cc@bupt.moe/#t Reviewed-by: Boris Burkov Reviewed-by: Naohiro Aota Signed-off-by: Johannes Thumshirn Reviewed-by: David Sterba Signed-off-by: David Sterba Signed-off-by: Sasha Levin --- fs/btrfs/zoned.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/fs/btrfs/zoned.c b/fs/btrfs/zoned.c index 3779e76a15d64..524532f992746 100644 --- a/fs/btrfs/zoned.c +++ b/fs/btrfs/zoned.c @@ -1661,6 +1661,15 @@ int btrfs_load_block_group_zone_info(struct btrfs_block_group *cache, bool new) } out: + /* Reject non SINGLE data profiles without RST */ + if ((map->type & BTRFS_BLOCK_GROUP_DATA) && + (map->type & BTRFS_BLOCK_GROUP_PROFILE_MASK) && + !fs_info->stripe_root) { + btrfs_err(fs_info, "zoned: data %s needs raid-stripe-tree", + btrfs_bg_type_to_raid_name(map->type)); + return -EINVAL; + } + if (cache->alloc_offset > cache->zone_capacity) { btrfs_err(fs_info, "zoned: invalid write pointer %llu (larger than zone capacity %llu) in block group %llu", -- 2.43.0