[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH] Revert "hw/ppc/spapr_pci.c: Avoid functions not i
From: |
David Gibson |
Subject: |
Re: [Qemu-ppc] [PATCH] Revert "hw/ppc/spapr_pci.c: Avoid functions not in glib 2.12 (g_hash_table_iter_*)" |
Date: |
Thu, 18 Jun 2015 16:24:25 +1000 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Tue, Jun 16, 2015 at 08:37:46AM +0200, Markus Armbruster wrote:
> MAINTAINERS grew since I posted this patch, copy the new guy.
Thanks, applied to spapr-next.
>
> Markus Armbruster <address@hidden> writes:
>
> > Since we now require GLib 2.22+ (commit f40685c), we don't have to
> > work around lack of g_hash_table_iter_init() & friends anymore.
> >
> > This reverts commit f8833a37c0c6b22ddd57b45e48cfb0f97dbd5af4.
> >
> > Signed-off-by: Markus Armbruster <address@hidden>
> > ---
> > hw/ppc/spapr_pci.c | 28 +++++++++++-----------------
> > 1 file changed, 11 insertions(+), 17 deletions(-)
> >
> > diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c
> > index 05f4fac..e2b9e60 100644
> > --- a/hw/ppc/spapr_pci.c
> > +++ b/hw/ppc/spapr_pci.c
> > @@ -962,34 +962,28 @@ static const VMStateDescription vmstate_spapr_pci_msi
> > = {
> > },
> > };
> >
> > -static void spapr_pci_fill_msi_devs(gpointer key, gpointer value,
> > - gpointer opaque)
> > -{
> > - sPAPRPHBState *sphb = opaque;
> > -
> > - sphb->msi_devs[sphb->msi_devs_num].key = *(uint32_t *)key;
> > - sphb->msi_devs[sphb->msi_devs_num].value = *(spapr_pci_msi *)value;
> > - sphb->msi_devs_num++;
> > -}
> > -
> > static void spapr_pci_pre_save(void *opaque)
> > {
> > sPAPRPHBState *sphb = opaque;
> > - int msi_devs_num;
> > + GHashTableIter iter;
> > + gpointer key, value;
> > + int i;
> >
> > if (sphb->msi_devs) {
> > g_free(sphb->msi_devs);
> > sphb->msi_devs = NULL;
> > }
> > - sphb->msi_devs_num = 0;
> > - msi_devs_num = g_hash_table_size(sphb->msi);
> > - if (!msi_devs_num) {
> > + sphb->msi_devs_num = g_hash_table_size(sphb->msi);
> > + if (!sphb->msi_devs_num) {
> > return;
> > }
> > - sphb->msi_devs = g_malloc(msi_devs_num * sizeof(spapr_pci_msi_mig));
> > + sphb->msi_devs = g_malloc(sphb->msi_devs_num *
> > sizeof(spapr_pci_msi_mig));
> >
> > - g_hash_table_foreach(sphb->msi, spapr_pci_fill_msi_devs, sphb);
> > - assert(sphb->msi_devs_num == msi_devs_num);
> > + g_hash_table_iter_init(&iter, sphb->msi);
> > + for (i = 0; g_hash_table_iter_next(&iter, &key, &value); ++i) {
> > + sphb->msi_devs[i].key = *(uint32_t *) key;
> > + sphb->msi_devs[i].value = *(spapr_pci_msi *) value;
> > + }
> > }
> >
> > static int spapr_pci_post_load(void *opaque, int version_id)
>
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
pgpT2FSGge3XM.pgp
Description: PGP signature