Partilhar via


Macro NdisAdjustMdlLength (ndis.h)

A função NdisAdjustMdlLength modifica o comprimento dos dados associados a um MDL.

Sintaxe

void NdisAdjustMdlLength(
  [in]  _Mdl,
  [in]  _Length
);

Parâmetros

[in] _Mdl

Um ponteiro para uma MDL (lista de descritores de memória).

[in] _Length

O número de bytes de dados que o MDL descreve.

Valor de retorno

Nenhum

Observações

A função NdisAdjustMdlLength modifica o membro byteCount de um MDL alocado chamando a função NdisAllocateMdl.

O chamador de NdisAdjustMdlLength pode passar apenas um descritor MDL que o chamador alocou. Ele não pode passar um descritor MDL que outro driver alocou.

Por exemplo, o driver de uma NIC de DMA mestre de ônibus chama NdisAdjustMdlLength com descritores MDL que ele alocou para especificar o recebimento de MDLs em seu bloco de memória compartilhado. Antes que esse driver indique dados recebidos, ele chama NdisAdjustMdlLength para fazer com que o descritor MDL que ele incluirá na indicação de recebimento corresponda ao tamanho dos dados recebidos se ele for menor que o tamanho do buffer de recebimento da NIC.

O comprimento passado para NdisAdjustMdlLength não pode ser maior do que o comprimento passado para NdisAllocateMdl quando o descritor MDL foi alocado.

O chamador de NdisAdjustMdlLength deve restaurar o comprimento para seu valor original antes de liberar o descritor MDL com NdisFreeMdl.

Os chamadores de NdisAdjustMdlLength podem ser executados em qualquer IRQL, mas normalmente são executados no IRQL <= DISPATCH_LEVEL.

Requisitos

Requisito Valor
de cliente com suporte mínimo Com suporte no NDIS 6.0 e posterior.
da Plataforma de Destino Área de trabalho
cabeçalho ndis.h (inclua Ndis.h)
IRQL Qualquer nível (consulte a seção Comentários)

Consulte também

NdisAllocateMdl

NdisFreeMdl