lkml.org 
[lkml]   [2021]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 017/575] parisc: Fix set_fixmap() on PA1.x CPUs
    Date
    From: Helge Deller <deller@gmx.de>

    commit 6e866a462867b60841202e900f10936a0478608c upstream.

    Fix a kernel crash which happens on PA1.x CPUs while initializing the
    FTRACE/KPROBE breakpoints. The PTE table entries for the fixmap area
    were not created correctly.

    Signed-off-by: Helge Deller <deller@gmx.de>
    Fixes: ccfbc68d41c2 ("parisc: add set_fixmap()/clear_fixmap()")
    Cc: stable@vger.kernel.org # v5.2+
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    arch/parisc/mm/fixmap.c | 5 +----
    1 file changed, 1 insertion(+), 4 deletions(-)

    --- a/arch/parisc/mm/fixmap.c
    +++ b/arch/parisc/mm/fixmap.c
    @@ -20,12 +20,9 @@ void notrace set_fixmap(enum fixed_addre
    pte_t *pte;

    if (pmd_none(*pmd))
    - pmd = pmd_alloc(NULL, pud, vaddr);
    -
    - pte = pte_offset_kernel(pmd, vaddr);
    - if (pte_none(*pte))
    pte = pte_alloc_kernel(pmd, vaddr);

    + pte = pte_offset_kernel(pmd, vaddr);
    set_pte_at(&init_mm, vaddr, pte, __mk_pte(phys, PAGE_KERNEL_RWX));
    flush_tlb_kernel_range(vaddr, vaddr + PAGE_SIZE);
    }

    \
     
     \ /
      Last update: 2021-11-15 19:43    [W:4.057 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site