remarkable-linux/drivers/media/usb/gspca
Bhaktipriya Shridhar 53eebd84c3 [media] gspca: finepix: Remove deprecated create_singlethread_workqueue
The workqueue "work_thread" is involved in streaming the camera data.
It has a single work item(&dev->work_struct) and hence doesn't require
ordering. Also, it is not being used on a memory reclaim path.
Hence, the singlethreaded workqueue has been replaced with the use of
system_wq.

System workqueues have been able to handle high level of concurrency
for a long time now and hence it's not required to have a singlethreaded
workqueue just to gain concurrency. Unlike a dedicated per-cpu workqueue
created with create_singlethread_workqueue(), system_wq allows multiple
work items to overlap executions even on the same CPU; however, a
per-cpu workqueue doesn't have any CPU locality or global ordering
guarantee unless the target CPU is explicitly specified and thus the
increase of local concurrency shouldn't make any difference.

Work item has been flushed in sd_stop0() to ensure that there are no
pending tasks while disconnecting the driver.

Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
Acked-by: Tejun Heo <tj@kernel.org>
Acked-by: Frank Zago <frank@zago.net>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2016-08-24 09:30:21 -03:00
..
gl860 [media] gspca_gl860: Clean up idxdata structs 2014-04-16 18:13:56 -03:00
m5602 m5602_ov7660: move skeletons to the .c file 2016-06-24 09:37:43 -03:00
stv06xx [media] gspca_stv06xx: enable button found on some Quickcam Express variant 2015-01-29 18:27:25 -02:00
autogain_functions.c [media] Fix 64-bit division fall-out from 64-bit control ranges 2014-07-17 12:44:38 -03:00
benq.c [media] media: usb: gspca: benq: don't print error when allocating urb fails 2016-08-24 08:51:13 -03:00
conex.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
cpia1.c [media] gspca: avoid unused variable warnings 2016-07-08 15:09:39 -03:00
dtcs033.c [media] media:gspca:dtcs033 Clean sparse check warnings on endianess 2014-04-23 10:07:52 -03:00
etoms.c [media] gspca: remove obsolete Kconfig macros 2013-03-29 08:19:26 -03:00
finepix.c [media] gspca: finepix: Remove deprecated create_singlethread_workqueue 2016-08-24 09:30:21 -03:00
gspca.c [media] media: usb: gspca: gspca: don't print error when allocating urb fails 2016-08-24 08:51:32 -03:00
gspca.h [media] trivial: drivers/media/usb/gspca/gspca.h: indent with TABs, not spaces 2014-09-08 10:00:57 -03:00
jeilinj.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
jl2005bcd.c [media] gspca: jl2005bcd: Remove deprecated create_singlethread_workqueue 2016-08-24 09:29:56 -03:00
jpeg.h [media] gpsca: remove the risk of a division by zero 2014-04-08 11:01:12 -03:00
Kconfig [media] media: fix gspca drivers build dependencies 2015-03-03 10:16:31 -03:00
kinect.c [media] kinect: fix sparse warnings 2014-09-03 09:34:14 -03:00
konica.c [media] media: usb: gspca: konica: don't print error when allocating urb fails 2016-08-24 08:51:57 -03:00
Makefile [media] gspca_touptek: Add support for ToupTek UCMOS series USB cameras 2015-01-29 18:13:13 -02:00
mars.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
mr97310a.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
nw80x.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
ov519.c [media] gspca: Remove unused ovfx2_vga_mode/ovfx2_cif_mode arrays 2016-03-01 10:44:28 -03:00
ov534.c [media] gspca: ov534/topro: use a define for the default framerate 2016-07-08 14:56:53 -03:00
ov534_9.c [media] gscpa_ov534_9: Add support for ov3610 sensor 2013-10-15 12:49:51 -03:00
pac207.c [media] media_tree: Fix spelling errors 2013-12-09 14:50:50 -02:00
pac7302.c Merge commit '67dd8f35c2d8ed80f26c9654b474cffc11c6674d' into patchwork 2014-07-22 02:03:59 -03:00
pac7311.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
pac_common.h [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
se401.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
se401.h
sn9c20x.c [media] sn9c20x: Remove deprecated create_singlethread_workqueue 2016-07-08 14:59:17 -03:00
sn9c2028.c [media] gspca: sn9c2028: remove an unneeded condition 2015-07-06 08:26:06 -03:00
sn9c2028.h [media] gspca: sn9c2028: Add gain and autogain controls Genius Videocam Live v2 2015-05-30 11:48:09 -03:00
sonixb.c [media] Fix 64-bit division fall-out from 64-bit control ranges 2014-07-17 12:44:38 -03:00
sonixj.c [media] gspca: sonixj: Remove deprecated create_singlethread_workqueue 2016-08-24 09:29:09 -03:00
spca500.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
spca501.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
spca505.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
spca506.c Drivers: media: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
spca508.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
spca561.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
spca1528.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
sq905.c [media] gspca: Remove gspca-specific debug magic 2013-03-05 15:13:48 -03:00
sq905c.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
sq930x.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
stk014.c [media] stk014: fix bad indenting 2015-05-01 06:11:22 -03:00
stk1135.c [media] gspca-stk1135: Add delay after configuring clock 2013-11-29 12:03:16 -02:00
stk1135.h [media] introduce gspca-stk1135: Syntek STK1135 driver 2013-08-21 05:21:55 -03:00
stv0680.c [media] media_tree: Fix spelling errors 2013-12-09 14:50:50 -02:00
sunplus.c [media] gspca_sunplus: Add new usb-id for 06d6:0041 2013-11-29 12:12:52 -02:00
t613.c [media] gspca: avoid unused variable warnings 2016-07-08 15:09:39 -03:00
topro.c [media] gspca: ov534/topro: use a define for the default framerate 2016-07-08 14:56:53 -03:00
touptek.c [media] touptek: cast char types on %x printk 2016-03-10 13:37:45 -03:00
tv8532.c [media] gspca: store current mode instead of individual parameters 2013-09-26 07:19:09 -03:00
vc032x.c [media] gspca_vc032x: Fix wrong bytesperline 2015-01-29 18:28:46 -02:00
vicam.c [media] gspca: vicam: Remove deprecated create_singlethread_workqueue 2016-08-24 09:29:35 -03:00
w996Xcf.c [media] gspca: Fix ov519 i2c r/w not working when connected to a xhci host 2016-03-01 10:40:14 -03:00
xirlink_cit.c [media] xirlink_cit: comment unreachable code 2015-05-01 06:27:08 -03:00
zc3xx-reg.h
zc3xx.c [media] zc3xx: Remove deprecated create_singlethread_workqueue 2016-07-09 07:43:53 -03:00