chiark / gitweb /
[PATCH] udevd - kill the lockfile
authorkay.sievers@vrfy.org <kay.sievers@vrfy.org>
Fri, 6 Feb 2004 09:04:28 +0000 (01:04 -0800)
committerGreg KH <gregkh@suse.de>
Wed, 27 Apr 2005 04:32:26 +0000 (21:32 -0700)
Makefile
udev-remove.c
udevd.c

index 3557580..d3493f6 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -241,7 +241,6 @@ udev_version.h:
        @echo \#define UDEV_PERMISSION_FILE     \"$(configdir)\udev.permissions\" >> $@
        @echo \#define UDEV_BIN         \"$(DESTDIR)$(sbindir)/udev\" >> $@
        @echo \#define UDEVD_BIN        \"$(DESTDIR)$(sbindir)/udevd\" >> $@
-       @echo \#define UDEVD_LOCK       \"$(udevdir)/\.udevd.lock\" >> $@
 
 # config files automatically generated
 GEN_CONFIGS =  $(LOCAL_CFG_DIR)/udev.conf
index 9db63ed..c21938f 100644 (file)
@@ -34,7 +34,6 @@
 #include "logging.h"
 #include "namedev.h"
 #include "udevdb.h"
-#include "libsysfs/libsysfs.h"
 
 static int delete_path(char *path)
 {
diff --git a/udevd.c b/udevd.c
index 10d67f2..3ce8c8b 100644 (file)
--- a/udevd.c
+++ b/udevd.c
@@ -21,7 +21,6 @@
 
 #include <pthread.h>
 #include <stddef.h>
-#include <sys/types.h>
 #include <sys/wait.h>
 #include <signal.h>
 #include <unistd.h>
@@ -30,7 +29,6 @@
 #include <stdlib.h>
 #include <string.h>
 #include <time.h>
-#include <fcntl.h>
 #include <sys/types.h>
 #include <sys/socket.h>
 #include <sys/un.h>
@@ -324,7 +322,6 @@ static void sig_handler(int signum)
        switch (signum) {
                case SIGINT:
                case SIGTERM:
-                       unlink(UDEVD_LOCK);
                        exit(20 + signum);
                        break;
                default:
@@ -332,28 +329,6 @@ static void sig_handler(int signum)
        }
 }
 
-static int one_and_only(void)
-{
-       char string[50];
-       int lock_file;
-
-       lock_file = open(UDEVD_LOCK, O_RDWR | O_CREAT, 0x640);
-       if (lock_file < 0)
-               return -1;
-
-       /* see if we can lock */
-       if (lockf(lock_file, F_TLOCK, 0) < 0) {
-               dbg("file is already locked, exit");
-               close(lock_file);
-               return -1;
-       }
-
-       snprintf(string, sizeof(string), "%d\n", getpid());
-       write(lock_file, string, strlen(string));
-
-       return 0;
-}
-
 int main(int argc, char *argv[])
 {
        int ssock;
@@ -369,10 +344,6 @@ int main(int argc, char *argv[])
 
        init_logging("udevd");
 
-       /* only let one version of the daemon run at any one time */
-       if (one_and_only() != 0)
-               exit(0);
-
        signal(SIGINT, sig_handler);
        signal(SIGTERM, sig_handler);