Just always compile the code when the kernel is modular.
Convert load_nls to use try_then_request_module to tidy
up the code.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
Johannes Berg 2008-07-09 10:28:40 +02:00 коммит произвёл Rusty Russell
Родитель a65e5d782f
Коммит 5f4123be3c
3 изменённых файлов: 4 добавлений и 29 удалений

Просмотреть файл

@ -22,9 +22,6 @@
#include <linux/mutex.h>
#include <linux/backing-dev.h>
#ifdef CONFIG_KMOD
#include <linux/kmod.h>
#endif
#include "internal.h"
/*

Просмотреть файл

@ -50,15 +50,12 @@
#include <linux/cn_proc.h>
#include <linux/audit.h>
#include <linux/tracehook.h>
#include <linux/kmod.h>
#include <asm/uaccess.h>
#include <asm/mmu_context.h>
#include <asm/tlb.h>
#ifdef CONFIG_KMOD
#include <linux/kmod.h>
#endif
#ifdef __alpha__
/* for /sbin/loader handling in search_binary_handler() */
#include <linux/a.out.h>
@ -1247,8 +1244,8 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs)
read_unlock(&binfmt_lock);
if (retval != -ENOEXEC || bprm->mm == NULL) {
break;
#ifdef CONFIG_KMOD
}else{
#ifdef CONFIG_MODULES
} else {
#define printable(c) (((c)=='\t') || ((c)=='\n') || (0x20<=(c) && (c)<=0x7e))
if (printable(bprm->buf[0]) &&
printable(bprm->buf[1]) &&

Просмотреть файл

@ -13,9 +13,7 @@
#include <linux/nls.h>
#include <linux/kernel.h>
#include <linux/errno.h>
#ifdef CONFIG_KMOD
#include <linux/kmod.h>
#endif
#include <linux/spinlock.h>
static struct nls_table default_table;
@ -215,24 +213,7 @@ static struct nls_table *find_nls(char *charset)
struct nls_table *load_nls(char *charset)
{
struct nls_table *nls;
#ifdef CONFIG_KMOD
int ret;
#endif
nls = find_nls(charset);
if (nls)
return nls;
#ifdef CONFIG_KMOD
ret = request_module("nls_%s", charset);
if (ret != 0) {
printk("Unable to load NLS charset %s\n", charset);
return NULL;
}
nls = find_nls(charset);
#endif
return nls;
return try_then_request_module(find_nls(charset), "nls_%s", charset);
}
void unload_nls(struct nls_table *nls)