qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 2/3] Add a new PCI region type to supports 64 bi


From: Michael S. Tsirkin
Subject: Re: [Qemu-devel] [PATCH 2/3] Add a new PCI region type to supports 64 bit ranges
Date: Thu, 29 Dec 2011 18:16:59 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

On Thu, Dec 29, 2011 at 06:32:37PM +1300, Alexey Korolev wrote:
> 
> >>@@ -69,6 +72,8 @@ static enum pci_region_type pci_addr_to_type(u32 addr)
> >>  {
> >>      if (addr&  PCI_BASE_ADDRESS_SPACE_IO)
> >>          return PCI_REGION_TYPE_IO;
> >>+    if (addr&  PCI_BASE_ADDRESS_MEM_TYPE_64)
> >>+        return PCI_REGION_TYPE_PREFMEM_64;
> >This seems dangerous - a 64bit bar can be non-prefetchable - getting
> >this wrong could cause random (hard to debug) crashes.
> >
> Just out of curiosity - how this could happen? Having 64bit
> non-prefetchable BAR implies that the device is not behind
> any bridge (as bridges describe 64bit ranges for prefetchable
> memory only). Is it possible on nowadays systems?

Yes. qemu puts all devices directly on the root bus.
system devices are also commonly located on the root bus.



reply via email to

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