Message ID | 20161102162103.66480-1-cornelia.huck@de.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 11/02/2016 05:21 PM, Cornelia Huck wrote: > Commit 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") > attempted to convert all users of run_on_cpu to use the new > run_on_cpu_data type. It missed to change the called sigp_* routines, > however. Fix that. > > Fixes: 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") > Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> > --- > Peter, Stefan: This fixes building for s390x which is currently > broken (at least with kvm enabled). Two questions: > - Will you pick this up as a build fix, or should I do a pull req? > - Can we do anything more to catch errors like this? I think if Peter could apply this immediately this would help testing the softfreeze code. Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> > --- > target-s390x/kvm.c | 36 ++++++++++++++++++------------------ > 1 file changed, 18 insertions(+), 18 deletions(-) > > diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c > index 36b4847..97afe02 100644 > --- a/target-s390x/kvm.c > +++ b/target-s390x/kvm.c > @@ -1401,10 +1401,10 @@ static void set_sigp_status(SigpInfo *si, uint64_t status) > si->cc = SIGP_CC_STATUS_STORED; > } > > -static void sigp_start(CPUState *cs, void *arg) > +static void sigp_start(CPUState *cs, run_on_cpu_data arg) > { > S390CPU *cpu = S390_CPU(cs); > - SigpInfo *si = arg; > + SigpInfo *si = arg.host_ptr; > > if (s390_cpu_get_state(cpu) != CPU_STATE_STOPPED) { > si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; > @@ -1415,10 +1415,10 @@ static void sigp_start(CPUState *cs, void *arg) > si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; > } > > -static void sigp_stop(CPUState *cs, void *arg) > +static void sigp_stop(CPUState *cs, run_on_cpu_data arg) > { > S390CPU *cpu = S390_CPU(cs); > - SigpInfo *si = arg; > + SigpInfo *si = arg.host_ptr; > struct kvm_s390_irq irq = { > .type = KVM_S390_SIGP_STOP, > }; > @@ -1501,10 +1501,10 @@ static int kvm_s390_store_status(S390CPU *cpu, hwaddr addr, bool store_arch) > return 0; > } > > -static void sigp_stop_and_store_status(CPUState *cs, void *arg) > +static void sigp_stop_and_store_status(CPUState *cs, run_on_cpu_data arg) > { > S390CPU *cpu = S390_CPU(cs); > - SigpInfo *si = arg; > + SigpInfo *si = arg.host_ptr; > struct kvm_s390_irq irq = { > .type = KVM_S390_SIGP_STOP, > }; > @@ -1529,10 +1529,10 @@ static void sigp_stop_and_store_status(CPUState *cs, void *arg) > si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; > } > > -static void sigp_store_status_at_address(CPUState *cs, void *arg) > +static void sigp_store_status_at_address(CPUState *cs, run_on_cpu_data arg) > { > S390CPU *cpu = S390_CPU(cs); > - SigpInfo *si = arg; > + SigpInfo *si = arg.host_ptr; > uint32_t address = si->param & 0x7ffffe00u; > > /* cpu has to be stopped */ > @@ -1550,10 +1550,10 @@ static void sigp_store_status_at_address(CPUState *cs, void *arg) > si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; > } > > -static void sigp_store_adtl_status(CPUState *cs, void *arg) > +static void sigp_store_adtl_status(CPUState *cs, run_on_cpu_data arg) > { > S390CPU *cpu = S390_CPU(cs); > - SigpInfo *si = arg; > + SigpInfo *si = arg.host_ptr; > > if (!s390_has_feat(S390_FEAT_VECTOR)) { > set_sigp_status(si, SIGP_STAT_INVALID_ORDER); > @@ -1581,10 +1581,10 @@ static void sigp_store_adtl_status(CPUState *cs, void *arg) > si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; > } > > -static void sigp_restart(CPUState *cs, void *arg) > +static void sigp_restart(CPUState *cs, run_on_cpu_data arg) > { > S390CPU *cpu = S390_CPU(cs); > - SigpInfo *si = arg; > + SigpInfo *si = arg.host_ptr; > struct kvm_s390_irq irq = { > .type = KVM_S390_RESTART, > }; > @@ -1612,11 +1612,11 @@ int kvm_s390_cpu_restart(S390CPU *cpu) > return 0; > } > > -static void sigp_initial_cpu_reset(CPUState *cs, void *arg) > +static void sigp_initial_cpu_reset(CPUState *cs, run_on_cpu_data arg) > { > S390CPU *cpu = S390_CPU(cs); > S390CPUClass *scc = S390_CPU_GET_CLASS(cpu); > - SigpInfo *si = arg; > + SigpInfo *si = arg.host_ptr; > > cpu_synchronize_state(cs); > scc->initial_cpu_reset(cs); > @@ -1624,11 +1624,11 @@ static void sigp_initial_cpu_reset(CPUState *cs, void *arg) > si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; > } > > -static void sigp_cpu_reset(CPUState *cs, void *arg) > +static void sigp_cpu_reset(CPUState *cs, run_on_cpu_data arg) > { > S390CPU *cpu = S390_CPU(cs); > S390CPUClass *scc = S390_CPU_GET_CLASS(cpu); > - SigpInfo *si = arg; > + SigpInfo *si = arg.host_ptr; > > cpu_synchronize_state(cs); > scc->cpu_reset(cs); > @@ -1636,10 +1636,10 @@ static void sigp_cpu_reset(CPUState *cs, void *arg) > si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; > } > > -static void sigp_set_prefix(CPUState *cs, void *arg) > +static void sigp_set_prefix(CPUState *cs, run_on_cpu_data arg) > { > S390CPU *cpu = S390_CPU(cs); > - SigpInfo *si = arg; > + SigpInfo *si = arg.host_ptr; > uint32_t addr = si->param & 0x7fffe000u; > > cpu_synchronize_state(cs); >
On 11/04/2016 09:23 AM, Christian Borntraeger wrote: > On 11/02/2016 05:21 PM, Cornelia Huck wrote: >> Commit 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") >> attempted to convert all users of run_on_cpu to use the new >> run_on_cpu_data type. It missed to change the called sigp_* routines, >> however. Fix that. >> >> Fixes: 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") >> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> >> --- >> Peter, Stefan: This fixes building for s390x which is currently >> broken (at least with kvm enabled). Two questions: >> - Will you pick this up as a build fix, or should I do a pull req? >> - Can we do anything more to catch errors like this? > > I think if Peter could apply this immediately this would help testing > the softfreeze code. > Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> > s/Peter/Stefan/ of course. > >> --- >> target-s390x/kvm.c | 36 ++++++++++++++++++------------------ >> 1 file changed, 18 insertions(+), 18 deletions(-) >> >> diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c >> index 36b4847..97afe02 100644 >> --- a/target-s390x/kvm.c >> +++ b/target-s390x/kvm.c >> @@ -1401,10 +1401,10 @@ static void set_sigp_status(SigpInfo *si, uint64_t status) >> si->cc = SIGP_CC_STATUS_STORED; >> } >> >> -static void sigp_start(CPUState *cs, void *arg) >> +static void sigp_start(CPUState *cs, run_on_cpu_data arg) >> { >> S390CPU *cpu = S390_CPU(cs); >> - SigpInfo *si = arg; >> + SigpInfo *si = arg.host_ptr; >> >> if (s390_cpu_get_state(cpu) != CPU_STATE_STOPPED) { >> si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; >> @@ -1415,10 +1415,10 @@ static void sigp_start(CPUState *cs, void *arg) >> si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; >> } >> >> -static void sigp_stop(CPUState *cs, void *arg) >> +static void sigp_stop(CPUState *cs, run_on_cpu_data arg) >> { >> S390CPU *cpu = S390_CPU(cs); >> - SigpInfo *si = arg; >> + SigpInfo *si = arg.host_ptr; >> struct kvm_s390_irq irq = { >> .type = KVM_S390_SIGP_STOP, >> }; >> @@ -1501,10 +1501,10 @@ static int kvm_s390_store_status(S390CPU *cpu, hwaddr addr, bool store_arch) >> return 0; >> } >> >> -static void sigp_stop_and_store_status(CPUState *cs, void *arg) >> +static void sigp_stop_and_store_status(CPUState *cs, run_on_cpu_data arg) >> { >> S390CPU *cpu = S390_CPU(cs); >> - SigpInfo *si = arg; >> + SigpInfo *si = arg.host_ptr; >> struct kvm_s390_irq irq = { >> .type = KVM_S390_SIGP_STOP, >> }; >> @@ -1529,10 +1529,10 @@ static void sigp_stop_and_store_status(CPUState *cs, void *arg) >> si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; >> } >> >> -static void sigp_store_status_at_address(CPUState *cs, void *arg) >> +static void sigp_store_status_at_address(CPUState *cs, run_on_cpu_data arg) >> { >> S390CPU *cpu = S390_CPU(cs); >> - SigpInfo *si = arg; >> + SigpInfo *si = arg.host_ptr; >> uint32_t address = si->param & 0x7ffffe00u; >> >> /* cpu has to be stopped */ >> @@ -1550,10 +1550,10 @@ static void sigp_store_status_at_address(CPUState *cs, void *arg) >> si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; >> } >> >> -static void sigp_store_adtl_status(CPUState *cs, void *arg) >> +static void sigp_store_adtl_status(CPUState *cs, run_on_cpu_data arg) >> { >> S390CPU *cpu = S390_CPU(cs); >> - SigpInfo *si = arg; >> + SigpInfo *si = arg.host_ptr; >> >> if (!s390_has_feat(S390_FEAT_VECTOR)) { >> set_sigp_status(si, SIGP_STAT_INVALID_ORDER); >> @@ -1581,10 +1581,10 @@ static void sigp_store_adtl_status(CPUState *cs, void *arg) >> si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; >> } >> >> -static void sigp_restart(CPUState *cs, void *arg) >> +static void sigp_restart(CPUState *cs, run_on_cpu_data arg) >> { >> S390CPU *cpu = S390_CPU(cs); >> - SigpInfo *si = arg; >> + SigpInfo *si = arg.host_ptr; >> struct kvm_s390_irq irq = { >> .type = KVM_S390_RESTART, >> }; >> @@ -1612,11 +1612,11 @@ int kvm_s390_cpu_restart(S390CPU *cpu) >> return 0; >> } >> >> -static void sigp_initial_cpu_reset(CPUState *cs, void *arg) >> +static void sigp_initial_cpu_reset(CPUState *cs, run_on_cpu_data arg) >> { >> S390CPU *cpu = S390_CPU(cs); >> S390CPUClass *scc = S390_CPU_GET_CLASS(cpu); >> - SigpInfo *si = arg; >> + SigpInfo *si = arg.host_ptr; >> >> cpu_synchronize_state(cs); >> scc->initial_cpu_reset(cs); >> @@ -1624,11 +1624,11 @@ static void sigp_initial_cpu_reset(CPUState *cs, void *arg) >> si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; >> } >> >> -static void sigp_cpu_reset(CPUState *cs, void *arg) >> +static void sigp_cpu_reset(CPUState *cs, run_on_cpu_data arg) >> { >> S390CPU *cpu = S390_CPU(cs); >> S390CPUClass *scc = S390_CPU_GET_CLASS(cpu); >> - SigpInfo *si = arg; >> + SigpInfo *si = arg.host_ptr; >> >> cpu_synchronize_state(cs); >> scc->cpu_reset(cs); >> @@ -1636,10 +1636,10 @@ static void sigp_cpu_reset(CPUState *cs, void *arg) >> si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; >> } >> >> -static void sigp_set_prefix(CPUState *cs, void *arg) >> +static void sigp_set_prefix(CPUState *cs, run_on_cpu_data arg) >> { >> S390CPU *cpu = S390_CPU(cs); >> - SigpInfo *si = arg; >> + SigpInfo *si = arg.host_ptr; >> uint32_t addr = si->param & 0x7fffe000u; >> >> cpu_synchronize_state(cs); >> >
On 02/11/2016 17:21, Cornelia Huck wrote: > Commit 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") > attempted to convert all users of run_on_cpu to use the new > run_on_cpu_data type. It missed to change the called sigp_* routines, > however. Fix that. > > Fixes: 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") > Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> > --- > Peter, Stefan: This fixes building for s390x which is currently > broken (at least with kvm enabled). Two questions: > - Will you pick this up as a build fix, or should I do a pull req? > - Can we do anything more to catch errors like this? Fam, can we use the linux-user support in tests/docker to build QEMU with KVM support on ARM/MIPS/s390? It would be already much better, even if it obviously cannot run with KVM. Paolo
On Fri, 11/04 10:06, Paolo Bonzini wrote: > > > On 02/11/2016 17:21, Cornelia Huck wrote: > > Commit 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") > > attempted to convert all users of run_on_cpu to use the new > > run_on_cpu_data type. It missed to change the called sigp_* routines, > > however. Fix that. > > > > Fixes: 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") > > Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> > > --- > > Peter, Stefan: This fixes building for s390x which is currently > > broken (at least with kvm enabled). Two questions: > > - Will you pick this up as a build fix, or should I do a pull req? > > - Can we do anything more to catch errors like this? > > Fam, can we use the linux-user support in tests/docker to build QEMU > with KVM support on ARM/MIPS/s390? It would be already much better, > even if it obviously cannot run with KVM. I suppose you are asking adding coverage to patchew? (If you are asking if tests/docker can use linux-user to do that, the answer is yes, as long as there is debootstrap support for that platform.) I think patchew can test a few foreign configurations. The problem with that sort of tasks is that each of them can take hours, which is probably too slow for patchew, before we have more testers. But If we're to add testers, it probably is much easier if we can just add machines of different platforms (either baremetal or virtualized), and build natively. Fam
On 07/11/2016 08:36, Fam Zheng wrote: > On Fri, 11/04 10:06, Paolo Bonzini wrote: >> >> >> On 02/11/2016 17:21, Cornelia Huck wrote: >>> Commit 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") >>> attempted to convert all users of run_on_cpu to use the new >>> run_on_cpu_data type. It missed to change the called sigp_* routines, >>> however. Fix that. >>> >>> Fixes: 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") >>> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> >>> --- >>> Peter, Stefan: This fixes building for s390x which is currently >>> broken (at least with kvm enabled). Two questions: >>> - Will you pick this up as a build fix, or should I do a pull req? >>> - Can we do anything more to catch errors like this? >> >> Fam, can we use the linux-user support in tests/docker to build QEMU >> with KVM support on ARM/MIPS/s390? It would be already much better, >> even if it obviously cannot run with KVM. > > I suppose you are asking adding coverage to patchew? (If you are asking if > tests/docker can use linux-user to do that, the answer is yes, as long as there > is debootstrap support for that platform.) No, not necessarily---I use tests/docker myself before sending pull requests, and these days Peter only rejects my pull request for macOS problems. :) Paolo > I think patchew can test a few foreign configurations. The problem with that > sort of tasks is that each of them can take hours, which is probably too slow > for patchew, before we have more testers. But If we're to add testers, it > probably is much easier if we can just add machines of different platforms > (either baremetal or virtualized), and build natively. > > Fam >
On Mon, 11/07 09:34, Paolo Bonzini wrote: > > > On 07/11/2016 08:36, Fam Zheng wrote: > > On Fri, 11/04 10:06, Paolo Bonzini wrote: > >> > >> > >> On 02/11/2016 17:21, Cornelia Huck wrote: > >>> Commit 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") > >>> attempted to convert all users of run_on_cpu to use the new > >>> run_on_cpu_data type. It missed to change the called sigp_* routines, > >>> however. Fix that. > >>> > >>> Fixes: 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") > >>> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> > >>> --- > >>> Peter, Stefan: This fixes building for s390x which is currently > >>> broken (at least with kvm enabled). Two questions: > >>> - Will you pick this up as a build fix, or should I do a pull req? > >>> - Can we do anything more to catch errors like this? > >> > >> Fam, can we use the linux-user support in tests/docker to build QEMU > >> with KVM support on ARM/MIPS/s390? It would be already much better, > >> even if it obviously cannot run with KVM. > > > > I suppose you are asking adding coverage to patchew? (If you are asking if > > tests/docker can use linux-user to do that, the answer is yes, as long as there > > is debootstrap support for that platform.) > > No, not necessarily---I use tests/docker myself before sending pull > requests, and these days Peter only rejects my pull request for macOS > problems. :) OK. The command is something along: $ arch=mips $ make docker-test-quick@debian-bootstrap \ DEB_ARCH=$arch DEB_TYPE=stable \ EXECUTABLE=/usr/bin/qemu-$arch \ V=1 J=8 (FWIW, to avoid ld.so collision with the $arch binaries in the image, I only use statically compiled qemu-user.) Fam
On Wed, Nov 02, 2016 at 05:21:03PM +0100, Cornelia Huck wrote: > Commit 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") > attempted to convert all users of run_on_cpu to use the new > run_on_cpu_data type. It missed to change the called sigp_* routines, > however. Fix that. > > Fixes: 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") > Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> > --- > Peter, Stefan: This fixes building for s390x which is currently > broken (at least with kvm enabled). Two questions: > - Will you pick this up as a build fix, or should I do a pull req? > - Can we do anything more to catch errors like this? > --- > target-s390x/kvm.c | 36 ++++++++++++++++++------------------ > 1 file changed, 18 insertions(+), 18 deletions(-) Thanks, applied! Stefan
diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c index 36b4847..97afe02 100644 --- a/target-s390x/kvm.c +++ b/target-s390x/kvm.c @@ -1401,10 +1401,10 @@ static void set_sigp_status(SigpInfo *si, uint64_t status) si->cc = SIGP_CC_STATUS_STORED; } -static void sigp_start(CPUState *cs, void *arg) +static void sigp_start(CPUState *cs, run_on_cpu_data arg) { S390CPU *cpu = S390_CPU(cs); - SigpInfo *si = arg; + SigpInfo *si = arg.host_ptr; if (s390_cpu_get_state(cpu) != CPU_STATE_STOPPED) { si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; @@ -1415,10 +1415,10 @@ static void sigp_start(CPUState *cs, void *arg) si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; } -static void sigp_stop(CPUState *cs, void *arg) +static void sigp_stop(CPUState *cs, run_on_cpu_data arg) { S390CPU *cpu = S390_CPU(cs); - SigpInfo *si = arg; + SigpInfo *si = arg.host_ptr; struct kvm_s390_irq irq = { .type = KVM_S390_SIGP_STOP, }; @@ -1501,10 +1501,10 @@ static int kvm_s390_store_status(S390CPU *cpu, hwaddr addr, bool store_arch) return 0; } -static void sigp_stop_and_store_status(CPUState *cs, void *arg) +static void sigp_stop_and_store_status(CPUState *cs, run_on_cpu_data arg) { S390CPU *cpu = S390_CPU(cs); - SigpInfo *si = arg; + SigpInfo *si = arg.host_ptr; struct kvm_s390_irq irq = { .type = KVM_S390_SIGP_STOP, }; @@ -1529,10 +1529,10 @@ static void sigp_stop_and_store_status(CPUState *cs, void *arg) si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; } -static void sigp_store_status_at_address(CPUState *cs, void *arg) +static void sigp_store_status_at_address(CPUState *cs, run_on_cpu_data arg) { S390CPU *cpu = S390_CPU(cs); - SigpInfo *si = arg; + SigpInfo *si = arg.host_ptr; uint32_t address = si->param & 0x7ffffe00u; /* cpu has to be stopped */ @@ -1550,10 +1550,10 @@ static void sigp_store_status_at_address(CPUState *cs, void *arg) si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; } -static void sigp_store_adtl_status(CPUState *cs, void *arg) +static void sigp_store_adtl_status(CPUState *cs, run_on_cpu_data arg) { S390CPU *cpu = S390_CPU(cs); - SigpInfo *si = arg; + SigpInfo *si = arg.host_ptr; if (!s390_has_feat(S390_FEAT_VECTOR)) { set_sigp_status(si, SIGP_STAT_INVALID_ORDER); @@ -1581,10 +1581,10 @@ static void sigp_store_adtl_status(CPUState *cs, void *arg) si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; } -static void sigp_restart(CPUState *cs, void *arg) +static void sigp_restart(CPUState *cs, run_on_cpu_data arg) { S390CPU *cpu = S390_CPU(cs); - SigpInfo *si = arg; + SigpInfo *si = arg.host_ptr; struct kvm_s390_irq irq = { .type = KVM_S390_RESTART, }; @@ -1612,11 +1612,11 @@ int kvm_s390_cpu_restart(S390CPU *cpu) return 0; } -static void sigp_initial_cpu_reset(CPUState *cs, void *arg) +static void sigp_initial_cpu_reset(CPUState *cs, run_on_cpu_data arg) { S390CPU *cpu = S390_CPU(cs); S390CPUClass *scc = S390_CPU_GET_CLASS(cpu); - SigpInfo *si = arg; + SigpInfo *si = arg.host_ptr; cpu_synchronize_state(cs); scc->initial_cpu_reset(cs); @@ -1624,11 +1624,11 @@ static void sigp_initial_cpu_reset(CPUState *cs, void *arg) si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; } -static void sigp_cpu_reset(CPUState *cs, void *arg) +static void sigp_cpu_reset(CPUState *cs, run_on_cpu_data arg) { S390CPU *cpu = S390_CPU(cs); S390CPUClass *scc = S390_CPU_GET_CLASS(cpu); - SigpInfo *si = arg; + SigpInfo *si = arg.host_ptr; cpu_synchronize_state(cs); scc->cpu_reset(cs); @@ -1636,10 +1636,10 @@ static void sigp_cpu_reset(CPUState *cs, void *arg) si->cc = SIGP_CC_ORDER_CODE_ACCEPTED; } -static void sigp_set_prefix(CPUState *cs, void *arg) +static void sigp_set_prefix(CPUState *cs, run_on_cpu_data arg) { S390CPU *cpu = S390_CPU(cs); - SigpInfo *si = arg; + SigpInfo *si = arg.host_ptr; uint32_t addr = si->param & 0x7fffe000u; cpu_synchronize_state(cs);
Commit 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") attempted to convert all users of run_on_cpu to use the new run_on_cpu_data type. It missed to change the called sigp_* routines, however. Fix that. Fixes: 14e6fe12a ("*_run_on_cpu: introduce run_on_cpu_data type") Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> --- Peter, Stefan: This fixes building for s390x which is currently broken (at least with kvm enabled). Two questions: - Will you pick this up as a build fix, or should I do a pull req? - Can we do anything more to catch errors like this? --- target-s390x/kvm.c | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-)