Hi all, This is version three of the patches I previously posted here:
v1: https://lkml.kernel.org/r/20190802101000.12958-1-w...@kernel.org v2: https://lkml.kernel.org/r/20190827163204.29903-1-w...@kernel.org Changes since v2 include: - Remove the x86 assembly version and enable this code unconditionally - Move saturation warnings out-of-line to reduce image bloat Cheers, Will Cc: Kees Cook <keesc...@chromium.org> Cc: Ingo Molnar <mi...@kernel.org> Cc: Elena Reshetova <elena.reshet...@intel.com> Cc: Peter Zijlstra <pet...@infradead.org> Cc: Ard Biesheuvel <ard.biesheu...@linaro.org> Cc: Hanjun Guo <guohan...@huawei.com> Cc: Jan Glauber <jglau...@marvell.com> --->8 Will Deacon (10): lib/refcount: Define constants for saturation and max refcount values lib/refcount: Ensure integer operands are treated as signed lib/refcount: Remove unused refcount_*_checked() variants lib/refcount: Move bulk of REFCOUNT_FULL implementation into header lib/refcount: Improve performance of generic REFCOUNT_FULL code lib/refcount: Move saturation warnings out of line lib/refcount: Consolidate REFCOUNT_{MAX,SATURATED} definitions refcount: Consolidate implementations of refcount_t lib/refcount: Remove unused 'refcount_error_report()' function drivers/lkdtm: Remove references to CONFIG_REFCOUNT_FULL arch/Kconfig | 21 --- arch/arm/Kconfig | 1 - arch/arm64/Kconfig | 1 - arch/s390/configs/debug_defconfig | 1 - arch/x86/Kconfig | 1 - arch/x86/include/asm/asm.h | 6 - arch/x86/include/asm/refcount.h | 126 -------------- arch/x86/mm/extable.c | 49 ------ drivers/gpu/drm/i915/Kconfig.debug | 1 - drivers/misc/lkdtm/refcount.c | 11 +- include/linux/kernel.h | 7 - include/linux/refcount.h | 231 +++++++++++++++++++++----- kernel/panic.c | 11 -- lib/refcount.c | 255 +++-------------------------- 14 files changed, 219 insertions(+), 503 deletions(-) delete mode 100644 arch/x86/include/asm/refcount.h -- 2.23.0.581.g78d2f28ef7-goog