IOMMU Trusted Boot Mode DMA Blocking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing computing systems lack effective protection of system memory from direct memory access (DMA) operations by peripherals during the boot process, which can lead to unauthorized access or modification of memory contents, especially during the trusted boot phase.
Innovation Solution
The implementation of a trusted boot mode (TBM) control bit in the input/output memory management unit (IOMMU) to block DMA requests from peripherals, using existing IOMMU functions and registers to intercept and manage DMA operations, thereby protecting system memory without requiring processor changes or large memory structures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the system uses existing IOMMU functions and registers to block DMA requests during trusted boot, then memory protection reliability is improved, but the device complexity increases due to configuration requirements
Solution Approach 1:
The IOMMU is configured in advance during system initialization to block DMA requests before the trusted boot process begins. The trusted boot mode control bit is set and IOMMU translation is disabled prior to loading the boot image, preventing peripheral access to memory during the critical verification phase. This preliminary configuration ensures protection is in place before any unauthorized access can occur.
2Stability of the object's composition
If the system blocks all DMA requests during trusted boot, then memory integrity is improved, but the productivity decreases due to restricted memory access
Solution Approach 1:
The IOMMU configuration is dynamically adjusted during the boot process. Initially, DMA requests are blocked to protect memory integrity during trusted boot. Once the boot image is verified and loaded, the system dynamically updates the IOMMU to allow necessary DMA operations for normal system operation. This dynamic transition maintains memory integrity during critical phases while restoring productivity when protection is no longer needed.
3Ease of manufacture
If the system uses a control bit and existing IOMMU functions, then the ease of manufacture is improved, but the adaptability decreases due to limited configuration options
Solution Approach 1:
The solution leverages the existing IOMMU's multiple functions to achieve memory protection during trusted boot. The IOMMU's address translation capability, DMA request filtering, and control bit mechanisms are utilized to block unauthorized access. By making the IOMMU serve the additional function of trusted boot protection, the system achieves ease of manufacture without requiring new hardware, while the universal nature of the IOMMU provides sufficient adaptability for different boot scenarios.
Data Source
AI summary
Embodiments include methods, systems, and computer storage devices directed to identifying that a trusted boot mode (TBM) control bit is set in an input/output memory management unit (IOMMU) and configuring the IOMMU to block a DMA request received by the IOMMU from a peripheral in response to the identifying.


