Thanks

On Thu, Nov 24, 2011 at 9:40 AM, Avi Kivity <a...@redhat.com> wrote:

> On 11/23/2011 01:03 AM, Peter Maydell wrote:
> > 2011/11/22 Benoît Canet <benoit.ca...@gmail.com>:
> > >  static int bonito_initfn(PCIDevice *dev)
> > >  {
> > >     PCIBonitoState *s = DO_UPCAST(PCIBonitoState, dev, dev);
> > > +    SysBusDevice *sysbus = sysbus_from_qdev(&dev->qdev);
> >
> > This looks odd. The device here is a PCIBonitoState, which
> > is-a PCIDevice, which is-a DeviceState. It's not a SysBusDevice
> > and merely casting doesn't make it one.
> >
> > I'm not sure what should be being done here, but I'm pretty
> > sure this won't work...
>
> s->pcihost.busdev gives you a SysBusDevice (and
> s->pcihost.confmem/datamem gives you a few MemoryRegions that you need
> later in bonito_initfn.
>
> --
> error compiling committee.c: too many arguments to function
>
>

Reply via email to