Author: ion
Date: Sun Jul 2 05:29:12 2006
New Revision: 22755
URL:
http://svn.reactos.org/svn/reactos?rev=22755&view=rev
Log:
- Some small changes to some prototypes/names for upcoming functionality.
Modified:
trunk/reactos/ntoskrnl/include/internal/io.h
trunk/reactos/ntoskrnl/io/iomgr/device.c
trunk/reactos/ntoskrnl/io/iomgr/file.c
trunk/reactos/ntoskrnl/io/iomgr/volume.c
Modified: trunk/reactos/ntoskrnl/include/internal/io.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/…
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/io.h (original)
+++ trunk/reactos/ntoskrnl/include/internal/io.h Sun Jul 2 05:29:12 2006
@@ -334,6 +334,16 @@
} SHUTDOWN_ENTRY, *PSHUTDOWN_ENTRY;
//
+// F/S Notification entry for registered File Systems
+//
+typedef struct _FS_CHANGE_NOTIFY_ENTRY
+{
+ LIST_ENTRY FsChangeNotifyList;
+ PDRIVER_OBJECT DriverObject;
+ PDRIVER_FS_NOTIFICATION FSDNotificationProc;
+} FS_CHANGE_NOTIFY_ENTRY, *PFS_CHANGE_NOTIFY_ENTRY;
+
+//
// Called on every visit of a node during a preorder-traversal of the device
// node tree.
// If the routine returns STATUS_UNSUCCESSFUL the traversal will stop and
@@ -559,7 +569,10 @@
NTAPI
IopMountVolume(
IN PDEVICE_OBJECT DeviceObject,
- IN BOOLEAN AllowRawMount
+ IN BOOLEAN AllowRawMount,
+ IN BOOLEAN DeviceIsLocked,
+ IN BOOLEAN Alertable,
+ OUT PVPB *Vpb
);
PVOID
@@ -575,7 +588,7 @@
NTSTATUS
NTAPI
-IopAttachVpb(
+IopCreateVpb(
IN PDEVICE_OBJECT DeviceObject
);
Modified: trunk/reactos/ntoskrnl/io/iomgr/device.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/device.c…
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/device.c (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/device.c Sun Jul 2 05:29:12 2006
@@ -798,7 +798,7 @@
CreatedDeviceObject->DeviceType == FILE_DEVICE_TAPE)
{
/* Create Vpb */
- IopAttachVpb(CreatedDeviceObject);
+ IopCreateVpb(CreatedDeviceObject);
/* Initialize Lock Event */
KeInitializeEvent(&CreatedDeviceObject->DeviceLock,
Modified: trunk/reactos/ntoskrnl/io/iomgr/file.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/file.c?r…
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/file.c (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/file.c Sun Jul 2 05:29:12 2006
@@ -43,6 +43,7 @@
PDEVICE_OBJECT DeviceObject;
NTSTATUS Status;
PFILE_OBJECT FileObject;
+ PVPB Vpb;
DPRINT("IopParseDevice:\n"
"DeviceObject : %p\n"
"RelatedFileObject : %p\n"
@@ -100,7 +101,7 @@
/* Check if it's not already mounted */
if (!(DeviceObject->Vpb->Flags & VPB_MOUNTED))
{
- Status = IopMountVolume(DeviceObject, FALSE);
+ Status = IopMountVolume(DeviceObject, FALSE, FALSE, FALSE, &Vpb);
if (!NT_SUCCESS(Status))
{
/* Couldn't mount, fail the lookup */
Modified: trunk/reactos/ntoskrnl/io/iomgr/volume.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/volume.c…
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/volume.c (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/volume.c Sun Jul 2 05:29:12 2006
@@ -26,13 +26,6 @@
LIST_ENTRY Entry;
} FILE_SYSTEM_OBJECT, *PFILE_SYSTEM_OBJECT;
-typedef struct _FS_CHANGE_NOTIFY_ENTRY
-{
- LIST_ENTRY FsChangeNotifyList;
- PDRIVER_OBJECT DriverObject;
- PDRIVER_FS_NOTIFICATION FSDNotificationProc;
-} FS_CHANGE_NOTIFY_ENTRY, *PFS_CHANGE_NOTIFY_ENTRY;
-
#if defined (ALLOC_PRAGMA)
#pragma alloc_text(INIT, IoInitVpbImplementation)
#endif
@@ -68,8 +61,8 @@
}
NTSTATUS
-STDCALL
-IopAttachVpb(IN PDEVICE_OBJECT DeviceObject)
+NTAPI
+IopCreateVpb(IN PDEVICE_OBJECT DeviceObject)
{
PVPB Vpb;
@@ -77,7 +70,7 @@
Vpb = ExAllocatePoolWithTag(NonPagedPool,
sizeof(VPB),
TAG_VPB);
- if (!Vpb) return(STATUS_UNSUCCESSFUL);
+ if (!Vpb) return STATUS_UNSUCCESSFUL;
/* Clear it so we don't waste time manually */
RtlZeroMemory(Vpb, sizeof(VPB));
@@ -87,9 +80,9 @@
Vpb->Size = sizeof(VPB);
Vpb->RealDevice = DeviceObject;
- /* link it to the Device Object */
+ /* Link it to the Device Object */
DeviceObject->Vpb = Vpb;
- return(STATUS_SUCCESS);
+ return STATUS_SUCCESS;
}
VOID
@@ -237,7 +230,10 @@
NTSTATUS
NTAPI
IopMountVolume(IN PDEVICE_OBJECT DeviceObject,
- IN BOOLEAN AllowRawMount)
+ IN BOOLEAN AllowRawMount,
+ IN BOOLEAN DeviceIsLocked,
+ IN BOOLEAN Alertable,
+ OUT PVPB *Vpb)
{
PFILE_SYSTEM_OBJECT current;
NTSTATUS Status;
@@ -341,6 +337,7 @@
PIRP Irp;
NTSTATUS Status = STATUS_SUCCESS;
PDEVICE_OBJECT DevObject;
+ PVPB NewVpb;
KeWaitForSingleObject(&DeviceObject->DeviceLock,
Executive,
@@ -401,7 +398,7 @@
}
/* Start mount sequence */
- Status = IopMountVolume(DeviceObject, AllowRawMount);
+ Status = IopMountVolume(DeviceObject, AllowRawMount, TRUE, FALSE, &NewVpb);
KeSetEvent(&DeviceObject->DeviceLock, IO_NO_INCREMENT, FALSE);
return(Status);