[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20090320001134.GB18325@suse.de>
Date: Thu, 19 Mar 2009 17:11:34 -0700
From: Greg KH <gregkh@...e.de>
To: Arjan van de Ven <arjan@...radead.org>
Cc: linux-kernel@...r.kernel.org, akpm@...ux-foundation.org
Subject: Re: [PATCH] kobject: don't block for each kobject_uevent
On Thu, Mar 19, 2009 at 09:09:05AM -0700, Arjan van de Ven wrote:
> From d44701ae98a2c43a898dd7a7765d8894fd2e6caa Mon Sep 17 00:00:00 2001
> From: Arjan van de Ven <arjan@...ux.intel.com>
> Date: Thu, 19 Mar 2009 09:02:17 -0700
> Subject: [PATCH] kobject: don't block for each kobject_uevent
>
> Right now, the kobject_uevent code blocks for each uevent that's being generated,
> due to using (for hystoric reasons) UHM_WAIT_EXEC as flag to call_usermode_helper().
> Specifically, the effect is that each uevent that is being sent causes the code to
> wake up keventd, then block until keventd has processed the work. Needless to say,
> this happens many times during the system boot.
>
> This patches changes that to UHN_NO_WAIT (brilliant name for a constant btw) so
> that we only schedule the work to fire the uevent message, but do not wait for
> keventd to process the work.
>
> This removes one of the bottlenecks during boot; each one of them is only a small
> effect, but the sum of them does add up.
A faster/easier way to remove this issue is to just set the kernel
helper application to "" in the kernel config. That's what sane distros
do :)
Not to say this patch will not help things, just overall, it doesn't do
much, as your kernel shouldn't even be taking this codepath on modern
distros. If it is, I suggest filing a bug against that distro.
I'll queue it up.
thanks,
greg k-h
--
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