Your message dated Sat, 02 Feb 2019 19:33:44 +0000 with message-id <[email protected]> and subject line Bug#919616: Removed package(s) from unstable has caused the Debian Bug report #813959, regarding pxz: silent data corruption when write to temporary file fails (eg TMPDIR is full) 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 [email protected] immediately.) -- 813959: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=813959 Debian Bug Tracking System Contact [email protected] with problems
--- Begin Message ---Package: pxz Version: 4.999.99~beta5+gitfcfea93-1 Severity: important Dear Maintainer, pxz seems to ignore errors when writing to the temporary output files used by the parallel compression threads, and silently creates a corrupted output file. to reproduce the bug (by using an extremely small /tmp dir, and the bash builtin random number generator as a data source): # mkdir -p /tmp # mount -t tmpfs tmpfs /tmp/ -o size=512k # RANDOM=0; while [[ true ]]; do echo $RANDOM; done | dd bs=1M iflag=fullblock count=4 | ltrace -s0 -f -o trace pxz -T16 -f > out.bin.xz observe the corrupted output file: xz -l out.bin.xz xz: out.bin.xz: File format not recognized also observe the failed writes (where the number of bytes to write out is not equal to the number of bytes actually written): # awk '/fwrite/{ if(int($4) != int($7)){ print $0; } }' < trace 32159 fwrite(""..., 1, 61444, 0x1c380e0) = 32705 32159 fwrite(""..., 1, 61444, 0x1c380e0) = 4096 32159 fwrite(""..., 1, 61444, 0x1c380e0) = 4096 32159 fwrite(""..., 1, 61444, 0x1c380e0) = 4096 ... if you use strace instead of ltrace, you can see the actual ENOSPC error: # RANDOM=0; while [[ true ]]; do echo $RANDOM; done | dd bs=1M iflag=fullblock count=4 | strace -s0 -f -o trace pxz -T16 -f > out.bin.xz # grep 'write.* = -1' trace 32241 write(3, ""..., 28672) = -1 ENOSPC (No space left on device) 32241 write(3, ""..., 4096) = -1 ENOSPC (No space left on device) 32241 write(3, ""..., 4096) = -1 ENOSPC (No space left on device) 32241 write(3, ""..., 4096) = -1 ENOSPC (No space left on device) ... looking at pxz's source in the git repository, the error checking after some fwrite() calls is erroneous: https://github.com/jnovy/pxz/blob/fcfea93/pxz.c#L391 https://github.com/jnovy/pxz/blob/fcfea93/pxz.c#L408 if ( !fwrite(mo, 1, BUFFSIZE - strm.avail_out, ftemp[p]) ) { error(EXIT_FAILURE, errno, "writing to temp file failed"); } it should be at least if ( fwrite(mo, 1, BUFFSIZE - strm.avail_out, ftemp[p]) != BUFFSIZE - strm.avail_out ) { just like at other parts of the program. -- System Information: Debian Release: 8.0 APT prefers stable APT policy: (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores) Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Shell: /bin/sh linked to /bin/dash Init: sysvinit (via /sbin/init) Versions of packages pxz depends on: ii libc6 2.19-18+deb8u1 ii libgomp1 4.9.2-10 ii liblzma5 5.1.1alpha+20120614-2+b3 pxz recommends no packages. pxz suggests no packages. -- no debconf information -- mazsi ---------------------------------------------------------------- strawberry fields forever! [email protected] ----------------------------------------------------------------
--- End Message ---
--- Begin Message ---Version: 4.999.99~beta5+gitfcfea93-5+rm Dear submitter, as the package pxz has just been removed from the Debian archive unstable we hereby close the associated bug reports. We are sorry that we couldn't deal with your issue properly. For details on the removal, please see https://bugs.debian.org/919616 The version of this package that was in Debian prior to this removal can still be found using http://snapshot.debian.org/. This message was generated automatically; if you believe that there is a problem with it please contact the archive administrators by mailing [email protected]. Debian distribution maintenance software pp. Scott Kitterman (the ftpmaster behind the curtain)
--- End Message ---

