v4.14-rc1: BAD
  
ubuntu@ubuntu:~$ uname -r
4.14.0-041400rc1-generic
ubuntu@ubuntu:~$ sudo bash
root@ubuntu:~# mount /dev/sda /mnt 
root@ubuntu:~# grep sda /proc/mounts 
/dev/sda /mnt btrfs rw,relatime,space_cache,subvolid=5,subvol=/ 0 0
root@ubuntu:~# SPARSE="-S"; rm -rf /mnt/tmp; md5sum /usr/bin/python3.6; mkdir 
-p /mnt/tmp; cp -a /usr/bin/python3.6 /mnt/tmp; tar -C /mnt/tmp $SPARSE -czf 
/mnt/test.tgz .; tar $SPARSE -xzf /mnt/test.tgz -O | md5sum
e4121d2f3126b8c364bfa1aaa82371a3  /usr/bin/python3.6
0ce8c4139740198926273853defcb12a  -


v4.14 Final:  BAD

root@ubuntu:~# uname -r
4.14.0-041400-generic
root@ubuntu:~# mount /dev/sda /mnt
root@ubuntu:~# grep sda /proc/mounts 
/dev/sda /mnt btrfs rw,relatime,space_cache,subvolid=5,subvol=/ 0 0
root@ubuntu:~# SPARSE="-S"; rm -rf /mnt/tmp; md5sum /usr/bin/python3.6; mkdir 
-p /mnt/tmp; cp -a /usr/bin/python3.6 /mnt/tmp; tar -C /mnt/tmp $SPARSE -czf 
/mnt/test.tgz .; tar $SPARSE -xzf /mnt/test.tgz -O | md5sum
e4121d2f3126b8c364bfa1aaa82371a3  /usr/bin/python3.6
0ce8c4139740198926273853defcb12a  -


v4.15-rc1: BAD

root@ubuntu:~# uname -r
4.15.0-041500rc1-generic
root@ubuntu:~# mount /dev/sda /mnt
root@ubuntu:~# grep sda /proc/mounts 
/dev/sda /mnt btrfs rw,relatime,space_cache,subvolid=5,subvol=/ 0 0
root@ubuntu:~# SPARSE="-S"; rm -rf /mnt/tmp; md5sum /usr/bin/python3.6; mkdir 
-p /mnt/tmp; cp -a /usr/bin/python3.6 /mnt/tmp; tar -C /mnt/tmp $SPARSE -czf 
/mnt/test.tgz .; tar $SPARSE -xzf /mnt/test.tgz -O | md5sum
e4121d2f3126b8c364bfa1aaa82371a3  /usr/bin/python3.6
0ce8c4139740198926273853defcb12a  -


Bionic v4.15.0-12-generic: GOOD
root@ubuntu:~# uname -r
4.15.0-12-generic
root@ubuntu:~# mount /dev/sda /mnt
root@ubuntu:~# grep sda /proc/mounts 
/dev/sda /mnt btrfs rw,relatime,space_cache,subvolid=5,subvol=/ 0 0
root@ubuntu:~# SPARSE="-S"; rm -rf /mnt/tmp; md5sum /usr/bin/python3.6; mkdir 
-p /mnt/tmp; cp -a /usr/bin/python3.6 /mnt/tmp; tar -C /mnt/tmp $SPARSE -czf 
/mnt/test.tgz .; tar $SPARSE -xzf /mnt/test.tgz -O | md5sum
e4121d2f3126b8c364bfa1aaa82371a3  /usr/bin/python3.6
e4121d2f3126b8c364bfa1aaa82371a3  -

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to tar in Ubuntu.
https://bugs.launchpad.net/bugs/1757565

Title:
  btrfs and tar sparse truncate archives

Status in linux package in Ubuntu:
  Triaged
Status in tar package in Ubuntu:
  New
Status in linux source package in Artful:
  Triaged
Status in tar source package in Artful:
  New

Bug description:
  root@ubuntu:~# lsb_release -rd
  Description:  Ubuntu 17.10
  Release:      17.10
  root@ubuntu:~# apt-cache policy linux-image-virtual 
  linux-image-virtual:
    Installed: 4.13.0.37.40
    Candidate: 4.13.0.37.40
    Version table:
   *** 4.13.0.37.40 500
          500 http://archive.ubuntu.com/ubuntu artful-updates/main amd64 
Packages
          500 http://security.ubuntu.com/ubuntu artful-security/main amd64 
Packages
          100 /var/lib/dpkg/status
       4.13.0.16.17 500
          500 http://archive.ubuntu.com/ubuntu artful/main amd64 Packages

  3. Taring files into an archive are not truncated
  4. Files included in tar are filled with NULLs

  To reproduce, run an Artful system with one spare disk:

  - mkfs.btrfs -f /dev/sda
  - mount /dev/sda /mnt
  - grep sda /proc/mounts 
  /dev/sda /mnt btrfs rw,relatime,space_cache,subvolid=5,subvol=/ 0 0

  Then run this script which copies a 4MB binary to a btrfs filesystem,
  tars the directory up containing the binary; then untars to stdout and
  md5sum compares, showing it's different.

  % SPARSE="-S"; rm -rf /mnt/tmp; md5sum /usr/bin/python3.6; mkdir -p /mnt/tmp; 
cp -a /usr/bin/python3.6 /mnt/tmp; tar -C /mnt/tmp $SPARSE -czf /mnt/test.tgz 
.; tar $SPARSE -xzf /mnt/test.tgz -O | md5sum 
  e4121d2f3126b8c364bfa1aaa82371a3  /usr/bin/python3.6
  0ce8c4139740198926273853defcb12a  -

  And now without the sparse flag:

  # SPARSE=""; rm -rf /mnt/tmp; md5sum /usr/bin/python3.6; mkdir -p /mnt/tmp; 
cp -a /usr/bin/python3.6 /mnt/tmp; tar -C /mnt/tmp $SPARSE -czf /mnt/test.tgz 
.; tar $SPARSE -xzf /mnt/test.tgz -O | md5sum 
  e4121d2f3126b8c364bfa1aaa82371a3  /usr/bin/python3.6
  e4121d2f3126b8c364bfa1aaa82371a3  -

  
  This has been reported to both gnu-tar and linux-btrfs; I'm not aware of an 
actual fix.
  Note that Xenial 4.4 kernels do not exhibit this behavior, and Bionic 4.15 
kernel appears to be fixed as well though I'm not sure what the difference is.

  References:

  https://patchwork.kernel.org/patch/10151037/ 
  https://www.spinics.net/lists/linux-btrfs/msg56768.html 
  https://www.spinics.net/lists/linux-btrfs/msg57111.html

  ProblemType: Bug
  DistroRelease: Ubuntu 17.10
  Package: linux-image-virtual 4.13.0.37.40
  ProcVersionSignature: Ubuntu 4.13.0-37.42-generic 4.13.13
  Uname: Linux 4.13.0-37-generic x86_64
  AlsaDevices:
   total 0
   crw-rw---- 1 root audio 116,  1 Mar 21 22:55 seq
   crw-rw---- 1 root audio 116, 33 Mar 21 22:55 timer
  AplayDevices: Error: [Errno 2] No such file or directory: 'aplay': 'aplay'
  ApportVersion: 2.20.7-0ubuntu3.7
  Architecture: amd64
  ArecordDevices: Error: [Errno 2] No such file or directory: 'arecord': 
'arecord'
  AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/seq', 
'/dev/snd/timer'] failed with exit code 1:
  CRDA: N/A
  Date: Wed Mar 21 23:08:05 2018
  IwConfig: Error: [Errno 2] No such file or directory: 'iwconfig': 'iwconfig'
  Lsusb: Error: command ['lsusb'] failed with exit code 1:
  MachineType: QEMU Standard PC (i440FX + PIIX, 1996)
  PciMultimedia:
   
  ProcEnviron:
   TERM=xterm-256color
   PATH=(custom, no user)
   LANG=C.UTF-8
   SHELL=/bin/bash
  ProcFB:
   
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.13.0-37-generic 
root=LABEL=cloudimg-rootfs ro console=tty1 console=ttyS0
  RelatedPackageVersions:
   linux-restricted-modules-4.13.0-37-generic N/A
   linux-backports-modules-4.13.0-37-generic  N/A
   linux-firmware                             N/A
  RfKill: Error: [Errno 2] No such file or directory: 'rfkill': 'rfkill'
  SourcePackage: linux
  UpgradeStatus: No upgrade log present (probably fresh install)
  dmi.bios.date: 04/01/2014
  dmi.bios.vendor: SeaBIOS
  dmi.bios.version: Ubuntu-1.8.2-1ubuntu1
  dmi.chassis.type: 1
  dmi.chassis.vendor: QEMU
  dmi.chassis.version: pc-i440fx-xenial
  dmi.modalias: 
dmi:bvnSeaBIOS:bvrUbuntu-1.8.2-1ubuntu1:bd04/01/2014:svnQEMU:pnStandardPC(i440FX+PIIX,1996):pvrpc-i440fx-xenial:cvnQEMU:ct1:cvrpc-i440fx-xenial:
  dmi.product.name: Standard PC (i440FX + PIIX, 1996)
  dmi.product.version: pc-i440fx-xenial
  dmi.sys.vendor: QEMU

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1757565/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to