linux/drivers/staging
Bernd Porr b7e2a040d9 staging: comedi: usbduxfast: usbduxfast_ai_cmdtest rounding error
commit 5618332e5b upstream.

The userspace comedilib function 'get_cmd_generic_timed' fills
the cmd structure with an informed guess and then calls the
function 'usbduxfast_ai_cmdtest' in this driver repeatedly while
'usbduxfast_ai_cmdtest' is modifying the cmd struct until it
no longer changes. However, because of rounding errors this never
converged because 'steps = (cmd->convert_arg * 30) / 1000' and then
back to 'cmd->convert_arg = (steps * 1000) / 30' won't be the same
because of rounding errors. 'Steps' should only be converted back to
the 'convert_arg' if 'steps' has actually been modified. In addition
the case of steps being 0 wasn't checked which is also now done.

Signed-off-by: Bernd Porr <mail@berndporr.me.uk>
Cc: <stable@vger.kernel.org> # 4.4+
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Link: https://lore.kernel.org/r/20191118230759.1727-1-mail@berndporr.me.uk
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-12-01 09:17:45 +01:00
..
android staging: android: ion: Bail out upon SIGKILL when allocating memory. 2019-08-16 10:12:38 +02:00
axis-fifo staging: axis-fifo: add CONFIG_OF dependency 2019-05-04 09:20:12 +02:00
board
clocking-wizard
comedi staging: comedi: usbduxfast: usbduxfast_ai_cmdtest rounding error 2019-12-01 09:17:45 +01:00
dgnc staging: dgnc: dgnc_tty.c: Avoid '(' at the end of line 2018-07-24 14:00:54 +02:00
emxx_udc
erofs staging: erofs: detect potential multiref due to corrupted images 2019-10-11 18:21:41 +02:00
fbtft Staging: fbtft: fix memory leak in fbtft_framebuffer_alloc 2019-10-17 13:45:10 -07:00
fsl-dpaa2 staging: fsl-dpaa2/ethsw: fix memory leak of switchdev_work 2019-07-14 08:11:22 +02:00
fwserial
gasket staging: gasket: apex: fix copy-paste typo 2019-08-16 10:12:37 +02:00
gdm724x staging: gdm724x: redundant variables idProduct and idVendor 2018-07-11 13:12:34 +02:00
goldfish staging: goldfish: add a blank line into struct goldfish_audio 2018-07-12 21:49:24 +02:00
greybus staging: greybus: power_supply: fix prop-descriptor request size 2019-05-10 17:54:04 +02:00
gs_fpgaboot
iio staging:iio:ad7150: fix threshold mode config bit 2019-07-14 08:11:05 +02:00
ks7010 Merge 4.18-rc7 into staging-next 2018-07-30 10:13:15 +02:00
media media: imx: work around false-positive warning, again 2019-11-20 18:47:16 +01:00
most staging: most: cdev: fix chrdev_region leak in mod_exit 2019-05-10 17:54:05 +02:00
mt29f_spinand
mt7621-dma staging: mt7621-dma: fix potentially dereferencing uninitialized 'tx_desc' 2018-12-05 19:32:12 +01:00
mt7621-dts staging: mt7621-dts: add pcie controller port registers 2018-08-08 14:08:41 +02:00
mt7621-eth drivers/staging/mt7621-eth: Use dma_zalloc_coherent to replace dma_alloc_coherent+memset 2018-08-01 20:00:53 +02:00
mt7621-mmc staging: mt7621-mmc: Use BIT macro instead of explicit shifting in board.h 2018-07-29 10:08:02 +02:00
mt7621-pci staging, mt7621-pci: fix build without pci support 2019-05-04 09:20:12 +02:00
mt7621-pinctrl staging: mt7621-pinctrl: use pinconf-generic for 'dt_node_to_map' and 'dt_free_map' 2019-11-06 13:05:27 +01:00
mt7621-spi staging: spi: mt7621: Add return code check on device_reset() 2019-04-05 22:33:11 +02:00
netlogic net: Add generic ndo_select_queue functions 2018-07-09 13:15:34 -07:00
nvec
octeon
octeon-usb Staging: octeon-usb: Adding SPDX license identifier 2018-07-27 17:18:14 +02:00
olpc_dcon staging: olpc_dcon: add a missing dependency 2018-12-19 19:19:49 +01:00
pi433 staging: pi433: fix potential null dereference 2019-02-12 19:47:02 +01:00
rtl8188eu staging: rtl8188eu: fix null dereference when kzalloc fails 2019-11-06 13:05:45 +01:00
rtl8192e staging: rtl8192e: ieee80211: Convert from ahash to shash 2018-07-29 10:05:23 +02:00
rtl8192u staging:rtl8192u: Remove unused macro definitions - Style 2018-08-08 14:27:03 +02:00
rtl8712 staging: rtl8712: reduce stack usage, again 2019-07-14 08:11:22 +02:00
rtl8723bs staging: rtl8188eu: Fix potential NULL pointer dereference of kcalloc 2019-05-04 09:20:16 +02:00
rtlwifi staging: rtlwifi: Fix potential NULL pointer dereference of kzalloc 2019-05-04 09:20:17 +02:00
rts5208 staging: rts5208: xd.c fixed a brace coding style issue 2018-07-21 08:54:11 +02:00
sm750fb staging: sm750fb: remove redundant pointer 'output' 2018-07-11 14:45:54 +02:00
speakup staging: speakup_soft: Fix alternate speech with other synths 2019-04-03 06:26:25 +02:00
unisys
vboxvideo staging: vboxvideo: Change address of scanout buffer on page-flip 2018-09-11 18:39:54 +02:00
vc04_services staging: bcm2835-camera: Handle empty EOS buffers whilst streaming 2019-07-14 08:11:22 +02:00
vme
vt6655 staging: vt6655: Fix memory leak in vt6655_probe 2019-10-17 13:45:11 -07:00
vt6656 staging: vt6656: use meaningful error code during buffer allocation 2019-07-31 07:26:57 +02:00
wilc1000 staging: wilc1000: fix error path cleanup in wilc_wlan_initialize() 2019-09-16 08:22:17 +02:00
wlan-ng staging: wlan-ng: fix exit return when sme->key_idx >= NUM_WEPKEYS 2019-10-29 09:19:48 +01:00
xgifb
Kconfig ARM: SoC driver updates 2018-08-23 13:52:46 -07:00
Makefile ARM: SoC driver updates 2018-08-23 13:52:46 -07:00