|
@@ -1289,8 +1289,7 @@ done:
|
|
|
}
|
|
|
|
|
|
static ssize_t tun_do_read(struct tun_struct *tun, struct tun_file *tfile,
|
|
|
- struct kiocb *iocb, const struct iovec *iv,
|
|
|
- ssize_t len, int noblock)
|
|
|
+ const struct iovec *iv, ssize_t len, int noblock)
|
|
|
{
|
|
|
DECLARE_WAITQUEUE(wait, current);
|
|
|
struct sk_buff *skb;
|
|
@@ -1353,7 +1352,7 @@ static ssize_t tun_chr_aio_read(struct kiocb *iocb, const struct iovec *iv,
|
|
|
goto out;
|
|
|
}
|
|
|
|
|
|
- ret = tun_do_read(tun, tfile, iocb, iv, len,
|
|
|
+ ret = tun_do_read(tun, tfile, iv, len,
|
|
|
file->f_flags & O_NONBLOCK);
|
|
|
ret = min_t(ssize_t, ret, len);
|
|
|
out:
|
|
@@ -1452,7 +1451,7 @@ static int tun_recvmsg(struct kiocb *iocb, struct socket *sock,
|
|
|
SOL_PACKET, TUN_TX_TIMESTAMP);
|
|
|
goto out;
|
|
|
}
|
|
|
- ret = tun_do_read(tun, tfile, iocb, m->msg_iov, total_len,
|
|
|
+ ret = tun_do_read(tun, tfile, m->msg_iov, total_len,
|
|
|
flags & MSG_DONTWAIT);
|
|
|
if (ret > total_len) {
|
|
|
m->msg_flags |= MSG_TRUNC;
|