src
- x86 IOMMU support(DMAR)
Intel VT-d
(IOMMU) をサポートするための開発がKonstantin Belousov氏によって進められています。初期のパッチはすでに公開されており、 マルチユーザモードでのシステムの起動も確認されているということです。この開発はFreeBSD Foundationのスポンサーシップのもとで行われており、 FreeBSD 10. 0-RELEASEから登場する見通しです。 Intel VT-d
(IOMMU) の機能はdusdmaで実装されます。この機能を利用することでバウンスページコピーの処理を削除することが可能になるほか、 デバイスに対して特定の領域にしかアクセスできないようにできますので、 デバイスまたはデバイスドライバの不具合によるメモリの不正アクセスを回避できるようになります。セキュリティ上の利点が期待できるほか、 最終的にはハイパーバイザ (BHyVe) と連携して機能することになる見通しです。 Intel VT-d
(IOMMU) を利用することでデバイスドライバの堅牢性向上、 セキュリティ効果、 ハイパーバイザの活用などの利点が期待できますが、 Intel VT-d (IOMMU) は基本的にDMAアドレスのリマッピング処理機能ですので、 リマッピングに関する処理の分だけ速度の低下がおこるとされています。このため、 Intel VT-d (IOMMU) のサポート機能は当面はデフォルトでは有効にはならない見通しです。 初期パッチや初期実装に関する説明はメーリングリストに投函された
「x86 IOMMU support (DMAR)」 が参考になります。