diff --git a/conf/64-btrfs.rules b/conf/64-btrfs.rules index 552773d5f..aad29afb8 100644 --- a/conf/64-btrfs.rules +++ b/conf/64-btrfs.rules @@ -1 +1,17 @@ -RUN+="/bin/mknod /dev/btrfs-control c 10 234" +# do not edit this file, it will be overwritten on update + +SUBSYSTEM!="block", GOTO="btrfs_end" +ACTION=="remove", GOTO="btrfs_end" +ENV{ID_FS_TYPE}!="btrfs", GOTO="btrfs_end" +ENV{SYSTEMD_READY}=="0", GOTO="btrfs_end" + +# let the kernel know about this btrfs filesystem, and check if it is complete +IMPORT{builtin}="btrfs ready $devnode" + +# mark the device as not ready to be used by the system +ENV{ID_BTRFS_READY}=="0", ENV{SYSTEMD_READY}="0" + +# reconsider pending devices in case when multidevice volume awaits +ENV{ID_BTRFS_READY}=="1", RUN+="@rootbindir@/udevadm trigger -s block -p ID_BTRFS_READY=0" + +LABEL="btrfs_end"