From: Pavel Skripkin > Sent: 26 August 2021 09:28 > > On Thu, 26 Aug 2021 08:21:34 +0000 > David Laight <David.Laight@xxxxxxxxxx> wrote: > > > From: Pavel Skripkin > > > Sent: 24 August 2021 08:27 > > > > > > _rtw_read8 function can fail in case of usb transfer failure. But > > > previous function prototype wasn't designed to return an error to > > > caller. It can cause a lot uninit value bugs all across the driver > > > code, since rtw_read8() returns local stack variable to caller. > > > > > > Fix it by changing the prototype of this function. Now it returns an > > > int: 0 on success, negative error value on failure and callers > > > should pass the pointer to storage location for register value. > > > > ... > > > + len += snprintf(page + len, count - len, > > > "rtw_read8(0x%x)=0x%x\n", > > > + proc_get_read_addr, (u8) tmp); > > > > That is broken. > > > > Don't get it, sorry. Previous code did exactly the same thing, but > didn't check if read() was successful. Look up the return value of snprintf(). David - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)