From: Kay Sievers Date: Thu, 14 Apr 2011 10:25:19 +0000 (+0200) Subject: udevd: do not nice processes X-Git-Tag: 174~191 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=02bf3e13e00157c23f77a89a35cb3e51543d336e udevd: do not nice processes --- diff --git a/libudev/libudev-private.h b/libudev/libudev-private.h index c57a89873..e82ca1d75 100644 --- a/libudev/libudev-private.h +++ b/libudev/libudev-private.h @@ -235,7 +235,7 @@ uid_t util_lookup_user(struct udev *udev, const char *user); gid_t util_lookup_group(struct udev *udev, const char *group); int util_run_program(struct udev *udev, const char *command, char **envp, char *result, size_t ressize, size_t *reslen, - const sigset_t *sigmask, bool reset_prio); + const sigset_t *sigmask); int util_resolve_subsys_kernel(struct udev *udev, const char *string, char *result, size_t maxsize, int read_value); unsigned long long usec_monotonic(void); diff --git a/libudev/libudev-util-private.c b/libudev/libudev-util-private.c index 073f7e2df..c7ad20eb7 100644 --- a/libudev/libudev-util-private.c +++ b/libudev/libudev-util-private.c @@ -261,7 +261,7 @@ int util_resolve_subsys_kernel(struct udev *udev, const char *string, int util_run_program(struct udev *udev, const char *command, char **envp, char *result, size_t ressize, size_t *reslen, - const sigset_t *sigmask, bool reset_prio) + const sigset_t *sigmask) { int status; int outpipe[2] = {-1, -1}; @@ -356,8 +356,6 @@ int util_run_program(struct udev *udev, const char *command, char **envp, if (sigmask) sigprocmask(SIG_SETMASK, sigmask, NULL); - if (reset_prio) - setpriority(PRIO_PROCESS, 0, 0); execve(argv[0], argv, envp); if (errno == ENOENT || errno == ENOTDIR) { diff --git a/udev/udev-event.c b/udev/udev-event.c index 63a8b3aa8..60d06aa08 100644 --- a/udev/udev-event.c +++ b/udev/udev-event.c @@ -688,7 +688,7 @@ int udev_event_execute_run(struct udev_event *event, const sigset_t *sigmask) info(event->udev, "delay execution of '%s'\n", program); sleep(event->exec_delay); } - if (util_run_program(event->udev, program, envp, NULL, 0, NULL, sigmask, true) != 0) { + if (util_run_program(event->udev, program, envp, NULL, 0, NULL, sigmask) != 0) { if (udev_list_entry_get_flags(list_entry)) err = -1; } diff --git a/udev/udev-rules.c b/udev/udev-rules.c index 805f449f2..bef5abab5 100644 --- a/udev/udev-rules.c +++ b/udev/udev-rules.c @@ -759,7 +759,7 @@ static int import_program_into_properties(struct udev_device *dev, const char *p char *line; envp = udev_device_get_properties_envp(dev); - if (util_run_program(udev, program, envp, result, sizeof(result), &reslen, NULL, false) != 0) + if (util_run_program(udev, program, envp, result, sizeof(result), &reslen, NULL) != 0) return -1; line = result; @@ -2297,7 +2297,7 @@ int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event program, &rules->buf[rule->rule.filename_off], rule->rule.filename_line); - if (util_run_program(event->udev, program, envp, result, sizeof(result), NULL, NULL, false) != 0) { + if (util_run_program(event->udev, program, envp, result, sizeof(result), NULL, NULL) != 0) { if (cur->key.op != OP_NOMATCH) goto nomatch; } else { diff --git a/udev/udevd.c b/udev/udevd.c index 051e8fe52..244780ab5 100644 --- a/udev/udevd.c +++ b/udev/udevd.c @@ -47,9 +47,6 @@ #include "udev.h" #include "sd-daemon.h" -#define UDEVD_PRIORITY -4 -#define UDEV_PRIORITY -2 - static bool debug; static void log_fn(struct udev *udev, int priority, @@ -267,7 +264,6 @@ static void worker_new(struct event *event) close(worker_watch[READ_END]); udev_log_close(); udev_log_init("udevd-work"); - setpriority(PRIO_PROCESS, 0, UDEV_PRIORITY); /* set signal handlers */ memset(&act, 0x00, sizeof(act)); @@ -1426,9 +1422,6 @@ int main(int argc, char *argv[]) if (fd > STDERR_FILENO) close(fd); - /* set scheduling priority for the main daemon process */ - setpriority(PRIO_PROCESS, 0, UDEVD_PRIORITY); - setsid(); f = fopen("/dev/kmsg", "w");