Commit 1fbab5e7 authored by Yangxi Xiang's avatar Yangxi Xiang Committed by Yi Yang
Browse files

vt: fix memory overlapping when deleting chars in the buffer

mainline inclusion
from mainline-v5.19-rc7
commit 39cdb68c
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/I95ATI
CVE: CVE-2022-48627

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=39cdb68c64d84e71a4a717000b6e5de208ee60cc



--------------------------------

A memory overlapping copy occurs when deleting a long line. This memory
overlapping copy can cause data corruption when scr_memcpyw is optimized
to memcpy because memcpy does not ensure its behavior if the destination
buffer overlaps with the source buffer. The line buffer is not always
broken, because the memcpy utilizes the hardware acceleration, whose
result is not deterministic.

Fix this problem by using replacing the scr_memcpyw with scr_memmovew.

Fixes: 81732c3b ("tty vt: Fix line garbage in virtual console on command line edition")
Cc: stable <stable@kernel.org>
Signed-off-by: default avatarYangxi Xiang <xyangxi5@gmail.com>
Link: https://lore.kernel.org/r/20220628093322.5688-1-xyangxi5@gmail.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
conflicts:
	drivers/tty/vt/vt.c
Signed-off-by: default avatarYi Yang <yiyang13@huawei.com>
parent ba030414
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment