Update to 6.7

This commit is contained in:
Neal Gompa 2024-01-22 16:12:31 -05:00
parent 9b441db340
commit 1397a1dcca
5 changed files with 10 additions and 155 deletions

2
.gitignore vendored
View File

@ -132,3 +132,5 @@
/btrfs-progs-v6.5.1.tar.xz
/btrfs-progs-v6.6.2.tar.sign
/btrfs-progs-v6.6.2.tar.xz
/btrfs-progs-v6.7.tar.sign
/btrfs-progs-v6.7.tar.xz

View File

@ -1,92 +0,0 @@
From 4d8199f0e3d30be69ebd10820d5402ec8d326e38 Mon Sep 17 00:00:00 2001
From: Neal Gompa <neal@gompa.dev>
Date: Wed, 22 Mar 2023 18:17:14 -0400
Subject: [PATCH 1/1] btrfs-progs: mkfs: Enforce 4k sectorsize by default
We have had working subpage support in Btrfs for many cycles now.
Generally, we do not want people creating filesystems by default
with non-4k sectorsizes since it creates portability problems.
Signed-off-by: Neal Gompa <neal@gompa.dev>
Reviewed-by: Anand Jain <anand.jain@oracle.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
---
Documentation/Subpage.rst | 17 +++++++++--------
Documentation/mkfs.btrfs.rst | 13 +++++++++----
mkfs/main.c | 2 +-
3 files changed, 19 insertions(+), 13 deletions(-)
diff --git a/Documentation/Subpage.rst b/Documentation/Subpage.rst
index c762b6a3..4bcfc6cf 100644
--- a/Documentation/Subpage.rst
+++ b/Documentation/Subpage.rst
@@ -9,18 +9,19 @@ to the exactly same size of the block and page. On x86_64 this is typically
pages, like 64KiB on 64bit ARM or PowerPC. This means filesystems created
with 64KiB sector size cannot be mounted on a system with 4KiB page size.
-While with subpage support systems with 64KiB page size can create
-and mount filesystems with 4KiB sectorsize. This still needs to use option "-s
-4k" option for :command:`mkfs.btrfs`.
+Since v6.5, filesystems are created with a 4KiB sectorsize by default,
+though it remains possible to create filesystems with other page sizes
+(such as 64KiB with the "-s 64k" option for :command:`mkfs.btrfs`). This
+ensures that new filesystems are compatible across other architecture
+variants using larger page sizes.
Requirements, limitations
-------------------------
-The initial subpage support has been added in v5.15, although it's still
-considered as experimental, most features are already working without problems.
-On a 64KiB page system filesystem with 4KiB sectorsize can be mounted and used
-as usual as long as the initial mount succeeds. There are cases a mount will be
-rejected when verifying compatible features.
+The initial subpage support has been added in v5.15. Most features are
+already working without problems. On a 64KiB page system, a filesystem with
+4KiB sectorsize can be mounted and used as long as the initial mount succeeds.
+Subpage support is used by default for systems with a non-4KiB page size since v6.5.
Please refer to status page of :ref:`status-subpage-block-size` for
compatibility.
diff --git a/Documentation/mkfs.btrfs.rst b/Documentation/mkfs.btrfs.rst
index 1fca7448..d602fe9c 100644
--- a/Documentation/mkfs.btrfs.rst
+++ b/Documentation/mkfs.btrfs.rst
@@ -122,10 +122,15 @@ OPTIONS
-s|--sectorsize <size>
Specify the sectorsize, the minimum data block allocation unit.
- The default value is the page size and is autodetected. If the sectorsize
- differs from the page size, the created filesystem may not be mountable by the
- running kernel. Therefore it is not recommended to use this option unless you
- are going to mount it on a system with the appropriate page size.
+ By default, the value is 4KiB, but it can be manually set to match the
+ system page size. However, if the sector size is different from the page
+ size, the resulting filesystem may not be mountable by the current
+ kernel, apart from the default 4KiB. Hence, using this option is not
+ advised unless you intend to mount it on a system with the suitable
+ page size.
+
+ .. note::
+ Versions prior to 6.4 set the sectorsize matching to the page size.
-L|--label <string>
Specify a label for the filesystem. The *string* should be less than 256
diff --git a/mkfs/main.c b/mkfs/main.c
index 1c5d668e..bd2e4350 100644
--- a/mkfs/main.c
+++ b/mkfs/main.c
@@ -1204,7 +1204,7 @@ int BOX_MAIN(mkfs)(int argc, char **argv)
}
if (!sectorsize)
- sectorsize = (u32)sysconf(_SC_PAGESIZE);
+ sectorsize = (u32)SZ_4K;
if (btrfs_check_sectorsize(sectorsize))
goto error;
--
2.41.0

View File

@ -1,52 +0,0 @@
From 692f223b5a152951d38d2dcf9103d28b2185626c Mon Sep 17 00:00:00 2001
From: Neal Gompa <ngompa@fedoraproject.org>
Date: Tue, 21 Mar 2023 15:40:15 -0400
Subject: [PATCH 2/2] btrfs-progs: mkfs: doc: Drop version change for 4k
sectorsize
This is not yet upstream so we don't know what version this change
has landed in.
---
Documentation/Subpage.rst | 4 ++--
Documentation/mkfs.btrfs.rst | 3 ---
2 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/Documentation/Subpage.rst b/Documentation/Subpage.rst
index 4bcfc6cf..698085bd 100644
--- a/Documentation/Subpage.rst
+++ b/Documentation/Subpage.rst
@@ -9,7 +9,7 @@ to the exactly same size of the block and page. On x86_64 this is typically
pages, like 64KiB on 64bit ARM or PowerPC. This means filesystems created
with 64KiB sector size cannot be mounted on a system with 4KiB page size.
-Since v6.5, filesystems are created with a 4KiB sectorsize by default,
+Filesystems are created with a 4KiB sectorsize by default,
though it remains possible to create filesystems with other page sizes
(such as 64KiB with the "-s 64k" option for :command:`mkfs.btrfs`). This
ensures that new filesystems are compatible across other architecture
@@ -21,7 +21,7 @@ Requirements, limitations
The initial subpage support has been added in v5.15. Most features are
already working without problems. On a 64KiB page system, a filesystem with
4KiB sectorsize can be mounted and used as long as the initial mount succeeds.
-Subpage support is used by default for systems with a non-4KiB page size since v6.5.
+Subpage support is used by default for systems with a non-4KiB page size.
Please refer to status page of :ref:`status-subpage-block-size` for
compatibility.
diff --git a/Documentation/mkfs.btrfs.rst b/Documentation/mkfs.btrfs.rst
index d602fe9c..11ac4af2 100644
--- a/Documentation/mkfs.btrfs.rst
+++ b/Documentation/mkfs.btrfs.rst
@@ -129,9 +129,6 @@ OPTIONS
advised unless you intend to mount it on a system with the suitable
page size.
- .. note::
- Versions prior to 6.4 set the sectorsize matching to the page size.
-
-L|--label <string>
Specify a label for the filesystem. The *string* should be less than 256
bytes and must not contain newline characters.
--
2.41.0

View File

@ -2,8 +2,8 @@
%{!?version_no_tilde: %define version_no_tilde %{shrink:%(echo '%{version}' | tr '~' '-')}}
Name: btrfs-progs
Version: 6.6.2
Release: 2%{?dist}
Version: 6.7
Release: 1%{?dist}
Summary: Userspace programs for btrfs
License: GPL-2.0-only
@ -12,13 +12,6 @@ Source0: https://www.kernel.org/pub/linux/kernel/people/kdave/%{name}/%{n
Source1: https://www.kernel.org/pub/linux/kernel/people/kdave/%{name}/%{name}-v%{version_no_tilde}.tar.sign
Source2: gpgkey-F2B41200C54EFB30380C1756C565D5F9D76D583B.gpg
# Upstreamable changes
## From: https://lore.kernel.org/linux-btrfs/20230322221714.2702819-1-neal@gompa.dev/T/#t
Patch0101: 0001-btrfs-progs-mkfs-Enforce-4k-sectorsize-by-default.patch
## Fedora specific doc change stacked on top
Patch0102: 0002-btrfs-progs-mkfs-doc-Drop-version-change-for-4k-sect.patch
BuildRequires: gnupg2
BuildRequires: gcc, autoconf, automake, make
BuildRequires: git-core
@ -31,6 +24,7 @@ BuildRequires: pkgconfig(libgcrypt) >= 1.8.0
BuildRequires: pkgconfig(libudev)
BuildRequires: pkgconfig(libzstd) >= 1.0.0
BuildRequires: python3-sphinx
BuildRequires: python3dist(sphinx-rtd-theme)
BuildRequires: systemd
BuildRequires: python3-devel >= 3.4
BuildRequires: python3-setuptools
@ -154,6 +148,9 @@ popd
%{python3_sitearch}/btrfsutil-*.egg-info/
%changelog
* Mon Jan 22 2024 Neal Gompa <ngompa@fedoraproject.org> - 6.7-1
- Update to 6.7
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.6.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild

View File

@ -1,2 +1,2 @@
SHA512 (btrfs-progs-v6.6.2.tar.sign) = a140aae1bc0a0f240518062180270d30369a96d66e8a006e7f55cc51cde430f5c36886a0557af8a28bc843077d4971e4c30a561a01cc34d93e4275d813d6290e
SHA512 (btrfs-progs-v6.6.2.tar.xz) = 23878cdd6f16a7ddba55321169bf7dd565719dd5d16a5a47fb7879aa0e04bd9008dc436cdbb712cee286b3a9b97ac3a4f6ea22213286a5025b5371d7975a2fa8
SHA512 (btrfs-progs-v6.7.tar.sign) = 13638ebc79b05a91ed1588e999c37fbdf8bde9bc8ab9c8821720ff6d1b98334af354ee5de7ca13897c94dbcf036d09c122768ea7350e86829ddfb03be45761c3
SHA512 (btrfs-progs-v6.7.tar.xz) = 2f60fad3b8e12d549cc032935e35d73228034506f0a6687c0b678e12d791d658605f9918f59c0e9d4a4d43c6a7b26713d1d31f0b6bafc9e77c4acfd8cc9bbb68