From: Albert van der Linde <alinde@xxxxxxxxxx> The goal of this series is to improve testing of fault-tolerance in usages of user memory access functions, by adding support for fault injection. The first patch adds failure injection capability for usercopy functions. The second changes usercopy functions to use this new failure capability (copy_from_user, ...). The third patch adds get/put/clear_user failures to x86. Changes in v2: - simplified overall failure capability by either failing or not, without having functions fail partially by copying/clearing only some bytes Changes in v3: - adressed comments from Peter Zijlstra: fixed inconsistent ordering with might_fault() Albert van der Linde (3): lib, include/linux: add usercopy failure capability lib, uaccess: add failure injection to usercopy functions x86: add failure injection to get/put/clear_user .../admin-guide/kernel-parameters.txt | 1 + .../fault-injection/fault-injection.rst | 7 +- arch/x86/include/asm/uaccess.h | 68 +++++++++++-------- arch/x86/lib/usercopy_64.c | 3 + include/linux/fault-inject-usercopy.h | 22 ++++++ include/linux/uaccess.h | 11 ++- lib/Kconfig.debug | 7 ++ lib/Makefile | 1 + lib/fault-inject-usercopy.c | 39 +++++++++++ lib/iov_iter.c | 5 ++ lib/strncpy_from_user.c | 3 + lib/usercopy.c | 5 +- 12 files changed, 140 insertions(+), 32 deletions(-) create mode 100644 include/linux/fault-inject-usercopy.h create mode 100644 lib/fault-inject-usercopy.c -- 2.28.0.402.g5ffc5be6b7-goog