Re: [KVM]:could anyone give me some instruction for KVM pci driver? Thanks

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

 



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


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux