[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC v4 05/71] cpu: move run_on_cpu to cpus-common
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [RFC v4 05/71] cpu: move run_on_cpu to cpus-common |
Date: |
Mon, 29 Oct 2018 16:34:49 +0000 |
User-agent: |
mu4e 1.1.0; emacs 26.1.50 |
Emilio G. Cota <address@hidden> writes:
> We don't pass a pointer to qemu_global_mutex anymore.
>
> Reviewed-by: Richard Henderson <address@hidden>
> Signed-off-by: Emilio G. Cota <address@hidden>
As discussed on IRC I don't fundamentally object to this being in
cpus-common given we have the other work queue stuff there. However
given it now lives there we should assert we are in system emulation
mode so if a user-mode instruction attempts to use one of the
_run_on_cpu() functions we break.
> ---
> include/qom/cpu.h | 10 ----------
> cpus-common.c | 2 +-
> cpus.c | 5 -----
> 3 files changed, 1 insertion(+), 16 deletions(-)
>
> diff --git a/include/qom/cpu.h b/include/qom/cpu.h
> index 2fad537a4f..11cbf21f00 100644
> --- a/include/qom/cpu.h
> +++ b/include/qom/cpu.h
> @@ -766,16 +766,6 @@ void qemu_cpu_kick(CPUState *cpu);
> */
> bool cpu_is_stopped(CPUState *cpu);
>
> -/**
> - * do_run_on_cpu:
> - * @cpu: The vCPU to run on.
> - * @func: The function to be executed.
> - * @data: Data to pass to the function.
> - *
> - * Used internally in the implementation of run_on_cpu.
> - */
> -void do_run_on_cpu(CPUState *cpu, run_on_cpu_func func, run_on_cpu_data
> data);
> -
> /**
> * run_on_cpu:
> * @cpu: The vCPU to run on.
> diff --git a/cpus-common.c b/cpus-common.c
> index 71469c85ce..3fccee5585 100644
> --- a/cpus-common.c
> +++ b/cpus-common.c
> @@ -127,7 +127,7 @@ static void queue_work_on_cpu(CPUState *cpu, struct
> qemu_work_item *wi)
> cpu_mutex_unlock(cpu);
> }
>
> -void do_run_on_cpu(CPUState *cpu, run_on_cpu_func func, run_on_cpu_data data)
> +void run_on_cpu(CPUState *cpu, run_on_cpu_func func, run_on_cpu_data data)
> {
> struct qemu_work_item wi;
> bool has_bql = qemu_mutex_iothread_locked();
> diff --git a/cpus.c b/cpus.c
> index d0b7f8e02d..913db6a8a4 100644
> --- a/cpus.c
> +++ b/cpus.c
> @@ -1234,11 +1234,6 @@ void qemu_init_cpu_loop(void)
> qemu_thread_get_self(&io_thread);
> }
>
> -void run_on_cpu(CPUState *cpu, run_on_cpu_func func, run_on_cpu_data data)
> -{
> - do_run_on_cpu(cpu, func, data);
> -}
> -
> static void qemu_kvm_destroy_vcpu(CPUState *cpu)
> {
> if (kvm_destroy_vcpu(cpu) < 0) {
--
Alex Bennée
- Re: [Qemu-devel] [RFC v4 15/71] tcg-runtime: convert to cpu_halted_set, (continued)
- [Qemu-devel] [RFC v4 09/71] cris: convert to helper_cpu_halted_set, Emilio G. Cota, 2018/10/25
- [Qemu-devel] [RFC v4 13/71] microblaze: convert to helper_cpu_halted_set, Emilio G. Cota, 2018/10/25
- [Qemu-devel] [RFC v4 08/71] ppc: convert to helper_cpu_halted_set, Emilio G. Cota, 2018/10/25
- [Qemu-devel] [RFC v4 07/71] tcg-runtime: define helper_cpu_halted_set, Emilio G. Cota, 2018/10/25
- [Qemu-devel] [RFC v4 05/71] cpu: move run_on_cpu to cpus-common, Emilio G. Cota, 2018/10/25
- Re: [Qemu-devel] [RFC v4 05/71] cpu: move run_on_cpu to cpus-common,
Alex Bennée <=
[Qemu-devel] [RFC v4 02/71] cpu: rename cpu->work_mutex to cpu->lock, Emilio G. Cota, 2018/10/25
[Qemu-devel] [RFC v4 39/71] i386/hax-all: convert to cpu_interrupt_request, Emilio G. Cota, 2018/10/25
[Qemu-devel] [RFC v4 06/71] cpu: introduce process_queued_cpu_work_locked, Emilio G. Cota, 2018/10/25
[Qemu-devel] [RFC v4 03/71] cpu: introduce cpu_mutex_lock/unlock, Emilio G. Cota, 2018/10/25