diff options
author | Peter Zijlstra <peterz@infradead.org> | 2016-11-14 18:06:19 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2017-02-10 09:04:19 +0100 |
commit | f405df5de3170c00e5c54f8b7cf4766044a032ba (patch) | |
tree | 62a9ba9a77852bf103b638a1b580919f0e58ffc4 /lib | |
parent | 0754445d71c37a7afd4f0790a9be4cf53c1b8cc4 (diff) | |
download | linux-stable-f405df5de3170c00e5c54f8b7cf4766044a032ba.tar.gz linux-stable-f405df5de3170c00e5c54f8b7cf4766044a032ba.tar.bz2 linux-stable-f405df5de3170c00e5c54f8b7cf4766044a032ba.zip |
refcount_t: Introduce a special purpose refcount type
Provide refcount_t, an atomic_t like primitive built just for
refcounting.
It provides saturation semantics such that overflow becomes impossible
and thereby 'spurious' use-after-free is avoided.
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Kconfig.debug | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 5b37821632a2..8f1f0e609891 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -716,6 +716,19 @@ source "lib/Kconfig.kmemcheck" source "lib/Kconfig.kasan" +config DEBUG_REFCOUNT + bool "Verbose refcount checks" + help + Say Y here if you want reference counters (refcount_t and kref) to + generate WARNs on dubious usage. Without this refcount_t will still + be a saturating counter and avoid Use-After-Free by turning it into + a resource leak Denial-Of-Service. + + Use of this option will increase kernel text size but will alert the + admin of potential abuse. + + If in doubt, say "N". + endmenu # "Memory Debugging" config ARCH_HAS_KCOV |