Commit 0a6d2fac authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'for-linus' of...

parents 76f8bef0 37dd0bd0
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -2126,14 +2126,16 @@ static inline void flush_unauthorized_files(struct files_struct *files)
	tty = get_current_tty();
	if (tty) {
		file_list_lock();
		file = list_entry(tty->tty_files.next, typeof(*file), f_u.fu_list);
		if (file) {
		if (!list_empty(&tty->tty_files)) {
			struct inode *inode;

			/* Revalidate access to controlling tty.
			   Use inode_has_perm on the tty inode directly rather
			   than using file_has_perm, as this particular open
			   file may belong to another process and we are only
			   interested in the inode-based check here. */
			struct inode *inode = file->f_path.dentry->d_inode;
			file = list_first_entry(&tty->tty_files, struct file, f_u.fu_list);
			inode = file->f_path.dentry->d_inode;
			if (inode_has_perm(current, inode,
					   FILE__READ | FILE__WRITE, NULL)) {
				drop_tty = 1;