OpenVZ Forum


Home » Mailing lists » Devel » [PATCH 5/5] Fix race between cat /proc/slab_allocators and rmmod
Re: [PATCH 5/5] Fix race between cat /proc/slab_allocators and rmmod [message #11727 is a reply to message #11683] Wed, 04 April 2007 00:08 Go to previous message
Andrew Morton is currently offline  Andrew Morton
Messages: 127
Registered: December 2005
Senior Member
On Mon, 2 Apr 2007 19:03:16 +0400
Alexey Dobriyan <adobriyan@sw.ru> wrote:

> +int lookup_module_symbol_attrs(unsigned long addr, unsigned long *size,
> + unsigned long *offset, char *modname, char *name)
> +{
> + struct module *mod;
> +
> + mutex_lock(&module_mutex);
> + list_for_each_entry(mod, &modules, list) {
> + if (within(addr, mod->module_init, mod->init_size) ||
> + within(addr, mod->module_core, mod->core_size)) {
> + const char *sym;
> +
> + sym = get_ksymbol(mod, addr, size, offset);
> + if (!sym)
> + goto out;
> + if (modname)
> + strlcpy(modname, mod->name, MODULE_NAME_LEN + 1);
> + if (name)
> + strlcpy(name, sym, KSYM_NAME_LEN + 1);
> + mutex_unlock(&module_mutex);
> + return 0;
> + }
> + }
> +out:
> + mutex_unlock(&module_mutex);
> + return -ERANGE;
> +}
> +

The functions lookup_symbol_name() and lookup_symbol_attrs() are quite
general and are likely to be used for other applications in the future.

Could we please pick better names for them? The names you've chosen are
far too general-sounding - we have a lot of different types of "symbol" in
the kernel! Perhaps module_lookup_symbol_attrs() and
kallsyms_lookup_symbol() and kallsyms_lookup_attrs() or something. But
something prefixed with kallsyms_ and module_.

Also, as these general-use functions are exported to all of vmlinux, a little
bit of documentation for them would be good.
 
Read Message
Read Message
Read Message
Read Message
Previous Topic: Grr sysfs networking changes...
Next Topic: Re: Re: [PATCH 5/5] Fix race between cat /proc/slab_allocators and rmmod
Goto Forum:
  


Current Time: Tue Sep 02 18:23:14 GMT 2025

Total time taken to generate the page: 0.13590 seconds