Your message dated Wed, 30 Nov 2011 01:03:55 +0000
with message-id <e1rvyaz-0004nv...@franck.debian.org>
and subject line Bug#644776: fixed in genext2fs 1.4.1-4
has caused the Debian Bug report #644776,
regarding genext2fs: segfaults on bigendian archs
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
644776: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=644776
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: genext2fs
Version: 1.4.1-2.2
Severity: serious
Tags: patch
Justification: FTBFS

Hello,

genext2fs currently FTBFS because it segfaults in the testsuite. This is
apparently due to a bug in the swapping code. The comment

This is benign as 0 means block 0 which has been zeroed out and
therefore points back to itself from any offset

apparently is wrong: in at least some of the tests, block 0 is actually
the superblock, which is not zero, but contains precious data!! The
attached patch fixes this by checkout for block number 0 (which means
that i_blocks indeed included the indirection blocks).

Samuel

-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 
'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.0.4 (SMP w/8 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages genext2fs depends on:
ii  libc6  2.13-18

genext2fs recommends no packages.

genext2fs suggests no packages.

-- no debconf information

-- 
Samuel Thibault <samuel.thiba...@fnac.net>
 SL> Au fait elle est mieux ma signature maintenant ?
 Oui. T'enlève encore les conneries que t'as écrit dedans et c'est bon.
 -+- JB in <http://neuneu.mine.nu> : Le neueuttoyage par le vide -+-
--- genext2fs.c.orig    2011-10-08 22:51:58.000000000 +0000
+++ genext2fs.c 2011-10-08 23:37:19.000000000 +0000
@@ -1779,7 +1779,8 @@
        assert(nod->i_block[EXT2_DIND_BLOCK] != 0);
        for(i = 0; i < BLOCKSIZE/4; i++)
                if(nblk > EXT2_IND_BLOCK + BLOCKSIZE/4 + (BLOCKSIZE/4)*i )
-                       swap_block(get_blk(fs, ((uint32*)get_blk(fs, 
nod->i_block[EXT2_DIND_BLOCK]))[i]));
+                       if (((uint32*)get_blk(fs, 
nod->i_block[EXT2_DIND_BLOCK]))[i])
+                               swap_block(get_blk(fs, ((uint32*)get_blk(fs, 
nod->i_block[EXT2_DIND_BLOCK]))[i]));
        swap_block(get_blk(fs, nod->i_block[EXT2_DIND_BLOCK]));
        if(nblk <= EXT2_IND_BLOCK + BLOCKSIZE/4 + BLOCKSIZE/4 * BLOCKSIZE/4)
                return;
@@ -1792,7 +1793,8 @@
                                     (BLOCKSIZE/4)*(BLOCKSIZE/4) + 
                                     i*(BLOCKSIZE/4)*(BLOCKSIZE/4) + 
                                     j*(BLOCKSIZE/4)) ) 
-                         swap_block(get_blk(fs,b2[j]));
+                         if (b2[j])
+                               swap_block(get_blk(fs,b2[j]));
                        else {
                          done = 1;
                          break;
@@ -1825,7 +1827,8 @@
        swap_block(get_blk(fs, nod->i_block[EXT2_DIND_BLOCK]));
        for(i = 0; i < BLOCKSIZE/4; i++)
                if(nblk > EXT2_IND_BLOCK + BLOCKSIZE/4 + (BLOCKSIZE/4)*i )
-                       swap_block(get_blk(fs, ((uint32*)get_blk(fs, 
nod->i_block[EXT2_DIND_BLOCK]))[i]));
+                       if (((uint32*)get_blk(fs, 
nod->i_block[EXT2_DIND_BLOCK]))[i])
+                               swap_block(get_blk(fs, ((uint32*)get_blk(fs, 
nod->i_block[EXT2_DIND_BLOCK]))[i]));
        if(nblk <= EXT2_IND_BLOCK + BLOCKSIZE/4 + BLOCKSIZE/4 * BLOCKSIZE/4)
                return;
        /* Adding support for triple indirection */
@@ -1839,7 +1842,8 @@
                                     (BLOCKSIZE/4)*(BLOCKSIZE/4) + 
                                     i*(BLOCKSIZE/4)*(BLOCKSIZE/4) + 
                                     j*(BLOCKSIZE/4)) ) 
-                         swap_block(get_blk(fs,b2[j]));
+                         if (b2[j])
+                               swap_block(get_blk(fs,b2[j]));
                        else {
                          done = 1;
                          break;

--- End Message ---
--- Begin Message ---
Source: genext2fs
Source-Version: 1.4.1-4

We believe that the bug you reported is fixed in the latest version of
genext2fs, which is due to be installed in the Debian FTP archive:

genext2fs_1.4.1-4.debian.tar.gz
  to main/g/genext2fs/genext2fs_1.4.1-4.debian.tar.gz
genext2fs_1.4.1-4.dsc
  to main/g/genext2fs/genext2fs_1.4.1-4.dsc
genext2fs_1.4.1-4_amd64.deb
  to main/g/genext2fs/genext2fs_1.4.1-4_amd64.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 644...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Jérémie Koenig <j...@jk.fr.eu.org> (supplier of updated genext2fs package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Tue, 29 Nov 2011 17:42:14 +0100
Source: genext2fs
Binary: genext2fs
Architecture: source amd64
Version: 1.4.1-4
Distribution: unstable
Urgency: low
Maintainer: Jérémie Koenig <j...@jk.fr.eu.org>
Changed-By: Jérémie Koenig <j...@jk.fr.eu.org>
Description: 
 genext2fs  - ext2 filesystem generator for embedded systems
Closes: 644776
Changes: 
 genext2fs (1.4.1-4) unstable; urgency=low
 .
   * debian/patches/byteswap_fix.diff: New patch by Samuel Thibault,
     fix a segfault in the byte swapping code on little-endian architectures
     (closes: 644776).
Checksums-Sha1: 
 b3d2409daa34b481a0d19ca5e88f5750e6666825 1248 genext2fs_1.4.1-4.dsc
 c66636b049bf031bc0d647b205e5f632007c6c32 11090 genext2fs_1.4.1-4.debian.tar.gz
 ce8e3b2aa1f566710b8c0b21194ed21089a844f1 25168 genext2fs_1.4.1-4_amd64.deb
Checksums-Sha256: 
 e84e6fdc01cb87cb499635b00bf0766294f4b5a06af438b931b6e6d93d077fba 1248 
genext2fs_1.4.1-4.dsc
 025260f48cb080265efb2af6e4acf0d2b65586bc479e2ccdaeee4db1766184b8 11090 
genext2fs_1.4.1-4.debian.tar.gz
 d14b9ee12970e64fba6dc3c15a5f8f0b2083fddb081afdb3ff259bf10f9bdf97 25168 
genext2fs_1.4.1-4_amd64.deb
Files: 
 f7ebfab9cefb743a9a75553906ace6f0 1248 admin optional genext2fs_1.4.1-4.dsc
 d0233745c5683f55275da9513862363d 11090 admin optional 
genext2fs_1.4.1-4.debian.tar.gz
 e26826b0e50a830f0d7b7664a516ee92 25168 admin optional 
genext2fs_1.4.1-4_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)

iF4EAREKAAYFAk7VfTgACgkQa6Lp0s/HjrMCawD/V0P7sLlzEkYJfl55UhhDMbG9
PHOk7l+IO2l7odH1W/MA/irgjWdWEatukN8e1hKq/58M/oCUzKMuh4MEw7N0s6c6
=AsK2
-----END PGP SIGNATURE-----



--- End Message ---

Reply via email to