Abilitazione del remapping DMA per i driver di dispositivo

Per garantire la compatibilità con La protezione DMA del kernel e i criteri DMAGuard, i driver di dispositivo PCIe possono scegliere di eseguire nuovamente il mapping di Direct Memory Access (DMA).

Il remapping DMA per i driver di dispositivo protegge dal danneggiamento della memoria e dagli attacchi DMA dannosi e offre un livello di compatibilità più elevato per i dispositivi. Inoltre, i dispositivi con i driver compatibili con DMA possono avviare ed eseguire DMA indipendentemente dallo stato della schermata di blocco.

Nei sistemi abilitati per la protezione DMAMA kernel i criteri DMAGuard possono bloccare i dispositivi, con driver incompatibili con il mapping di DMA, connessi alle porte PCIeesposteesterne/ (ad esempio M.2,™ Thunderbolt), a seconda del valore dei criteri impostato dall'amministratore di sistema.

Requisiti del driver per l'abilitazione e l'consenso esplicito sulla ripetizione del mapping DMA

I driver eseguono DMA usando le interfacce seguenti:

Per modificare i criteri di remapping DMA per il driver, aggiungere una direttiva INF, ad esempio la seguente alla sezione di installazione del servizio:

  [MyServiceInstall_AddReg]
  HKR,Parameters,DmaRemappingCompatible,0x00010001,1    ; where 1 = opt-in

I valori validi per DmaRemappingCompatible sono:

Valore Significato
0 Rifiutare esplicitamente. Ciò indica al sistema che il driver non è compatibile con il ripristino di DMA.
1 consente di fornire il consenso esplicito. Ciò indica al sistema che il driver è completamente compatibile con il remapping DMA.
2 Acconsentire esplicitamente, ma solo quando vengono soddisfatte una o più delle seguenti condizioni: A. Se il dispositivo è un dispositivo esterno, ad esempio. Fulmine); B. Se la verifica DMA è abilitata in Verifica driver.
Nessuna chiave del Registro di sistema Consente al sistema di determinare i criteri.

Quando si testa il driver, abilitare Verifica driver. A scopo di test in Verifica driver, il valore della direttiva INF per il consenso esplicito nei dispositivi esterni viene promosso a 1.

Usare la build più recente Windows 10 con VT-d/AMD-Vi abilitata per testare le funzionalità del driver nei sistemi Intel x64 e AMD64.

Avviso

Il remapping DMA non è supportato per i driver di dispositivo grafici.

Il supporto per la versione 3 è disponibile solo in Windows 11. In Windows 10, se si specifica 3 in INF, il sistema torna a un valore pari a 2.

Convalidare che il remapping DMA sia abilitato per un'istanza specifica del driver di dispositivo

Per verificare se un driver specifico ha scelto di eseguire il mapping di DMA, cercare Gestione dispositivi, nella scheda Dettagli del dispositivo, per i valori corrispondenti alla proprietà criteri di ripetizione del mapping DMA. Un driver può eseguire una query sulla proprietà DEVPKEY_Device_DmaRemappingPolicy per determinare la funzionalità di remapping DMA del dispositivo. Vedere i valori restituiti potenziali in tale pagina e notare che questi valori restituiti non sono uguali ai valori di DmaRemappingCompatible elencati nella sezione precedente.

Gestione dispositivi scheda Dettagli.

Nota

Per Windows 10, versioni 1803 e 1809, il campo della proprietà in Gestione dispositivi usa un GUID {83da6326-97a6-4088-9453-a1923f573b29}[18]