Package: fsarchiver
Version: 0.8.6-2
Severity: normal
Tags: patch
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu lunar ubuntu-patch

Dear Maintainer,

Tests for fsarchiver are failing with the new version of e2fsprogs
(1.47), which is causing it to be unable to migrate in Ubuntu. There is
an upstream commit to fix compatibility with newer e2fsprogs, so this
patch will be able to be dropped when that upstream fix is eventually
released.

In Ubuntu, the attached patch was applied to achieve the following:


  * Fix compatibility with new e2fsprogs


Thanks for considering the patch.


-- System Information:
Debian Release: bookworm/sid
  APT prefers lunar
  APT policy: (500, 'lunar')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.1.0-16-generic (SMP w/32 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
diff -Nru 
fsarchiver-0.8.6/debian/patches/0001-fix-e2fsprogs-compatibility.patch 
fsarchiver-0.8.6/debian/patches/0001-fix-e2fsprogs-compatibility.patch
--- fsarchiver-0.8.6/debian/patches/0001-fix-e2fsprogs-compatibility.patch      
1969-12-31 19:00:00.000000000 -0500
+++ fsarchiver-0.8.6/debian/patches/0001-fix-e2fsprogs-compatibility.patch      
2023-03-16 13:41:03.000000000 -0400
@@ -0,0 +1,70 @@
+Description: Add EXT4 orphan_file feature
+ Since kernel 5.15 and e2fsprogs 1.47.0 there is a new feature in
+ EXT4 for orphan_file. fasrchiver needed an update to pass compatibility
+ checks for this feature
+Origin: upstream, 
https://github.com/fdupoux/fsarchiver/commit/478fa089521b76064d006dd7241dd0b1dc28d0d8
+Applied-Upstream: 
https://github.com/fdupoux/fsarchiver/commit/478fa089521b76064d006dd7241dd0b1dc28d0d8
+Last-Update: 2023-03-17
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: fsarchiver-0.8.6/src/fs_ext2.c
+===================================================================
+--- fsarchiver-0.8.6.orig/src/fs_ext2.c
++++ fsarchiver-0.8.6/src/fs_ext2.c
+@@ -59,7 +59,7 @@
+ // us and therefore is not preserved (i.e. present in 
FSA_FEATURE_INCOMPAT_SUPP but not listed
+ // below). Users can easily enable it with tune2fs if desired.
+ //
+-struct s_features mkfeatures[] = // cf e2fsprogs-1.46.0/lib/e2p/feature.c
++struct s_features mkfeatures[] = // cf e2fsprogs-1.47.0/lib/e2p/feature.c
+ {
+     {"has_journal",   FSA_EXT3_FEATURE_COMPAT_HAS_JOURNAL,      
E2P_FEATURE_COMPAT,      EXTFSTYPE_EXT3, PROGVER(1,39,0)},
+     {"ext_attr",      FSA_EXT2_FEATURE_COMPAT_EXT_ATTR,         
E2P_FEATURE_COMPAT,      EXTFSTYPE_EXT2, PROGVER(1,40,5)},
+@@ -67,6 +67,7 @@
+     {"dir_index",     FSA_EXT2_FEATURE_COMPAT_DIR_INDEX,        
E2P_FEATURE_COMPAT,      EXTFSTYPE_EXT2, PROGVER(1,33,0)},
+     {"sparse_super2", FSA_EXT4_FEATURE_COMPAT_SPARSE_SUPER2,    
E2P_FEATURE_COMPAT,      EXTFSTYPE_EXT4, PROGVER(1,42,10)},
+     {"fast_commit",   FSA_EXT4_FEATURE_COMPAT_FAST_COMMIT,      
E2P_FEATURE_COMPAT,      EXTFSTYPE_EXT4, PROGVER(1,46,0)},
++    {"orphan_file",   FSA_EXT4_FEATURE_COMPAT_ORPHAN_FILE,      
E2P_FEATURE_COMPAT,      EXTFSTYPE_EXT4, PROGVER(1,47,0)},
+     {"filetype",      FSA_EXT2_FEATURE_INCOMPAT_FILETYPE,       
E2P_FEATURE_INCOMPAT,    EXTFSTYPE_EXT2, PROGVER(1,16,0)},
+     {"extent",        FSA_EXT4_FEATURE_INCOMPAT_EXTENTS,        
E2P_FEATURE_INCOMPAT,    EXTFSTYPE_EXT4, PROGVER(1,41,0)},
+     {"journal_dev",   FSA_EXT3_FEATURE_INCOMPAT_JOURNAL_DEV,    
E2P_FEATURE_INCOMPAT,    EXTFSTYPE_EXT3, PROGVER(1,39,0)},
+Index: fsarchiver-0.8.6/src/fs_ext2.h
+===================================================================
+--- fsarchiver-0.8.6.orig/src/fs_ext2.h
++++ fsarchiver-0.8.6/src/fs_ext2.h
+@@ -49,6 +49,7 @@
+ #define FSA_EXT4_FEATURE_COMPAT_SPARSE_SUPER2      0x0200
+ #define FSA_EXT4_FEATURE_COMPAT_FAST_COMMIT        0x0400
+ #define FSA_EXT4_FEATURE_COMPAT_STABLE_INODES      0x0800
++#define FSA_EXT4_FEATURE_COMPAT_ORPHAN_FILE        0x1000
+ 
+ /* for s_feature_ro_compat */
+ #define FSA_EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER    0x0001
+@@ -63,6 +64,7 @@
+ #define FSA_EXT4_FEATURE_RO_COMPAT_METADATA_CSUM   0x0400
+ #define FSA_EXT4_FEATURE_RO_COMPAT_READONLY        0x1000
+ #define FSA_EXT4_FEATURE_RO_COMPAT_PROJECT         0x2000
++#define FSA_EXT4_FEATURE_RO_COMPAT_ORPHAN_PRESENT  0x10000
+ 
+ /* for s_feature_incompat */
+ #define FSA_EXT2_FEATURE_INCOMPAT_FILETYPE         0x0002
+@@ -109,7 +111,8 @@
+                                                          
FSA_EXT2_FEATURE_COMPAT_DIR_INDEX|\
+                                                          
FSA_EXT2_FEATURE_COMPAT_LAZY_BG|\
+                                                          
FSA_EXT4_FEATURE_COMPAT_SPARSE_SUPER2|\
+-                                                         
FSA_EXT4_FEATURE_COMPAT_FAST_COMMIT)
++                                                         
FSA_EXT4_FEATURE_COMPAT_FAST_COMMIT|\
++                                                         
FSA_EXT4_FEATURE_COMPAT_ORPHAN_FILE)
+ #define FSA_FEATURE_RO_COMPAT_SUPP                 
(u64)(FSA_EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER|\
+                                                          
FSA_EXT2_FEATURE_RO_COMPAT_LARGE_FILE|\
+                                                          
FSA_EXT2_FEATURE_RO_COMPAT_BTREE_DIR|\
+@@ -121,7 +124,8 @@
+                                                          
FSA_EXT4_FEATURE_RO_COMPAT_BIGALLOC|\
+                                                          
FSA_EXT4_FEATURE_RO_COMPAT_METADATA_CSUM|\
+                                                          
FSA_EXT4_FEATURE_RO_COMPAT_READONLY|\
+-                                                         
FSA_EXT4_FEATURE_RO_COMPAT_PROJECT)
++                                                         
FSA_EXT4_FEATURE_RO_COMPAT_PROJECT|\
++                                                         
FSA_EXT4_FEATURE_RO_COMPAT_ORPHAN_PRESENT)
+ #define FSA_FEATURE_INCOMPAT_SUPP                  
(u64)(FSA_EXT2_FEATURE_INCOMPAT_FILETYPE|\
+                                                          
FSA_EXT3_FEATURE_INCOMPAT_RECOVER|\
+                                                          
FSA_EXT3_FEATURE_INCOMPAT_JOURNAL_DEV|\
diff -Nru fsarchiver-0.8.6/debian/patches/series 
fsarchiver-0.8.6/debian/patches/series
--- fsarchiver-0.8.6/debian/patches/series      1969-12-31 19:00:00.000000000 
-0500
+++ fsarchiver-0.8.6/debian/patches/series      2023-03-16 13:41:03.000000000 
-0400
@@ -0,0 +1 @@
+0001-fix-e2fsprogs-compatibility.patch

Reply via email to