LoongArch fixes for v6.9-rc6
-----BEGIN PGP SIGNATURE----- iQJKBAABCAA0FiEEzOlt8mkP+tbeiYy5AoYrw/LiJnoFAmYrWxAWHGNoZW5odWFj YWlAa2VybmVsLm9yZwAKCRAChivD8uImeufHEACHmzoVFm0aYhxCII1KYYAbybqR za4Zr0/TrqgwYslVW6OEcbv5g3Mqcv/Lx5eCCpN5nfKYxK33RJJsLzowesujmLtX P0Kbj1vhJycXi0dwgam8wQLKblQ3IQJf9vwWR6PpLQro6GM79W3XfZB0aqNdsmg2 Oi8oR0uXa5kfq3eLa6QQwwzkW515rgn2rH0hHHP9menIVQZ/Vblp1fTUkhYf3S+j AXC3jOyrjIewCnxFVu+7vqIIkOYqp99ZW6B31MMt3DktVvOGt8rckQ9Ytq7JhAFk uB5Gj96HVgzg+YZHz69tZ1xR3mv6DoCzeeNz0uKHYa3CpRoz570jO8uZkkG0JNf7 TefAhJyB+pRR2qUJ+8eW+24iKxDfjMt9XOwCnyebC4T8DvsDwUWYRjI7/qXMWy/3 MsUfYQaWpEZWKTFHBUuIOHhgu6y5qfyiFoDz5/e11hnKpM4xwmA1MN/ZfU04p+dv vtAS3JjPorSHiLktbgcY0pOsCMZadwUkWXD/chIYXxp1Sz72N5ixd4gGwH2RtF8R +opGPMFB49knYwLoSddNdSfwOEsLh3eWzizh0M2cfitdacU09XTVUc60CAYNWTUH yERhg/DsAyW1XnjlGzMsIMvuImYJ7rAUO9PF35fIjD82ZiUZyxn0wDd761+zKDNd Bfb3tu8zFYk+0zlLqg== =3eqZ -----END PGP SIGNATURE----- Merge tag 'loongarch-fixes-6.9-2' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson Pull LoongArch fixes from Huacai Chen: "Fix some build errors and some trivial runtime bugs" * tag 'loongarch-fixes-6.9-2' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson: LoongArch: Lately init pmu after smp is online LoongArch: Fix callchain parse error with kernel tracepoint events LoongArch: Fix access error when read fault on a write-only VMA LoongArch: Fix a build error due to __tlb_remove_tlb_entry() LoongArch: Fix Kconfig item and left code related to CRASH_CORE
This commit is contained in:
commit
09ef295717
@ -595,7 +595,7 @@ config ARCH_SELECTS_CRASH_DUMP
|
|||||||
select RELOCATABLE
|
select RELOCATABLE
|
||||||
|
|
||||||
config ARCH_HAS_GENERIC_CRASHKERNEL_RESERVATION
|
config ARCH_HAS_GENERIC_CRASHKERNEL_RESERVATION
|
||||||
def_bool CRASH_CORE
|
def_bool CRASH_RESERVE
|
||||||
|
|
||||||
config RELOCATABLE
|
config RELOCATABLE
|
||||||
bool "Relocatable kernel"
|
bool "Relocatable kernel"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||||
#ifndef _LOONGARCH_CRASH_CORE_H
|
#ifndef _LOONGARCH_CRASH_RESERVE_H
|
||||||
#define _LOONGARCH_CRASH_CORE_H
|
#define _LOONGARCH_CRASH_RESERVE_H
|
||||||
|
|
||||||
#define CRASH_ALIGN SZ_2M
|
#define CRASH_ALIGN SZ_2M
|
||||||
|
|
@ -7,6 +7,14 @@
|
|||||||
#ifndef __LOONGARCH_PERF_EVENT_H__
|
#ifndef __LOONGARCH_PERF_EVENT_H__
|
||||||
#define __LOONGARCH_PERF_EVENT_H__
|
#define __LOONGARCH_PERF_EVENT_H__
|
||||||
|
|
||||||
|
#include <asm/ptrace.h>
|
||||||
|
|
||||||
#define perf_arch_bpf_user_pt_regs(regs) (struct user_pt_regs *)regs
|
#define perf_arch_bpf_user_pt_regs(regs) (struct user_pt_regs *)regs
|
||||||
|
|
||||||
|
#define perf_arch_fetch_caller_regs(regs, __ip) { \
|
||||||
|
(regs)->csr_era = (__ip); \
|
||||||
|
(regs)->regs[3] = current_stack_pointer; \
|
||||||
|
(regs)->regs[22] = (unsigned long) __builtin_frame_address(0); \
|
||||||
|
}
|
||||||
|
|
||||||
#endif /* __LOONGARCH_PERF_EVENT_H__ */
|
#endif /* __LOONGARCH_PERF_EVENT_H__ */
|
||||||
|
@ -132,8 +132,6 @@ static __always_inline void invtlb_all(u32 op, u32 info, u64 addr)
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define __tlb_remove_tlb_entry(tlb, ptep, address) do { } while (0)
|
|
||||||
|
|
||||||
static void tlb_flush(struct mmu_gather *tlb);
|
static void tlb_flush(struct mmu_gather *tlb);
|
||||||
|
|
||||||
#define tlb_flush tlb_flush
|
#define tlb_flush tlb_flush
|
||||||
|
@ -884,4 +884,4 @@ static int __init init_hw_perf_events(void)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
early_initcall(init_hw_perf_events);
|
pure_initcall(init_hw_perf_events);
|
||||||
|
@ -202,10 +202,10 @@ good_area:
|
|||||||
if (!(vma->vm_flags & VM_WRITE))
|
if (!(vma->vm_flags & VM_WRITE))
|
||||||
goto bad_area;
|
goto bad_area;
|
||||||
} else {
|
} else {
|
||||||
if (!(vma->vm_flags & VM_READ) && address != exception_era(regs))
|
|
||||||
goto bad_area;
|
|
||||||
if (!(vma->vm_flags & VM_EXEC) && address == exception_era(regs))
|
if (!(vma->vm_flags & VM_EXEC) && address == exception_era(regs))
|
||||||
goto bad_area;
|
goto bad_area;
|
||||||
|
if (!(vma->vm_flags & (VM_READ | VM_WRITE)) && address != exception_era(regs))
|
||||||
|
goto bad_area;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user