MCPcopy Create free account
hub / github.com/bobranten/Ext4Fsd / Ext2CreateMdl

Function Ext2CreateMdl

Ext4Fsd/block.c:51–81  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

49/* FUNCTIONS ***************************************************************/
50
51PMDL
52Ext2CreateMdl (
53 IN PVOID Buffer,
54 IN ULONG Length,
55 IN LOCK_OPERATION op
56)
57{
58 NTSTATUS Status;
59 PMDL Mdl = NULL;
60
61 ASSERT (Buffer != NULL);
62 Mdl = IoAllocateMdl (Buffer, Length, FALSE, FALSE, NULL);
63 if (Mdl == NULL) {
64 Status = STATUS_INSUFFICIENT_RESOURCES;
65 } else {
66 __try {
67 if (MmIsNonPagedSystemAddressValid(Buffer)) {
68 MmBuildMdlForNonPagedPool(Mdl);
69 } else {
70 MmProbeAndLockPages(Mdl, KernelMode, op);
71 }
72 Status = STATUS_SUCCESS;
73 } __except (EXCEPTION_EXECUTE_HANDLER) {
74 IoFreeMdl (Mdl);
75 Mdl = NULL;
76 DbgBreak();
77 Status = STATUS_INVALID_USER_BUFFER;
78 }
79 }
80 return Mdl;
81}
82
83
84VOID

Callers 1

get_block_bh_mdlFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected