On 12/10/2015 05:11 PM, David Gibson wrote: > The spapr_alloc_htab() and spapr_reset_htab() functions currently handle > all errors with error_setg(&error_abort, ...). That's correct for > spapr_reset_htab() - if anything goes wrong there, there's really nothing > we can do about it. For spapr_alloc_htab() &error_fatal would make more > sense, since it occurs during initialization. > > But in any case the callers are really better placed to decide on the error > handling. So, instead make the functions use the error propagation > infrastructure. > > While we're at it improve the messages themselves a bit, and clean up the > indentation a little. > > Signed-off-by: David Gibson <da...@gibson.dropbear.id.au> > --- > hw/ppc/spapr.c | 26 ++++++++++++++++++-------- > 1 file changed, 18 insertions(+), 8 deletions(-)
> @@ -1030,7 +1030,9 @@ static void spapr_alloc_htab(sPAPRMachineState *spapr) > * For HV KVM, host kernel will return -ENOMEM when requested > * HTAB size can't be allocated. > */ > - error_setg(&error_abort, "Failed to allocate HTAB of requested size, > try with smaller maxmem"); > + error_setg(errp, > + "Error allocating KVM hash page table, try smaller maxmem: %s", > + strerror(-shift)); error_setg_errno() is nicer than calling strerror(). -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature