original_kernel/arch/loongarch/kernel
Bibo Mao d43f37b734 LoongArch: Implement constant timer shutdown interface
When a cpu is hot-unplugged, it is put in idle state and the function
arch_cpu_idle_dead() is called. The timer interrupt for this processor
should be disabled, otherwise there will be pending timer interrupt for
the unplugged cpu, so that vcpu is prevented from giving up scheduling
when system is running in vm mode.

This patch implements the timer shutdown interface so that the constant
timer will be properly disabled when a CPU is hot-unplugged.

Reviewed-by: WANG Xuerui <git@xen0n.name>
Signed-off-by: Bibo Mao <maobibo@loongson.cn>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
2023-11-21 15:03:25 +08:00
..
.gitignore
Makefile LoongArch: Fix some build warnings with W=1 2023-09-20 14:26:28 +08:00
access-helper.h
acpi.c LoongArch: Fix some build warnings with W=1 2023-09-20 14:26:28 +08:00
alternative.c
asm-offsets.c LoongArch: KVM: Implement vcpu world switch 2023-10-02 10:01:29 +08:00
cacheinfo.c
cpu-probe.c LoongArch: Add Loongson Binary Translation (LBT) extension support 2023-09-06 22:53:55 +08:00
crash_dump.c
dma.c
efi-header.S LoongArch: Calculate various sizes in the linker script 2023-06-29 20:58:42 +08:00
efi.c efi: move screen_info into efi init code 2023-10-17 16:33:39 +02:00
elf.c
entry.S LoongArch: Use SYM_CODE_* to annotate exception handlers 2023-10-18 08:42:52 +08:00
env.c
fpu.S LoongArch: Add Loongson Binary Translation (LBT) extension support 2023-09-06 22:53:55 +08:00
ftrace.c
ftrace_dyn.c LoongArch: ftrace: Add direct call support 2023-05-01 17:19:53 +08:00
genex.S LoongArch: Use SYM_CODE_* to annotate exception handlers 2023-10-18 08:42:52 +08:00
head.S LoongArch: Add KASAN (Kernel Address Sanitizer) support 2023-09-06 22:54:16 +08:00
hw_breakpoint.c LoongArch: Fix hw_breakpoint_control() for watchpoints 2023-08-26 22:21:57 +08:00
idle.c
image-vars.h efi: move screen_info into efi init code 2023-10-17 16:33:39 +02:00
inst.c LoongArch: Add larch_insn_gen_break() to generate break insns 2023-06-29 20:58:44 +08:00
io.c
irq.c LoongArch: Clean up the architectural interrupt definitions 2023-05-01 17:19:10 +08:00
jump_label.c LoongArch: Add jump-label implementation 2023-06-29 20:58:44 +08:00
kfpu.c LoongArch: Allow usage of LSX/LASX in the kernel 2023-09-06 22:53:55 +08:00
kgdb.c LoongArch: Add basic KGDB & KDB support 2023-09-06 22:53:55 +08:00
kprobes.c LoongArch: Use larch_insn_gen_break() for kprobes 2023-06-29 20:58:44 +08:00
lbt.S LoongArch: Add Loongson Binary Translation (LBT) extension support 2023-09-06 22:53:55 +08:00
machine_kexec.c
mcount.S LoongArch: Replace #include <asm/export.h> with #include <linux/export.h> 2023-08-25 23:40:26 +08:00
mcount_dyn.S LoongArch: Remove unneeded #include <asm/export.h> 2023-08-25 23:40:26 +08:00
mem.c LoongArch: Set all reserved memblocks on Node#0 at initialization 2023-09-20 14:26:29 +08:00
module-sections.c LoongArch: Fix some build warnings with W=1 2023-09-20 14:26:28 +08:00
module.c LoongArch: Add support for 64_PCREL relocation type 2023-09-27 16:19:13 +08:00
numa.c LoongArch: numa: Fix high_memory calculation 2023-09-27 16:19:13 +08:00
perf_event.c LoongArch: Fix perf event id calculation 2023-06-15 14:35:52 +08:00
perf_regs.c
proc.c LoongArch: Introduce hardware page table walker 2023-06-29 20:58:44 +08:00
process.c LoongArch: Fix some build warnings with W=1 2023-09-20 14:26:28 +08:00
ptrace.c LoongArch: Add Loongson Binary Translation (LBT) extension support 2023-09-06 22:53:55 +08:00
relocate.c LoongArch: Silence the boot warning about 'nokaslr' 2023-11-21 15:03:25 +08:00
relocate_kernel.S LoongArch: Remove dead code in relocate_new_kernel 2023-09-20 14:26:29 +08:00
reset.c
rethook.c LoongArch: Replace kretprobe with rethook 2023-06-29 20:58:44 +08:00
rethook.h LoongArch: Replace kretprobe with rethook 2023-06-29 20:58:44 +08:00
rethook_trampoline.S LoongArch: Replace kretprobe with rethook 2023-06-29 20:58:44 +08:00
setup.c TTY/Serial changes for 6.7-rc1 2023-11-03 15:44:25 -10:00
signal.c LoongArch: Fix some build warnings with W=1 2023-09-20 14:26:28 +08:00
smp.c LoongArch/smp: Call rcutree_report_cpu_starting() earlier 2023-11-08 14:12:15 +08:00
stacktrace.c LoongArch: Get partial stack information when providing regs parameter 2023-09-06 22:54:16 +08:00
switch.S
syscall.c LoongArch: Fix some build warnings with W=1 2023-09-20 14:26:28 +08:00
sysrq.c tty: sysrq: switch sysrq handlers from int to u8 2023-07-25 19:21:03 +02:00
time.c LoongArch: Implement constant timer shutdown interface 2023-11-21 15:03:25 +08:00
topology.c LoongArch: Fix some build warnings with W=1 2023-09-20 14:26:28 +08:00
traps.c LoongArch: Fix some build warnings with W=1 2023-09-20 14:26:28 +08:00
unaligned.c LoongArch: Delete unnecessary debugfs checking 2023-06-29 20:58:42 +08:00
unwind.c LoongArch: Check unwind_error() in arch_stack_walk() 2023-04-19 12:07:27 +08:00
unwind_guess.c
unwind_prologue.c LoongArch: Check unwind_error() in arch_stack_walk() 2023-04-19 12:07:27 +08:00
uprobes.c LoongArch: Add uprobes support 2023-06-29 20:58:44 +08:00
vdso.c LoongArch: Add support to clone a time namespace 2023-06-29 20:58:43 +08:00
vmlinux.lds.S LoongArch: Fix lockdep static memory detection 2023-09-20 14:26:28 +08:00