lkml.org 
[lkml]   [2018]   [Feb]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v2] x86: consider effective protection attributes in W+X check
    >>> On 21.02.18 at 17:53, <mingo@kernel.org> wrote:

    > * Jan Beulich <JBeulich@suse.com> wrote:
    >
    >> Using just the leaf page table entry flags would cause a false warning
    >> in case _PAGE_RW is clear or _PAGE_NX is set in a higher level entry.
    >> Hand through both the current entry's flags as well as the accumulated
    >> effective value (the latter as pgprotval_t instead of pgprot_t, as it's
    >> not an actual entry's value).
    >>
    >> This in particular eliminates the false W+X warning when running under
    >> Xen, as commit 2cc42bac1c ("x86-64/Xen: eliminate W+X mappings") has to
    >> make the necessary adjustment in L2 rather than L1 (the reason is
    >> explained there). I.e. _PAGE_RW is clear there in L1, but _PAGE_NX is
    >> set in L2.
    >>
    >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
    >> Reviewed-by: Juergen Gross <jgross@suse.com>
    >> ---
    >> v2: Re-base onto tip tree. Add Xen related paragraph to description.
    >> ---
    >> arch/x86/mm/dump_pagetables.c | 92
    > ++++++++++++++++++++++++++----------------
    >> 1 file changed, 57 insertions(+), 35 deletions(-)
    >
    > There's a build failure with CONFIG_KASAN=y enabled:
    >
    > arch/x86/mm/dump_pagetables.c: In function ‘kasan_page_table’:
    > arch/x86/mm/dump_pagetables.c:365:3: error: too few arguments to function ‘note_page’
    > arch/x86/mm/dump_pagetables.c:238:13: note: declared here

    Oh, I see. Question though is what to pass as the extra argument:
    Do I need to pass in the caller's effective rights, or should I take
    kasan_page_table()'s checking against kasan_zero_p?d as an
    indication that the effective permission is zero here? I'm sorry for
    this probably trivial question, but I know nothing about how KASAN
    works.

    Jan

    \
     
     \ /
      Last update: 2018-02-22 11:13    [W:2.811 / U:0.156 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site