cpus: pass CPUState to run_on_cpu helpers
authorAlex Bennée <alex.bennee@linaro.org>
Tue, 2 Aug 2016 17:27:33 +0000 (18:27 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 27 Sep 2016 09:57:29 +0000 (11:57 +0200)
commite0eeb4a21a3ca4b296220ce4449d8acef9de9049
tree6dc015912abc9027c9782ba0e8fe23ddf1018cc2
parent4a0588996a5848ce9550188d0f60642636815059
cpus: pass CPUState to run_on_cpu helpers

CPUState is a fairly common pointer to pass to these helpers. This means
if you need other arguments for the async_run_on_cpu case you end up
having to do a g_malloc to stuff additional data into the routine. For
the current users this isn't a massive deal but for MTTCG this gets
cumbersome when the only other parameter is often an address.

This adds the typedef run_on_cpu_func for helper functions which has an
explicit CPUState * passed as the first parameter. All the users of
run_on_cpu and async_run_on_cpu have had their helpers updated to use
CPUState where available.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
[Sergey Fedorov:
 - eliminate more CPUState in user data;
 - remove unnecessary user data passing;
 - fix target-s390x/kvm.c and target-s390x/misc_helper.c]
Signed-off-by: Sergey Fedorov <sergey.fedorov@linaro.org>
Acked-by: David Gibson <david@gibson.dropbear.id.au> (ppc parts)
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com> (s390 parts)
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <1470158864-17651-3-git-send-email-alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
14 files changed:
cpus.c
hw/i386/kvm/apic.c
hw/i386/kvmvapic.c
hw/ppc/ppce500_spin.c
hw/ppc/spapr.c
hw/ppc/spapr_hcall.c
include/qom/cpu.h
kvm-all.c
target-i386/helper.c
target-i386/kvm.c
target-s390x/cpu.c
target-s390x/cpu.h
target-s390x/kvm.c
target-s390x/misc_helper.c