udev: guard REREADP logic with open(O_ECXL)

This commit is contained in:
Kay Sievers
2014-06-04 14:09:31 +02:00
parent ede344452a
commit 10fab50a30
+1 -1
View File
@@ -754,7 +754,7 @@ static int synthesize_change(struct udev_device *dev) {
* The kernel will send out a change event for the disk, and
* "remove/add" for all partitions.
*/
fd = open(udev_device_get_devnode(dev), O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK);
fd = open(udev_device_get_devnode(dev), O_RDONLY|O_EXCL|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK);
if (fd >= 0) {
r = ioctl(fd, BLKRRPART, 0);
close(fd);