diff --git a/sparsify-opaque-group-desc.patch b/sparsify-opaque-group-desc.patch new file mode 100644 index 0000000..2db49f9 --- /dev/null +++ b/sparsify-opaque-group-desc.patch @@ -0,0 +1,14 @@ +--- zerofree-1.0.1.old/sparsify.c 2012-01-16 14:15:53.752724537 +0000 ++++ zerofree-1.0.1/sparsify.c 2012-01-16 14:27:18.546285148 +0000 +@@ -43,8 +43,9 @@ + + if ( i == fs->blocksize && !p->dryrun ) { + ext2fs_unmark_block_bitmap(fs->block_map, *blocknr) ; +- group = ext2fs_group_of_blk(fs, *blocknr); +- fs->group_desc[group].bg_free_blocks_count++; ++ group = ext2fs_group_of_blk2(fs, *blocknr); ++ ext2fs_bg_free_blocks_count_set(fs, group, ++ ext2fs_bg_free_blocks_count(fs, group) + 1); + fs->super->s_free_blocks_count++ ; + /* the inode counts blocks of 512 bytes */ + p->inode->i_blocks -= fs->blocksize / 512 ; diff --git a/zerofree.spec b/zerofree.spec index 32e9f9d..c1b05b7 100644 --- a/zerofree.spec +++ b/zerofree.spec @@ -1,7 +1,7 @@ Summary: Utility to force unused ext2 inodes and blocks to zero Name: zerofree Version: 1.0.1 -Release: 9%{?dist} +Release: 10%{?dist} License: GPL+ Group: System Environment/Libraries @@ -16,6 +16,10 @@ Source2: http://intgat.tigress.co.uk/rmy/uml/index.html Source3: zerofree.sgml Source4: zerofree.8 +# e2fsprogs >= 1.42 prevents you from accessing the block group +# descriptor struct directly. +Patch1: sparsify-opaque-group-desc.patch + URL: http://intgat.tigress.co.uk/rmy/uml/ BuildRequires: e2fsprogs-devel @@ -40,6 +44,7 @@ should be careful. %setup -q cp -p %{SOURCE1} . cp -p %{SOURCE2} . +%patch1 -p1 %build @@ -68,6 +73,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Jan 16 2012 Richard W.M. Jones - 1.0.1-10 +- Patch sparsify to work with e2fsprogs >= 1.42. + * Sat Jan 14 2012 Fedora Release Engineering - 1.0.1-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild