Revision 14d6d86c210aea1a83c19a8f6391ecabcbefed94 authored by Alexei Starovoitov on 19 November 2020, 18:45:55 UTC, committed by Alexei Starovoitov on 19 November 2020, 19:58:15 UTC
Daniel Xu says: ==================== 6ae08ae3dea2 ("bpf: Add probe_read_{user, kernel} and probe_read_{user, kernel}_str helpers") introduced a subtle bug where bpf_probe_read_user_str() would potentially copy a few extra bytes after the NUL terminator. This issue is particularly nefarious when strings are used as map keys, as seemingly identical strings can occupy multiple entries in a map. This patchset fixes the issue and introduces a selftest to prevent future regressions. v6 -> v7: * Add comments v5 -> v6: * zero-pad up to sizeof(unsigned long) after NUL v4 -> v5: * don't read potentially uninitialized memory v3 -> v4: * directly pass userspace pointer to prog * test more strings of different length v2 -> v3: * set pid filter before attaching prog in selftest * use long instead of int as bpf_probe_read_user_str() retval * style changes v1 -> v2: * add Fixes: tag * add selftest ==================== Signed-off-by: Alexei Starovoitov <ast@kernel.org>
File | Mode | Size |
---|---|---|
Makefile | -rw-r--r-- | 522 bytes |
atomic.h | -rw-r--r-- | 482 bytes |
core.c | -rw-r--r-- | 37.2 KB |
debugfs.c | -rw-r--r-- | 7.4 KB |
encoding.h | -rw-r--r-- | 2.8 KB |
kcsan-test.c | -rw-r--r-- | 34.7 KB |
kcsan.h | -rw-r--r-- | 3.3 KB |
report.c | -rw-r--r-- | 19.1 KB |
selftest.c | -rw-r--r-- | 3.5 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...