On 9/14/19 1:55 AM, Navid Emamdoost wrote: > In af9005_identify_state when returning -EIO the allocated buffer should > be released. > > Signed-off-by: Navid Emamdoost <navid.emamdoost@xxxxxxxxx> > --- > drivers/media/usb/dvb-usb/af9005.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/media/usb/dvb-usb/af9005.c b/drivers/media/usb/dvb-usb/af9005.c > index 02697d86e8c1..aee500beaab6 100644 > --- a/drivers/media/usb/dvb-usb/af9005.c > +++ b/drivers/media/usb/dvb-usb/af9005.c > @@ -975,8 +975,10 @@ static int af9005_identify_state(struct usb_device *udev, > *cold = 1; > else if (reply == 0x02) > *cold = 0; > - else > + else { > + kfree(buf); > return -EIO; > + } Why not just set ret = -EIO; here? You only need to add a if (!ret) > deb_info("Identify state cold = %d\n", *cold); before this line. So this becomes: else ret = -EIO; if (!ret) deb_info("Identify state cold = %d\n", *cold); Regards, Hans > > err: >