| 175 | |
| 176 | |
| 177 | VOID |
| 178 | Ext2DeQueueRequest (IN PVOID Context) |
| 179 | { |
| 180 | PEXT2_IRP_CONTEXT IrpContext; |
| 181 | |
| 182 | IrpContext = (PEXT2_IRP_CONTEXT) Context; |
| 183 | |
| 184 | ASSERT(IrpContext); |
| 185 | |
| 186 | ASSERT((IrpContext->Identifier.Type == EXT2ICX) && |
| 187 | (IrpContext->Identifier.Size == sizeof(EXT2_IRP_CONTEXT))); |
| 188 | |
| 189 | __try { |
| 190 | |
| 191 | __try { |
| 192 | |
| 193 | FsRtlEnterFileSystem(); |
| 194 | |
| 195 | if (!IrpContext->IsTopLevel) { |
| 196 | IoSetTopLevelIrp((PIRP) FSRTL_FSP_TOP_LEVEL_IRP); |
| 197 | } |
| 198 | |
| 199 | Ext2DispatchRequest(IrpContext); |
| 200 | |
| 201 | } __except (Ext2ExceptionFilter(IrpContext, GetExceptionInformation())) { |
| 202 | |
| 203 | Ext2ExceptionHandler(IrpContext); |
| 204 | } |
| 205 | |
| 206 | } __finally { |
| 207 | |
| 208 | IoSetTopLevelIrp(NULL); |
| 209 | |
| 210 | FsRtlExitFileSystem(); |
| 211 | } |
| 212 | } |
| 213 | |
| 214 | |
| 215 | NTSTATUS |
nothing calls this directly
no test coverage detected