** Also affects: linux (Ubuntu Trusty)
   Importance: Undecided
       Status: New

** Changed in: linux (Ubuntu Trusty)
       Status: New => In Progress

** Changed in: linux (Ubuntu Trusty)
     Assignee: (unassigned) => Po-Hsu Lin (cypressyew)

** Changed in: linux (Ubuntu)
       Status: In Progress => Invalid

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1809868

Title:
  29d6d30f5c8aa58b04f40a58442df3bcaae5a1d5 in btrfs_kernel_fixes failed
  on T

Status in ubuntu-kernel-tests:
  In Progress
Status in linux package in Ubuntu:
  Invalid
Status in linux source package in Trusty:
  In Progress

Bug description:
  == Justification ==
  When doing an incremental send on a Btrfs filesystem, if we delete a 
directory that has N > 1 hardlinks for the same file and that file has the 
highest inode number inside the directory contents, an incremental send would 
send N times rmdir operation against the directory. This made the btrfs receive 
command fail on the second rmdir instruction, as the target directory didn't 
exist anymore.

  This issue can be triggered with 29d6d30f5c8aa58b04f40a58442df3bcaae5a1d5
  test in ubuntu_btrfs_kernel_fixes test suite.

  The test will fail with:
    "ERROR: rmdir o259-6-0 failed. No such file or directory" with Trusty 
kernel.

  Performing full device TRIM (1.00GiB) ...
  Turning ON incompat feature 'extref': increased hardlink limit per file to 
65536

  WARNING! - Btrfs v3.12 IS EXPERIMENTAL
  WARNING! - see http://btrfs.wiki.kernel.org before using

  fs created label (null) on /dev/loop0
   nodesize 16384 leafsize 16384 sectorsize 4096 size 1.00GiB
  Btrfs v3.12
  Create a readonly snapshot of 
'/tmp/mnt-29d6d30f5c8aa58b04f40a58442df3bcaae5a1d5' in 
'/tmp/mnt-29d6d30f5c8aa58b04f40a58442df3bcaae5a1d5/snap1'
  At subvol /tmp/mnt-29d6d30f5c8aa58b04f40a58442df3bcaae5a1d5/snap1
  Create a readonly snapshot of 
'/tmp/mnt-29d6d30f5c8aa58b04f40a58442df3bcaae5a1d5' in 
'/tmp/mnt-29d6d30f5c8aa58b04f40a58442df3bcaae5a1d5/snap2'
  At subvol /tmp/mnt-29d6d30f5c8aa58b04f40a58442df3bcaae5a1d5/snap2
  Performing full device TRIM (1.00GiB) ...
  Turning ON incompat feature 'extref': increased hardlink limit per file to 
65536

  WARNING! - Btrfs v3.12 IS EXPERIMENTAL
  WARNING! - see http://btrfs.wiki.kernel.org before using

  fs created label (null) on /dev/loop0
   nodesize 16384 leafsize 16384 sectorsize 4096 size 1.00GiB
  Btrfs v3.12
  At subvol snap1
  At snapshot snap2
  ERROR: rmdir o259-6-0 failed. No such file or directory
  incremental receive failed

  == Fix ==
  29d6d30f5 (Btrfs: send, don't send rmdir for same target multiple times)
  This patch needs to be backported for a variable difference in the 
process_recorded_refs function.

  In the Trusty tree:
  static int process_recorded_refs(struct send_ctx *sctx)

  In the patch:
  static int process_recorded_refs(struct send_ctx *sctx, int *pending_move)

  As the new *pending_move is unrelated here, we can just backport the
  patch with the same logic in this function.

  A test kernel could be found here:
  http://people.canonical.com/~phlin/kernel/lp-1809868-btrfs-2nd-rmdir/
  This test will pass with this kernel.

  == Regression potential ==
  Low,
  this patch just adds an extra check to skip unnecessary rmdir operations.

  ProblemType: Bug
  DistroRelease: Ubuntu 14.04
  Package: linux-image-3.13.0-164-generic 3.13.0-164.214
  ProcVersionSignature: User Name 3.13.0-164.214-generic 3.13.11-ckt39
  Uname: Linux 3.13.0-164-generic x86_64
  AlsaDevices:
   total 0
   crw-rw---- 1 root audio 116,  1 Dec 27 03:14 seq
   crw-rw---- 1 root audio 116, 33 Dec 27 03:14 timer
  AplayDevices: Error: [Errno 2] No such file or directory: 'aplay'
  ApportVersion: 2.14.1-0ubuntu3.29
  Architecture: amd64
  ArecordDevices: Error: [Errno 2] No such file or directory: 'arecord'
  AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/seq', 
'/dev/snd/timer'] failed with exit code 1:
  CurrentDmesg:
   [13958.095408] btrfs: device fsid da34075a-4eaa-4e50-aeea-02206e8c8e44 devid 
1 transid 4 /dev/loop0
   [13958.102670] btrfs: device fsid da34075a-4eaa-4e50-aeea-02206e8c8e44 devid 
1 transid 4 /dev/loop0
   [13958.105901] btrfs: device fsid da34075a-4eaa-4e50-aeea-02206e8c8e44 devid 
1 transid 4 /dev/loop0
   [13958.106099] btrfs: disk space caching is enabled
   [13958.107771] btrfs: creating UUID tree
  Date: Thu Dec 27 07:11:58 2018
  IwConfig: Error: [Errno 2] No such file or directory: 'iwconfig'
  Lsusb: Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
  MachineType: QEMU Standard PC (i440FX + PIIX, 1996)
  PciMultimedia:

  ProcFB: 0 cirrusdrmfb
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.13.0-164-generic 
root=UUID=576666e8-9e7f-40ee-934e-f1dce18323e5 ro console=ttyS0,115200n8
  RelatedPackageVersions:
   linux-restricted-modules-3.13.0-164-generic N/A
   linux-backports-modules-3.13.0-164-generic  N/A
   linux-firmware                              1.127.24
  RfKill: Error: [Errno 2] No such file or directory: 'rfkill'
  SourcePackage: linux
  UpgradeStatus: No upgrade log present (probably fresh install)
  WifiSyslog:

  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-kernel-tests/+bug/1809868/+subscriptions

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

Reply via email to