riscv-non-isa / riscv-iommu

RISC-V IOMMU Specification
https://jira.riscv.org/browse/RVG-55
Creative Commons Attribution 4.0 International
72 stars 14 forks source link

Why not report gpa to iotval2 if msi translation is fault or misconfigured ? #334

Closed baimengwei closed 1 month ago

baimengwei commented 1 month ago

https://github.com/riscv-non-isa/riscv-iommu/blob/main/iommu_ref_model/libiommu/src/iommu_msi_trans.c#L30

uint8_t
msi_address_translation(
    uint64_t gpa, uint8_t is_exec, device_context_t *DC, 
    uint8_t *is_msi, uint8_t *is_mrif, uint32_t *mrif_nid, uint64_t *dest_mrif_addr,
    uint32_t *cause, uint64_t *iotval2, uint64_t *pa, 
    uint64_t *page_sz, gpte_t *g_pte, uint8_t check_access_perms ) {

    uint64_t A, m, I;
    uint8_t status;
    msipte_t msipte;

    *iotval2 = 0;
ved-rivos commented 1 month ago

The iotval2 is reported only for a guest-page fault and is 0 for all other faults.