On Mo, 12.10.20 14:42, Chris Murphy (lists@xxxxxxxxxxxxxxxxx) wrote: > > When precisely it returns success or failure is entirely up to the btrfs kernel > > code. systemd/udev doesn't have any control on that. The udev btrfs > > builtin is too trivial for that: it just calls the ioctl and that > > pretty much is it. > > What does this line mean? Does it mean the 'btrfs ready' ioctl has > been called at this moment and the device is ready? i.e. this specific > device is ready now, but not before now? > > [ 30.923721] kernel: BTRFS: device label BTRFS_RAID1_srv devid 1 > transid 60815 /dev/sdg scanned by systemd-udevd (710) It's generated by the kernel whenever userspace calls BTRFS_IOC_DEVICES_READY (also in a few other cases, e.g. if you never call that but mount the fs right-away). That ioctl is called by udev whenever a btrfs device pops up, and it basically tells the btrfs layer in the kernel to consider it, and then maybe assemble something from it. > Because I see six such lines for this file system before the mount > attempt. And four such lines after the mount attempt. If "all devices > ready" is not true until the last such line appears, then the mount is > happening too soon for some reason. It should be generate at least once for each device belonging to the file system. Because udev calls the ioctl whenever a btrfs fs pops up. But note that due to the initrd transitoin and retriggering of udev rules you might see this more than once per device. Lennart -- Lennart Poettering, Berlin _______________________________________________ systemd-devel mailing list systemd-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/systemd-devel