Commit f48cc6b2 authored by Jason Wang's avatar Jason Wang Committed by David S. Miller

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: default avatarStephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 22f87883
...@@ -1447,12 +1447,13 @@ static struct sk_buff *tun_ring_recv(struct tun_file *tfile, int noblock, ...@@ -1447,12 +1447,13 @@ static struct sk_buff *tun_ring_recv(struct tun_file *tfile, int noblock,
{ {
DECLARE_WAITQUEUE(wait, current); DECLARE_WAITQUEUE(wait, current);
struct sk_buff *skb = NULL; struct sk_buff *skb = NULL;
int error = 0;
skb = skb_array_consume(&tfile->tx_array); skb = skb_array_consume(&tfile->tx_array);
if (skb) if (skb)
goto out; goto out;
if (noblock) { if (noblock) {
*err = -EAGAIN; error = -EAGAIN;
goto out; goto out;
} }
...@@ -1464,11 +1465,11 @@ static struct sk_buff *tun_ring_recv(struct tun_file *tfile, int noblock, ...@@ -1464,11 +1465,11 @@ static struct sk_buff *tun_ring_recv(struct tun_file *tfile, int noblock,
if (skb) if (skb)
break; break;
if (signal_pending(current)) { if (signal_pending(current)) {
*err = -ERESTARTSYS; error = -ERESTARTSYS;
break; break;
} }
if (tfile->socket.sk->sk_shutdown & RCV_SHUTDOWN) { if (tfile->socket.sk->sk_shutdown & RCV_SHUTDOWN) {
*err = -EFAULT; error = -EFAULT;
break; break;
} }
...@@ -1479,6 +1480,7 @@ static struct sk_buff *tun_ring_recv(struct tun_file *tfile, int noblock, ...@@ -1479,6 +1480,7 @@ static struct sk_buff *tun_ring_recv(struct tun_file *tfile, int noblock,
remove_wait_queue(&tfile->wq.wait, &wait); remove_wait_queue(&tfile->wq.wait, &wait);
out: out:
*err = error;
return skb; return skb;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment