lkml.org 
[lkml]   [2017]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH v1 00/11] mm/kasan: support per-page shadow memory to reduce memory consumption
    On Mon, May 15, 2017 at 9:34 PM, Dmitry Vyukov <dvyukov@google.com> wrote:
    > On Mon, May 15, 2017 at 6:16 PM, <js1304@gmail.com> wrote:
    >> From: Joonsoo Kim <iamjoonsoo.kim@lge.com>
    >>
    >> Hello, all.
    >>
    >> This is an attempt to recude memory consumption of KASAN. Please see
    >> following description to get the more information.
    >>
    >> 1. What is per-page shadow memory
    >
    > Hi Joonsoo,
    >
    > First I need to say that this is great work. I wanted KASAN to consume
    > 1/8-th of _kernel_ memory rather than total physical memory for a long
    > time.
    >
    > However, this implementation does not work inline instrumentation. And
    > the inline instrumentation is the main mode for KASAN. Outline
    > instrumentation is merely a rudiment to support gcc 4.9, and it needs
    > to be removed as soon as we stop caring about gcc 4.9 (do we at all?
    > is it the current compiler in any distro? Ubuntu 12 has 4.8, Ubuntu 14
    > already has 5.4. And if you build gcc yourself or get a fresher
    > compiler from somewhere else, you hopefully get something better than
    > 4.9).
    >
    > Here is an example boot+scp log with inline instrumentation:
    > https://gist.githubusercontent.com/dvyukov/dfdc8b6972ddd260b201a85d5d5cdb5d/raw/2a032cd5be371c7ad6cad8f14c0a0610e6fa772e/gistfile1.txt
    >
    > Joonsoo, can you think of a way to take advantages of your approach,
    > but make it work with inline instrumentation?
    >
    > Will it work if we map a single zero page for whole shadow initially,
    > and then lazily map real shadow pages only for kernel memory, and then
    > remap it again to zero pages when the whole KASAN_SHADOW_SCALE_SHIFT
    > range of pages becomes unused (similarly to what you do in
    > kasan_unmap_shadow())?


    Just in case, I've uploaded a squashed version of this to codereview
    site, if somebody will find it useful:
    https://codereview.appspot.com/325780043
    (side-by-side diffs is what you want)

    \
     
     \ /
      Last update: 2017-05-16 06:48    [W:5.942 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site