X-Git-Url: http://git.jankratochvil.net/?a=blobdiff_plain;f=ntoskrnl%2Fio%2Ffs.c;h=e8da5491287c9289b6009218e4c930f1321d5771;hb=84d3062eb330486c0a03ccb6681eab33e485bd7c;hp=fa340d8c777e82be3d49af8fbc1dfecf561a313d;hpb=a6867fd6393466d8f81573905e44f31234f02a9e;p=reactos.git diff --git a/ntoskrnl/io/fs.c b/ntoskrnl/io/fs.c index fa340d8..e8da549 100644 --- a/ntoskrnl/io/fs.c +++ b/ntoskrnl/io/fs.c @@ -199,7 +199,15 @@ IoShutdownRegisteredFileSystems(VOID) { current = CONTAINING_RECORD(current_entry,FILE_SYSTEM_OBJECT,Entry); if (current==current_last) - KeBugCheck(0); /* filesystem forgot to call IoUnregisterFileSystem() */ + { + /* At least ntfs.sys-NT5.1sp1 appears to not to unregister itself. + * It does not import symbol IoUnregisterFileSystem() at all! + * BTW also ext2fsd.sys<=v0.10A also forgets to call IoUnregisterFileSystem(). + */ + DPRINT("IoShutdownRegisteredFileSystems(): WARNING: filesystem forgot to call IoUnregisterFileSystem() !!!\n"); + IoUnregisterFileSystem(current->DeviceObject); + continue; + } current_last=current; /* send IRP_MJ_SHUTDOWN */ @@ -235,7 +243,7 @@ IopMountFileSystem(PDEVICE_OBJECT DeviceObject, PIRP Irp; NTSTATUS Status; - DPRINT("IoAskFileSystemToMountDevice(DeviceObject %x, DeviceToMount %x)\n", + DPRINT("IopMountFileSystem(DeviceObject %x, DeviceToMount %x)\n", DeviceObject,DeviceToMount); assert_irql(PASSIVE_LEVEL);