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
[email protected]
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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]