lkml.org 
[lkml]   [2021]   [Sep]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH v2 5/5] kfence: add note to documentation about skipping covered allocations
    On Tue, 21 Sept 2021 at 12:10, Marco Elver <elver@google.com> wrote:
    >
    > Add a note briefly mentioning the new policy about "skipping currently
    > covered allocations if pool close to full." Since this has a notable
    > impact on KFENCE's bug-detection ability on systems with large uptimes,
    > it is worth pointing out the feature.
    >
    > Signed-off-by: Marco Elver <elver@google.com>

    Reviewed-by: Dmitry Vyukov <dvyukov@google.com>

    > ---
    > v2:
    > * Rewrite.
    > ---
    > Documentation/dev-tools/kfence.rst | 11 +++++++++++
    > 1 file changed, 11 insertions(+)
    >
    > diff --git a/Documentation/dev-tools/kfence.rst b/Documentation/dev-tools/kfence.rst
    > index 0fbe3308bf37..d45f952986ae 100644
    > --- a/Documentation/dev-tools/kfence.rst
    > +++ b/Documentation/dev-tools/kfence.rst
    > @@ -269,6 +269,17 @@ tail of KFENCE's freelist, so that the least recently freed objects are reused
    > first, and the chances of detecting use-after-frees of recently freed objects
    > is increased.
    >
    > +If pool utilization reaches 75% (default) or above, to reduce the risk of the
    > +pool eventually being fully occupied by allocated objects yet ensure diverse
    > +coverage of allocations, KFENCE limits currently covered allocations of the
    > +same source from further filling up the pool. The "source" of an allocation is
    > +based on its partial allocation stack trace. A side-effect is that this also
    > +limits frequent long-lived allocations (e.g. pagecache) of the same source
    > +filling up the pool permanently, which is the most common risk for the pool
    > +becoming full and the sampled allocation rate dropping to zero. The threshold
    > +at which to start limiting currently covered allocations can be configured via
    > +the boot parameter ``kfence.skip_covered_thresh`` (pool usage%).
    > +
    > Interface
    > ---------
    >
    > --
    > 2.33.0.464.g1972c5931b-goog
    >

    \
     
     \ /
      Last update: 2021-09-21 12:53    [W:2.385 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site