On Wed, Mar 24, 2021 at 12:37:03PM +0000, Gulam Mohamed wrote: > Hi All, > > We are facing a stale link (of the device) issue during the iscsi-logout > process if we use parted command just before the iscsi logout. Here are the > details: > > As part of iscsi logout, the partitions and the disk will be removed. The > parted command, used to list the partitions, will open the disk in RW mode > which results in systemd-udevd re-reading the partitions. This will trigger > the rescan partitions which will also delete and re-add the partitions. So, > both iscsi logout processing and the parted (through systemd-udevd) will be > involved in add/delete of partitions. In our case, the following sequence of > operations happened (the iscsi device is /dev/sdb with partition sdb1): > > 1. sdb1 was removed by PARTED > 2. kworker, as part of iscsi logout, couldn't remove sdb1 as it was > already removed by PARTED > 3. sdb1 was added by parted
After kworker is started for logout, I guess all IOs are supposed to be failed at that time, so just wondering why 'sdb1' is still added by parted(systemd-udev)? ioctl(BLKRRPART) needs to read partition table for adding back partitions, if IOs are failed by iscsi logout, I guess the issue can be avoided too? -- Ming