From f3c1f667dcc300eb7205aa3e1731ba3377a8e48d Mon Sep 17 00:00:00 2001 From: Jarkko Sakkinen Date: Tue, 11 Jun 2024 19:55:39 +0300 Subject: [PATCH] package/systemd: fix build with recent kernels Backport a patch from upstream that adds the magic number for the bcachefs superblock. Otherwise, systemd 254.13 fails to compile with the latest kernel versions. Signed-off-by: Jarkko Sakkinen Signed-off-by: Thomas Petazzoni --- .../0002-basic-add-bcachefs-magic.patch | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 package/systemd/0002-basic-add-bcachefs-magic.patch diff --git a/package/systemd/0002-basic-add-bcachefs-magic.patch b/package/systemd/0002-basic-add-bcachefs-magic.patch new file mode 100644 index 0000000000..e7f4b1cbb7 --- /dev/null +++ b/package/systemd/0002-basic-add-bcachefs-magic.patch @@ -0,0 +1,53 @@ +From e5ff9b585d7dc54f50085d518d7d588c250b0690 Mon Sep 17 00:00:00 2001 +From: Chris Packham +Date: Fri, 31 May 2024 09:51:38 +1200 +Subject: [PATCH] basic: Add BCACHEFS magic + +Import magic.h from Linux 6.9 to get the definition of +BCACHEFS_SUPER_MAGIC. Update filesystems-gperf.gperf to add knowledge of +bcachefs. + +This fixes the following error building against a bleeding edge kernel. +``` +src/basic/meson.build:234:8: ERROR: Problem encountered: Unknown filesystems defined in kernel headers: + +Filesystem found in kernel header but not in filesystems-gperf.gperf: BCACHEFS_SUPER_MAGIC +``` + +Upstream: https://github.com/systemd/systemd/commit/201148b08de65de004d10679a8c3d201cc08fb28 +Signed-off-by: Jarkko Sakkinen +--- + src/basic/filesystems-gperf.gperf | 1 + + src/basic/missing_magic.h | 7 +++++++ + 2 files changed, 8 insertions(+) + +diff --git a/src/basic/filesystems-gperf.gperf b/src/basic/filesystems-gperf.gperf +index 1cd66b5a5f..c82fe98227 100644 +--- a/src/basic/filesystems-gperf.gperf ++++ b/src/basic/filesystems-gperf.gperf +@@ -28,6 +28,7 @@ afs, {AFS_FS_MAGIC, AFS_SUPER_MAGIC} + anon_inodefs, {ANON_INODE_FS_MAGIC} + autofs, {AUTOFS_SUPER_MAGIC} + balloon-kvm, {BALLOON_KVM_MAGIC} ++bcachefs, {BCACHEFS_SUPER_MAGIC} + bdev, {BDEVFS_MAGIC} + binder, {BINDERFS_SUPER_MAGIC} + binfmt_misc, {BINFMTFS_MAGIC} +diff --git a/src/basic/missing_magic.h b/src/basic/missing_magic.h +index 82d71c8ad1..b3d2ee9f57 100644 +--- a/src/basic/missing_magic.h ++++ b/src/basic/missing_magic.h +@@ -197,3 +197,10 @@ + #ifndef NTFS3_SUPER_MAGIC + #define NTFS3_SUPER_MAGIC 0x7366746e + #endif ++ ++/* Added in Linux commit e2f48c48090dea172c0c571101041de64634dae5. Remove when next sync'd */ ++#ifndef BCACHEFS_SUPER_MAGIC ++# define BCACHEFS_SUPER_MAGIC 0xca451a4e ++#else ++assert_cc(BCACHEFS_SUPER_MAGIC == 0xca451a4e) ++#endif +-- +2.45.1 +