summaryrefslogtreecommitdiff
path: root/tools/lib/bpf/bpf_prog_linfo.c
diff options
context:
space:
mode:
authorAlexander Potapenko <glider@google.com>2024-05-28 12:48:06 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-06-16 13:51:06 +0200
commitabeede7011da6c88e83ed260b909c140b8c9c250 (patch)
tree22762e6e112cffa6377dfbfce9baf17725e70be6 /tools/lib/bpf/bpf_prog_linfo.c
parenta8d4d1f212c38aa78574914cdd44eb7d5933ba79 (diff)
kmsan: do not wipe out origin when doing partial unpoisoning
commit 2ef3cec44c60ae171b287db7fc2aa341586d65ba upstream. As noticed by Brian, KMSAN should not be zeroing the origin when unpoisoning parts of a four-byte uninitialized value, e.g.: char a[4]; kmsan_unpoison_memory(a, 1); This led to false negatives, as certain poisoned values could receive zero origins, preventing those values from being reported. To fix the problem, check that kmsan_internal_set_shadow_origin() writes zero origins only to slots which have zero shadow. Link: https://lkml.kernel.org/r/20240528104807.738758-1-glider@google.com Fixes: f80be4571b19 ("kmsan: add KMSAN runtime core") Signed-off-by: Alexander Potapenko <glider@google.com> Reported-by: Brian Johannesmeyer <bjohannesmeyer@gmail.com> Link: https://lore.kernel.org/lkml/20240524232804.1984355-1-bjohannesmeyer@gmail.com/T/ Reviewed-by: Marco Elver <elver@google.com> Tested-by: Brian Johannesmeyer <bjohannesmeyer@gmail.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: Kees Cook <keescook@chromium.org> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools/lib/bpf/bpf_prog_linfo.c')
0 files changed, 0 insertions, 0 deletions