qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: [PATCH 02/25] pci: use appropriate PRIs in PCI_DPRINTF(


From: Michael S. Tsirkin
Subject: [Qemu-devel] Re: [PATCH 02/25] pci: use appropriate PRIs in PCI_DPRINTF() for portability.
Date: Mon, 5 Oct 2009 11:56:03 +0200
User-agent: Mutt/1.5.19 (2009-01-05)

On Mon, Oct 05, 2009 at 06:30:19PM +0900, Isaku Yamahata wrote:
> On Sun, Oct 04, 2009 at 11:51:36AM +0200, Michael S. Tsirkin wrote:
> > On Sat, Oct 03, 2009 at 05:15:54AM +0900, Isaku Yamahata wrote:
> > > use appropriate PRIs in PCI_DPRINTF() to print pci config space offset
> > > and value for portability.
> > > 
> > > Signed-off-by: Isaku Yamahata <address@hidden>
> > 
> > Can we just switch to "unsigned" here?  There's no reason to force
> > specific data width: in fact, address is probably a 16 bit value,
> > and ISO types can be printed with plan printf without format macros.
> 
> You dislike PRI macros.

No, the point was that uint32_t is an inappropriate type for address, here.
We really just want to say "some unsigned integer", so - unsigned.
So let's fix that instead of adding PRI which we'll have to rip out
when we fix the type.

> And I agree with you that PRI is ugly.
> However I don't see any consensus to avoid those macros
> in qemu code base.
> It is too weak to change its type because of its ugliness.

The reason is that uint32_t is inappropriate here, not that PRI is
ugly.

> - There is no description on it in CODING_STYLE.
> - PRI macros are already widely used in qemu code 
>   and many patches with PRI have been commited.
> - Many other part uses explicit sized type, uintN_t, for address.

It often makes sense. In this case, IMO, it does not.

> - C99

What about it?

> 
> thanks,
> > 
> > > ---
> > >  hw/pci.c |   10 ++++++----
> > >  1 files changed, 6 insertions(+), 4 deletions(-)
> > > 
> > > diff --git a/hw/pci.c b/hw/pci.c
> > > index 4392574..d281ee2 100644
> > > --- a/hw/pci.c
> > > +++ b/hw/pci.c
> > > @@ -561,7 +561,7 @@ void pci_data_write(void *opaque, uint32_t addr, 
> > > uint32_t val, int len)
> > >      int config_addr, bus_num;
> > >  
> > >  #if 0
> > > -    PCI_DPRINTF("pci_data_write: addr=%08x val=%08x len=%d\n",
> > > +    PCI_DPRINTF("pci_data_write: addr=%08"PRIx32" val=%08"PRIx32" 
> > > len=%d\n",
> > >                  addr, val, len);
> > >  #endif
> > >      bus_num = (addr >> 16) & 0xff;
> > > @@ -573,7 +573,8 @@ void pci_data_write(void *opaque, uint32_t addr, 
> > > uint32_t val, int len)
> > >      if (!pci_dev)
> > >          return;
> > >      config_addr = addr & 0xff;
> > > -    PCI_DPRINTF("pci_config_write: %s: addr=%02x val=%08x len=%d\n",
> > > +    PCI_DPRINTF("pci_config_write: %s: "
> > > +                "addr=%02x val=%08"PRI32x" len=%d\n",
> > >                  pci_dev->name, config_addr, val, len);
> > >      pci_dev->config_write(pci_dev, config_addr, val, len);
> > >  }
> > > @@ -609,11 +610,12 @@ uint32_t pci_data_read(void *opaque, uint32_t addr, 
> > > int len)
> > >      }
> > >      config_addr = addr & 0xff;
> > >      val = pci_dev->config_read(pci_dev, config_addr, len);
> > > -    PCI_DPRINTF("pci_config_read: %s: addr=%02x val=%08x len=%d\n",
> > > +    PCI_DPRINTF("pci_config_read: %s: "
> > > +                "addr=%02x val=%08"PRIx32" len=%d\n",
> > >                  pci_dev->name, config_addr, val, len);
> > >   the_end:
> > >  #if 0
> > > -    PCI_DPRINTF("pci_data_read: addr=%08x val=%08x len=%d\n",
> > > +    PCI_DPRINTF("pci_data_read: addr=%08"PRIx32" val=%08"PRIx32" 
> > > len=%d\n",
> > >                  addr, val, len);
> > >  #endif
> > >      return val;
> > 
> 
> -- 
> yamahata




reply via email to

[Prev in Thread] Current Thread [Next in Thread]