lkml.org 
[lkml]   [2021]   [Dec]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH mm v5 12/39] kasan, page_alloc: move SetPageSkipKASanPoison in post_alloc_hook
    Date
    From: Andrey Konovalov <andreyknvl@google.com>

    Pull the SetPageSkipKASanPoison() call in post_alloc_hook() out of the
    big if clause for better code readability. This also allows for more
    simplifications in the following patches.

    Also turn the kasan_has_integrated_init() check into the proper
    kasan_hw_tags_enabled() one. These checks evaluate to the same value,
    but logically skipping kasan poisoning has nothing to do with
    integrated init.

    Signed-off-by: Andrey Konovalov <andreyknvl@google.com>

    ---

    Changes v3->v4:
    - Use proper kasan_hw_tags_enabled() check instead of
    IS_ENABLED(CONFIG_KASAN_HW_TAGS).
    ---
    mm/page_alloc.c | 6 +++---
    1 file changed, 3 insertions(+), 3 deletions(-)

    diff --git a/mm/page_alloc.c b/mm/page_alloc.c
    index 2fe02d216c5e..d96a43db90c8 100644
    --- a/mm/page_alloc.c
    +++ b/mm/page_alloc.c
    @@ -2435,9 +2435,6 @@ inline void post_alloc_hook(struct page *page, unsigned int order,
    init = false;
    }
    if (kasan_has_integrated_init()) {
    - if (gfp_flags & __GFP_SKIP_KASAN_POISON)
    - SetPageSkipKASanPoison(page);
    -
    if (!init_tags)
    kasan_unpoison_pages(page, order, init);
    } else {
    @@ -2446,6 +2443,9 @@ inline void post_alloc_hook(struct page *page, unsigned int order,
    if (init)
    kernel_init_free_pages(page, 1 << order);
    }
    + /* Propagate __GFP_SKIP_KASAN_POISON to page flags. */
    + if (kasan_hw_tags_enabled() && (gfp_flags & __GFP_SKIP_KASAN_POISON))
    + SetPageSkipKASanPoison(page);

    set_page_owner(page, order, gfp_flags);
    page_table_check_alloc(page, order);
    --
    2.25.1
    \
     
     \ /
      Last update: 2021-12-30 20:14    [W:5.556 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site