aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
Diffstat (limited to 'fs')
-rw-r--r--fs/exec.c13
-rw-r--r--fs/inode.c2
2 files changed, 10 insertions, 5 deletions
diff --git a/fs/exec.c b/fs/exec.c
index 6d2b6f936858..56536ad0e7cc 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -19,7 +19,7 @@
19 * current->executable is only used by the procfs. This allows a dispatch 19 * current->executable is only used by the procfs. This allows a dispatch
20 * table to check for several different types of binary formats. We keep 20 * table to check for several different types of binary formats. We keep
21 * trying until we recognize the file or we run out of supported binary 21 * trying until we recognize the file or we run out of supported binary
22 * formats. 22 * formats.
23 */ 23 */
24 24
25#include <linux/slab.h> 25#include <linux/slab.h>
@@ -55,6 +55,8 @@
55#include <linux/fs_struct.h> 55#include <linux/fs_struct.h>
56#include <linux/pipe_fs_i.h> 56#include <linux/pipe_fs_i.h>
57 57
58#include <litmus/litmus.h>
59
58#include <asm/uaccess.h> 60#include <asm/uaccess.h>
59#include <asm/mmu_context.h> 61#include <asm/mmu_context.h>
60#include <asm/tlb.h> 62#include <asm/tlb.h>
@@ -78,7 +80,7 @@ int __register_binfmt(struct linux_binfmt * fmt, int insert)
78 insert ? list_add(&fmt->lh, &formats) : 80 insert ? list_add(&fmt->lh, &formats) :
79 list_add_tail(&fmt->lh, &formats); 81 list_add_tail(&fmt->lh, &formats);
80 write_unlock(&binfmt_lock); 82 write_unlock(&binfmt_lock);
81 return 0; 83 return 0;
82} 84}
83 85
84EXPORT_SYMBOL(__register_binfmt); 86EXPORT_SYMBOL(__register_binfmt);
@@ -1064,7 +1066,7 @@ void setup_new_exec(struct linux_binprm * bprm)
1064 group */ 1066 group */
1065 1067
1066 current->self_exec_id++; 1068 current->self_exec_id++;
1067 1069
1068 flush_signal_handlers(current, 0); 1070 flush_signal_handlers(current, 0);
1069 flush_old_files(current->files); 1071 flush_old_files(current->files);
1070} 1072}
@@ -1154,8 +1156,8 @@ int check_unsafe_exec(struct linux_binprm *bprm)
1154 return res; 1156 return res;
1155} 1157}
1156 1158
1157/* 1159/*
1158 * Fill the binprm structure from the inode. 1160 * Fill the binprm structure from the inode.
1159 * Check permissions, then read the first 128 (BINPRM_BUF_SIZE) bytes 1161 * Check permissions, then read the first 128 (BINPRM_BUF_SIZE) bytes
1160 * 1162 *
1161 * This may be called multiple times for binary chains (scripts for example). 1163 * This may be called multiple times for binary chains (scripts for example).
@@ -1367,6 +1369,7 @@ int do_execve(const char * filename,
1367 goto out_unmark; 1369 goto out_unmark;
1368 1370
1369 sched_exec(); 1371 sched_exec();
1372 litmus_exec();
1370 1373
1371 bprm->file = file; 1374 bprm->file = file;
1372 bprm->filename = filename; 1375 bprm->filename = filename;
diff --git a/fs/inode.c b/fs/inode.c
index 86464332e590..d4fe9c031864 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -266,6 +266,8 @@ void inode_init_once(struct inode *inode)
266#ifdef CONFIG_FSNOTIFY 266#ifdef CONFIG_FSNOTIFY
267 INIT_HLIST_HEAD(&inode->i_fsnotify_marks); 267 INIT_HLIST_HEAD(&inode->i_fsnotify_marks);
268#endif 268#endif
269 INIT_LIST_HEAD(&inode->i_obj_list);
270 mutex_init(&inode->i_obj_mutex);
269} 271}
270EXPORT_SYMBOL(inode_init_once); 272EXPORT_SYMBOL(inode_init_once);
271 273