Message ID | 1305744925-8162-1-git-send-email-abogani@kernel.org |
---|---|
State | New, archived |
Headers | show |
Series |
|
Related | show |
On Wed, May 18, 2011 at 08:55:25PM +0200, Alessio Igor Bogani wrote: > Dear Mr. Bird, Dear Mr. Kroah-Hartman, > > Sorry for my very bad English. > > 2011/5/18 Tim Bird <tim.bird@am.sony.com>: > [...] > > Alessio - do you have any timings you can share for the speedup? > > You can find a little benchmark using ftrace at end of this email: > https://lkml.org/lkml/2011/4/5/341 > > > On 05/17/2011 04:22 PM, Greg KH wrote: > >> On Tue, May 17, 2011 at 10:56:03PM +0200, Alessio Igor Bogani wrote: > >>> This work was supported by a hardware donation from the CE Linux Forum. > [...] > >> Please explain why you make a change, not just who sponsored the change, > >> that's not very interesting to developers. > > You are right. I apologize. > > This patch is a missing piece (not essential it is only a further little > optimization) of this little patchset: > https://lkml.org/lkml/2011/4/16/48 > > Unfortunately I forgot to include this patch in the series (my first error) > then I avoided explaining the changes because I had thought that those were > already enough explained in the cover-letter of the patchset (my second error). > > Sorry for my mistakes. > > Is this better? > > Subject: [PATCH] module: Use binary search in lookup_symbol() > > The function is_exported() with its helper function lookup_symbol() are used to > verify if a provided symbol is effectively exported by the kernel or by the > modules. Now that both have their symbols sorted we can replace a linear search > with a binary search which provide a considerably speed-up. > > This work was supported by a hardware donation from the CE Linux Forum. > > Signed-off-by: Alessio Igor Bogani <abogani@kernel.org> Much better, I have no objection to this at all. Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Care to resend it without all the stuff above so someone (Rusty I guess) can apply it? thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Dear Mr. Kroah-Hartman, 2011/5/18 Greg KH <greg@kroah.com>: [...] > Care to resend it without all the stuff above so someone (Rusty I guess) > can apply it? Sure! It'll follow in few minutes. Thank you very much! Ciao, Alessio -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
diff --git a/kernel/module.c b/kernel/module.c index 1e2b657..795bdc7 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -2055,11 +2055,8 @@ static const struct kernel_symbol *lookup_symbol(const char *name, const struct kernel_symbol *start, const struct kernel_symbol *stop) { - const struct kernel_symbol *ks = start; - for (; ks < stop; ks++) - if (strcmp(ks->name, name) == 0) - return ks; - return NULL; + return bsearch(name, start, stop - start, + sizeof(struct kernel_symbol), cmp_name); } static int is_exported(const char *name, unsigned long value,