Hi Neo, Thanks for you reply. You are right. But I had found the problem and update this thread :) Thanks, Pierce On Fri, Aug 19, 2011 at 8:52 AM, Neo Jia <cyclonusj@xxxxxxxxx> wrote: > 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