diff --git a/drivers/net/tun.c b/drivers/net/tun.c index 782e38bfc1eeea38215492aee5aaa587cc534525..e26cbea1ce68dde18805a67be9e5ed861558036d 100644 --- a/drivers/net/tun.c +++ b/drivers/net/tun.c @@ -1356,6 +1356,8 @@ static ssize_t tun_chr_aio_read(struct kiocb *iocb, const struct iovec *iv, ret = tun_do_read(tun, tfile, iocb, iv, len, file->f_flags & O_NONBLOCK); ret = min_t(ssize_t, ret, len); + if (ret > 0) + iocb->ki_pos = ret; out: tun_put(tun); return ret;