On 2011-04-27 16:40, Avi Kivity wrote: > On 04/27/2011 05:30 PM, Jan Kiszka wrote: >> On 2011-04-27 16:29, Avi Kivity wrote: >>> On 04/27/2011 05:04 PM, Jan Kiszka wrote: >>>>> >>>>> I put kvm_msix_message in pci.h to avoid having every pci device pull in kvm.h >>>>> is anything wrong with that? Maybe just rename it to make it generic >>>>> for msi and leave if where it is. >>>> >>>> kvm.h shall provide kvm related types, not some unrelated header. That's >>>> even more important with MSI support for non-PCI devices (aka HPET). >>> >>> We could have an MSIMessage type that abstracts the general facility, >>> and let it embed a KVMMsiMessage that contains just the gsi. >> >> Yes, likely also useful for generic MSI delivery services that bypass >> stl_phys. >> > > Right, so you can cache the phys_page and apic lookups. > > A different layer in which to accomplish this is to have a per-device > tlb. So we'd have > > CachedPhysicalAddress msi_fsb_tlb; > > stl_phys_tlb(&msi_fsb_cache, addr, data); > > which caches the addr lookup in a 1-entry tlb. If we have many non-msi > repeated device writes to the same address, this might be worthwhile. > From a quick look at the code, I don't think we do, though. There is no caching need if the messages targets the fixed MSI address window. We can simply pass it directly to the APIC then. Jan -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux -- 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