Messages in this thread Patch in this message | | | From | Alessio Igor Bogani <> | Subject | [PATCH] module: Use binary search in lookup_symbol() | Date | Mon, 16 May 2011 22:23:40 +0200 |
| |
This work was supported by a hardware donation from the CE Linux Forum.
Signed-off-by: Alessio Igor Bogani <abogani@kernel.org> --- kernel/module.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/kernel/module.c b/kernel/module.c index 6a34337..54355c5 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -2055,10 +2055,8 @@ static const struct kernel_symbol *lookup_symbol(const char *name, 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, -- 1.7.4.1
| |