[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v8 67/74] riscv: convert to cpu_has_work_with_iothread_lock
From: |
Robert Foley |
Subject: |
[PATCH v8 67/74] riscv: convert to cpu_has_work_with_iothread_lock |
Date: |
Thu, 26 Mar 2020 15:31:49 -0400 |
From: "Emilio G. Cota" <address@hidden>
Soon we will call cpu_has_work without the BQL.
Cc: Palmer Dabbelt <address@hidden>
Cc: Sagar Karandikar <address@hidden>
Cc: Bastian Koppelmann <address@hidden>
Reviewed-by: Palmer Dabbelt <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Reviewed-by: Alistair Francis <address@hidden>
Signed-off-by: Emilio G. Cota <address@hidden>
Signed-off-by: Robert Foley <address@hidden>
---
target/riscv/cpu.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c
index 4e578239d3..ebc2483bec 100644
--- a/target/riscv/cpu.c
+++ b/target/riscv/cpu.c
@@ -314,6 +314,9 @@ static bool riscv_cpu_has_work(CPUState *cs)
#ifndef CONFIG_USER_ONLY
RISCVCPU *cpu = RISCV_CPU(cs);
CPURISCVState *env = &cpu->env;
+
+ g_assert(qemu_mutex_iothread_locked());
+
/*
* Definition of the WFI instruction requires it to ignore the privilege
* mode and delegation registers, but respect individual enables
@@ -515,7 +518,7 @@ static void riscv_cpu_class_init(ObjectClass *c, void *data)
device_class_set_parent_reset(dc, riscv_cpu_reset, &mcc->parent_reset);
cc->class_by_name = riscv_cpu_class_by_name;
- cc->has_work = riscv_cpu_has_work;
+ cc->has_work_with_iothread_lock = riscv_cpu_has_work;
cc->do_interrupt = riscv_cpu_do_interrupt;
cc->cpu_exec_interrupt = riscv_cpu_exec_interrupt;
cc->dump_state = riscv_cpu_dump_state;
--
2.17.1
- [PATCH v8 56/74] sparc: convert to cpu_interrupt_request, (continued)
- [PATCH v8 56/74] sparc: convert to cpu_interrupt_request, Robert Foley, 2020/03/26
- [PATCH v8 59/74] microblaze: convert to cpu_interrupt_request, Robert Foley, 2020/03/26
- [PATCH v8 60/74] accel/tcg: convert to cpu_interrupt_request, Robert Foley, 2020/03/26
- [PATCH v8 44/74] i386/hvf: convert to cpu_request_interrupt, Robert Foley, 2020/03/26
- [PATCH v8 61/74] cpu: convert to interrupt_request, Robert Foley, 2020/03/26
- [PATCH v8 62/74] cpu: call .cpu_has_work with the CPU lock held, Robert Foley, 2020/03/26
- [PATCH v8 63/74] cpu: introduce cpu_has_work_with_iothread_lock, Robert Foley, 2020/03/26
- [PATCH v8 64/74] ppc: convert to cpu_has_work_with_iothread_lock, Robert Foley, 2020/03/26
- [PATCH v8 65/74] mips: convert to cpu_has_work_with_iothread_lock, Robert Foley, 2020/03/26
- [PATCH v8 66/74] s390x: convert to cpu_has_work_with_iothread_lock, Robert Foley, 2020/03/26
- [PATCH v8 67/74] riscv: convert to cpu_has_work_with_iothread_lock,
Robert Foley <=
- [PATCH v8 68/74] sparc: convert to cpu_has_work_with_iothread_lock, Robert Foley, 2020/03/26
- [PATCH v8 69/74] xtensa: convert to cpu_has_work_with_iothread_lock, Robert Foley, 2020/03/26
- [PATCH v8 70/74] cpu: rename all_cpu_threads_idle to qemu_tcg_rr_all_cpu_threads_idle, Robert Foley, 2020/03/26
- [PATCH v8 72/74] cpus-common: release BQL earlier in run_on_cpu, Robert Foley, 2020/03/26
- [PATCH v8 71/74] cpu: protect CPU state with cpu->lock instead of the BQL, Robert Foley, 2020/03/26
- [PATCH v8 73/74] cpu: add async_run_on_cpu_no_bql, Robert Foley, 2020/03/26
- [PATCH v8 74/74] cputlb: queue async flush jobs without the BQL, Robert Foley, 2020/03/26
- Re: [PATCH v8 00/74] per-CPU locks, Aleksandar Markovic, 2020/03/26