mirror of
https://github.com/systemd/systemd.git
synced 2025-02-01 09:47:35 +03:00
udev: guard REREADPT by exclusive lock instead of O_EXCL
This commit is contained in:
parent
811ba7a0e2
commit
02ba8fb335
@ -755,9 +755,12 @@ static int synthesize_change(struct udev_device *dev) {
|
||||
* partition table is found, and we will not get an event for
|
||||
* the disk.
|
||||
*/
|
||||
fd = open(udev_device_get_devnode(dev), O_RDONLY|O_EXCL|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK);
|
||||
fd = open(udev_device_get_devnode(dev), O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK);
|
||||
if (fd >= 0) {
|
||||
r = flock(fd, LOCK_EX|LOCK_NB);
|
||||
if (r >= 0)
|
||||
r = ioctl(fd, BLKRRPART, 0);
|
||||
|
||||
close(fd);
|
||||
if (r >= 0)
|
||||
part_table_read = true;
|
||||
|
Loading…
x
Reference in New Issue
Block a user