lkml.org 
[lkml]   [2006]   [Aug]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 1/3] Kprobes: Make kprobe modules more portable
From
Date
On Tue, 2006-08-08 at 17:24 +0100, Christoph Hellwig wrote:
> On Mon, Aug 07, 2006 at 05:25:37PM +0530, Ananth N Mavinakayanahalli wrote:

... stuff deleted ...

>
> + /*
> + * If we have a symbol_name argument look it up,
> + * and add it to the address. That way the addr
> + * field can either be global or relative to a symbol.
> + */
> + if (p->symbol_name) {
> + if (p->addr)
> + return -EINVAL;
> + p->addr = kprobe_lookup_name(p->symbol_name) + p->offset;
> + }

What if kprobe_lookup_name() fails or if CONFIG_KALLSYMS isn't set? The
code following this might work, but the kprobe isn't going to be set at
the location that was intended.

Perhaps this needs something like:

if (p->symbol_name) {
if (p->addr)
return -EINVAL;
p->addr = kprobe_lookup_name(p->symbol_name) + p->offset;
if (p->addr == p->offset)
return -EINVAL;
}

--
David Smith
dsmith@redhat.com
Red Hat, Inc.
http://www.redhat.com
256.217.0141 (direct)
256.837.0057 (fax)


-
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/

\
 
 \ /
  Last update: 2006-08-09 18:07    [W:0.164 / U:0.244 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site