|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] Source of guest-physical address in PCI BAR for HVM domain?
I'm seeing a seemingly bad guest-physical address get used for a PCI
BAR, so I'm trying to understand who is coming up with this address.
The domain is HVM (Windows 2003). I'm debugging the qemu-dm process
for the domain and I see where the bad value gets written to the
guest's (virtual) PCI config space for the PCI device in question.
The call stack at that point shows:
main
main_loop
main_loop_wait
cpu_handle_ioreq
etc.
So I guess this the PCI config-space write to set the BAR is passed to
qemu-dm as a command from the hypervisor or some other process?
I understand that eventually it would be the HVM guest OS that would
write to the PCI configuration IO port which would get caught be Xen
and passed along to qemu. But, this is happending early in the boot
process before the guest OS proper is even running. My understanding
of how PCI systems work is that the BIOS first configures (a subset
of) the PCI devices, and then the once the real OS is initializing it
can re-configure any PCI devices it wants to. Can someone tell me if
this is correct?
If so, shouldn't the early PCI configuration from the BIOS be coming
from qemu itself? My understanding is that qemu emulates a BIOS for
HVM domains.
Thanks,
Dave
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|