Thread (66 messages) 66 messages, 16 authors, 2018-08-08

Re: [PATCH v4 00/17] khwasan: kernel hardware assisted address sanitizer

From: Andrew Morton <akpm@linux-foundation.org>
Date: 2018-07-02 19:21:21
Also in: linux-arm-kernel, linux-kbuild, linux-mm, lkml

On Mon, 2 Jul 2018 12:16:42 -0700 Evgenii Stepanov [off-list ref] wrote:
On Fri, Jun 29, 2018 at 7:41 PM, Andrew Morton
[off-list ref] wrote:
quoted
On Fri, 29 Jun 2018 14:45:08 +0200 Andrey Konovalov [off-list ref] wrote:
quoted
quoted
quoted
What kind of memory consumption testing would you like to see?
Well, 100kb or so is a teeny amount on virtually any machine.  I'm
assuming the savings are (much) more significant once the machine gets
loaded up and doing work?
So with clean kernel after boot we get 40 kb memory usage. With KASAN
it is ~120 kb, which is 200% overhead. With KHWASAN it's 50 kb, which
is 25% overhead. This should approximately scale to any amounts of
used slab memory. For example with 100 mb memory usage we would get
+200 mb for KASAN and +25 mb with KHWASAN. (And KASAN also requires
quarantine for better use-after-free detection). I can explicitly
mention the overhead in %s in the changelog.

If you think it makes sense, I can also make separate measurements
with some workload. What kind of workload should I use?
Whatever workload people were running when they encountered problems
with KASAN memory consumption ;)

I dunno, something simple.  `find / > /dev/null'?
Looking at a live Android device under load, slab (according to
/proc/meminfo) + kernel stack take 8-10% available RAM (~350MB).
Kasan's overhead of 2x - 3x on top of it is not insignificant.
(top-posting repaired.  Please don't)

For a debugging, not-for-production-use feature, that overhead sounds
quite acceptable to me.  What problems is it known to cause?

--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help