diff options
| author | 2009-04-03 02:29:05 -0700 | |
|---|---|---|
| committer | 2009-04-03 02:29:05 -0700 | |
| commit | 65127d28e312bb6b38ce84a7bb71d762ef63ad4c (patch) | |
| tree | d5fdf52a2d0731f7fab0ce0ed394faac50b04fbc /kernel/exec_domain.c | |
| parent | xtensa: we don't need to include asm/io.h (diff) | |
| parent | Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 (diff) | |
| download | linux-dev-65127d28e312bb6b38ce84a7bb71d762ef63ad4c.tar.xz linux-dev-65127d28e312bb6b38ce84a7bb71d762ef63ad4c.zip | |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into merge
Diffstat (limited to 'kernel/exec_domain.c')
| -rw-r--r-- | kernel/exec_domain.c | 23 |
1 files changed, 1 insertions, 22 deletions
diff --git a/kernel/exec_domain.c b/kernel/exec_domain.c index 667c841c2952..c35452cadded 100644 --- a/kernel/exec_domain.c +++ b/kernel/exec_domain.c @@ -18,6 +18,7 @@ #include <linux/syscalls.h> #include <linux/sysctl.h> #include <linux/types.h> +#include <linux/fs_struct.h> static void default_handler(int, struct pt_regs *); @@ -145,28 +146,6 @@ __set_personality(u_long personality) return 0; } - if (atomic_read(¤t->fs->count) != 1) { - struct fs_struct *fsp, *ofsp; - - fsp = copy_fs_struct(current->fs); - if (fsp == NULL) { - module_put(ep->module); - return -ENOMEM; - } - - task_lock(current); - ofsp = current->fs; - current->fs = fsp; - task_unlock(current); - - put_fs_struct(ofsp); - } - - /* - * At that point we are guaranteed to be the sole owner of - * current->fs. - */ - current->personality = personality; oep = current_thread_info()->exec_domain; current_thread_info()->exec_domain = ep; |
