summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Kirjanov <kda@linux-powerpc.org>2019-07-30 15:13:57 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-08-25 10:50:08 +0200
commit8176e66caedb1b8f0a9c2429e57e0c8dda127010 (patch)
treea4c78fad0fade60b3999e22feb5f18ee656346d6
parent6ab425b091ff31dd8e2e0d4220b4f6e91e3da1d5 (diff)
net: usb: pegasus: fix improper read if get_registers() fail
commit 224c04973db1125fcebefffd86115f99f50f8277 upstream. get_registers() may fail with -ENOMEM and in this case we can read a garbage from the status variable tmp. Reported-by: syzbot+3499a83b2d062ae409d4@syzkaller.appspotmail.com Signed-off-by: Denis Kirjanov <kda@linux-powerpc.org> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/net/usb/pegasus.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/usb/pegasus.c b/drivers/net/usb/pegasus.c
index 6514c86f043e..5435c34dfcc7 100644
--- a/drivers/net/usb/pegasus.c
+++ b/drivers/net/usb/pegasus.c
@@ -285,7 +285,7 @@ static void mdio_write(struct net_device *dev, int phy_id, int loc, int val)
static int read_eprom_word(pegasus_t *pegasus, __u8 index, __u16 *retdata)
{
int i;
- __u8 tmp;
+ __u8 tmp = 0;
__le16 retdatai;
int ret;