On 05/11/2011 04:50 PM, Jan Kiszka wrote:
On 2011-05-11 15:26, Avi Kivity wrote: > On 05/11/2011 04:08 PM, Jan Kiszka wrote: >> On 2011-05-11 13:25, Avi Kivity wrote: >>> On 05/09/2011 06:48 PM, Alex Williamson wrote: >>>>> That's an interesting trace! We'll check this here, but I bet it >>>>> contributes to the problems. Our FX 3800 has 1G memory... >>>> >>>> Yes, qemu leaves far too little MMIO space to think about assigning >>>> graphics cards. Both of my cards have 512MB and I hacked qemu to leave >>>> a bigger gap via something like: >>>> >>> >>> What about 64-bit BARs? >> >> Aren't they backward compatible? Or do you think some guest drivers may >> assume to find their 64-bit capable bars also registered as such and get >> upset when seeing them as 32-bit ones? >> > > I mean, if you have a 1GB framebuffer, put it above 4GB and hope the > OS/driver can handle it. The question is if the drivers actually depend on this. At least the binary nvidia thing here on my notebook, it is obviously happy with below-4G-bars (and likely change the mapped window on demand): 01:00.0 VGA compatible controller: nVidia Corporation GT216 [Quadro FX 880M] (rev a2) (prog-if 00 [VGA controller]) Subsystem: Fujitsu Limited. Device 1584 Flags: bus master, fast devsel, latency 0, IRQ 16 Memory at cc000000 (32-bit, non-prefetchable) [size=16M] Memory at d0000000 (64-bit, prefetchable) [size=256M] Memory at ce000000 (64-bit, prefetchable) [size=32M] I/O ports at 2000 [size=128] [virtual] Expansion ROM at cd000000 [disabled] [size=512K] Capabilities: [60] Power Management version 3 Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [78] Express Endpoint, MSI 00 Capabilities: [b4] Vendor Specific Information: Len=14<?> Capabilities: [100] Virtual Channel Capabilities: [128] Power Budgeting<?> Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024<?> Kernel driver in use: nvidia Maybe the crashing Windows driver of the FX3800 has different requirements.
I doubt it. A 64-bit BAR would be configured as 32-bit on an older BIOS, no?
I'd guess 64-bit BARs are only needed for large BARs. -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html