diff options
author | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-06-10 20:47:26 +0200 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-06-10 20:47:26 +0200 |
commit | f0cd91a68acdc9b49d7f6738b514a426da627649 (patch) | |
tree | 8ad73564015794197583b094217ae0a71e71e753 /kernel/module.c | |
parent | [SCSI] spi transport: don't allow dt to be set on SE or HVD buses (diff) | |
parent | Merge branch 'upstream-fixes' of master.kernel.org:/pub/scm/linux/kernel/git/... (diff) | |
download | linux-f0cd91a68acdc9b49d7f6738b514a426da627649.tar.xz linux-f0cd91a68acdc9b49d7f6738b514a426da627649.zip |
Merge ../linux-2.6
Diffstat (limited to 'kernel/module.c')
-rw-r--r-- | kernel/module.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/kernel/module.c b/kernel/module.c index d24deb0dbbc9..bbe04862e1b0 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -705,14 +705,14 @@ EXPORT_SYMBOL(__symbol_put); void symbol_put_addr(void *addr) { - unsigned long flags; + struct module *modaddr; - spin_lock_irqsave(&modlist_lock, flags); - if (!kernel_text_address((unsigned long)addr)) - BUG(); + if (core_kernel_text((unsigned long)addr)) + return; - module_put(module_text_address((unsigned long)addr)); - spin_unlock_irqrestore(&modlist_lock, flags); + if (!(modaddr = module_text_address((unsigned long)addr))) + BUG(); + module_put(modaddr); } EXPORT_SYMBOL_GPL(symbol_put_addr); |