Bug#933764: buster-pu: package e2fsprogs/1.44.5-1+deb10u1
Control: tag -1 d-i
On Sat, Aug 03, 2019 at 10:45:32PM -0400, Theodore Y. Ts'o wrote:
> Thanks, Adam! My apologies for screwing up the first build/upload.
> I've just pushed e2fsprogs/1.44.5-1+deb10u1.
>
> I've attached the debdiff below.
>
> - Ted
>
> diff -Nru e2fsprogs-1.44.5/debian/changelog e2fsprogs-1.44.5/debian/changelog
> --- e2fsprogs-1.44.5/debian/changelog 2018-12-15 22:46:49.000000000 -0500
> +++ e2fsprogs-1.44.5/debian/changelog 2019-08-02 23:49:00.000000000 -0400
> @@ -1,3 +1,9 @@
> +e2fsprogs (1.44.5-1+deb10u1) buster; urgency=medium
> +
> + * Fix e4defrag crashes on 32-bit architectures (Closes: #920767)
> +
> + -- Theodore Y. Ts'o <tytso@mit.edu> Fri, 02 Aug 2019 23:49:00 -0400
> +
> e2fsprogs (1.44.5-1) unstable; urgency=medium
>
> * New upstream version
> diff -Nru e2fsprogs-1.44.5/debian/gbp.conf e2fsprogs-1.44.5/debian/gbp.conf
> --- e2fsprogs-1.44.5/debian/gbp.conf 2018-12-15 22:46:49.000000000 -0500
> +++ e2fsprogs-1.44.5/debian/gbp.conf 2019-08-02 23:49:00.000000000 -0400
> @@ -1,4 +1,4 @@
> [DEFAULT]
> pristine-tar = True
> upstream-tag='v%(version)s'
> -debian-branch=debian/master
> +debian-branch=debian/stable
> diff -Nru e2fsprogs-1.44.5/debian/.gitignore e2fsprogs-1.44.5/debian/.gitignore
> --- e2fsprogs-1.44.5/debian/.gitignore 1969-12-31 19:00:00.000000000 -0500
> +++ e2fsprogs-1.44.5/debian/.gitignore 2019-08-02 23:49:00.000000000 -0400
> @@ -0,0 +1 @@
> +!patches
> diff -Nru e2fsprogs-1.44.5/debian/patches/revert-e4defrag-use-64-bit-counters-to-t.patch e2fsprogs-1.44.5/debian/patches/revert-e4defrag-use-64-bit-counters-to-t.patch
> --- e2fsprogs-1.44.5/debian/patches/revert-e4defrag-use-64-bit-counters-to-t.patch 1969-12-31 19:00:00.000000000 -0500
> +++ e2fsprogs-1.44.5/debian/patches/revert-e4defrag-use-64-bit-counters-to-t.patch 2019-08-02 23:49:00.000000000 -0400
> @@ -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 -Nru e2fsprogs-1.44.5/debian/patches/series e2fsprogs-1.44.5/debian/patches/series
> --- e2fsprogs-1.44.5/debian/patches/series 1969-12-31 19:00:00.000000000 -0500
> +++ e2fsprogs-1.44.5/debian/patches/series 2019-08-02 23:49:00.000000000 -0400
> @@ -0,0 +1 @@
> +revert-e4defrag-use-64-bit-counters-to-t.patch
As there's a udeb involved I will just check with the d-i release managers
that this isn't an issue, though I can't see that fixing a crash would be
all that controversial.
Thanks,
--
Jonathan Wiltshire jmw@debian.org
Debian Developer http://people.debian.org/~jmw
4096R: 0xD3524C51 / 0A55 B7C5 1223 3942 86EC 74C3 5394 479D D352 4C51
Reply to: