diff options
Diffstat (limited to 'core/udev/01-settle.patch')
-rw-r--r-- | core/udev/01-settle.patch | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/core/udev/01-settle.patch b/core/udev/01-settle.patch deleted file mode 100644 index 88e23d2a2..000000000 --- a/core/udev/01-settle.patch +++ /dev/null @@ -1,68 +0,0 @@ -From 2738ec2cf721db0c0deac2ba0abdc73cf7739e9f Mon Sep 17 00:00:00 2001 -From: Kay Sievers <kay.sievers@vrfy.org> -Date: Mon, 16 May 2011 13:17:48 +0200 -Subject: [PATCH 1/7] udevd: create queue file before daemonizing to reliably - block 'settle' - ---- - udev/udevd.c | 22 ++++++++++++---------- - 1 files changed, 12 insertions(+), 10 deletions(-) - -diff --git a/udev/udevd.c b/udev/udevd.c -index be4b071..258d787 100644 ---- a/udev/udevd.c -+++ b/udev/udevd.c -@@ -1408,6 +1408,13 @@ int main(int argc, char *argv[]) - - udev_monitor_set_receive_buffer_size(monitor, 128*1024*1024); - -+ /* create queue file before signalling 'ready', to make sure we block 'settle' */ -+ udev_queue_export = udev_queue_export_new(udev); -+ if (udev_queue_export == NULL) { -+ err(udev, "error creating queue file\n"); -+ goto exit; -+ } -+ - if (daemonize) { - pid_t pid; - int fd; -@@ -1421,8 +1428,8 @@ int main(int argc, char *argv[]) - rc = 4; - goto exit; - default: -- rc = 0; -- goto exit; -+ rc = EXIT_SUCCESS; -+ goto exit_keep_queue; - } - - setsid(); -@@ -1521,12 +1528,6 @@ int main(int argc, char *argv[]) - goto exit; - } - -- udev_queue_export = udev_queue_export_new(udev); -- if (udev_queue_export == NULL) { -- err(udev, "error creating queue file\n"); -- goto exit; -- } -- - memset(&ep_ctrl, 0, sizeof(struct epoll_event)); - ep_ctrl.events = EPOLLIN; - ep_ctrl.data.fd = fd_ctrl; -@@ -1708,9 +1709,10 @@ int main(int argc, char *argv[]) - } - } - -- udev_queue_export_cleanup(udev_queue_export); -- rc = 0; -+ rc = EXIT_SUCCESS; - exit: -+ udev_queue_export_cleanup(udev_queue_export); -+exit_keep_queue: - if (fd_ep >= 0) - close(fd_ep); - worker_list_cleanup(udev); --- -1.7.5.1 - |