diff options
Diffstat (limited to 'fs/exec.c')
| -rw-r--r-- | fs/exec.c | 8 | 
1 files changed, 3 insertions, 5 deletions
diff --git a/fs/exec.c b/fs/exec.c index 3908544f5d1..0b931471d4f 100644 --- a/fs/exec.c +++ b/fs/exec.c @@ -81,15 +81,13 @@ static atomic_t call_count = ATOMIC_INIT(1);  static LIST_HEAD(formats);  static DEFINE_RWLOCK(binfmt_lock); -int __register_binfmt(struct linux_binfmt * fmt, int insert) +void __register_binfmt(struct linux_binfmt * fmt, int insert)  { -	if (!fmt) -		return -EINVAL; +	BUG_ON(!fmt);  	write_lock(&binfmt_lock);  	insert ? list_add(&fmt->lh, &formats) :  		 list_add_tail(&fmt->lh, &formats);  	write_unlock(&binfmt_lock); -	return 0;	  }  EXPORT_SYMBOL(__register_binfmt); @@ -1115,7 +1113,7 @@ int flush_old_exec(struct linux_binprm * bprm)  	bprm->mm = NULL;		/* We're using it now */  	set_fs(USER_DS); -	current->flags &= ~(PF_RANDOMIZE | PF_KTHREAD); +	current->flags &= ~(PF_RANDOMIZE | PF_FORKNOEXEC | PF_KTHREAD);  	flush_thread();  	current->personality &= ~bprm->per_clear;  |