diff options
author | Jiri Slaby <jslaby@suse.cz> | 2010-03-16 05:29:54 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-03-16 14:15:45 -0700 |
commit | 21edbb223ed2af88b090e7945af7d91d672e3aa6 (patch) | |
tree | b159ba512fdbdfe92d896a77109e7c0dadd36f87 /net/core/netpoll.c | |
parent | a2f46ee1ba5ee249ce2ca1ee7a7a0ac46529fb4f (diff) | |
download | talos-op-linux-21edbb223ed2af88b090e7945af7d91d672e3aa6.tar.gz talos-op-linux-21edbb223ed2af88b090e7945af7d91d672e3aa6.zip |
NET: netpoll, fix potential NULL ptr dereference
Stanse found that one error path in netpoll_setup dereferences npinfo
even though it is NULL. Avoid that by adding new label and go to that
instead.
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Cc: Daniel Borkmann <danborkmann@googlemail.com>
Cc: David S. Miller <davem@davemloft.net>
Acked-by: chavey@google.com
Acked-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/netpoll.c')
-rw-r--r-- | net/core/netpoll.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/core/netpoll.c b/net/core/netpoll.c index 7aa697253765..d4ec38fa64e6 100644 --- a/net/core/netpoll.c +++ b/net/core/netpoll.c @@ -735,7 +735,7 @@ int netpoll_setup(struct netpoll *np) npinfo = kmalloc(sizeof(*npinfo), GFP_KERNEL); if (!npinfo) { err = -ENOMEM; - goto release; + goto put; } npinfo->rx_flags = 0; @@ -845,7 +845,7 @@ int netpoll_setup(struct netpoll *np) kfree(npinfo); } - +put: dev_put(ndev); return err; } |