Re: [PATCH] [media] dib0700: get rid of on-stack dma buffers

From: Florian Mickler
Date: Sun Mar 06 2011 - 09:01:54 EST


On Sun, 06 Mar 2011 13:49:56 +0000
Jack Stone <jwjstone@xxxxxxxxxxx> wrote:

> On 06/03/2011 11:16, Florian Mickler wrote:
> > This should fix warnings seen by some:
> > WARNING: at lib/dma-debug.c:866 check_for_stack
> >
> > Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=15977.
> > Reported-by: Zdenek Kabelac <zdenek.kabelac@xxxxxxxxx>
> > Signed-off-by: Florian Mickler <florian@xxxxxxxxxxx>
> > CC: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxx>
> > CC: linux-media@xxxxxxxxxxxxxxx
> > CC: linux-kernel@xxxxxxxxxxxxxxx
> > CC: Greg Kroah-Hartman <greg@xxxxxxxxx>
> > CC: Rafael J. Wysocki <rjw@xxxxxxx>
> > CC: Maciej Rutecki <maciej.rutecki@xxxxxxxxx>
> > ---
> > @@ -101,8 +109,19 @@ int dib0700_ctrl_rd(struct dvb_usb_device *d, u8 *tx, u8 txlen, u8 *rx, u8 rxlen
> >
> > int dib0700_set_gpio(struct dvb_usb_device *d, enum dib07x0_gpios gpio, u8 gpio_dir, u8 gpio_val)
> > {
> > - u8 buf[3] = { REQUEST_SET_GPIO, gpio, ((gpio_dir & 0x01) << 7) | ((gpio_val & 0x01) << 6) };
> > - return dib0700_ctrl_wr(d, buf, sizeof(buf));
> > + s16 ret;
> > + u8 *buf = kmalloc(3, GFP_KERNEL);
> > + if (!buf)
> > + return -ENOMEM;
> > +
> > + buf[0] = REQUEST_SET_GPIO;
> > + buf[1] = gpio;
> > + buf[2] = ((gpio_dir & 0x01) << 7) | ((gpio_val & 0x01) << 6);
> > +
> > + ret = dib0700_ctrl_wr(d, buf, sizeof(buf));
>
> Shouldn't this sizeof be changed as well?
>
> Thanks,
>
> Jack

argh... indeed.
--
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/