[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 03/11] pseries: Clean up hash page table allocat
From: |
Bharata B Rao |
Subject: |
Re: [Qemu-devel] [PATCH 03/11] pseries: Clean up hash page table allocation error handling |
Date: |
Fri, 11 Dec 2015 14:10:40 +0530 |
On Fri, Dec 11, 2015 at 5:41 AM, David Gibson
<address@hidden> 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 <address@hidden>
> ---
> hw/ppc/spapr.c | 26 ++++++++++++++++++--------
> 1 file changed, 18 insertions(+), 8 deletions(-)
>
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index 91396cc..85474ee 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -1015,7 +1015,7 @@ static void emulate_spapr_hypercall(PowerPCCPU *cpu)
> #define CLEAN_HPTE(_hpte) ((*(uint64_t *)(_hpte)) &=
> tswap64(~HPTE64_V_HPTE_DIRTY))
> #define DIRTY_HPTE(_hpte) ((*(uint64_t *)(_hpte)) |=
> tswap64(HPTE64_V_HPTE_DIRTY))
>
> -static void spapr_alloc_htab(sPAPRMachineState *spapr)
> +static void spapr_alloc_htab(sPAPRMachineState *spapr, Error **errp)
> {
> long shift;
> int index;
> @@ -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));
Do you want to explicitly "return" from here and other places in this
patch like you do in 4/11 to improve readability ?
Regards,
Bharata.
- Re: [Qemu-devel] [PATCH 11/11] pseries: Clean up error reporting in htab migration functions, (continued)
- [Qemu-devel] [PATCH 08/11] pseries: Clean up error handling in spapr_rtas_register(), David Gibson, 2015/12/10
- [Qemu-devel] [PATCH 09/11] pseries: Clean up error handling in xics_system_init(), David Gibson, 2015/12/10
- [Qemu-devel] [PATCH 10/11] pseries: Clean up error handling in ppc_spapr_init(), David Gibson, 2015/12/10
- [Qemu-devel] [PATCH 03/11] pseries: Clean up hash page table allocation error handling, David Gibson, 2015/12/10
- [Qemu-devel] [PATCH 07/11] pseries: Cleanup error handling in spapr_kvm_type(), David Gibson, 2015/12/10
- [Qemu-devel] [PATCH 06/11] pseries: Improve error handling in find_unknown_sysbus_device(), David Gibson, 2015/12/10