* Andrew Morton <[email protected]> wrote:
> On Mon, 29 May 2006 23:23:33 +0200
> Ingo Molnar <[email protected]> wrote:
>
> > +/*
> > + * Is this a valid module address? We don't grab the lock.
> > + */
> > +int __module_address(unsigned long addr)
> > +{
> > + struct module *mod;
> > +
> > + list_for_each_entry(mod, &modules, list)
> > + if (within(addr, mod->module_core, mod->core_size))
> > + return 1;
> > + return 0;
> > +}
>
> Returns a boolean.
>
> > /* Is this a valid kernel address? We don't grab the lock: we are oopsing. */
> > struct module *__module_text_address(unsigned long addr)
>
> But this returns a module*.
>
> I'd suggest that __module_address() should do the same thing, from an
> API neatness POV. Although perhaps that's mot very useful if we
> didn't take a ref on the returned object (but module_text_address()
> doesn't either).
>
> Also, the name's a bit misleading - it sounds like it returns the
> address of a module or something. __module_any_address() would be
> better, perhaps?
yeah. I changed this to __is_module_address().
> Also, how come this doesn't need modlist_lock()?
indeed. I originally avoided taking that lock due to recursion worries -
but in fact we use this only in sections that initialize a lock - hence
no recursion problems.
i fixed this and renamed the function to is_module_address() :)
Ingo
-
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]