Re: [PATCH v2] net: usb: dm9601: fix uninitialized variable use in dm9601_mdio_read

From: Peter Korsgaard
Date: Tue Oct 10 2023 - 02:20:03 EST


>>>>> "Greg" == Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> writes:

> On Tue, Oct 10, 2023 at 12:26:14AM +0200, Javier Carrasco wrote:
>> syzbot has found an uninit-value bug triggered by the dm9601 driver [1].
>>
>> This error happens because the variable res is not updated if the call
>> to dm_read_shared_word returns an error. In this particular case -EPROTO
>> was returned and res stayed uninitialized.
>>
>> This can be avoided by checking the return value of dm_read_shared_word
>> and propagating the error if the read operation failed.
>>
>> [1] https://syzkaller.appspot.com/bug?extid=1f53a30781af65d2c955
>>
>> Signed-off-by: Javier Carrasco <javier.carrasco.cruz@xxxxxxxxx>
>> Reported-and-tested-by: syzbot+1f53a30781af65d2c955@xxxxxxxxxxxxxxxxxxxxxxxxx
>> ---
>> Changes in v2:
>> - Remove unnecessary 'err == 0' case
>> - Link to v1: https://lore.kernel.org/r/20231009-topic-dm9601_uninit_mdio_read-v1-1-d4d775e24e3b@xxxxxxxxx
>> ---
>> drivers/net/usb/dm9601.c | 7 ++++++-
>> 1 file changed, 6 insertions(+), 1 deletion(-)

> What commit id does this fix?

It has been there since the beginning, so:

Fixes: d0374f4f9c35cdfbee0 ("USB: Davicom DM9601 usbnet driver")

Acked-by: Peter Korsgaard <peter@xxxxxxxxxxxxx>

--
Bye, Peter Korsgaard