x86 / ntoskrnl /

_DMA_OPERATIONS

← 5.0.2195.6717 5 builds latest →
struct _DMA_OPERATIONS {
unsigned long Size;/* 0x0 4 */
void (*PutDmaAdapter)(struct _DMA_ADAPTER*);/* 0x4 4 */
void* (*AllocateCommonBuffer)(struct _DMA_ADAPTER*, unsigned long, union _LARGE_INTEGER*, unsigned char);/* 0x8 4 */
void (*FreeCommonBuffer)(struct _DMA_ADAPTER*, unsigned long, union _LARGE_INTEGER, void*, unsigned char);/* 0xc 4 */
long (*AllocateAdapterChannel)(struct _DMA_ADAPTER*, struct _DEVICE_OBJECT*, unsigned long, int (*)(struct _DEVICE_OBJECT*, struct _IRP*, void*, void*), void*);/* 0x10 4 */
unsigned char (*FlushAdapterBuffers)(struct _DMA_ADAPTER*, struct _MDL*, void*, void*, unsigned long, unsigned char);/* 0x14 4 */
void (*FreeAdapterChannel)(struct _DMA_ADAPTER*);/* 0x18 4 */
void (*FreeMapRegisters)(struct _DMA_ADAPTER*, void*, unsigned long);/* 0x1c 4 */
union _LARGE_INTEGER (*MapTransfer)(struct _DMA_ADAPTER*, struct _MDL*, void*, void*, unsigned long*, unsigned char);/* 0x20 4 */
unsigned long (*GetDmaAlignment)(struct _DMA_ADAPTER*);/* 0x24 4 */
unsigned long (*ReadDmaCounter)(struct _DMA_ADAPTER*);/* 0x28 4 */
long (*GetScatterGatherList)(struct _DMA_ADAPTER*, struct _DEVICE_OBJECT*, struct _MDL*, void*, unsigned long, void (*)(struct _DEVICE_OBJECT*, struct _IRP*, struct _SCATTER_GATHER_LIST*, void*), void*, unsigned char);/* 0x2c 4 */
void (*PutScatterGatherList)(struct _DMA_ADAPTER*, struct _SCATTER_GATHER_LIST*, unsigned char);/* 0x30 4 */
};
size 52 (0x34)13 members0 holespadding 01 cacheline
Used in (1)