Message ID | 1449743372-17169-4-git-send-email-armbru@redhat.com |
---|---|
State | New |
Headers | show |
On 10 December 2015 at 10:29, Markus Armbruster <armbru@redhat.com> wrote: > Device realize() methods aren't supposed to call hw_error(), they > should set an error and fail cleanly. Do that. > > Cc: Peter Maydell <peter.maydell@linaro.org> > Cc: qemu-arm@nongnu.org > Signed-off-by: Markus Armbruster <armbru@redhat.com> > --- > hw/timer/arm_mptimer.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/hw/timer/arm_mptimer.c b/hw/timer/arm_mptimer.c > index 3e59c2a..f1a34ec 100644 > --- a/hw/timer/arm_mptimer.c > +++ b/hw/timer/arm_mptimer.c > @@ -220,8 +220,9 @@ static void arm_mptimer_realize(DeviceState *dev, Error **errp) > int i; > > if (s->num_cpu < 1 || s->num_cpu > ARM_MPTIMER_MAX_CPUS) { > - hw_error("%s: num-cpu must be between 1 and %d\n", > - __func__, ARM_MPTIMER_MAX_CPUS); > + error_setg(errp, "num-cpu must be between 1 and %d\n", > + ARM_MPTIMER_MAX_CPUS); > + return; I think the trailing newline is incorrect for error_setg, right? Otherwise Reviewed-by: Peter Maydell <peter.maydell@linaro.org> thanks -- PMM
Peter Maydell <peter.maydell@linaro.org> writes: > On 10 December 2015 at 10:29, Markus Armbruster <armbru@redhat.com> wrote: >> Device realize() methods aren't supposed to call hw_error(), they >> should set an error and fail cleanly. Do that. >> >> Cc: Peter Maydell <peter.maydell@linaro.org> >> Cc: qemu-arm@nongnu.org >> Signed-off-by: Markus Armbruster <armbru@redhat.com> >> --- >> hw/timer/arm_mptimer.c | 5 +++-- >> 1 file changed, 3 insertions(+), 2 deletions(-) >> >> diff --git a/hw/timer/arm_mptimer.c b/hw/timer/arm_mptimer.c >> index 3e59c2a..f1a34ec 100644 >> --- a/hw/timer/arm_mptimer.c >> +++ b/hw/timer/arm_mptimer.c >> @@ -220,8 +220,9 @@ static void arm_mptimer_realize(DeviceState *dev, Error **errp) >> int i; >> >> if (s->num_cpu < 1 || s->num_cpu > ARM_MPTIMER_MAX_CPUS) { >> - hw_error("%s: num-cpu must be between 1 and %d\n", >> - __func__, ARM_MPTIMER_MAX_CPUS); >> + error_setg(errp, "num-cpu must be between 1 and %d\n", >> + ARM_MPTIMER_MAX_CPUS); >> + return; > > I think the trailing newline is incorrect for error_setg, right? I always misse one... will fix! > Otherwise > Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Thanks!
diff --git a/hw/timer/arm_mptimer.c b/hw/timer/arm_mptimer.c index 3e59c2a..f1a34ec 100644 --- a/hw/timer/arm_mptimer.c +++ b/hw/timer/arm_mptimer.c @@ -220,8 +220,9 @@ static void arm_mptimer_realize(DeviceState *dev, Error **errp) int i; if (s->num_cpu < 1 || s->num_cpu > ARM_MPTIMER_MAX_CPUS) { - hw_error("%s: num-cpu must be between 1 and %d\n", - __func__, ARM_MPTIMER_MAX_CPUS); + error_setg(errp, "num-cpu must be between 1 and %d\n", + ARM_MPTIMER_MAX_CPUS); + return; } /* We implement one timer block per CPU, and expose multiple MMIO regions: * * region 0 is "timer for this core"
Device realize() methods aren't supposed to call hw_error(), they should set an error and fail cleanly. Do that. Cc: Peter Maydell <peter.maydell@linaro.org> Cc: qemu-arm@nongnu.org Signed-off-by: Markus Armbruster <armbru@redhat.com> --- hw/timer/arm_mptimer.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)