From nobody Thu Apr 16 12:24:53 2026 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) (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 394A33451B3 for ; Fri, 27 Feb 2026 18:31:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772217090; cv=none; b=tU2G1ofAIg5ZEvW0n8z1FFqEiRn0C4lii+w+GARhibPoa51ZQy6r6/8f26AvvhjjksnGqQWSPIthH+4u4bB4C8Uj0gbqSwyKNzQMD3tofPXXASNn1DwsYH/Fxymtceu3IqW27R1SY7NgdAv4uqprb96DppKlXiDy/CgUVWWWlhg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772217090; c=relaxed/simple; bh=YkEWqnBAPzrqci0BPAz5n9V4vIu9oUwhi4bREqwiwYs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=d6H0Y/AeN4cZEzi696UbK6Wk/0Hvm40HWFaoeHMmyZgGK21788OoMGSYywMfWd/S7Vf50r8y4Iy8ew0qarEsRHDORMXnKVsWP69k/2AmYrBb8alpT6p9rGVariP77tsiWxptvv7VI4f9QssGMXWECW8UEQ56qKoIXL2OftNBAWs= 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=G9WZ8ez7; arc=none smtp.client-ip=209.85.214.176 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="G9WZ8ez7" Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-2ad617d5b80so15756735ad.1 for ; Fri, 27 Feb 2026 10:31:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772217089; x=1772821889; 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=rbJVYmXAbJJyKUBv1gVLWbj/RUC93TROXsUjXVfF1X4=; b=G9WZ8ez7OTtIMboZWnY7fu5mtitALVvtOI4lEipqXwSkiC5OpPEJajDvfJfkp2Dcbi YG4Kt/j/Eg0w+3OEbrz2duGZoO9mMt/FB8ci61qsJwnvnTK3s5chKX2vAM+US3YVPXv5 52h2Md6U6Ng0lHSkZVn0MuYPTf3NUOYkAc42beUexHuVXXcfJAT0qoFkyQ8dYtCrQ8bj dPwuCZepJpO2a+Tdv2SUJGwdu9gy/ZXekco3fhLKNMe19Cwb5SFMVy6JZzE7qT5SS6Aj FsOxRg4hXNNCieBiKg9mc7rb/jqsPKEg7nuUz8RylVp5Rk5U6Psu1UnWzx4T7JQTsoUb Do6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772217089; x=1772821889; 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=rbJVYmXAbJJyKUBv1gVLWbj/RUC93TROXsUjXVfF1X4=; b=frbJa9+uRu2Z4c/+AzDHJAHT3/cfdgIhYwnENnfSluB8FfbfMg17bVMwycRAzhNZ1s 7qTIwst+Y3KbtgeYXcFSDsGAUxTGqu7hnk/GmG+fsS03BDNUxM6oggeYYYFWCosZQb3m wfZZrTMqW/Vzrfd1CgjsdULQTl41G6EjwhxDJlRGhELwpnxkF1CykplnvmnW+I9TZDW3 cvo7P5VNPrGfKAGilELBl0P6pBT8ONnOXLoLcaZp6yxZEXRZkvj3W6hKK6hXLLzNrq3s M7yTh8FiwBiE6w5mYX9LnOe7PR1/aJ5fh6sLJewcSN3ZGpHzIpDOtayo4Mnr1cZ6m92E 1rwA== X-Forwarded-Encrypted: i=1; AJvYcCXySh/KPlGd0SO9HMFhdtXnlVRyjKQ4qgHS/8+sbh6i0Q65F8yNdJk4sV2FP4PZbtKiTwK+YyQZxtqwIZo=@vger.kernel.org X-Gm-Message-State: AOJu0YzMZ15RYZd3ZIDXeflpuMaGIluc6n816FD+0+/mmHn5ozleYhe6 XKLXpuyQi8IfyHo5XV2ckZp8Qo9LhEycI+aduHkibeSmUc+vQUPkkurd X-Gm-Gg: ATEYQzxAHGJTjFKRGn/TnS3vydZkWUD1dJNJgI7iuGmEauVH0RC9BmsmGIjl6g5DKym VsaYZTrVem3qB3czKl5kR/63EvyakgHQl4cQqP1j7/FAeykXwgE4nBFGIZul6oS5pPsUr6mHbjU TIZyGuUVa4l/j93gGI/59okwUvgU8sPhpOIAMfVX1IOa2ib1IX9vQd/94Okeg685F8fKAT01NoP SvIS6n15ao72XFDbzLSUCPPdmBMrrLSY+myP3Di6O76cdeMKFZ4uQ3OuvPFQP7QDDKDw4652tIi J6pxe29riskzFe3ihnXIy+gYMU2SUa6y8Bm20iOruriMVMP9vRp6H1gZAManutTxdCS10hHRmCx mlNZjgtSE2vLkMg9n/HoZgneus4vNDyLSU+0fLtkKXENNFrSWeNeuWI9keStTR94yGEyjmWPSu2 gwpaThe/jOGtUZvWDlCHniHu4e X-Received: by 2002:a17:902:ce84:b0:2ad:bd4c:9d with SMTP id d9443c01a7336-2ae2e3edc27mr43025325ad.3.1772217088429; Fri, 27 Feb 2026 10:31:28 -0800 (PST) Received: from archlinux ([103.208.68.105]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2adfb5dbad2sm61932485ad.34.2026.02.27.10.31.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Feb 2026 10:31:28 -0800 (PST) From: Adarsh Das To: clm@fb.com, dsterba@suse.com Cc: terrelln@fb.com, linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Adarsh Das Subject: [PATCH 1/4] btrfs: replace BUG() with error handling in compression.c Date: Sat, 28 Feb 2026 00:01:08 +0530 Message-ID: <20260227183111.9311-2-adarshdas950@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260227183111.9311-1-adarshdas950@gmail.com> References: <20260227183111.9311-1-adarshdas950@gmail.com> 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" Replace BUG() calls with proper error handling. Where fs_info is available, use btrfs_err() and return -EUCLEAN. Where fs_info is not available, use WARN_ONCE() with the invalid type value so the stack trace carries enough context for debugging. Signed-off-by: Adarsh Das --- fs/btrfs/compression.c | 42 ++++++++++++------------------------------ 1 file changed, 12 insertions(+), 30 deletions(-) diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c index 790518a8c803..29281aba925e 100644 --- a/fs/btrfs/compression.c +++ b/fs/btrfs/compression.c @@ -95,11 +95,9 @@ static int compression_decompress_bio(struct list_head *= ws, case BTRFS_COMPRESS_ZSTD: return zstd_decompress_bio(ws, cb); case BTRFS_COMPRESS_NONE: default: - /* - * This can't happen, the type is validated several times - * before we get here. - */ - BUG(); + btrfs_err(cb_to_fs_info(cb), "invalid compression type %d", + cb->compress_type); + return -EUCLEAN; } } =20 @@ -116,11 +114,7 @@ static int compression_decompress(int type, struct lis= t_head *ws, dest_pgoff, srclen, destlen); case BTRFS_COMPRESS_NONE: default: - /* - * This can't happen, the type is validated several times - * before we get here. - */ - BUG(); + return -EUCLEAN; } } =20 @@ -703,11 +697,8 @@ static struct list_head *alloc_workspace(struct btrfs_= fs_info *fs_info, int type case BTRFS_COMPRESS_LZO: return lzo_alloc_workspace(fs_info); case BTRFS_COMPRESS_ZSTD: return zstd_alloc_workspace(fs_info, level); default: - /* - * This can't happen, the type is validated several times - * before we get here. - */ - BUG(); + btrfs_err(fs_info, "invalid compression type %d", type); + return ERR_PTR(-EUCLEAN); } } =20 @@ -719,11 +710,8 @@ static void free_workspace(int type, struct list_head = *ws) case BTRFS_COMPRESS_LZO: return lzo_free_workspace(ws); case BTRFS_COMPRESS_ZSTD: return zstd_free_workspace(ws); default: - /* - * This can't happen, the type is validated several times - * before we get here. - */ - BUG(); + WARN_ONCE(1, "invalid compression type %d", type); + return; } } =20 @@ -874,11 +862,8 @@ static struct list_head *get_workspace(struct btrfs_fs= _info *fs_info, int type, case BTRFS_COMPRESS_LZO: return btrfs_get_workspace(fs_info, type, level= ); case BTRFS_COMPRESS_ZSTD: return zstd_get_workspace(fs_info, level); default: - /* - * This can't happen, the type is validated several times - * before we get here. - */ - BUG(); + btrfs_err(fs_info, "invalid compression type %d", type); + return ERR_PTR(-EUCLEAN); } } =20 @@ -925,11 +910,8 @@ static void put_workspace(struct btrfs_fs_info *fs_inf= o, int type, struct list_h case BTRFS_COMPRESS_LZO: return btrfs_put_workspace(fs_info, type, ws); case BTRFS_COMPRESS_ZSTD: return zstd_put_workspace(fs_info, ws); default: - /* - * This can't happen, the type is validated several times - * before we get here. - */ - BUG(); + btrfs_err(fs_info, "invalid compression type %d", type); + return; } } =20 --=20 2.53.0 From nobody Thu Apr 16 12:24:53 2026 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) (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 81F71394464 for ; Fri, 27 Feb 2026 18:31:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.181 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772217093; cv=none; b=fuoTiV4YOCQwltzLPdwjTh2BqJEm4g/NUHpLaCUAySkGgHDlO+4xSn7Zpndm0ImnzjUBJIiFxVIW7zCuz8pYol3ifDq/h5AdIMM1dRrRbHFpUryYpCKmoyENHqX+n3lS+QuX3sCHf72/CxJ0d7I3+TnRmMieVEKQMEihlfGVbfw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772217093; c=relaxed/simple; bh=oFS7a9tcfMBexhfcX+QtaKV/GkG5yXbkGgkChhRjGGk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=kwlNi0PIG/+rir9YBYaqg0TKMWFMUHO6bvwFfhgBWn+PEA0TyszR9sYXjPXnChy9ljdScC2FFyZVhH99TxilSLoCj1nOYmbMnOXSUHyzl3ou99AazsW6ajR8xwgcZmhv3Lb3N+r9nSgOmkBTRCcs2SiU3G3HrLIlc6wsoOF4ke0= 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=O65ZFQ5/; arc=none smtp.client-ip=209.85.214.181 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="O65ZFQ5/" Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-2adff872068so11955255ad.1 for ; Fri, 27 Feb 2026 10:31:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772217092; x=1772821892; 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=lE+SoT0tniCBmbDHvTQZN8k/uRnXafqmPKiJ44BTAzk=; b=O65ZFQ5/F2IhocwhAbTr+HHuEvZu2iNlhummjnshL9bdyCjMVTb6gNcFqqrpBi/hHm 6sB6F5kt7POISi0TSEZrLPMCo9H0nVK8l2us70ZeAoMCcP5sFg+UxKnvLMU4e+cpxWOY P5hRoQgFYam3HYfgLkCv4tYex8T6BA2833LeOanrkmCDYu1FFQUCAcX+9g4h34Z0UqxW EvMADCdGmJ1H0w02M3a+3YTPJBMcSAkZn7le1NloqmBAc90cjab3w0XK3XqtPS3uVfWf dN0pd73WZMviSa9PkLY4JpW7XCPl8DIcIKQ8RiA2R9L7WWYREZ1sxjtixe7ffrJ6VrjR FeAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772217092; x=1772821892; 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=lE+SoT0tniCBmbDHvTQZN8k/uRnXafqmPKiJ44BTAzk=; b=q2EIJWJCxKAKEhD9dwAbvQQV26gyZgj9exgYmpIls2XBoGa8SnkDFUuWEVn6ju8JJw 0nwtx0Lto3+72DqO8QbWK5HJV4/EUU++L7KaSsGbVSjvc0a4YzHFQFVxFdAwPU0d7dAd Wlt31EgbkdOaRjtDZ+i5vLqKjaYLhCl13wiYL5nPksqpamfMT8kb5hEyKbE3xSSOBfQw 8vUL566lt3fI4veQ0E3DkaSL4+g7URkoTAl3I/FDLDc9i+EQHVQ9weCOvjZCYH2Plauh vD8aWedT8UE4tfYgLVqOvJsR2tPNpOgbe4Ps5MuiYH7s2sf13xR+QyDcM/MmUyqVb4Bu 95nA== X-Forwarded-Encrypted: i=1; AJvYcCWqZGOX6NtdjPh+/AL9TDZdENvspEYdmIum7D58qGwmNtwehU0mzR+kpUJgBvGVz/yKKFeETYxgihXzFHM=@vger.kernel.org X-Gm-Message-State: AOJu0Yyi7bSkmJJCaDNxSYfxX4e2/1zSkjtaCaUx59OfeXIJH5sHBr27 BBrwbV3iX4onfTszO1TPgvF3PV+r4O7lJySImigXVPxGUaU8pmNtKlSb X-Gm-Gg: ATEYQzxI5xJg6GSbPkyJVepLYlx4r1PbHPWpMSEoFSgsjwebhB7F59WbpON6f9agRJy Hmb7DK/ifTGYa5stw+ZwEOR8gj+8pep8RllxVoVAHMtdIGiGF2jADTKs5VDE8W7pxtBrpokEDt7 R4ZAD62LNdzE1GGZ0PRjUZd6LFyLRZMTuD/2fKzcN12+PsvI7J5PWzgXLQW+dj+6SiOXvvSgleH 2+1WsrNlqrp+h0CmzfuJAp/OrQ4CFzIFpVrph0hJfuaGqz9zh02tOD9DiYRvfgUJDbT0fdAINUF 3Wz9IXlF/jAQ2eZrfLtIbSCtrmz4RUU2xvR3a5beCi2MkIWmdDyd1BujlW5mE1QXTTnBM1p0a4X K321ItWxXUGCXzTnJ+okdVJBhksAZuQHzoAFa28JuVOaDcMdZbof0oFe8MyrZ9TwI3UhEcXUsUo qFlrCVVXKmjJOnsz23kf3a/iOJ X-Received: by 2002:a17:902:e744:b0:2aa:e3d1:1438 with SMTP id d9443c01a7336-2ae2e3ecf36mr41838105ad.12.1772217091806; Fri, 27 Feb 2026 10:31:31 -0800 (PST) Received: from archlinux ([103.208.68.105]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2adfb5dbad2sm61932485ad.34.2026.02.27.10.31.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Feb 2026 10:31:31 -0800 (PST) From: Adarsh Das To: clm@fb.com, dsterba@suse.com Cc: terrelln@fb.com, linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Adarsh Das Subject: [PATCH 2/4] btrfs: clean coding style errors and warnings in compression.c Date: Sat, 28 Feb 2026 00:01:09 +0530 Message-ID: <20260227183111.9311-3-adarshdas950@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260227183111.9311-1-adarshdas950@gmail.com> References: <20260227183111.9311-1-adarshdas950@gmail.com> 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" As the previous patch is making changes to compression.c, this patch takes the oppurtunity to fix errors and warning in compression.c Signed-off-by: Adarsh Das --- fs/btrfs/compression.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c index 29281aba925e..6c3be3550442 100644 --- a/fs/btrfs/compression.c +++ b/fs/btrfs/compression.c @@ -36,9 +36,9 @@ =20 static struct bio_set btrfs_compressed_bioset; =20 -static const char* const btrfs_compress_types[] =3D { "", "zlib", "lzo", "= zstd" }; +static const char * const btrfs_compress_types[] =3D { "", "zlib", "lzo", = "zstd" }; =20 -const char* btrfs_compress_type2str(enum btrfs_compression_type type) +const char *btrfs_compress_type2str(enum btrfs_compression_type type) { switch (type) { case BTRFS_COMPRESS_ZLIB: @@ -478,6 +478,7 @@ static noinline int add_ra_bio_pages(struct inode *inod= e, =20 if (zero_offset) { int zeros; + zeros =3D folio_size(folio) - zero_offset; folio_zero_range(folio, zero_offset, zeros); } @@ -780,7 +781,7 @@ struct list_head *btrfs_get_workspace(struct btrfs_fs_i= nfo *fs_info, int type, i struct workspace_manager *wsm =3D fs_info->compr_wsm[type]; struct list_head *workspace; int cpus =3D num_online_cpus(); - unsigned nofs_flag; + unsigned int nofs_flag; struct list_head *idle_ws; spinlock_t *ws_lock; atomic_t *total_ws; @@ -1163,17 +1164,17 @@ static u64 file_offset_from_bvec(const struct bio_v= ec *bvec) * @buf: The decompressed data buffer * @buf_len: The decompressed data length * @decompressed: Number of bytes that are already decompressed inside the - * compressed extent + * compressed extent * @cb: The compressed extent descriptor * @orig_bio: The original bio that the caller wants to read for * * An easier to understand graph is like below: * - * |<- orig_bio ->| |<- orig_bio->| - * |<------- full decompressed extent ----->| - * |<----------- @cb range ---->| - * | |<-- @buf_len -->| - * |<--- @decompressed --->| + * |<- orig_bio ->| |<- orig_bio->| + * |<------- full decompressed extent ----->| + * |<----------- @cb range ---->| + * | |<-- @buf_len -->| + * |<--- @decompressed --->| * * Note that, @cb can be a subpage of the full decompressed extent, but * @cb->start always has the same as the orig_file_offset value of the full @@ -1295,7 +1296,8 @@ static u32 shannon_entropy(struct heuristic_ws *ws) #define RADIX_BASE 4U #define COUNTERS_SIZE (1U << RADIX_BASE) =20 -static u8 get4bits(u64 num, int shift) { +static u8 get4bits(u64 num, int shift) +{ u8 low4bits; =20 num >>=3D shift; @@ -1370,7 +1372,7 @@ static void radix_sort(struct bucket_item *array, str= uct bucket_item *array_buf, */ memset(counters, 0, sizeof(counters)); =20 - for (i =3D 0; i < num; i ++) { + for (i =3D 0; i < num; i++) { buf_num =3D array_buf[i].count; addr =3D get4bits(buf_num, shift); counters[addr]++; --=20 2.53.0 From nobody Thu Apr 16 12:24:53 2026 Received: from mail-pl1-f178.google.com (mail-pl1-f178.google.com [209.85.214.178]) (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 E0A3939900A for ; Fri, 27 Feb 2026 18:31:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772217097; cv=none; b=kIdni33NSDcBGJ62jmTcR2A3lVg66mi5K9G270eoEzk0xTYUrdHEX/Iuc6yS9PaJbzqMALJyQM72xvGEVsmeH+axaZkEuZOm2Mo9bZsJN8o288CxqFKbN0ojLf3pj+cYG0LfshfQTycKdSUmJHuLBrJoPi1sd+vTF8cPfL+c6sI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772217097; c=relaxed/simple; bh=wbw4doQYKaFLDbXuUD0eAgYHGmQXU9EWxpL+DBRBZ68=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=U/loO8LNibPNizDA8d/s9H8SwKAhdcvQsYJ9Dzb6m1/CaneUrMaupULEEpJJNWrhbq8d1C+UXKc8ZSQO+YIoln79W371vYY0tkM7rCUTTlBqclomJPLd9sXWKk1SXZwtCiMy6vMSKZTUlm4zm2cciqKljn4YE31tZ+2cREA3Ukw= 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=R9G+Rgvr; arc=none smtp.client-ip=209.85.214.178 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="R9G+Rgvr" Received: by mail-pl1-f178.google.com with SMTP id d9443c01a7336-2ad9f2ee29aso14718365ad.1 for ; Fri, 27 Feb 2026 10:31:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772217095; x=1772821895; 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=2WUSzdwnkAcRjrhv+jrxIK4jmmkvYOasrlp3X44R4ms=; b=R9G+Rgvr2srSwqSJuWH4CS4Rqm5UVdwqR+MgpkUHlsuvNy9zOGrcvU2e7f9SV8UcS+ PeUZzJ31rrcwA1g/2b82v7EwZmjMybOl20QnroFsMgDeTn4NbFGxV/V5w/njczZwB6SZ qpWizkeO2fPfch1e1M6IQdznakKbnbwCXt0DlRM/0i9ddKl+SpKvWSl4y8RHqM3q4ZQF Thmb0T7O9m9btKw7DKoMC9Ior5RUrUYoU+RVXBvwtRg0vhurjthCCqSyWxG1IMze2Aik AYUCycKp8AnMup163MIOWIprvD0ZhEykJL0ht8Le9coHkrshsqQDHOg5wWALdFOnvbn6 Jq2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772217095; x=1772821895; 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=2WUSzdwnkAcRjrhv+jrxIK4jmmkvYOasrlp3X44R4ms=; b=HrKHBuPt7Ra/Wbg/P6c7FRfFz1JkoNgbi5gpUyMf+q5Y/XatN4nw+l7/WEVd3oNvaA 09KRPoWbpXmdM7ZZhI6TjcxeCbjVXqKVzT+6KK533ehGamOLc/3MQtGRCTd05i5bNFw4 suLejysUeFQlsnAkmbEp38NcvxrW8DIo2/8Sb3ijsm4TqeSA6ESwkth3QfydBt7vuWbC y7PtbjK1SplI/HTFg72J2KEUP6oGyAnisL5pmGhaSekkjHqY0BSQCU+KF5U4r9IT+b3Z evZ7+89L++Q7igxfnIYeVTMCOm5fjOn0NjBdzeBPBM4McAtPUdy6b5SH9MGnv5+WBXJw It8w== X-Forwarded-Encrypted: i=1; AJvYcCVS+HgjFT4hhgn6/A5iBmO42H5tW1aEfSUdOgfo6ghCQKnwHNnkTQ06d0MXeIXCaM3duCa0XwelzNeOrwQ=@vger.kernel.org X-Gm-Message-State: AOJu0Yx+cDLIBrrkTp5mb3///rH8Agu3TSIrDGExJs7e6uZn2lsT/ZvX w0mwYsGxc1/Mc9YiNo9zIAdZHY/+tYLI6Bk9cjADCL8JWl6sujm99byT9EYTgh8A6Fc= X-Gm-Gg: ATEYQzy2xo/PDluOEaSF1PP2L+RJRw1oJo1KaPJB4Sxr2GhrYq5gJCxuPkbY0duRmpc fF2Z5tUzgB4f0WSdtXI1R5UU4T95vNeAd0iS/Vrg9uTEjtL3fhqTr1fKTpbMEiFYfQjgZoo3s3l JddcsnMGb/IiuHVbfY2kELd7ISc0I0C+7T13gxGc6n+wMeLQj681gO4DGbLzWXUh8IoE2rX6+P2 kF9VeCms2vP/kgUoj3pAQ3FPhQk83fAKA0SzSCeh+VizWDhYr1e1cLYQzoH0KOzLscA5o2vnYlF IDHEF0yb+u1H+hfoj6IV7ik0UB5e5ipRu5ZBbO8lyEZarMJzg5xqVGkcbzmzJKBVfbQFncQNJpB hJXEsV8Df2MMSYk0R9YQLloDkB+0cPfp8Hl5qOXMQSNp05M4cZp3ltsgOwhhWNI3Bi1Ix3Gy/W+ hPI89ReloWdow5ZXa55Tgo30J3 X-Received: by 2002:a17:902:ce09:b0:2a0:b7d3:eec5 with SMTP id d9443c01a7336-2ae2e4b0d26mr40184335ad.33.1772217095207; Fri, 27 Feb 2026 10:31:35 -0800 (PST) Received: from archlinux ([103.208.68.105]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2adfb5dbad2sm61932485ad.34.2026.02.27.10.31.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Feb 2026 10:31:34 -0800 (PST) From: Adarsh Das To: clm@fb.com, dsterba@suse.com Cc: terrelln@fb.com, linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Adarsh Das Subject: [PATCH 3/4] btrfs: replace BUG() and BUG_ON() with error handling in extent-tree.c Date: Sat, 28 Feb 2026 00:01:10 +0530 Message-ID: <20260227183111.9311-4-adarshdas950@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260227183111.9311-1-adarshdas950@gmail.com> References: <20260227183111.9311-1-adarshdas950@gmail.com> 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" Replace BUG() and BUG_ON() calls with proper error handling instead of crashing the kernel. Use btrfs_err() and return -EUCLEAN where fs_info is available, and WARN_ON() with an error return where it is not or where the condition is a programming bug rather than on-disk corruption. Signed-off-by: Adarsh Das --- fs/btrfs/extent-tree.c | 82 ++++++++++++++++++++++++++++++++---------- 1 file changed, 63 insertions(+), 19 deletions(-) diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c index 03cf9f242c70..9748a4c5bc2d 100644 --- a/fs/btrfs/extent-tree.c +++ b/fs/btrfs/extent-tree.c @@ -604,7 +604,13 @@ static noinline int remove_extent_data_ref(struct btrf= s_trans_handle *trans, return -EUCLEAN; } =20 - BUG_ON(num_refs < refs_to_drop); + if (unlikely(num_refs < refs_to_drop)) { + btrfs_err(trans->fs_info, + "dropping more refs than available, have %u want %u", + num_refs, refs_to_drop); + btrfs_abort_transaction(trans, -EUCLEAN); + return -EUCLEAN; + } num_refs -=3D refs_to_drop; =20 if (num_refs =3D=3D 0) { @@ -863,7 +869,13 @@ int lookup_inline_extent_backref(struct btrfs_trans_ha= ndle *trans, =20 if (flags & BTRFS_EXTENT_FLAG_TREE_BLOCK && !skinny_metadata) { ptr +=3D sizeof(struct btrfs_tree_block_info); - BUG_ON(ptr > end); + if (unlikely(ptr > end)) { + btrfs_err( + fs_info, + "extent item overflow at slot %d, ptr %lu end %lu", + path->slots[0], ptr, end); + return -EUCLEAN; + } } =20 if (owner >=3D BTRFS_FIRST_FREE_OBJECTID) @@ -1237,7 +1249,12 @@ static int remove_extent_backref(struct btrfs_trans_= handle *trans, { int ret =3D 0; =20 - BUG_ON(!is_data && refs_to_drop !=3D 1); + if (unlikely(!is_data && refs_to_drop !=3D 1)) { + btrfs_err(trans->fs_info, + "invalid refs_to_drop %d for tree block, must be 1", + refs_to_drop); + return -EUCLEAN; + } if (iref) ret =3D update_inline_extent_backref(trans, path, iref, -refs_to_drop, NULL); @@ -1453,8 +1470,9 @@ int btrfs_inc_extent_ref(struct btrfs_trans_handle *t= rans, =20 ASSERT(generic_ref->type !=3D BTRFS_REF_NOT_SET && generic_ref->action); - BUG_ON(generic_ref->type =3D=3D BTRFS_REF_METADATA && - generic_ref->ref_root =3D=3D BTRFS_TREE_LOG_OBJECTID); + if (WARN_ON(generic_ref->type =3D=3D BTRFS_REF_METADATA && + generic_ref->ref_root =3D=3D BTRFS_TREE_LOG_OBJECTID)) + return -EINVAL; =20 if (generic_ref->type =3D=3D BTRFS_REF_METADATA) ret =3D btrfs_add_delayed_tree_ref(trans, generic_ref, NULL); @@ -1622,7 +1640,9 @@ static int run_delayed_data_ref(struct btrfs_trans_ha= ndle *trans, } else if (node->action =3D=3D BTRFS_DROP_DELAYED_REF) { ret =3D __btrfs_free_extent(trans, href, node, extent_op); } else { - BUG(); + btrfs_err(trans->fs_info, "unexpected delayed ref action %d", + node->action); + return -EUCLEAN; } return ret; } @@ -1639,7 +1659,8 @@ static void __run_delayed_extent_op(struct btrfs_dela= yed_extent_op *extent_op, =20 if (extent_op->update_key) { struct btrfs_tree_block_info *bi; - BUG_ON(!(flags & BTRFS_EXTENT_FLAG_TREE_BLOCK)); + if (WARN_ON(!(flags & BTRFS_EXTENT_FLAG_TREE_BLOCK))) + return; bi =3D (struct btrfs_tree_block_info *)(ei + 1); btrfs_set_tree_block_key(leaf, bi, &extent_op->key); } @@ -1775,7 +1796,9 @@ static int run_delayed_tree_ref(struct btrfs_trans_ha= ndle *trans, else ret =3D __btrfs_free_extent(trans, href, node, extent_op); } else { - BUG(); + btrfs_err(trans->fs_info, "unexpected delayed ref action %d", + node->action); + return -EUCLEAN; } return ret; } @@ -2645,7 +2668,11 @@ int btrfs_pin_extent(struct btrfs_trans_handle *tran= s, u64 bytenr, u64 num_bytes struct btrfs_block_group *cache; =20 cache =3D btrfs_lookup_block_group(trans->fs_info, bytenr); - BUG_ON(!cache); /* Logic error */ + if (unlikely(!cache)) { + btrfs_err(trans->fs_info, + "unable to find block group for bytenr %llu", bytenr); + return -EUCLEAN; + } =20 pin_down_extent(trans, cache, bytenr, num_bytes, true); =20 @@ -4125,7 +4152,9 @@ static int do_allocation(struct btrfs_block_group *bl= ock_group, case BTRFS_EXTENT_ALLOC_ZONED: return do_allocation_zoned(block_group, ffe_ctl, bg_ret); default: - BUG(); + btrfs_err(block_group->fs_info, "invalid allocation policy %d", + ffe_ctl->policy); + return -EUCLEAN; } } =20 @@ -4141,11 +4170,20 @@ static void release_block_group(struct btrfs_block_= group *block_group, /* Nothing to do */ break; default: - BUG(); + btrfs_err(block_group->fs_info, "invalid allocation policy %d", + ffe_ctl->policy); + goto release; + } + + if (unlikely(btrfs_bg_flags_to_raid_index(block_group->flags) !=3D + ffe_ctl->index)) { + btrfs_err(block_group->fs_info, + "mismatched raid index, block group flags %llu index %d", + block_group->flags, ffe_ctl->index); + goto release; } =20 - BUG_ON(btrfs_bg_flags_to_raid_index(block_group->flags) !=3D - ffe_ctl->index); +release: btrfs_release_block_group(block_group, delalloc); } =20 @@ -4172,7 +4210,8 @@ static void found_extent(struct find_free_extent_ctl = *ffe_ctl, /* Nothing to do */ break; default: - BUG(); + WARN_ONCE(1, "invalid allocation policy %d", ffe_ctl->policy); + return; } } =20 @@ -4238,7 +4277,9 @@ static int can_allocate_chunk(struct btrfs_fs_info *f= s_info, case BTRFS_EXTENT_ALLOC_ZONED: return can_allocate_chunk_zoned(fs_info, ffe_ctl); default: - BUG(); + btrfs_err(fs_info, "invalid allocation policy %d", + ffe_ctl->policy); + return -EUCLEAN; } } =20 @@ -4448,7 +4489,9 @@ static int prepare_allocation(struct btrfs_fs_info *f= s_info, case BTRFS_EXTENT_ALLOC_ZONED: return prepare_allocation_zoned(fs_info, ffe_ctl, space_info); default: - BUG(); + btrfs_err(fs_info, "invalid allocation policy %d", + ffe_ctl->policy); + return -EUCLEAN; } } =20 @@ -5292,8 +5335,8 @@ struct extent_buffer *btrfs_alloc_tree_block(struct b= trfs_trans_handle *trans, parent =3D ins.objectid; flags |=3D BTRFS_BLOCK_FLAG_FULL_BACKREF; owning_root =3D reloc_src_root; - } else - BUG_ON(parent > 0); + } else if (WARN_ON(parent > 0)) + return ERR_PTR(-EINVAL); =20 if (root_objectid !=3D BTRFS_TREE_LOG_OBJECTID) { struct btrfs_delayed_extent_op *extent_op; @@ -6437,7 +6480,8 @@ int btrfs_drop_subtree(struct btrfs_trans_handle *tra= ns, int parent_level; int ret =3D 0; =20 - BUG_ON(btrfs_root_id(root) !=3D BTRFS_TREE_RELOC_OBJECTID); + if (WARN_ON(btrfs_root_id(root) !=3D BTRFS_TREE_RELOC_OBJECTID)) + return -EINVAL; =20 path =3D btrfs_alloc_path(); if (!path) --=20 2.53.0 From nobody Thu Apr 16 12:24:53 2026 Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) (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 C9D49392C28 for ; Fri, 27 Feb 2026 18:31:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772217099; cv=none; b=dCw1yvs9QY5Uc6rcQaTPAboQjy+hwxrP/253p4OFO3bC9gzTex2l6PoTlw9eNK/2wZX5Xtj7yOgg2gSrljON6WFnkyKr6EceCgUDXf5k1Squqk4xiyLo1WRDgNqGExSxF0X1DE7tOwYWfZxQ8ZXEVCXy5zXBKyTP+BrSq1V/K54= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772217099; c=relaxed/simple; bh=YLK623bWYOROJ9jwJGW6AmX/32QovVnZZAHPEgYhb1U=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=TrO3vaLZ+BrXaw9nrAh/L48+wNRp/iE4cLYDxvwNaze6PK9cX+2TA9PmhfbrZgJiABIitaYleGPBDv6nqewxxHa4hb6RlBHnDKScTJOdFl9uZWW2PpwGwYTmycws1KIfEdyhQyl1Y5Ip58Jr1C1VNPOu6EiTQoaP9+RcLzz0C5M= 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=EyEtO0EF; arc=none smtp.client-ip=209.85.214.179 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="EyEtO0EF" Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-2ad9a9be502so16249735ad.0 for ; Fri, 27 Feb 2026 10:31:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772217098; x=1772821898; 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=gTOvqpnvslLTcxyr1zFBiT/Ggyco+fV23SsFbnjLxPk=; b=EyEtO0EFedb1f4uonvR1ewDkFfS64KRKBLtjyTDDL2lhXnOGNcGj3eFT+4OMxnGKIH 01rubvPhOXFodWSuAnkhau2jumkKwXyNf8j0vkSs1+O7+vhD7/5KUoEdhi1hQNnBtqM+ bzqvUbzqcSMIdCH09GWLI0J/FQCQ6Bgdox82SrZPir9tt3ai4AKpHnkV29ETbMdL4Au3 RHFBN+HZyAh5wAMlegNvHTpcfSdbEBf87sibqoVJ8a46Y0x8G3qmXZBh+QFA27nnigAZ bUxT/hoEwz+TVLa/oA4MSuVqYmJ1SJsgPilua03qcljPVw0gyoVkIVS20/CuzmcrLFj6 vEgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772217098; x=1772821898; 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=gTOvqpnvslLTcxyr1zFBiT/Ggyco+fV23SsFbnjLxPk=; b=LDj+SwNuswEn+UhccikBDJvgw9SSgGb7WtJ0OlzkuE0JXWnTC60gS/Han/3njH1V24 marrzX+8Xvz7NEkxcKuJad5tBTCoScAOKkpOLKri5tG/SfVZvKFOpwkzO3niBMtHv5A0 MWXqPSMhs9vqkK1N3dz226EUexBlqXUc9C2It3lyBAkiEjCJsSjguFDjy309fZsW3Hox fzhFkIPgfy9rkIZ0lxyI1bz7ebujiU/Pb605WrX0RK3ZwcRUx8wyjUuMRCns9M/m0YXu 1njB+g/4zc9RRlQT2beGB4XshAFfmFP/GQItxl/yDl2heCp+9BIJddvmnevwULYkglnJ Wo5A== X-Forwarded-Encrypted: i=1; AJvYcCV4fcyK0TgjoZlAy5xkpWhqGl6xiy0BtV+yCJ/cM34S8kF9XUZU7xR/LJKRA1TFFotUaIa21w+2rxoKXog=@vger.kernel.org X-Gm-Message-State: AOJu0YxLzs+K83xCpbE1Mp5OPL1ZxZoP4sQ2pXyiDZJHkTU7A8F2OhUb i693acdUy1a7/z42q3vxAMEP733ZqkwLy5jppA3hQTU2XReLzt1OdnWD X-Gm-Gg: ATEYQzyyUAHpAk86+KAe5CFgykee1xCIIw9jFcfNWugekI37T+eMDFEvb61JuOXkXrN /ZkrFDXJKaxp3LRgvx+pjGEj3OLx/dpRmrV9c08Grp0AY9PMo9aOW8/6EUKvBXuW2XEkc9naUL9 Ep0lJurvcAQNW45RDH+vvbEgstGP9u0xVrtUfZjmqTyXbxB2aoiPOfw0QH07fqL32t/mMzV6IjC yTlJuw/f+wmqubo9YKxinYVyweX2g3ut0lAFRXRNcVaARs0CRtZwGtJhew/R57xxb0vUsbfQanU X7kCylvoPwvBYO6k/Ct82kLDif24eIC8XVBd7+M+XeudxJbozLBIWAY9BdgMcr+2ZJLH8tJn+Rq IJ78AjaZSjJ2/LA7F/ejemlkCzLKSD+a/TuA2xrigshUnm2ofXM+3TqMINgL5NBeQx9QZt/3rN5 q0jt4PZe3TkchphPAr5z0bJNgx X-Received: by 2002:a17:902:f541:b0:2ab:344e:1413 with SMTP id d9443c01a7336-2ae2e46c080mr35386525ad.34.1772217098074; Fri, 27 Feb 2026 10:31:38 -0800 (PST) Received: from archlinux ([103.208.68.105]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2adfb5dbad2sm61932485ad.34.2026.02.27.10.31.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Feb 2026 10:31:37 -0800 (PST) From: Adarsh Das To: clm@fb.com, dsterba@suse.com Cc: terrelln@fb.com, linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Adarsh Das Subject: [PATCH 4/4] btrfs: clean coding style errors in extent-tree.c Date: Sat, 28 Feb 2026 00:01:11 +0530 Message-ID: <20260227183111.9311-5-adarshdas950@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260227183111.9311-1-adarshdas950@gmail.com> References: <20260227183111.9311-1-adarshdas950@gmail.com> 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" As the previous commits are changing code in extent-tree, this patch takes the oppurtunity to fix checkpatch errors in the same files. All the errors were formatting related. Signed-off-by: Adarsh Das --- fs/btrfs/extent-tree.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c index 9748a4c5bc2d..8ea88174e4d5 100644 --- a/fs/btrfs/extent-tree.c +++ b/fs/btrfs/extent-tree.c @@ -2111,7 +2111,7 @@ static noinline int __btrfs_run_delayed_refs(struct b= trfs_trans_handle *trans, * head */ ret =3D cleanup_ref_head(trans, locked_ref, &bytes_processed); - if (ret > 0 ) { + if (ret > 0) { /* We dropped our lock, we need to loop. */ ret =3D 0; continue; @@ -4351,8 +4351,7 @@ static int find_free_extent_update_loop(struct btrfs_= fs_info *fs_info, if (ret =3D=3D -ENOSPC) { ret =3D 0; ffe_ctl->loop++; - } - else if (ret < 0) + } else if (ret < 0) btrfs_abort_transaction(trans, ret); else ret =3D 0; @@ -5676,7 +5675,7 @@ static int check_ref_exists(struct btrfs_trans_handle= *trans, * If we get 0 then we found our reference, return 1, else * return the error if it's not -ENOENT; */ - return (ret < 0 ) ? ret : 1; + return (ret < 0) ? ret : 1; } =20 /* --=20 2.53.0