1
0
Fork 0

tun: fasync BKL pushdown

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
hifive-unleashed-5.1
Jonathan Corbet 2008-06-19 15:50:37 -06:00
parent 743115ee05
commit 9d31952257
1 changed files with 7 additions and 4 deletions

View File

@ -782,18 +782,21 @@ static int tun_chr_fasync(int fd, struct file *file, int on)
DBG(KERN_INFO "%s: tun_chr_fasync %d\n", tun->dev->name, on);
lock_kernel();
if ((ret = fasync_helper(fd, file, on, &tun->fasync)) < 0)
return ret;
goto out;
if (on) {
ret = __f_setown(file, task_pid(current), PIDTYPE_PID, 0);
if (ret)
return ret;
goto out;
tun->flags |= TUN_FASYNC;
} else
tun->flags &= ~TUN_FASYNC;
return 0;
ret = 0;
out:
unlock_kernel();
return ret;
}
static int tun_chr_open(struct inode *inode, struct file * file)