Files
linux-stable-mirror/lib
Peter Collingbourne 5f878db827 string: Add load_unaligned_zeropad() code path to sized_strscpy()
commit d94c12bd97 upstream.

The call to read_word_at_a_time() in sized_strscpy() is problematic
with MTE because it may trigger a tag check fault when reading
across a tag granule (16 bytes) boundary. To make this code
MTE compatible, let's start using load_unaligned_zeropad()
on architectures where it is available (i.e. architectures that
define CONFIG_DCACHE_WORD_ACCESS). Because load_unaligned_zeropad()
takes care of page boundaries as well as tag granule boundaries,
also disable the code preventing crossing page boundaries when using
load_unaligned_zeropad().

Signed-off-by: Peter Collingbourne <pcc@google.com>
Link: https://linux-review.googlesource.com/id/If4b22e43b5a4ca49726b4bf98ada827fdf755548
Fixes: 94ab5b61ee ("kasan, arm64: enable CONFIG_KASAN_HW_TAGS")
Cc: stable@vger.kernel.org
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20250403000703.2584581-2-pcc@google.com
Signed-off-by: Kees Cook <kees@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-04-25 10:47:55 +02:00
..
2024-07-12 16:39:53 -07:00
2024-04-25 21:07:06 -07:00
2024-06-25 17:15:06 -07:00
2024-04-25 21:07:05 -07:00
2024-07-04 23:43:10 -07:00
2024-02-15 12:17:28 -05:00
2024-06-10 11:14:52 +01:00
2024-09-03 21:15:42 -07:00