FLT_PARAMETERS para IRP_MJ_RELEASE_FOR_MOD_WRITE união
O componente de união a seguir é usado quando o campo MajorFunction da estrutura FLT_IO_PARAMETER_BLOCK da operação é IRP_MJ_RELEASE_FOR_MOD_WRITE.
Sintaxe
typedef union _FLT_PARAMETERS {
... ;
struct {
PERESOURCE ResourceToRelease;
} ReleaseForModifiedPageWriter;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Membros
ReleaseForModifiedPageWriter: estrutura que contém os seguintes membros.
ResourceToRelease: ponteiro para o recurso a ser liberado.
Comentários
A estrutura FLT_PARAMETERS para operações de IRP_MJ_RELEASE_FOR_MOD_WRITE contém os parâmetros para uma operação ReleaseForModifiedPageWriter representada por uma estrutura de dados de retorno de chamada (FLT_CALLBACK_DATA). Ele está contido em uma estrutura FLT_IO_PARAMETER_BLOCK.
IRP_MJ_RELEASE_FOR_MOD_WRITE é uma operação de retorno de chamada do sistema de arquivos (FSFilter).
IRP_MJ_RELEASE_FOR_MOD_WRITE normalmente é invocado do gravador de página modificado como parte de um APC de kernel especial. Ele sempre é executado em IRQL = APC_LEVEL. Como ele pode ser chamado no contexto de um APC de kernel especial, ele pode preempcionar o código do modo kernel que é executado em IRQL = PASSIVE_LEVEL, incluindo APCs de usuário e APCs de kernel normais. Portanto, tome cuidado ao aguardar os recursos que podem ser mantidos por um thread que a operação de IRP_MJ_RELEASE_FOR_MODE_WRITE pode ter preempção. A tentativa de aguardar esses recursos pode resultar em um deadlock.
Para obter mais informações sobre operações de retorno de chamada FSFilter, consulte a entrada de referência para FsRtlRegisterFileSystemFilterCallbacks.
Requisitos
Tipo de Requisito | Requisito |
---|---|
parâmetro | Fltkernel.h (inclua Fltkernel.h) |