[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20070401223935.f73402a8.akpm@linux-foundation.org>
Date: Sun, 1 Apr 2007 22:39:35 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Jan Engelhardt <jengelh@...ux01.gwdg.de>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Chris Wright <chrisw@...s-sol.org>
Subject: Re: [PATCH 5/16] fix-kthread-niceness.diff
On Sun, 1 Apr 2007 20:14:40 +0200 (MEST) Jan Engelhardt <jengelh@...ux01.gwdg.de> wrote:
> Fix kevent's childs priority greedy-ness. Such tasks were always scheduled
> at nice level -5 and, at that time, udev stole us the CPU time with -5.
>
> Already posted at http://lkml.org/lkml/2005/1/10/85
>
> Signed-off-by: Jan Engelhardt <jengelh@....de>
> Cc: Chris Wright <chrisw@...s-sol.org>
>
> kmod.c | 1 +
> 1 file changed, 1 insertion(+)
>
> Index: linux-2.6.21-rc5/kernel/kmod.c
> ===================================================================
> --- linux-2.6.21-rc5.orig/kernel/kmod.c
> +++ linux-2.6.21-rc5/kernel/kmod.c
> @@ -165,6 +165,7 @@ static int ____call_usermodehelper(void
>
> /* We can run anywhere, unlike our parent keventd(). */
> set_cpus_allowed(current, CPU_MASK_ALL);
> + set_user_nice(current, 0);
>
> retval = -EPERM;
> if (current->fs->root)
> #<EOF>
-ETOOOBSCURE.
--- a/kernel/kmod.c~fix-kthread-nicenessdiff-fix
+++ a/kernel/kmod.c
@@ -163,6 +163,11 @@ static int ____call_usermodehelper(void
/* We can run anywhere, unlike our parent keventd(). */
set_cpus_allowed(current, CPU_MASK_ALL);
+
+ /*
+ * Our parent is keventd, which runs with elevated scheduling priority.
+ * Avoid propagating that into the userspace child.
+ */
set_user_nice(current, 0);
retval = -EPERM;
_
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists