From f48cc6b2661ccb6e9d85a5cdd78c0150929a2821 Mon Sep 17 00:00:00 2001 From: Jason Wang Date: Mon, 4 Jul 2016 13:53:38 +0800 Subject: [PATCH] tun: fix build warnings Stephen Rothwell reports a build warnings(powerpc ppc64_defconfig) drivers/net/tun.c: In function 'tun_do_read.part.5': /home/sfr/next/next/drivers/net/tun.c:1491:6: warning: 'err' may be used uninitialized in this function [-Wmaybe-uninitialized] int err; This is because tun_ring_recv() may return an uninitialized err, fix this. Reported-by: Stephen Rothwell Signed-off-by: Jason Wang Signed-off-by: David S. Miller --- drivers/net/tun.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/net/tun.c b/drivers/net/tun.c index 74752159ec34..5eadb7a1ad7b 100644 --- a/drivers/net/tun.c +++ b/drivers/net/tun.c @@ -1447,12 +1447,13 @@ static struct sk_buff *tun_ring_recv(struct tun_file *tfile, int noblock, { DECLARE_WAITQUEUE(wait, current); struct sk_buff *skb = NULL; + int error = 0; skb = skb_array_consume(&tfile->tx_array); if (skb) goto out; if (noblock) { - *err = -EAGAIN; + error = -EAGAIN; goto out; } @@ -1464,11 +1465,11 @@ static struct sk_buff *tun_ring_recv(struct tun_file *tfile, int noblock, if (skb) break; if (signal_pending(current)) { - *err = -ERESTARTSYS; + error = -ERESTARTSYS; break; } if (tfile->socket.sk->sk_shutdown & RCV_SHUTDOWN) { - *err = -EFAULT; + error = -EFAULT; break; } @@ -1479,6 +1480,7 @@ static struct sk_buff *tun_ring_recv(struct tun_file *tfile, int noblock, remove_wait_queue(&tfile->wq.wait, &wait); out: + *err = error; return skb; } -- 2.20.1