[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090703070036.GC32687@elte.hu>
Date: Fri, 3 Jul 2009 09:00:36 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Catalin Marinas <catalin.marinas@....com>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
git-commits-head@...r.kernel.org
Subject: [PATCH] kmemleak: Mark nice +10
* Catalin Marinas <catalin.marinas@....com> wrote:
> On Wed, 2009-07-01 at 11:30 +0200, Ingo Molnar wrote:
> > * Catalin Marinas <catalin.marinas@....com> wrote:
> >
> > > > The minimal fix below removes scan_yield() and adds a
> > > > cond_resched() to the outmost (safe) place of the scanning
> > > > thread. This solves the regression.
> > >
> > > With CONFIG_PREEMPT disabled it won't reschedule during the bss
> > > scanning but I don't see this as a real issue (task stacks
> > > scanning probably takes longer anyway).
> >
> > Yeah. I suspect one more cond_resched() could be added - i just
> > didnt see an obvious place for it, given that scan_block() is being
> > called with asymetric held-locks contexts.
>
> Now that your patch was merged, I propose adding a few more
> cond_resched() calls, useful for the !PREEMPT case:
note, please also merge the renicing fix you sent. I have it tested
in tip:out-of-tree, attached below.
Ingo
>From f6a529517732a9d0e1ad0cd43ad7d2d96de4a4f5 Mon Sep 17 00:00:00 2001
From: Catalin Marinas <catalin.marinas@....com>
Date: Wed, 1 Jul 2009 10:18:57 +0100
Subject: [PATCH] kmemleak: Mark nice +10
> The background scanning thread could probably also be reniced
> to +10.
Signed-off-by: Ingo Molnar <mingo@...e.hu>
---
mm/kmemleak.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/mm/kmemleak.c b/mm/kmemleak.c
index e766e1d..6006553 100644
--- a/mm/kmemleak.c
+++ b/mm/kmemleak.c
@@ -1039,6 +1039,7 @@ static int kmemleak_scan_thread(void *arg)
static int first_run = 1;
pr_info("Automatic memory scanning thread started\n");
+ set_user_nice(current, 10);
/*
* Wait before the first scan to allow the system to fully initialize.
--
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