Searched hist:dd7c983e78a28ff0b22f8bcf32a303b4f79cb318 (Results 1 – 2 of 2) sorted by relevance
/linux/arch/csky/mm/ |
H A D | cachev2.c | diff dd7c983e78a28ff0b22f8bcf32a303b4f79cb318 Tue Mar 31 16:15:42 CEST 2020 Guo Ren <guoren@linux.alibaba.com> csky/ftrace: Fixup ftrace_modify_code deadlock without CPU_HAS_ICACHE_INS
If ICACHE_INS is not supported, we use IPI to sync icache on each core. But ftrace_modify_code is called from stop_machine from default implementation of arch_ftrace_update_code and stop_machine callback is irq_disabled. When you call ipi with irq_disabled, a deadlock will happen.
We couldn't use icache_flush with irq_disabled, but startup make_nop is specific case and it needn't ipi other cores.
Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
|
/linux/arch/csky/kernel/ |
H A D | ftrace.c | diff dd7c983e78a28ff0b22f8bcf32a303b4f79cb318 Tue Mar 31 16:15:42 CEST 2020 Guo Ren <guoren@linux.alibaba.com> csky/ftrace: Fixup ftrace_modify_code deadlock without CPU_HAS_ICACHE_INS
If ICACHE_INS is not supported, we use IPI to sync icache on each core. But ftrace_modify_code is called from stop_machine from default implementation of arch_ftrace_update_code and stop_machine callback is irq_disabled. When you call ipi with irq_disabled, a deadlock will happen.
We couldn't use icache_flush with irq_disabled, but startup make_nop is specific case and it needn't ipi other cores.
Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
|