- 19 6月, 2012 1 次提交
-
-
由 Tomasz Moń 提交于
The mem2mem_testdev allows multiple instances to be opened in parallel. Source and destination queue data are being shared between all instances, which can lead to kernel oops due to race conditions (most likely to happen inside device_run()). Attached patch fixes mentioned problem by storing queue data per device context. Signed-off-by: NTomasz Moń <desowin@gmail.com> Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 16 5月, 2012 1 次提交
-
-
由 Guennadi Liakhovetski 提交于
Fix a trivial alignment calculation issue. Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 14 5月, 2012 1 次提交
-
-
由 Hans Verkuil 提交于
This used to be the default if the lock pointer was set, but now that lock is by default only used for ioctl serialization. Those drivers that already used core locking have this flag set explicitly, except for some drivers where it was obvious that there was no need to serialize any file operations other than ioctl. The drivers that didn't need this flag were: drivers/media/radio/dsbr100.c drivers/media/radio/radio-isa.c drivers/media/radio/radio-keene.c drivers/media/radio/radio-miropcm20.c drivers/media/radio/radio-mr800.c drivers/media/radio/radio-tea5764.c drivers/media/radio/radio-timb.c drivers/media/video/vivi.c sound/i2c/other/tea575x-tuner.c The other drivers that use core locking and where it was not immediately obvious that this flag wasn't needed were changed so that the flag is set together with a comment that that driver needs work to avoid having to set that flag. This will often involve taking the core lock in the fops themselves. Eventually this flag should go and it should not be used in new drivers. There are a few reasons why we want to avoid core locking of non-ioctl fops: in the case of mmap this can lead to a deadlock in rare situations since when mmap is called the mmap_sem is held and it is possible for other parts of the code to take that lock as well (copy_from_user()/copy_to_user() perform a down_read(&mm->mmap_sem) when a page fault occurs). It is very unlikely that that happens since the core lock serializes all fops, but the kernel warns about it if lock validation is turned on. For poll it is also undesirable to take the core lock as that can introduce increased latency. The same is true for read/write. While it was possible to make flags or something to turn on/off taking the core lock for each file operation, in practice it is much simpler to just not take it at all except for ioctl and leave it to the driver to take the lock. There are only a handful fops compared to the zillion ioctls we have. I also wanted to make it obvious which drivers still take the lock for all fops, so that's why I chose to have drivers set it explicitly. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 04 11月, 2011 1 次提交
-
-
由 Guennadi Liakhovetski 提交于
In preparation for the forthcoming VIDIOC_CREATE_BUFS ioctl add a "const struct v4l2_format *" argument to the .queue_setup() vb2 operation. Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 26 9月, 2011 1 次提交
-
-
由 Michael Olbrich 提交于
These are necessary to prevent dead-locks e.g. if one thread waits in dqbuf at one end and another tries to queue a buffer at the other end. Signed-off-by: NMichael Olbrich <m.olbrich@pengutronix.de> Cc: Mauro Carvalho Chehab <mchehab@infradead.org> Cc: Pawel Osciak <pawel@osciak.com> Acked-by: NPawel Osciak <pawel@osciak.com> Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 07 9月, 2011 1 次提交
-
-
由 Marek Szyprowski 提交于
Plane sizes array was declared as unsigned long[], while unsigned int is more than enough for storing size of the video buffer. This patch reduces the size of the array by definiting it as unsigned int[]. Reported-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> CC: Pawel Osciak <pawel@osciak.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 28 7月, 2011 1 次提交
-
-
由 Mauro Carvalho Chehab 提交于
All the modified drivers didn't have any version increment since Jan, 1 2011. Several of them didn't have any version increment for a long time, even having new features and important bug fixes happening. As we're now filling the QUERYCAP version with the current Kernel Release, we don't need to maintain a per-driver version control anymore. So, let's just use the default. In order to preserve the Kernel module version history, a KERNEL_VERSION() macro were added to all modified drivers, and the extraver number were incremented. I opted to preserve the per-driver version control to a few pwc, pvrusb2, s2255, s5p-fimc and sh_vou. A few drivers are still using the legacy way to handle ioctl's. So, we can't do such change on them, otherwise, they'll break. Those are: uvc, et61x251 and sn9c102. The rationale is that the per-driver version control seems to be actively maintained on those. Yet, I think that the better for them would be to just use the default version numbering, instead of doing that by themselves. While here, removed a few uneeded include linux/version.h Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 22 3月, 2011 2 次提交
-
-
由 Pawel Osciak 提交于
Signed-off-by: NPawel Osciak <pawel@osciak.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Marek Szyprowski 提交于
This patch ports mem2mem test device to videobuf2 framework. Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 02 2月, 2011 1 次提交
-
-
由 Pawel Osciak 提交于
video_device is already being freed in video_device.release callback on release. Signed-off-by: NPawel Osciak <pawel@osciak.com> Reported-by: NRoland Kletzing <devzero@web.de> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 29 12月, 2010 1 次提交
-
-
由 Marek Szyprowski 提交于
Remove usage of BKL by usign per-device mutex. Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com> CC: Pawel Osciak <pawel@osciak.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 21 10月, 2010 1 次提交
-
-
由 Hans Verkuil 提交于
videobuf_waiton() must unlock and relock ext_lock if it has to wait. For that to happen it needs the videobuf_queue pointer. Don't attempt to unlock/relock q->ext_lock unless it was locked in the first place. vb->state has to be protected by a spinlock to be safe. This patch is based on code from Mauro Carvalho Chehab <mchehab@redhat.com>. [mchehab@redhat.com: add extra argument to a few missing places] Signed-off-by: NHans Verkuil <hverkuil@xs4all.nl> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 28 9月, 2010 2 次提交
-
-
由 Pawel Osciak 提交于
Video device was not being released on driver remove. Signed-off-by: NPawel Osciak <p.osciak@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Pawel Osciak 提交于
Output buffer has to be at least the size of input buffer, not the other way around. Signed-off-by: NPawel Osciak <p.osciak@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 03 8月, 2010 1 次提交
-
-
由 Joe Perches 提交于
Signed-off-by: NJoe Perches <joe@perches.com> Acked-by: NJarod Wilson <jarod@redhat.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 09 7月, 2010 1 次提交
-
-
由 Pawel Osciak 提交于
Calling g_fmt before s_fmt resulted in a NULL pointer dereference as no default formats were being selected on probe. Reported-by: NNémeth Márton <nm127@freemail.hu> Signed-off-by: NPawel Osciak <p.osciak@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 19 5月, 2010 3 次提交
-
-
由 Randy Dunlap 提交于
Fix vivi and mem2mem_testdev build errors: need to #include <linux/slab.h>: drivers/media/video/vivi.c:1144: error: implicit declaration of function 'kfree' drivers/media/video/vivi.c:1156: error: implicit declaration of function 'kzalloc' drivers/media/video/vivi.c:1156: warning: assignment makes pointer from integer without a cast drivers/media/video/mem2mem_testdev.c:862: error: implicit declaration of function 'kzalloc' drivers/media/video/mem2mem_testdev.c:862: warning: assignment makes pointer from integer without a cast drivers/media/video/mem2mem_testdev.c:874: error: implicit declaration of function 'kfree' drivers/media/video/mem2mem_testdev.c:944: warning: assignment makes pointer from integer without a cast Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Dan Carpenter 提交于
We dereferenced "ctx" on the error path. Signed-off-by: NDan Carpenter <error27@gmail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Pawel Osciak 提交于
This is a virtual device driver for testing the memory-to-memory framework. This virtual device uses in-memory buffers for both its source and destination. It is capable of multi-instance, multi-buffer-per-transaction operation (via the mem2mem framework). [mchehab@redhat.com: use videobuf_queue_to_vaddr instead of the removed videobuf_queue_to_vmalloc] Signed-off-by: NPawel Osciak <p.osciak@samsung.com> Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Reviewed-by: NVaibhav Hiremath <hvaibhav@ti.com> Tested-by: NVaibhav Hiremath <hvaibhav@ti.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-