* patch: s2255drv driver removal problem fixed
@ 2009-03-30 14:59 Dean A.
0 siblings, 0 replies; only message in thread
From: Dean A. @ 2009-03-30 14:59 UTC (permalink / raw)
To: video4linux-list, mchehab; +Cc: eteo, error27, marcin.slusarz
From: Dean Anderson <dean@sensoray.com>
This patch fixes kfree problem on driver removal, fixes streamoff problem
and removes unnecessary videobuf_waiton from free_buffer function.
Signed-off-by: Dean Anderson <dean@sensoray.com>
--- linux/drivers/media/video/s2255drv.c.orig 2009-03-30 07:30:25.000000000 -0700
+++ linux/drivers/media/video/s2255drv.c 2009-03-30 07:44:32.000000000 -0700
@@ -723,7 +723,6 @@
{
dprintk(4, "%s\n", __func__);
- videobuf_waiton(&buf->vb, 0, 0);
videobuf_vmalloc_free(&buf->vb);
buf->vb.state = VIDEOBUF_NEEDS_INIT;
}
@@ -1325,7 +1324,6 @@
static int vidioc_streamoff(struct file *file, void *priv, enum v4l2_buf_type i)
{
- int res;
struct s2255_fh *fh = priv;
struct s2255_dev *dev = fh->dev;
@@ -1339,9 +1337,7 @@
return -EINVAL;
}
s2255_stop_acquire(dev, fh->channel);
- res = videobuf_streamoff(&fh->vb_vidq);
- if (res < 0)
- return res;
+ videobuf_streamoff(&fh->vb_vidq);
res_free(dev, fh);
return 0;
}
@@ -1708,13 +1704,13 @@
kfree(dev->fw_data);
usb_put_dev(dev->udev);
dprintk(1, "%s", __func__);
- kfree(dev);
while (!list_empty(&s2255_devlist)) {
list = s2255_devlist.next;
list_del(list);
}
mutex_unlock(&dev->open_lock);
+ kfree(dev);
}
static int s2255_close(struct file *file)
--
video4linux-list mailing list
Unsubscribe mailto:video4linux-list-request@redhat.com?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/video4linux-list
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2009-03-30 15:06 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-30 14:59 patch: s2255drv driver removal problem fixed Dean A.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.