Invalidasi IOTLB IOMMU Menentukan Saat Remapping DMA Berlaku
Invalidasi IOTLB IOMMU Menentukan Saat Remapping DMA Berlaku Mengubah entry pada page table IOMMU tidak selalu mengubah translasi yang dipakai oleh request DMA berikutnya. IOMMU dapat menyimpan translasi alamat di I/O translation lookaside buffer, yang umum disebut IOTLB. Software harus menginvalidasi state cache yang terdampak ketika sebuah mapping dihapus atau diganti, lalu mengikuti semantik completion yang diwajibkan IOMMU sebelum menganggap translasi lama benar-benar berhenti digunakan. Batas ini menyerupai pemeliharaan page table CPU, tetapi berada pada address space DMA. Page table merupakan state memori yang menjadi sumber translasi; IOTLB merupakan state hardware yang berasal darinya. Mengubah salah satunya tidak otomatis membuktikan bahwa yang lain telah berhenti melayani translasi sebelumnya.