|
@@ -521,7 +521,7 @@ void reset_files_struct(struct task_struct *tsk, struct files_struct *files)
|
|
}
|
|
}
|
|
EXPORT_SYMBOL(reset_files_struct);
|
|
EXPORT_SYMBOL(reset_files_struct);
|
|
|
|
|
|
-static void __exit_files(struct task_struct *tsk)
|
|
|
|
|
|
+void exit_files(struct task_struct *tsk)
|
|
{
|
|
{
|
|
struct files_struct * files = tsk->files;
|
|
struct files_struct * files = tsk->files;
|
|
|
|
|
|
@@ -533,12 +533,7 @@ static void __exit_files(struct task_struct *tsk)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-void exit_files(struct task_struct *tsk)
|
|
|
|
-{
|
|
|
|
- __exit_files(tsk);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-static void __put_fs_struct(struct fs_struct *fs)
|
|
|
|
|
|
+void put_fs_struct(struct fs_struct *fs)
|
|
{
|
|
{
|
|
/* No need to hold fs->lock if we are killing it */
|
|
/* No need to hold fs->lock if we are killing it */
|
|
if (atomic_dec_and_test(&fs->count)) {
|
|
if (atomic_dec_and_test(&fs->count)) {
|
|
@@ -550,12 +545,7 @@ static void __put_fs_struct(struct fs_struct *fs)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-void put_fs_struct(struct fs_struct *fs)
|
|
|
|
-{
|
|
|
|
- __put_fs_struct(fs);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-static void __exit_fs(struct task_struct *tsk)
|
|
|
|
|
|
+void exit_fs(struct task_struct *tsk)
|
|
{
|
|
{
|
|
struct fs_struct * fs = tsk->fs;
|
|
struct fs_struct * fs = tsk->fs;
|
|
|
|
|
|
@@ -563,15 +553,10 @@ static void __exit_fs(struct task_struct *tsk)
|
|
task_lock(tsk);
|
|
task_lock(tsk);
|
|
tsk->fs = NULL;
|
|
tsk->fs = NULL;
|
|
task_unlock(tsk);
|
|
task_unlock(tsk);
|
|
- __put_fs_struct(fs);
|
|
|
|
|
|
+ put_fs_struct(fs);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-void exit_fs(struct task_struct *tsk)
|
|
|
|
-{
|
|
|
|
- __exit_fs(tsk);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
EXPORT_SYMBOL_GPL(exit_fs);
|
|
EXPORT_SYMBOL_GPL(exit_fs);
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -967,8 +952,8 @@ NORET_TYPE void do_exit(long code)
|
|
if (group_dead)
|
|
if (group_dead)
|
|
acct_process();
|
|
acct_process();
|
|
exit_sem(tsk);
|
|
exit_sem(tsk);
|
|
- __exit_files(tsk);
|
|
|
|
- __exit_fs(tsk);
|
|
|
|
|
|
+ exit_files(tsk);
|
|
|
|
+ exit_fs(tsk);
|
|
check_stack_usage();
|
|
check_stack_usage();
|
|
exit_thread();
|
|
exit_thread();
|
|
cgroup_exit(tsk, 1);
|
|
cgroup_exit(tsk, 1);
|