]> git.ipfire.org Git - thirdparty/e2fsprogs.git/commitdiff
Commit Debian 3.0 (quilt) metadata
authorTheodore Ts'o <tytso@mit.edu>
Sat, 3 Aug 2019 04:11:37 +0000 (00:11 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Sat, 3 Aug 2019 04:11:37 +0000 (00:11 -0400)
[dgit (9.3) quilt-fixup]

debian/patches/revert-e4defrag-use-64-bit-counters-to-t.patch [new file with mode: 0644]
debian/patches/series [new file with mode: 0644]

diff --git a/debian/patches/revert-e4defrag-use-64-bit-counters-to-t.patch b/debian/patches/revert-e4defrag-use-64-bit-counters-to-t.patch
new file mode 100644 (file)
index 0000000..31e17d6
--- /dev/null
@@ -0,0 +1,66 @@
+From: Theodore Ts'o <tytso@mit.edu>
+Date: Thu, 3 Jan 2019 22:27:37 -0500
+X-Dgit-Generated: 1.44.5-1 622e62942104d357912480e49c5b5524588cf45f
+Subject: Revert "e4defrag: use 64-bit counters to track # files defragged"
+
+This reverts commit 3293ea9ecbe1d622f9cf6c41d705d82fbae6a3e3.
+
+This wasn't really the right fix, since there can't be more than 2**32
+files in a file system.  The real issue is when the number of files in
+a directory change during the e4defrag run.
+
+Signed-off-by: Theodore Ts'o <tytso@mit.edu>
+
+---
+
+--- e2fsprogs-1.44.5.orig/misc/e4defrag.c
++++ e2fsprogs-1.44.5/misc/e4defrag.c
+@@ -169,13 +169,13 @@ static int       block_size;
+ static int    extents_before_defrag;
+ static int    extents_after_defrag;
+ static int    mode_flag;
+-static uid_t  current_uid;
+-static unsigned long long     defraged_file_count;
+-static unsigned long long     frag_files_before_defrag;
+-static unsigned long long     frag_files_after_defrag;
+-static unsigned long long     regular_count;
+-static unsigned long long     succeed_cnt;
+-static unsigned long long     total_count;
++static unsigned int   current_uid;
++static unsigned int   defraged_file_count;
++static unsigned int   frag_files_before_defrag;
++static unsigned int   frag_files_after_defrag;
++static unsigned int   regular_count;
++static unsigned int   succeed_cnt;
++static unsigned int   total_count;
+ static __u8 log_groups_per_flex;
+ static __u32 blocks_per_group;
+ static __u32 feature_incompat;
+@@ -1912,9 +1912,9 @@ int main(int argc, char *argv[])
+                       }
+                       /* File tree walk */
+                       nftw64(dir_name, file_defrag, FTW_OPEN_FD, flags);
+-                      printf("\n\tSuccess:\t\t\t[ %llu/%llu ]\n",
+-                             succeed_cnt, total_count);
+-                      printf("\tFailure:\t\t\t[ %llu/%llu ]\n",
++                      printf("\n\tSuccess:\t\t\t[ %u/%u ]\n", succeed_cnt,
++                              total_count);
++                      printf("\tFailure:\t\t\t[ %u/%u ]\n",
+                               total_count - succeed_cnt, total_count);
+                       if (mode_flag & DETAIL) {
+                               printf("\tTotal extents:\t\t\t%4d->%d\n",
+@@ -1923,10 +1923,12 @@ int main(int argc, char *argv[])
+                               printf("\tFragmented percentage:\t\t"
+                                       "%3llu%%->%llu%%\n",
+                                       !regular_count ? 0 :
+-                                      (frag_files_before_defrag * 100) /
++                                      ((unsigned long long)
++                                      frag_files_before_defrag * 100) /
+                                       regular_count,
+                                       !regular_count ? 0 :
+-                                      (frag_files_after_defrag * 100) /
++                                      ((unsigned long long)
++                                      frag_files_after_defrag * 100) /
+                                       regular_count);
+                       }
+                       break;
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644 (file)
index 0000000..7640555
--- /dev/null
@@ -0,0 +1 @@
+revert-e4defrag-use-64-bit-counters-to-t.patch