X-Git-Url: https://git.proxmox.com/?p=pve-common.git;a=blobdiff_plain;f=data%2FPVE%2FDaemon.pm;h=94dedfc6794f44d50b0c853358cc7bb300646eb3;hp=6bd9c2966fd268af70ad76e5de8c954e03111bc6;hb=48876459cb9ffcace663ef0b3d7724f044fc1b12;hpb=c56111950d19a322262e0ea7b08856e2f0f9c35a diff --git a/data/PVE/Daemon.pm b/data/PVE/Daemon.pm index 6bd9c29..94dedfc 100644 --- a/data/PVE/Daemon.pm +++ b/data/PVE/Daemon.pm @@ -65,12 +65,15 @@ my $lockpidfile = sub { my $lkfn = $self->{pidfile} . ".lock"; + my $waittime = 0; + if (my $fd = $self->{env_pve_lock_fd}) { $self->{daemon_lock_fh} = IO::Handle->new_from_fd($fd, "a"); - + } else { + $waittime = 5; $self->{daemon_lock_fh} = IO::File->new(">>$lkfn"); } @@ -78,7 +81,7 @@ my $lockpidfile = sub { die "can't open lock '$lkfn' - $!\n"; } - for (my $i = 0; $i < 5; $i ++) { + for (my $i = 0; $i < $waittime; $i ++) { return if flock ($self->{daemon_lock_fh}, LOCK_EX|LOCK_NB); sleep(1); }