[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:
Pierre Schweitzer 2015-09-19 14:50:04 +00:00
parent 37f1637343
commit 88648de586
2 changed files with 11 additions and 3 deletions

View file

@ -1467,6 +1467,7 @@ MountMgrQueryDosVolumePaths(IN PDEVICE_EXTENSION DeviceExtension,
ULONG Attempts, OutputLength;
PMOUNTMGR_TARGET_NAME Target;
PMOUNTMGR_VOLUME_PATHS Paths, Output;
RECONCILE_WORK_ITEM_CONTEXT ReconcileContext;
PDEVICE_INFORMATION DeviceInformation, ListDeviceInfo, FailedDevice;
Stack = IoGetCurrentIrpStackLocation(Irp);
@ -1535,8 +1536,10 @@ MountMgrQueryDosVolumePaths(IN PDEVICE_EXTENSION DeviceExtension,
}
/* Reconcile database */
ReconcileContext.DeviceExtension = DeviceExtension;
ReconcileContext.DeviceInformation = FailedDevice;
KeReleaseSemaphore(&DeviceExtension->DeviceLock, IO_NO_INCREMENT, 1, FALSE);
ReconcileThisDatabaseWithMasterWorker(&DeviceExtension);
ReconcileThisDatabaseWithMasterWorker(&ReconcileContext);
KeWaitForSingleObject(&DeviceExtension->DeviceLock, Executive, KernelMode, FALSE, NULL);
/* Look for our device, to check it's online */

View file

@ -128,14 +128,19 @@ typedef struct _ONLINE_NOTIFICATION_WORK_ITEM
UNICODE_STRING SymbolicName; // 0x14
} 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
{
LIST_ENTRY WorkerQueueListEntry; // 0x00
PIO_WORKITEM WorkItem; // 0x08
PWORKER_THREAD_ROUTINE WorkerRoutine; // 0x0C
PVOID Context; // 0x10
PDEVICE_EXTENSION DeviceExtension; // 0x14
PDEVICE_INFORMATION DeviceInformation; // 0x18
RECONCILE_WORK_ITEM_CONTEXT; // 0x14
} RECONCILE_WORK_ITEM, *PRECONCILE_WORK_ITEM; // 0x1C
typedef struct _MIGRATE_WORK_ITEM