mirror of
https://github.com/torvalds/linux.git
synced 2024-11-23 04:31:50 +00:00
module: replace DEBUGP with pr_debug
Use more flexible pr_debug. This allows: echo "module module +p" > /dbg/dynamic_debug/control to turn on debug messages when needed. Signed-off-by: Jim Cromie <jim.cromie@gmail.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
parent
bd77c04772
commit
5e12416927
@ -62,12 +62,6 @@
|
||||
#define CREATE_TRACE_POINTS
|
||||
#include <trace/events/module.h>
|
||||
|
||||
#if 0
|
||||
#define DEBUGP printk
|
||||
#else
|
||||
#define DEBUGP(fmt , a...)
|
||||
#endif
|
||||
|
||||
#ifndef ARCH_SHF_SMALL
|
||||
#define ARCH_SHF_SMALL 0
|
||||
#endif
|
||||
@ -409,7 +403,7 @@ const struct kernel_symbol *find_symbol(const char *name,
|
||||
return fsa.sym;
|
||||
}
|
||||
|
||||
DEBUGP("Failed to find symbol %s\n", name);
|
||||
pr_debug("Failed to find symbol %s\n", name);
|
||||
return NULL;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(find_symbol);
|
||||
@ -599,11 +593,11 @@ static int already_uses(struct module *a, struct module *b)
|
||||
|
||||
list_for_each_entry(use, &b->source_list, source_list) {
|
||||
if (use->source == a) {
|
||||
DEBUGP("%s uses %s!\n", a->name, b->name);
|
||||
pr_debug("%s uses %s!\n", a->name, b->name);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
DEBUGP("%s does not use %s!\n", a->name, b->name);
|
||||
pr_debug("%s does not use %s!\n", a->name, b->name);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -618,7 +612,7 @@ static int add_module_usage(struct module *a, struct module *b)
|
||||
{
|
||||
struct module_use *use;
|
||||
|
||||
DEBUGP("Allocating new usage for %s.\n", a->name);
|
||||
pr_debug("Allocating new usage for %s.\n", a->name);
|
||||
use = kmalloc(sizeof(*use), GFP_ATOMIC);
|
||||
if (!use) {
|
||||
printk(KERN_WARNING "%s: out of memory loading\n", a->name);
|
||||
@ -662,7 +656,7 @@ static void module_unload_free(struct module *mod)
|
||||
mutex_lock(&module_mutex);
|
||||
list_for_each_entry_safe(use, tmp, &mod->target_list, target_list) {
|
||||
struct module *i = use->target;
|
||||
DEBUGP("%s unusing %s\n", mod->name, i->name);
|
||||
pr_debug("%s unusing %s\n", mod->name, i->name);
|
||||
module_put(i);
|
||||
list_del(&use->source_list);
|
||||
list_del(&use->target_list);
|
||||
@ -760,7 +754,7 @@ static void wait_for_zero_refcount(struct module *mod)
|
||||
/* Since we might sleep for some time, release the mutex first */
|
||||
mutex_unlock(&module_mutex);
|
||||
for (;;) {
|
||||
DEBUGP("Looking at refcount...\n");
|
||||
pr_debug("Looking at refcount...\n");
|
||||
set_current_state(TASK_UNINTERRUPTIBLE);
|
||||
if (module_refcount(mod) == 0)
|
||||
break;
|
||||
@ -803,7 +797,7 @@ SYSCALL_DEFINE2(delete_module, const char __user *, name_user,
|
||||
if (mod->state != MODULE_STATE_LIVE) {
|
||||
/* FIXME: if (force), slam module count and wake up
|
||||
waiter --RR */
|
||||
DEBUGP("%s already dying\n", mod->name);
|
||||
pr_debug("%s already dying\n", mod->name);
|
||||
ret = -EBUSY;
|
||||
goto out;
|
||||
}
|
||||
@ -1056,7 +1050,7 @@ static int check_version(Elf_Shdr *sechdrs,
|
||||
|
||||
if (versions[i].crc == maybe_relocated(*crc, crc_owner))
|
||||
return 1;
|
||||
DEBUGP("Found checksum %lX vs module %lX\n",
|
||||
pr_debug("Found checksum %lX vs module %lX\n",
|
||||
maybe_relocated(*crc, crc_owner), versions[i].crc);
|
||||
goto bad_version;
|
||||
}
|
||||
@ -1833,7 +1827,7 @@ static int simplify_symbols(struct module *mod, const struct load_info *info)
|
||||
case SHN_COMMON:
|
||||
/* We compiled with -fno-common. These are not
|
||||
supposed to happen. */
|
||||
DEBUGP("Common symbol: %s\n", name);
|
||||
pr_debug("Common symbol: %s\n", name);
|
||||
printk("%s: please compile with -fno-common\n",
|
||||
mod->name);
|
||||
ret = -ENOEXEC;
|
||||
@ -1841,7 +1835,7 @@ static int simplify_symbols(struct module *mod, const struct load_info *info)
|
||||
|
||||
case SHN_ABS:
|
||||
/* Don't need to do anything */
|
||||
DEBUGP("Absolute symbol: 0x%08lx\n",
|
||||
pr_debug("Absolute symbol: 0x%08lx\n",
|
||||
(long)sym[i].st_value);
|
||||
break;
|
||||
|
||||
@ -1965,7 +1959,7 @@ static void layout_sections(struct module *mod, struct load_info *info)
|
||||
for (i = 0; i < info->hdr->e_shnum; i++)
|
||||
info->sechdrs[i].sh_entsize = ~0UL;
|
||||
|
||||
DEBUGP("Core section allocation order:\n");
|
||||
pr_debug("Core section allocation order:\n");
|
||||
for (m = 0; m < ARRAY_SIZE(masks); ++m) {
|
||||
for (i = 0; i < info->hdr->e_shnum; ++i) {
|
||||
Elf_Shdr *s = &info->sechdrs[i];
|
||||
@ -1977,7 +1971,7 @@ static void layout_sections(struct module *mod, struct load_info *info)
|
||||
|| strstarts(sname, ".init"))
|
||||
continue;
|
||||
s->sh_entsize = get_offset(mod, &mod->core_size, s, i);
|
||||
DEBUGP("\t%s\n", name);
|
||||
pr_debug("\t%s\n", sname);
|
||||
}
|
||||
switch (m) {
|
||||
case 0: /* executable */
|
||||
@ -1994,7 +1988,7 @@ static void layout_sections(struct module *mod, struct load_info *info)
|
||||
}
|
||||
}
|
||||
|
||||
DEBUGP("Init section allocation order:\n");
|
||||
pr_debug("Init section allocation order:\n");
|
||||
for (m = 0; m < ARRAY_SIZE(masks); ++m) {
|
||||
for (i = 0; i < info->hdr->e_shnum; ++i) {
|
||||
Elf_Shdr *s = &info->sechdrs[i];
|
||||
@ -2007,7 +2001,7 @@ static void layout_sections(struct module *mod, struct load_info *info)
|
||||
continue;
|
||||
s->sh_entsize = (get_offset(mod, &mod->init_size, s, i)
|
||||
| INIT_OFFSET_MASK);
|
||||
DEBUGP("\t%s\n", sname);
|
||||
pr_debug("\t%s\n", sname);
|
||||
}
|
||||
switch (m) {
|
||||
case 0: /* executable */
|
||||
@ -2195,7 +2189,7 @@ static void layout_symtab(struct module *mod, struct load_info *info)
|
||||
symsect->sh_flags |= SHF_ALLOC;
|
||||
symsect->sh_entsize = get_offset(mod, &mod->init_size, symsect,
|
||||
info->index.sym) | INIT_OFFSET_MASK;
|
||||
DEBUGP("\t%s\n", info->secstrings + symsect->sh_name);
|
||||
pr_debug("\t%s\n", info->secstrings + symsect->sh_name);
|
||||
|
||||
src = (void *)info->hdr + symsect->sh_offset;
|
||||
nsrc = symsect->sh_size / sizeof(*src);
|
||||
@ -2216,7 +2210,7 @@ static void layout_symtab(struct module *mod, struct load_info *info)
|
||||
strsect->sh_flags |= SHF_ALLOC;
|
||||
strsect->sh_entsize = get_offset(mod, &mod->init_size, strsect,
|
||||
info->index.str) | INIT_OFFSET_MASK;
|
||||
DEBUGP("\t%s\n", info->secstrings + strsect->sh_name);
|
||||
pr_debug("\t%s\n", info->secstrings + strsect->sh_name);
|
||||
}
|
||||
|
||||
static void add_kallsyms(struct module *mod, const struct load_info *info)
|
||||
@ -2618,7 +2612,7 @@ static int move_module(struct module *mod, struct load_info *info)
|
||||
mod->module_init = ptr;
|
||||
|
||||
/* Transfer each section which specifies SHF_ALLOC */
|
||||
DEBUGP("final section addresses:\n");
|
||||
pr_debug("final section addresses:\n");
|
||||
for (i = 0; i < info->hdr->e_shnum; i++) {
|
||||
void *dest;
|
||||
Elf_Shdr *shdr = &info->sechdrs[i];
|
||||
@ -2636,8 +2630,8 @@ static int move_module(struct module *mod, struct load_info *info)
|
||||
memcpy(dest, (void *)shdr->sh_addr, shdr->sh_size);
|
||||
/* Update sh_addr to point to copy in image. */
|
||||
shdr->sh_addr = (unsigned long)dest;
|
||||
DEBUGP("\t0x%lx %s\n",
|
||||
shdr->sh_addr, info->secstrings + shdr->sh_name);
|
||||
pr_debug("\t0x%lx %s\n",
|
||||
(long)shdr->sh_addr, info->secstrings + shdr->sh_name);
|
||||
}
|
||||
|
||||
return 0;
|
||||
@ -2798,7 +2792,7 @@ static struct module *load_module(void __user *umod,
|
||||
struct module *mod;
|
||||
long err;
|
||||
|
||||
DEBUGP("load_module: umod=%p, len=%lu, uargs=%p\n",
|
||||
pr_debug("load_module: umod=%p, len=%lu, uargs=%p\n",
|
||||
umod, len, uargs);
|
||||
|
||||
/* Copy in the blobs from userspace, check they are vaguely sane. */
|
||||
|
Loading…
Reference in New Issue
Block a user