I guess I don't understand why we see this in focal.  The two events in
Colin's trace always happen on any Ubuntu kernel.  We should see if we
can get another udev trace on bionic that captures both CHANGE events,
one will be from the bcache driver itself, and one is from the block
layer.  THe order and content of the change event matter.


Another thing I don't understand is why does udev drop the a symlink created by 
another rule?  This seems like the core issue.

Looking at systemd/udev source code; udev will do a
FOREACH_DEVICE_DEVLINK and check if the name is in the database file for
the device.  Its not clear to me yet how or when the database file get's
written.

The other question I have is:  if we reversed the order of the focal
CHANGE events, wouldn't we see just the opposite happen (the
driver=bcache change event would not have all of the devlinks from a
blkid probe) and all of the /dev/disk/by-{id, uuid, ...} get removed
when running

I think the patch you're proposing should work; but I don't think we've
root caused why the link gets removed in the first place.  Once we
understand the root cause, I think we can better understand what a fix
should look like.


Lastly, I think we might also test this out on mainline kernel; I wonder if our 
SAUCE patch for emitting the CACHED_UUID needs an update (or could be dropped).

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

Title:
  bcache by-uuid links disappear after mounting bcache0

Status in bcache-tools package in Ubuntu:
  In Progress
Status in linux package in Ubuntu:
  Invalid
Status in linux-signed package in Ubuntu:
  Invalid
Status in systemd package in Ubuntu:
  Invalid
Status in bcache-tools source package in Focal:
  New
Status in linux source package in Focal:
  Invalid
Status in linux-signed source package in Focal:
  New
Status in systemd source package in Focal:
  Invalid
Status in bcache-tools source package in Groovy:
  In Progress
Status in linux source package in Groovy:
  Invalid
Status in linux-signed source package in Groovy:
  Invalid
Status in systemd source package in Groovy:
  Invalid

Bug description:
  1.
  root@ubuntu:~# lsb_release -rd
  Description:  Ubuntu Focal Fossa (development branch)
  Release:      20.04

  2. 
  root@ubuntu:~# lsb_release -rd
  Description:  Ubuntu Focal Fossa (development branch)
  Release:      20.04
  root@ubuntu:~# apt-cache policy linux-image-virtual 
  linux-image-virtual:
    Installed: 5.4.0.12.15
    Candidate: 5.4.0.12.15
    Version table:
   *** 5.4.0.12.15 500
          500 http://archive.ubuntu.com/ubuntu focal/main amd64 Packages
          100 /var/lib/dpkg/status
  root@ubuntu:~# apt-cache policy linux-image-5.4.0-12-generic 
  linux-image-5.4.0-12-generic:
    Installed: 5.4.0-12.15
    Candidate: 5.4.0-12.15
    Version table:
   *** 5.4.0-12.15 500
          500 http://archive.ubuntu.com/ubuntu focal/main amd64 Packages
          100 /var/lib/dpkg/status

  3. mount /dev/bcache0 && ls -al /dev/bcache/by-uuid/
  + ls -al /dev/bcache/by-uuid/
  total 0
  drwxr-xr-x 2 root root 60 Feb  4 23:31 .
  drwxr-xr-x 3 root root 60 Feb  4 23:31 ..
  lrwxrwxrwx 1 root root 13 Feb  4 23:31 abdfd1f6-44ce-4266-91db-24667b9ae51a 
-> ../../bcache0

  4.
  root@ubuntu:~# ls -al /dev/bcache/by-uuid
  ls: cannot access '/dev/bcache/by-uuid': No such file or directory

  ProblemType: Bug
  DistroRelease: Ubuntu 20.04
  Package: linux-image-5.4.0-12-generic 5.4.0-12.15
  ProcVersionSignature: Ubuntu 5.4.0-12.15-generic 5.4.8
  Uname: Linux 5.4.0-12-generic x86_64
  ApportVersion: 2.20.11-0ubuntu16
  Architecture: amd64
  Date: Tue Feb  4 23:31:52 2020
  ProcEnviron:
   TERM=xterm-256color
   PATH=(custom, no user)
   LANG=C.UTF-8
   SHELL=/bin/bash
  SourcePackage: linux-signed-5.4
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/bcache-tools/+bug/1861941/+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