On Tue, Mar 6, 2018 at 2:20 AM, <tang.junhui@xxxxxxxxxx> wrote: > Hello Ryan Harper >>> >>> Hello Ryan Harper >>>> >>>> This happens in the initramfs for kernels which include bcache module. After the rootfs is >>>> mounted and we've pivoted into system boot, then the udev cold-plug replay will repeat >>>> the disk add/change events >>> I run bcache in Redhat and Centos OS, I haven't met such issue. >>> I am wondering, if udev cold-plug needs replay, it should also >>> repeat the bcache change uevent which produced in bcache device >>> registering, if so, the /dev/bcache/{by-uuid, by-label} should be >>> also generated. >>>> > Could you tell me why disk add/change events would be replayed, but bcache change events > which produced in bcache device registering would not be replayed during udev cold-plug > replay? They are replayed; That is why we see the "device already registered" kernel message. The first time the events occur during boot while running initramfs. Then when the root filesystem is mounted and udevd is restarted and it replays (coldplug) the events. At the replay time, the bcache kernel module has already bound a backing device to a bcacheN device and as such, then it emits the message that the device is already registered and then does not emit the CHANGE event for the bcacheN. My patch enables bcache to emits a CHANGE event for a bcacheN device even if it is already registered as, at worst case the symlink was already created and in that case a new symlink pointing to the same device is recreated. Ryan -- To unsubscribe from this list: send the line "unsubscribe linux-bcache" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html