diff options
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/exit.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/kernel/exit.c b/kernel/exit.c index d891883420f..4b6fb054b25 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -487,6 +487,18 @@ void fastcall put_files_struct(struct files_struct *files) EXPORT_SYMBOL(put_files_struct); +void reset_files_struct(struct task_struct *tsk, struct files_struct *files) +{ + struct files_struct *old; + + old = tsk->files; + task_lock(tsk); + tsk->files = files; + task_unlock(tsk); + put_files_struct(old); +} +EXPORT_SYMBOL(reset_files_struct); + static inline void __exit_files(struct task_struct *tsk) { struct files_struct * files = tsk->files; |