Revert "[PATCH] fix Data Acess error in dup_fd"
This reverts commit 0130b0b32e
.
Sergey Vlasov points out (and Vadim Lobanov concurs) that the bug it was
supposed to fix must be some unrelated memory corruption, and the "fix"
actually causes more problems:
"However, the new code does not look safe in all cases. If some other
task has opened more files while dup_fd() released oldf->file_lock, the
new code will update open_files to the new larger value. But newf was
allocated with the old smaller value of open_files, therefore subsequent
accesses to newf may try to write into unallocated memory."
so revert it.
Cc: Sharyathi Nagesh <sharyath@in.ibm.com>
Cc: Sergey Vlasov <vsu@altlinux.ru>
Cc: Vadim Lobanov <vlobanov@speakeasy.net>
Cc: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
dc791d4798
commit
9a3a04ac38
@ -687,7 +687,6 @@ static struct files_struct *dup_fd(struct files_struct *oldf, int *errorp)
|
||||
* the latest pointer.
|
||||
*/
|
||||
spin_lock(&oldf->file_lock);
|
||||
open_files = count_open_files(old_fdt);
|
||||
old_fdt = files_fdtable(oldf);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user