lkml.org 
[lkml]   [2017]   [Apr]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH] mm: Add additional consistency check
    On Tue, Apr 11, 2017 at 9:16 AM, Christoph Lameter <cl@linux.com> wrote:
    > On Tue, 11 Apr 2017, Michal Hocko wrote:
    >
    >> static inline void *index_to_obj(struct kmem_cache *cache, struct page *page,
    >> @@ -3813,14 +3818,18 @@ void kfree(const void *objp)
    >> {
    >> struct kmem_cache *c;
    >> unsigned long flags;
    >> + struct page *page;
    >>
    >> trace_kfree(_RET_IP_, objp);
    >>
    >> if (unlikely(ZERO_OR_NULL_PTR(objp)))
    >> return;
    >> + page = virt_to_head_page(obj);
    >> + if (CHECK_DATA_CORRUPTION(!PageSlab(page)))
    >
    > There is a flag SLAB_DEBUG_OBJECTS that is available for this check.
    > Consistency checks are configuraable in the slab allocator.
    >
    > Mentioned that before and got this lecture about data consistency checks.

    It seems that enabling the debug checks comes with a non-trivial
    performance impact. I'd like to see consistency checks by default so
    we can handle intentional heap corruption attacks better. This check
    isn't expensive...

    -Kees

    --
    Kees Cook
    Pixel Security

    \
     
     \ /
      Last update: 2017-04-11 18:19    [W:4.709 / U:0.036 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site