Bagikan melalui


DMA IO Misue _Kernel_IoGetDmaAdapter_ anotasi untuk driver

Gunakan anotasi _Kernel_IoGetDmaAdapter_ untuk mengarahkan alat analisis kode untuk mencari penyalahgunaan pointer DMA.

Jika fungsi memanggil antarmuka yang diannotasi dengan anotasi _Kernel_IoGetDmaAdapter_, fungsi tersebut akan memiliki logika coba lagi sehingga percobaan ulang terjadi sampai fungsi berhasil.

Rutinitas IoGetDmaAdapter dapat mengembalikan lebih sedikit dari jumlah register yang diminta, dan pemanggil diperlukan untuk melanjutkan menggunakan nomor aktual, bukan nomor yang diminta.

_Must_inspect_result_
_IRQL_requires_max_(PASSIVE_LEVEL)
NTKERNELAPI
struct _DMA_ADAPTER *
IoGetDmaAdapter(
    _In_opt_ PDEVICE_OBJECT PhysicalDeviceObject,           // required for PnP drivers
    _In_ struct _DEVICE_DESCRIPTION *DeviceDescription,
    _Out_ _When_(return!=0, _Kernel_IoGetDmaAdapter_ _At_(*NumberOfMapRegisters, _Must_inspect_result_))
    PULONG NumberOfMapRegisters

...

Anotasi SAL 2.0 untuk Driver Windows