Re: [patch 1/2] [BUG]kallsyms_lookup_name should return the textaddres

From: Paulo Marques
Date: Tue Jan 10 2006 - 15:44:00 EST


Anil S Keshavamurthy wrote:
[...]
The bug is kallsyms_lookup_name() -> module_kallsyms_lookup_name(mod, name)
search the name in the given module and returns the address when
name is matched. This address very well could be the address of 'U' type
which is different address than 't' type.
[...]

for (i = 0; i < mod->num_symtab; i++)
- if (strcmp(name, mod->strtab+mod->symtab[i].st_name) == 0)
+ if ((strcmp(name, mod->strtab+mod->symtab[i].st_name) == 0) &&
+ (mod->symtab[i].st_info == 't'))

This conflicts with a similar patch from Keith Owens earlier this week.

In his patch he did "mod->symtab[i].st_info != 'U'" instead of "mod->symtab[i].st_info == 't'".

I actually prefer Keith's version as it is the one which solves the bug by changing as least as possible the current behavior.

--
Paulo Marques - www.grupopie.com

Pointy-Haired Boss: I don't see anything that could stand in our way.
Dilbert: Sanity? Reality? The laws of physics?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/