From: Denis Kirjanov Date: Tue, 30 Jul 2019 13:13:57 +0000 (+0200) Subject: net: usb: pegasus: fix improper read if get_registers() fail X-Git-Tag: v4.19.68~63 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=07d92caeb945093b25eaca3454263a0beca607b2;p=platform%2Fkernel%2Flinux-rpi.git 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 Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/net/usb/pegasus.c b/drivers/net/usb/pegasus.c index f4247b2..b7a0df9 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;