]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commit
comedi: dt9812: fix DMA buffers on stack
authorJohan Hovold <johan@kernel.org>
Wed, 27 Oct 2021 09:35:29 +0000 (11:35 +0200)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Thu, 13 Jan 2022 17:41:41 +0000 (18:41 +0100)
commitdfe1099b9baff625a14e472172cfc4817262abc9
tree866d9e69a54d10e58d1733b70a8ed9cbf5fa6fd5
parent05905a7865d97bee744b1dd02a0a1d507bfb3a30
comedi: dt9812: fix DMA buffers on stack

BugLink: https://bugs.launchpad.net/bugs/1953071
commit 536de747bc48262225889a533db6650731ab25d3 upstream.

USB transfer buffers are typically mapped for DMA and must not be
allocated on the stack or transfers will fail.

Allocate proper transfer buffers in the various command helpers and
return an error on short transfers instead of acting on random stack
data.

Note that this also fixes a stack info leak on systems where DMA is not
used as 32 bytes are always sent to the device regardless of how short
the command is.

Fixes: 63274cd7d38a ("Staging: comedi: add usb dt9812 driver")
Cc: stable@vger.kernel.org # 2.6.29
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Johan Hovold <johan@kernel.org>
Link: https://lore.kernel.org/r/20211027093529.30896-3-johan@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Kelsey Skunberg <kelsey.skunberg@canonical.com>
drivers/staging/comedi/drivers/dt9812.c