On Wed, Aug 17, 2011 at 04:48:52PM +0800, liu pf wrote: > Hi guys, > > After objdump the driver, I found that the access to the pci-memmap > register was optimized by GCC, and no code was generated. > And the EPT in 2.6.39 is fine. Are you registering a callback function for the register range you are going to monitor on QEMU? You will see a VM_EXIT, which then trigger a mmio access from KVM. Thanks, CJ > > Thanks, > Pierce > > > On Fri, Aug 12, 2011 at 4:33 PM, liu pf <kernelfans@xxxxxxxxx> wrote: > > Hi guys, > > > > When I develop a PCI device driver for qemu-kvm, I am suffering from > > some problem, Could anyone give me some instruction? Thanks :) > > > > My solution consists of two parts: emulated PCI device in Qemu and > > corresponding PCI device driver in guest OS. > > The emulated device has a PCI -memmap registers. So as expected, when > > the guest device driver wrote this area, we will capture such event in > > Qemu. > > But it failed to do so. After tracing the host kernel, I found that > > 1. my guest PCI device driver had claimed the gpa from > > pci_dev->resource[0].start=0xf0050000 to resource[0].end=0xf00500ff > > and succeed to ioremap > > 2. In host kernel, I added "printk" after > > handle_ept_violation(struct kvm_vcpu *vcpu) {gpa > > =vmcs_read64(GUEST_PHYSICAL_ADDRESS); printk(..);} > > BUT, when guest wrote this "ioremap" area, the host did NOT hit > > the region [0xf0050000,0xf00500ff] > > > > > > I had thought that when accessing the emulated device, the gva ->gpa > > has been set up by guest, so EPT violation will be the only reason > > which caused guest exit . And the event will be finally passed to the > > user mode--qemu. Am I right? > > > > And the most important is what I can do for the next step? > > > > BTW, I am sure that "kvm_enable_tdp". and kernel is 2.6.39, for config > > file, pls see attachment. > > > > > > Thanks, > > Pierce > > > -- > 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 -- 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