The patch titled kprobes: handle symbol resolution when <module:.symbol> is specified has been added to the -mm tree. Its filename is kprobes-handle-symbol-resolution-when-modulesymbol-is-specified.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: kprobes: handle symbol resolution when <module:.symbol> is specified From: Ananth N Mavinakayanahalli <ananth@xxxxxxxxxx> kallsyms_lookup_name() allows for <module:symbol> style specification for looking up symbol addresses. Handle the case where the user specifies <module:.symbol> on powerpc, given that 64-bit powerpc uses function descriptors. Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@xxxxxxxxx> Signed-off-by: Ananth N Mavinakayanahalli <ananth@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- include/asm-powerpc/kprobes.h | 15 +++++++++++---- 1 files changed, 11 insertions(+), 4 deletions(-) diff -puN include/asm-powerpc/kprobes.h~kprobes-handle-symbol-resolution-when-modulesymbol-is-specified include/asm-powerpc/kprobes.h --- a/include/asm-powerpc/kprobes.h~kprobes-handle-symbol-resolution-when-modulesymbol-is-specified +++ a/include/asm-powerpc/kprobes.h @@ -47,16 +47,23 @@ typedef unsigned int kprobe_opcode_t; /* * 64bit powerpc uses function descriptors. * Handle cases where: - * - User passes a <.symbol> - * - User passes a <symbol> + * - User passes a <.symbol> or <module:.symbol> + * - User passes a <symbol> or <module:symbol> * - User passes a non-existant symbol, kallsyms_lookup_name * returns 0. Don't deref the NULL pointer in that case */ #define kprobe_lookup_name(name, addr) \ { \ + char *colon; \ addr = (kprobe_opcode_t *)kallsyms_lookup_name(name); \ - if (!(name[0] == '.') && addr) \ - addr = *(kprobe_opcode_t **)addr; \ + if (addr) { \ + if ((colon = strchr(name, ':')) != NULL) { \ + colon++; \ + if (*colon != '\0' && colon[0] != '.') \ + addr = *(kprobe_opcode_t **)addr; \ + } else if (name[0] != '.') \ + addr = *(kprobe_opcode_t **)addr; \ + } \ } #define JPROBE_ENTRY(pentry) (kprobe_opcode_t *)((func_descr_t *)pentry) _ Patches currently in -mm which might be from ananth@xxxxxxxxxx are kprobes-make-kprobe-modules-more-portable.patch kprobes-make-kprobe-modules-more-portable-update.patch kprobes-handle-symbol-resolution-when-modulesymbol-is-specified.patch kprobes-handle-symbol-resolution-when-modulesymbol-is-specified-tidy.patch add-regs_return_value-helper.patch update-documentation-kprobestxt.patch update-documentation-kprobestxt-update.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html