linux-brain/arch/um/drivers
Gabriel Krisman Bertazi 1421615c64 um: ubd: Prevent buffer overrun on command completion
[ Upstream commit 6e682d53fc1ef73a169e2a5300326cb23abb32ee ]

On the hypervisor side, when completing commands and the pipe is full,
we retry writing only the entries that failed, by offsetting
io_req_buffer, but we don't reduce the number of bytes written, which
can cause a buffer overrun of io_req_buffer, and write garbage to the
pipe.

Cc: Martyn Welch <martyn.welch@collabora.com>
Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-04-23 10:30:19 +02:00
..
Kconfig um: create a proper drivers Kconfig 2018-08-02 08:03:23 +09:00
Makefile kbuild: change ld_flags to contain LDFLAGS_$(@F) 2018-07-19 08:40:27 +09:00
chan.h um: Use tty_port in SIGWINCH handler 2013-03-11 10:08:04 +01:00
chan_kern.c um: Fix IRQ controller regression on console read 2020-01-27 14:50:59 +01:00
chan_user.c um: Use tty_port in SIGWINCH handler 2013-03-11 10:08:04 +01:00
chan_user.h um: Use tty_port in SIGWINCH handler 2013-03-11 10:08:04 +01:00
cow.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cow_sys.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cow_user.c um: switch cow_user.h to htobe{32,64}/betoh{32,64} 2012-04-10 00:13:45 +02:00
daemon.h um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
daemon_kern.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
daemon_user.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
fd.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
harddog_kern.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
harddog_user.c um: Do not use stdin and stdout identifiers for struct members 2015-06-25 22:42:19 +02:00
hostaudio_kern.c um: annotate ->poll() instances 2017-11-27 16:19:59 -05:00
line.c um: Make line/tty semantics use true write IRQ 2019-12-01 09:17:04 +01:00
line.h um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
mconsole.h um: Stop abusing __KERNEL__ 2015-05-31 22:05:32 +02:00
mconsole_kern.c mconsole_proc(): don't mess with file->f_pos 2018-02-09 19:28:01 -08:00
mconsole_kern.h um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
mconsole_user.c um: -include user.h for USER_OBJ, trim includes 2011-11-02 14:14:44 +01:00
mmapper_kern.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
net_kern.c High Performance UML Vector Network Driver 2018-02-19 19:38:51 +01:00
net_user.c um: fix returns without va_end 2015-12-08 22:26:00 +01:00
null.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
pcap_kern.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
pcap_user.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
pcap_user.h um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
port.h uml: remove useless comments 2009-04-01 08:59:17 -07:00
port_kern.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
port_user.c um: Don't hardcode path as it is architecture dependent 2019-05-16 19:41:28 +02:00
pty.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
random.c Epoll based IRQ controller 2018-02-19 19:38:51 +01:00
slip.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
slip_common.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
slip_common.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
slip_kern.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
slip_user.c um: Do not use stdin and stdout identifiers for struct members 2015-06-25 22:42:19 +02:00
slirp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
slirp_kern.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
slirp_user.c um: Do not use stdin and stdout identifiers for struct members 2015-06-25 22:42:19 +02:00
ssl.c um: Use tty_port_operations->destruct 2013-03-11 10:08:03 +01:00
ssl.h uml: remove useless comments 2009-04-01 08:59:17 -07:00
stderr_console.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
stdio_console.c um: console: Ignore console= option 2017-07-05 23:18:48 +02:00
stdio_console.h uml: remove useless comments 2009-04-01 08:59:17 -07:00
tty.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
ubd.h um: UBD Improvements 2016-12-14 22:46:55 +01:00
ubd_kern.c um: ubd: Prevent buffer overrun on command completion 2020-04-23 10:30:19 +02:00
ubd_user.c um: UBD Improvements 2016-12-14 22:46:55 +01:00
umcast.h um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
umcast_kern.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
umcast_user.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
vde.h uml: add VDE networking support 2007-10-16 09:43:05 -07:00
vde_kern.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
vde_user.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
vector_kern.c Merge branch 'for-linus-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml 2018-06-16 06:50:51 +09:00
vector_kern.h Fix vector raw inintialization logic 2018-03-29 22:18:02 +02:00
vector_transports.c net: in virtio_net_hdr only add VLAN_HLEN to csum_start if payload holds vlan 2018-06-07 16:15:38 -04:00
vector_user.c um: Include sys/uio.h to have writev() 2019-12-05 09:20:52 +01:00
vector_user.h Fix vector raw inintialization logic 2018-03-29 22:18:02 +02:00
xterm.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00
xterm.h uml: remove useless comments 2009-04-01 08:59:17 -07:00
xterm_kern.c um: get rid of pointless include "..." where include <...> will do 2012-10-09 22:28:45 +02:00