Compare commits

...

23 Commits
f33 ... rawhide

Author SHA1 Message Date
Neal Gompa e61a0b7443 Update to 6.2.2 2023-03-25 20:35:09 -04:00
Neal Gompa b557c8beb8 Add patch to force default sectorsize to 4k 2023-03-22 18:24:58 -04:00
Neal Gompa ae500ad192 Update to 6.2.1 2023-03-06 21:46:36 -05:00
Neal Gompa 17c685dc70 Update to 6.1.3
- Switch to SPDX license identifiers
2023-01-25 18:10:46 -05:00
Fedora Release Engineering b5de6e391d Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-18 23:14:02 +00:00
Neal Gompa b4034dc428 Update to 6.1.2 2023-01-05 15:51:55 -05:00
Neal Gompa 0211491f0e Update to 6.1.1 2023-01-03 17:15:47 -05:00
Neal Gompa 370dc5be90 Add fix to show UUID with "btrfs subvolume list -u" 2022-12-30 08:59:38 -05:00
Neal Gompa 9cef146124 Update to 6.1
- Use libgcrypt for cryptographic hash functions
2022-12-23 11:50:09 -05:00
Neal Gompa c5958f7403 Update to 6.0.2 2022-11-25 08:20:37 -05:00
Igor Raits 51469ed8c6
Update to 6.0.1 2022-11-04 21:11:41 +01:00
Neal Gompa 877fbd4ee5 Update to 6.0 2022-10-13 15:15:07 -04:00
Neal Gompa 38744e8d9c Update to 5.19.1 2022-10-13 14:23:18 -04:00
Fedora Release Engineering 2c5723788c Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-20 22:19:35 +00:00
Python Maint 92b35f27e4 Rebuilt for Python 3.11 2022-06-13 18:18:28 +02:00
Neal Gompa 7db4900d26 Update to 5.18 2022-05-25 11:48:08 -04:00
Neal Gompa e352342bc0 Update to 5.16.2 2022-02-16 20:02:20 -05:00
Igor Raits 7094c22bad
Update to 5.16.1
Signed-off-by: Igor Raits <igor.raits@gmail.com>
2022-02-05 13:21:44 +01:00
Fedora Release Engineering df2a0bb91a - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-19 22:39:35 +00:00
Neal Gompa f70dbb9d0a Update to 5.16 2022-01-17 15:29:23 -05:00
Neal Gompa 266946abde Update to 5.15.1 2021-11-22 16:49:15 -05:00
Neal Gompa 85251bda22 Update to 5.15 2021-11-05 16:34:56 -04:00
Neal Gompa e6ede9b559 Update to 5.14.91 (5.15~rc1) 2021-10-30 18:12:03 -04:00
5 changed files with 269 additions and 11 deletions

34
.gitignore vendored
View File

@ -88,3 +88,37 @@
/btrfs-progs-v5.14.1.tar.xz
/btrfs-progs-v5.14.2.tar.sign
/btrfs-progs-v5.14.2.tar.xz
/btrfs-progs-v5.14.91.tar.sign
/btrfs-progs-v5.14.91.tar.xz
/btrfs-progs-v5.15.tar.sign
/btrfs-progs-v5.15.tar.xz
/btrfs-progs-v5.15.1.tar.sign
/btrfs-progs-v5.15.1.tar.xz
/btrfs-progs-v5.16.tar.sign
/btrfs-progs-v5.16.tar.xz
/btrfs-progs-v5.16.1.tar.sign
/btrfs-progs-v5.16.1.tar.xz
/btrfs-progs-v5.16.2.tar.sign
/btrfs-progs-v5.16.2.tar.xz
/btrfs-progs-v5.18.tar.sign
/btrfs-progs-v5.18.tar.xz
/btrfs-progs-v5.19.1.tar.sign
/btrfs-progs-v5.19.1.tar.xz
/btrfs-progs-v6.0.tar.sign
/btrfs-progs-v6.0.tar.xz
/btrfs-progs-v6.0.1.tar.sign
/btrfs-progs-v6.0.1.tar.xz
/btrfs-progs-v6.0.2.tar.sign
/btrfs-progs-v6.0.2.tar.xz
/btrfs-progs-v6.1.tar.sign
/btrfs-progs-v6.1.tar.xz
/btrfs-progs-v6.1.1.tar.sign
/btrfs-progs-v6.1.1.tar.xz
/btrfs-progs-v6.1.2.tar.sign
/btrfs-progs-v6.1.2.tar.xz
/btrfs-progs-v6.1.3.tar.sign
/btrfs-progs-v6.1.3.tar.xz
/btrfs-progs-v6.2.1.tar.sign
/btrfs-progs-v6.2.1.tar.xz
/btrfs-progs-v6.2.2.tar.sign
/btrfs-progs-v6.2.2.tar.xz

View File

@ -0,0 +1,91 @@
From: Neal Gompa <neal@gompa.dev>
Subject: [PATCH 1/1] btrfs-progs: mkfs: Enforce 4k sectorsize by default
Date: Wed, 22 Mar 2023 18:17:14 -0400
Content-Transfer-Encoding: 8bit
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 | 15 ++++++++-------
Documentation/mkfs.btrfs.rst | 13 +++++++++----
mkfs/main.c | 2 +-
3 files changed, 18 insertions(+), 12 deletions(-)
diff --git a/Documentation/Subpage.rst b/Documentation/Subpage.rst
index 21a495d5..39ef7d6d 100644
--- a/Documentation/Subpage.rst
+++ b/Documentation/Subpage.rst
@@ -9,17 +9,18 @@ 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 (still needs
-"-s 4k" option for mkfs.btrfs) and mount filesystems with 4KiB sectorsize,
-allowing us to push 4KiB sectorsize as default sectorsize for all platforms in the
-near future.
+Since v6.3, 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 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 at the time of writing (v5.18), most features are
-already working without problems.
+The initial subpage support has been added in v5.15. Most features are
+already working without problems. Subpage support is used by default
+for systems with a non-4KiB page size since v6.3.
End users can mount filesystems with 4KiB sectorsize and do their usual
workload, while should not notice any obvious change, as long as the initial
diff --git a/Documentation/mkfs.btrfs.rst b/Documentation/mkfs.btrfs.rst
index ba7227b3..16abf0ca 100644
--- a/Documentation/mkfs.btrfs.rst
+++ b/Documentation/mkfs.btrfs.rst
@@ -116,10 +116,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.3 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 f5e34cbd..5e1834d7 100644
--- a/mkfs/main.c
+++ b/mkfs/main.c
@@ -1207,7 +1207,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.39.2

View File

@ -0,0 +1,52 @@
From 56ea5a3eba4f2048d3e6297a7ab7eb5ef19e2177 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 39ef7d6d..a128db95 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.3, 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 mkfs.btrfs). This ensures that
new filesystems are compatible across other architecture variants using
@@ -20,7 +20,7 @@ Requirements, limitations
The initial subpage support has been added in v5.15. Most features are
already working without problems. Subpage support is used by default
-for systems with a non-4KiB page size since v6.3.
+for systems with a non-4KiB page size.
End users can mount filesystems with 4KiB sectorsize and do their usual
workload, while should not notice any obvious change, as long as the initial
diff --git a/Documentation/mkfs.btrfs.rst b/Documentation/mkfs.btrfs.rst
index 50d9921a..0f6056a4 100644
--- a/Documentation/mkfs.btrfs.rst
+++ b/Documentation/mkfs.btrfs.rst
@@ -123,9 +123,6 @@ OPTIONS
advised unless you intend to mount it on a system with the suitable
page size.
- .. note::
- Versions prior to 6.3 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.39.2

View File

@ -2,26 +2,35 @@
%{!?version_no_tilde: %define version_no_tilde %{shrink:%(echo '%{version}' | tr '~' '-')}}
Name: btrfs-progs
Version: 5.14.2
Version: 6.2.2
Release: 1%{?dist}
Summary: Userspace programs for btrfs
License: GPLv2
License: GPL-2.0-only
URL: https://btrfs.wiki.kernel.org/index.php/Main_Page
Source0: https://www.kernel.org/pub/linux/kernel/people/kdave/%{name}/%{name}-v%{version_no_tilde}.tar.xz
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
BuildRequires: e2fsprogs-devel
BuildRequires: libacl-devel, lzo-devel
BuildRequires: pkgconfig(blkid)
BuildRequires: pkgconfig(uuid)
BuildRequires: pkgconfig(zlib)
BuildRequires: pkgconfig(libgcrypt) >= 1.8.0
BuildRequires: pkgconfig(libudev)
BuildRequires: pkgconfig(libzstd) >= 1.0.0
BuildRequires: asciidoc, xmlto
BuildRequires: python3-sphinx
BuildRequires: systemd
BuildRequires: python3-devel >= 3.4
BuildRequires: python3-setuptools
@ -32,7 +41,7 @@ check, modify and correct any inconsistencies in the btrfs filesystem.
%package -n libbtrfs
Summary: btrfs filesystem-specific runtime libraries
License: GPLv2
License: GPL-2.0-only
# Upstream deprecated this library
Provides: deprecated()
# This was not properly split out before
@ -44,7 +53,7 @@ filesystem-specific programs.
%package -n libbtrfsutil
Summary: btrfs filesystem-specific runtime utility libraries
License: LGPLv2+
License: LGPL-2.1-or-later
# This was not properly split out before
Conflicts: %{name}-devel < 4.20.2
@ -55,7 +64,7 @@ filesystem-specific programs.
%package devel
Summary: btrfs filesystem-specific libraries and headers
# libbtrfsutil is LGPLv2+
License: GPLv2 and LGPLv2+
License: GPL-2.0-only and LGPL-2.1-or-later
Requires: %{name} = %{version}-%{release}
Requires: libbtrfs%{?_isa} = %{version}-%{release}
Requires: libbtrfsutil%{?_isa} = %{version}-%{release}
@ -73,7 +82,7 @@ btrfs filesystem-specific programs.
%package -n python3-btrfsutil
Summary: Python 3 bindings for libbtrfsutil
License: LGPLv2+
License: LGPL-2.1-or-later
Requires: libbtrfsutil%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python3-btrfsutil}
@ -86,11 +95,11 @@ btrfs filesystem-specific programs in Python.
%prep
xzcat '%{SOURCE0}' | %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data=-
%autosetup -n %{name}-v%{version_no_tilde} -p1
%autosetup -n %{name}-v%{version_no_tilde} -S git_am
%build
./autogen.sh
%configure CFLAGS="%{optflags} -fno-strict-aliasing" --disable-python
%configure CFLAGS="%{optflags} -fno-strict-aliasing" --with-crypto=libgcrypt --disable-python
%make_build
pushd libbtrfsutil/python
@ -122,6 +131,7 @@ popd
%{_mandir}/man5/*
%{_mandir}/man8/*
%{_udevrulesdir}/64-btrfs-dm.rules
%{_udevrulesdir}/64-btrfs-zoned.rules
%{_datadir}/bash-completion/completions/btrfs
%files -n libbtrfs
@ -144,6 +154,77 @@ popd
%{python3_sitearch}/btrfsutil-*.egg-info/
%changelog
* Sun Mar 26 2023 Neal Gompa <ngompa@fedoraproject.org> - 6.2.2-1
- Update to 6.2.2
* Wed Mar 22 2023 Neal Gompa <ngompa@fedoraproject.org> - 6.2.1-2
- Add patch to force default sectorsize to 4k
* Mon Mar 06 2023 Neal Gompa <ngompa@fedoraproject.org> - 6.2.1-1
- Update to 6.2.1
* Wed Jan 25 2023 Neal Gompa <ngompa@fedoraproject.org> - 6.1.3-1
- Update to 6.1.3
- Switch to SPDX license identifiers
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Jan 05 2023 Neal Gompa <ngompa@fedoraproject.org> - 6.1.2-1
- Update to 6.1.2
* Tue Jan 03 2023 Neal Gompa <ngompa@fedoraproject.org> - 6.1.1-1
- Update to 6.1.1
* Fri Dec 30 2022 Neal Gompa <ngompa@fedoraproject.org> - 6.1-2
- Add fix to show UUID with "btrfs subvolume list -u"
* Fri Dec 23 2022 Neal Gompa <ngompa@fedoraproject.org> - 6.1-1
- Update to 6.1
- Use libgcrypt for cryptographic hash functions
* Fri Nov 25 2022 Neal Gompa <ngompa@fedoraproject.org> - 6.0.2-1
- Update to 6.0.2
* Fri Nov 04 2022 Igor Raits <ignatenkobrain@fedoraproject.org> - 6.0.1-1
- Update to 6.0.1
* Thu Oct 13 2022 Neal Gompa <ngompa@fedoraproject.org> - 6.0-1
- Update to 6.0
* Thu Oct 13 2022 Neal Gompa <ngompa@fedoraproject.org> - 5.19.1-1
- Update to 5.19.1
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.18-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 5.18-2
- Rebuilt for Python 3.11
* Wed May 25 2022 Neal Gompa <ngompa@fedoraproject.org> - 5.18-1
- Update to 5.18
* Wed Feb 16 2022 Neal Gompa <ngompa@fedoraproject.org> - 5.16.2-1
- Update to 5.16.2
* Sat Feb 05 2022 Igor Raits <igor.raits@gmail.com> - 5.16.1-1
- Update to 5.16.1
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.16-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Jan 17 2022 Neal Gompa <ngompa@fedoraproject.org> - 5.16-1
- Update to 5.16
* Mon Nov 22 2021 Neal Gompa <ngompa@fedoraproject.org> - 5.15.1-1
- Update to 5.15.1
* Fri Nov 05 2021 Neal Gompa <ngompa@fedoraproject.org> - 5.15-1
- Update to 5.15
* Sat Oct 30 2021 Neal Gompa <ngompa@fedoraproject.org> - 5.14.91-1
- Update to 5.14.91 (5.15~rc1)
* Sat Oct 09 2021 Neal Gompa <ngompa@fedoraproject.org> - 5.14.2-1
- Update to 5.14.2

View File

@ -1,2 +1,2 @@
SHA512 (btrfs-progs-v5.14.2.tar.sign) = a2dc30d2bc402ea2370fd093b9816e1414c72af5a3184efa8aa5e537bcb8a05b06bfb02cdc43ad2f81b041f58a0682d86742065e6cc60771abf956c7ab37a294
SHA512 (btrfs-progs-v5.14.2.tar.xz) = dc1a73e49dd94ccd8128c197d99f112977b16350d22bc0ca32247211314a3fec66de73827305bf24ef8e0571fc890f00378d0ec3a82988f0ee54f5db10f6578c
SHA512 (btrfs-progs-v6.2.2.tar.sign) = cd05827dfd66de7eefb0dc9534baacffe7b115fa1f3b2c0d0e7bb280ff47ed9c6308684db2284f65750fb883bbcc2fecb36c09b597f11b07e29d8864b032af33
SHA512 (btrfs-progs-v6.2.2.tar.xz) = 967e1c1a6b956a4e11a794aad090d1cf370fd98e4186525ccfbbbc9ae3f2bb66ace1d684730f93c558403b7ac1c991aec3d04d07548b19ee1516352a069431db