mirror of
https://github.com/reactos/reactos.git
synced 2024-10-07 09:54:40 +00:00
[MOUNTMGR]
Our ReconcileThisDatabaseWithMasterWorker() routine will expect two parameters: the device extension + the device to which reconcile remote database. So, fix our code accordingly svn path=/trunk/; revision=69291
This commit is contained in:
parent
37f1637343
commit
88648de586
|
@ -1467,6 +1467,7 @@ MountMgrQueryDosVolumePaths(IN PDEVICE_EXTENSION DeviceExtension,
|
||||||
ULONG Attempts, OutputLength;
|
ULONG Attempts, OutputLength;
|
||||||
PMOUNTMGR_TARGET_NAME Target;
|
PMOUNTMGR_TARGET_NAME Target;
|
||||||
PMOUNTMGR_VOLUME_PATHS Paths, Output;
|
PMOUNTMGR_VOLUME_PATHS Paths, Output;
|
||||||
|
RECONCILE_WORK_ITEM_CONTEXT ReconcileContext;
|
||||||
PDEVICE_INFORMATION DeviceInformation, ListDeviceInfo, FailedDevice;
|
PDEVICE_INFORMATION DeviceInformation, ListDeviceInfo, FailedDevice;
|
||||||
|
|
||||||
Stack = IoGetCurrentIrpStackLocation(Irp);
|
Stack = IoGetCurrentIrpStackLocation(Irp);
|
||||||
|
@ -1535,8 +1536,10 @@ MountMgrQueryDosVolumePaths(IN PDEVICE_EXTENSION DeviceExtension,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Reconcile database */
|
/* Reconcile database */
|
||||||
|
ReconcileContext.DeviceExtension = DeviceExtension;
|
||||||
|
ReconcileContext.DeviceInformation = FailedDevice;
|
||||||
KeReleaseSemaphore(&DeviceExtension->DeviceLock, IO_NO_INCREMENT, 1, FALSE);
|
KeReleaseSemaphore(&DeviceExtension->DeviceLock, IO_NO_INCREMENT, 1, FALSE);
|
||||||
ReconcileThisDatabaseWithMasterWorker(&DeviceExtension);
|
ReconcileThisDatabaseWithMasterWorker(&ReconcileContext);
|
||||||
KeWaitForSingleObject(&DeviceExtension->DeviceLock, Executive, KernelMode, FALSE, NULL);
|
KeWaitForSingleObject(&DeviceExtension->DeviceLock, Executive, KernelMode, FALSE, NULL);
|
||||||
|
|
||||||
/* Look for our device, to check it's online */
|
/* Look for our device, to check it's online */
|
||||||
|
|
|
@ -128,14 +128,19 @@ typedef struct _ONLINE_NOTIFICATION_WORK_ITEM
|
||||||
UNICODE_STRING SymbolicName; // 0x14
|
UNICODE_STRING SymbolicName; // 0x14
|
||||||
} ONLINE_NOTIFICATION_WORK_ITEM, *PONLINE_NOTIFICATION_WORK_ITEM; // 0x1C
|
} ONLINE_NOTIFICATION_WORK_ITEM, *PONLINE_NOTIFICATION_WORK_ITEM; // 0x1C
|
||||||
|
|
||||||
|
typedef struct _RECONCILE_WORK_ITEM_CONTEXT
|
||||||
|
{
|
||||||
|
PDEVICE_EXTENSION DeviceExtension;
|
||||||
|
PDEVICE_INFORMATION DeviceInformation;
|
||||||
|
} RECONCILE_WORK_ITEM_CONTEXT, *PRECONCILE_WORK_ITEM_CONTEXT;
|
||||||
|
|
||||||
typedef struct _RECONCILE_WORK_ITEM
|
typedef struct _RECONCILE_WORK_ITEM
|
||||||
{
|
{
|
||||||
LIST_ENTRY WorkerQueueListEntry; // 0x00
|
LIST_ENTRY WorkerQueueListEntry; // 0x00
|
||||||
PIO_WORKITEM WorkItem; // 0x08
|
PIO_WORKITEM WorkItem; // 0x08
|
||||||
PWORKER_THREAD_ROUTINE WorkerRoutine; // 0x0C
|
PWORKER_THREAD_ROUTINE WorkerRoutine; // 0x0C
|
||||||
PVOID Context; // 0x10
|
PVOID Context; // 0x10
|
||||||
PDEVICE_EXTENSION DeviceExtension; // 0x14
|
RECONCILE_WORK_ITEM_CONTEXT; // 0x14
|
||||||
PDEVICE_INFORMATION DeviceInformation; // 0x18
|
|
||||||
} RECONCILE_WORK_ITEM, *PRECONCILE_WORK_ITEM; // 0x1C
|
} RECONCILE_WORK_ITEM, *PRECONCILE_WORK_ITEM; // 0x1C
|
||||||
|
|
||||||
typedef struct _MIGRATE_WORK_ITEM
|
typedef struct _MIGRATE_WORK_ITEM
|
||||||
|
|
Loading…
Reference in a new issue