Re: [PATCH] drivers/usb/gadget: add missing kfree calls

From: Andre Bartke
Date: Sun Jun 05 2011 - 05:50:49 EST


On Sat, 4 Jun 2011 18:35:35 -0700
Connor H <cmdkhh@xxxxxxxxx> wrote:

> On Sat, Jun 4, 2011 at 2:54 PM, Andre Bartke
> <andre.bartke@xxxxxxxxxxxxxx> wrote:
> > On Sat, 04 Jun 2011 23:35:16 +0200
> > "Michal Nazarewicz" <mina86@xxxxxxxxxx> wrote:
> >
> >> On Sat, 04 Jun 2011 21:34:54 +0200, Andre Bartke
> >> <andre.bartke@xxxxxxxxxxxxxx> wrote:
> >> > diff --git a/drivers/usb/gadget/rndis.c
> >> > b/drivers/usb/gadget/rndis.c @@ -700,6 +701,7 @@ static int
> >> > rndis_reset_response(int configNr, rndis_reset_msg_type *buf)
> >> > Â Â resp->AddressingReset = cpu_to_le32(1);
> >> > Â Â params->resp_avail(params->v);
> >> > + Â kfree(r);
> >> > Â Â return 0;
> >> > Â}
> >>
> >> Have you tested this? ÂIt does not look right to me.
> >> rndis_add_response() allocates memory and puts the request on a
> >> list. ÂIt is later freed in rndis_free_response().
> >>
> >
> > Nope, the only way I can test this is a build - which it does.
> > You might be right though.
>
> building != correct
>
> r is being added to a list in rndis_add_response
> Andre is right, rndis_free_response handles list removal
>
> 982 if (r && r->buf == buf) {
> 983 list_del(&r->list);
> 984 kfree(r);
> 985 }
>
> in fact all of the kfree calls I believe are incorrect.
>
> Connor

alright, then drop this patch please.

>
> > --
> > To unsubscribe from this list: send the line "unsubscribe
> > linux-kernel" in the body of a message to majordomo@xxxxxxxxxxxxxxx
> > More majordomo info at Âhttp://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at Âhttp://www.tux.org/lkml/
> >

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/