Replace DPRINT/DPRINT1 by dynamic traces

svn path=/trunk/; revision=34791
This commit is contained in:
Hervé Poussineau 2008-07-25 20:24:46 +00:00
parent 042289aad8
commit 242b0d5be5
6 changed files with 86 additions and 86 deletions

View file

@ -37,7 +37,7 @@ ClassCreate(
IN PDEVICE_OBJECT DeviceObject, IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp) IN PIRP Irp)
{ {
DPRINT("IRP_MJ_CREATE\n"); TRACE_(CLASS_NAME, "IRP_MJ_CREATE\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO)
return ForwardIrpAndForget(DeviceObject, Irp); return ForwardIrpAndForget(DeviceObject, Irp);
@ -54,7 +54,7 @@ ClassClose(
IN PDEVICE_OBJECT DeviceObject, IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp) IN PIRP Irp)
{ {
DPRINT("IRP_MJ_CLOSE\n"); TRACE_(CLASS_NAME, "IRP_MJ_CLOSE\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO)
return ForwardIrpAndForget(DeviceObject, Irp); return ForwardIrpAndForget(DeviceObject, Irp);
@ -71,7 +71,7 @@ ClassCleanup(
IN PDEVICE_OBJECT DeviceObject, IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp) IN PIRP Irp)
{ {
DPRINT("IRP_MJ_CLEANUP\n"); TRACE_(CLASS_NAME, "IRP_MJ_CLEANUP\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO)
return ForwardIrpAndForget(DeviceObject, Irp); return ForwardIrpAndForget(DeviceObject, Irp);
@ -92,7 +92,7 @@ ClassRead(
KIRQL OldIrql; KIRQL OldIrql;
NTSTATUS Status; NTSTATUS Status;
DPRINT("IRP_MJ_READ\n"); TRACE_(CLASS_NAME, "IRP_MJ_READ\n");
ASSERT(DeviceExtension->Common.IsClassDO); ASSERT(DeviceExtension->Common.IsClassDO);
@ -122,7 +122,7 @@ ClassDeviceControl(
PCLASS_DEVICE_EXTENSION DeviceExtension; PCLASS_DEVICE_EXTENSION DeviceExtension;
NTSTATUS Status = STATUS_NOT_SUPPORTED; NTSTATUS Status = STATUS_NOT_SUPPORTED;
DPRINT("IRP_MJ_DEVICE_CONTROL\n"); TRACE_(CLASS_NAME, "IRP_MJ_DEVICE_CONTROL\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO)
return ForwardIrpAndForget(DeviceObject, Irp); return ForwardIrpAndForget(DeviceObject, Irp);
@ -170,7 +170,7 @@ ClassDeviceControl(
break; break;
} }
default: default:
DPRINT1("IRP_MJ_DEVICE_CONTROL / unknown I/O control code 0x%lx\n", WARN_(CLASS_NAME, "IRP_MJ_DEVICE_CONTROL / unknown I/O control code 0x%lx\n",
IoGetCurrentIrpStackLocation(Irp)->Parameters.DeviceIoControl.IoControlCode); IoGetCurrentIrpStackLocation(Irp)->Parameters.DeviceIoControl.IoControlCode);
ASSERT(FALSE); ASSERT(FALSE);
break; break;
@ -200,7 +200,7 @@ IrpStub(
return ForwardIrpAndForget(DeviceObject, Irp); return ForwardIrpAndForget(DeviceObject, Irp);
default: default:
{ {
DPRINT1("Port DO stub for major function 0x%lx\n", ERR_(CLASS_NAME, "Port DO stub for major function 0x%lx\n",
IoGetCurrentIrpStackLocation(Irp)->MajorFunction); IoGetCurrentIrpStackLocation(Irp)->MajorFunction);
ASSERT(FALSE); ASSERT(FALSE);
} }
@ -208,7 +208,7 @@ IrpStub(
} }
else else
{ {
DPRINT1("Class DO stub for major function 0x%lx\n", ERR_(CLASS_NAME, "Class DO stub for major function 0x%lx\n",
IoGetCurrentIrpStackLocation(Irp)->MajorFunction); IoGetCurrentIrpStackLocation(Irp)->MajorFunction);
ASSERT(FALSE); ASSERT(FALSE);
} }
@ -236,7 +236,7 @@ ReadRegistryEntries(
ParametersRegistryKey.Buffer = ExAllocatePoolWithTag(PagedPool, ParametersRegistryKey.MaximumLength, CLASS_TAG); ParametersRegistryKey.Buffer = ExAllocatePoolWithTag(PagedPool, ParametersRegistryKey.MaximumLength, CLASS_TAG);
if (!ParametersRegistryKey.Buffer) if (!ParametersRegistryKey.Buffer)
{ {
DPRINT("ExAllocatePoolWithTag() failed\n"); WARN_(CLASS_NAME, "ExAllocatePoolWithTag() failed\n");
return STATUS_NO_MEMORY; return STATUS_NO_MEMORY;
} }
RtlCopyUnicodeString(&ParametersRegistryKey, RegistryPath); RtlCopyUnicodeString(&ParametersRegistryKey, RegistryPath);
@ -315,7 +315,7 @@ CreateClassDeviceObject(
PCLASS_DEVICE_EXTENSION DeviceExtension; PCLASS_DEVICE_EXTENSION DeviceExtension;
NTSTATUS Status; NTSTATUS Status;
DPRINT("CreateClassDeviceObject(0x%p)\n", DriverObject); TRACE_(CLASS_NAME, "CreateClassDeviceObject(0x%p)\n", DriverObject);
/* Create new device object */ /* Create new device object */
DriverExtension = IoGetDriverObjectExtension(DriverObject, DriverObject); DriverExtension = IoGetDriverObjectExtension(DriverObject, DriverObject);
@ -328,19 +328,19 @@ CreateClassDeviceObject(
DeviceNameU.Buffer = ExAllocatePoolWithTag(PagedPool, DeviceNameU.MaximumLength, CLASS_TAG); DeviceNameU.Buffer = ExAllocatePoolWithTag(PagedPool, DeviceNameU.MaximumLength, CLASS_TAG);
if (!DeviceNameU.Buffer) if (!DeviceNameU.Buffer)
{ {
DPRINT("ExAllocatePoolWithTag() failed\n"); WARN_(CLASS_NAME, "ExAllocatePoolWithTag() failed\n");
return STATUS_NO_MEMORY; return STATUS_NO_MEMORY;
} }
Status = RtlAppendUnicodeToString(&DeviceNameU, L"\\Device\\"); Status = RtlAppendUnicodeToString(&DeviceNameU, L"\\Device\\");
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("RtlAppendUnicodeToString() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "RtlAppendUnicodeToString() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
Status = RtlAppendUnicodeStringToString(&DeviceNameU, &DriverExtension->DeviceBaseName); Status = RtlAppendUnicodeStringToString(&DeviceNameU, &DriverExtension->DeviceBaseName);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("RtlAppendUnicodeStringToString() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "RtlAppendUnicodeStringToString() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
PrefixLength = DeviceNameU.MaximumLength - 4 * sizeof(WCHAR) - sizeof(UNICODE_NULL); PrefixLength = DeviceNameU.MaximumLength - 4 * sizeof(WCHAR) - sizeof(UNICODE_NULL);
@ -360,12 +360,12 @@ CreateClassDeviceObject(
goto cleanup; goto cleanup;
else if (Status != STATUS_OBJECT_NAME_COLLISION) else if (Status != STATUS_OBJECT_NAME_COLLISION)
{ {
DPRINT("IoCreateDevice() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "IoCreateDevice() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
DeviceId++; DeviceId++;
} }
DPRINT("Too many devices starting with '\\Device\\%wZ'\n", &DriverExtension->DeviceBaseName); WARN_(CLASS_NAME, "Too many devices starting with '\\Device\\%wZ'\n", &DriverExtension->DeviceBaseName);
Status = STATUS_TOO_MANY_NAMES; Status = STATUS_TOO_MANY_NAMES;
cleanup: cleanup:
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
@ -468,7 +468,7 @@ ClassCallback(
SIZE_T InputCount = DataEnd - DataStart; SIZE_T InputCount = DataEnd - DataStart;
SIZE_T ReadSize; SIZE_T ReadSize;
DPRINT("ClassCallback()\n"); TRACE_(CLASS_NAME, "ClassCallback()\n");
ASSERT(ClassDeviceExtension->Common.IsClassDO); ASSERT(ClassDeviceExtension->Common.IsClassDO);
@ -506,7 +506,7 @@ ClassCallback(
} }
KeReleaseSpinLock(&ClassDeviceExtension->SpinLock, OldIrql); KeReleaseSpinLock(&ClassDeviceExtension->SpinLock, OldIrql);
DPRINT("Leaving ClassCallback()\n"); TRACE_(CLASS_NAME, "Leaving ClassCallback()\n");
return TRUE; return TRUE;
} }
@ -522,7 +522,7 @@ ConnectPortDriver(
CONNECT_DATA ConnectData; CONNECT_DATA ConnectData;
NTSTATUS Status; NTSTATUS Status;
DPRINT("Connecting PortDO %p to ClassDO %p\n", PortDO, ClassDO); TRACE_(CLASS_NAME, "Connecting PortDO %p to ClassDO %p\n", PortDO, ClassDO);
KeInitializeEvent(&Event, NotificationEvent, FALSE); KeInitializeEvent(&Event, NotificationEvent, FALSE);
@ -578,7 +578,7 @@ DestroyPortDriver(
KIRQL OldIrql; KIRQL OldIrql;
NTSTATUS Status; NTSTATUS Status;
DPRINT("Destroying PortDO %p\n", PortDO); TRACE_(CLASS_NAME, "Destroying PortDO %p\n", PortDO);
DeviceExtension = (PPORT_DEVICE_EXTENSION)PortDO->DeviceExtension; DeviceExtension = (PPORT_DEVICE_EXTENSION)PortDO->DeviceExtension;
ClassDeviceExtension = DeviceExtension->ClassDO->DeviceExtension; ClassDeviceExtension = DeviceExtension->ClassDO->DeviceExtension;
@ -634,7 +634,7 @@ ClassAddDevice(
PPORT_DEVICE_EXTENSION DeviceExtension = NULL; PPORT_DEVICE_EXTENSION DeviceExtension = NULL;
NTSTATUS Status; NTSTATUS Status;
DPRINT("ClassAddDevice called. Pdo = 0x%p\n", Pdo); TRACE_(CLASS_NAME, "ClassAddDevice called. Pdo = 0x%p\n", Pdo);
DriverExtension = IoGetDriverObjectExtension(DriverObject, DriverObject); DriverExtension = IoGetDriverObjectExtension(DriverObject, DriverObject);
@ -653,7 +653,7 @@ ClassAddDevice(
&Fdo); &Fdo);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("IoCreateDevice() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "IoCreateDevice() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
IoSetStartIoAttributes(Fdo, TRUE, TRUE); IoSetStartIoAttributes(Fdo, TRUE, TRUE);
@ -666,7 +666,7 @@ ClassAddDevice(
Status = IoAttachDeviceToDeviceStackSafe(Fdo, Pdo, &DeviceExtension->LowerDevice); Status = IoAttachDeviceToDeviceStackSafe(Fdo, Pdo, &DeviceExtension->LowerDevice);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("IoAttachDeviceToDeviceStackSafe() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "IoAttachDeviceToDeviceStackSafe() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
if (DeviceExtension->LowerDevice->Flags & DO_POWER_PAGABLE) if (DeviceExtension->LowerDevice->Flags & DO_POWER_PAGABLE)
@ -686,14 +686,14 @@ ClassAddDevice(
&DeviceExtension->ClassDO); &DeviceExtension->ClassDO);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("CreateClassDeviceObject() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "CreateClassDeviceObject() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
} }
Status = ConnectPortDriver(Fdo, DeviceExtension->ClassDO); Status = ConnectPortDriver(Fdo, DeviceExtension->ClassDO);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("ConnectPortDriver() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "ConnectPortDriver() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
Fdo->Flags &= ~DO_DEVICE_INITIALIZING; Fdo->Flags &= ~DO_DEVICE_INITIALIZING;
@ -725,7 +725,7 @@ ClassCancelRoutine(
KIRQL OldIrql; KIRQL OldIrql;
BOOLEAN wasQueued = FALSE; BOOLEAN wasQueued = FALSE;
DPRINT("ClassCancelRoutine(DeviceObject %p, Irp %p)\n", DeviceObject, Irp); TRACE_(CLASS_NAME, "ClassCancelRoutine(DeviceObject %p, Irp %p)\n", DeviceObject, Irp);
ASSERT(ClassDeviceExtension->Common.IsClassDO); ASSERT(ClassDeviceExtension->Common.IsClassDO);
@ -762,7 +762,7 @@ HandleReadIrp(
PCLASS_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension; PCLASS_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension;
NTSTATUS Status; NTSTATUS Status;
DPRINT("HandleReadIrp(DeviceObject %p, Irp %p)\n", DeviceObject, Irp); TRACE_(CLASS_NAME, "HandleReadIrp(DeviceObject %p, Irp %p)\n", DeviceObject, Irp);
ASSERT(DeviceExtension->Common.IsClassDO); ASSERT(DeviceExtension->Common.IsClassDO);
@ -828,7 +828,7 @@ ClassStartIo(
PCLASS_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension; PCLASS_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension;
KIRQL OldIrql; KIRQL OldIrql;
DPRINT("ClassStartIo(DeviceObject %p, Irp %p)\n", DeviceObject, Irp); TRACE_(CLASS_NAME, "ClassStartIo(DeviceObject %p, Irp %p)\n", DeviceObject, Irp);
ASSERT(DeviceExtension->Common.IsClassDO); ASSERT(DeviceExtension->Common.IsClassDO);
@ -854,7 +854,7 @@ SearchForLegacyDrivers(
ULONG Size, ResultLength; ULONG Size, ResultLength;
NTSTATUS Status; NTSTATUS Status;
DPRINT("SearchForLegacyDrivers(%p %p %lu)\n", TRACE_(CLASS_NAME, "SearchForLegacyDrivers(%p %p %lu)\n",
DriverObject, Context, Count); DriverObject, Context, Count);
if (Count != 1) if (Count != 1)
@ -868,7 +868,7 @@ SearchForLegacyDrivers(
&PortBaseName); &PortBaseName);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("DuplicateUnicodeString() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "DuplicateUnicodeString() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
PortBaseName.Length -= (sizeof(L"Class") - sizeof(UNICODE_NULL)); PortBaseName.Length -= (sizeof(L"Class") - sizeof(UNICODE_NULL));
@ -879,7 +879,7 @@ SearchForLegacyDrivers(
KeyValueInformation = ExAllocatePoolWithTag(PagedPool, Size, CLASS_TAG); KeyValueInformation = ExAllocatePoolWithTag(PagedPool, Size, CLASS_TAG);
if (!KeyValueInformation) if (!KeyValueInformation)
{ {
DPRINT("ExAllocatePoolWithTag() failed\n"); WARN_(CLASS_NAME, "ExAllocatePoolWithTag() failed\n");
Status = STATUS_NO_MEMORY; Status = STATUS_NO_MEMORY;
goto cleanup; goto cleanup;
} }
@ -889,13 +889,13 @@ SearchForLegacyDrivers(
Status = ZwOpenKey(&hDeviceMapKey, 0, &ObjectAttributes); Status = ZwOpenKey(&hDeviceMapKey, 0, &ObjectAttributes);
if (Status == STATUS_OBJECT_NAME_NOT_FOUND) if (Status == STATUS_OBJECT_NAME_NOT_FOUND)
{ {
DPRINT("HKLM\\HARDWARE\\DEVICEMAP is non-existent\n"); INFO_(CLASS_NAME, "HKLM\\HARDWARE\\DEVICEMAP is non-existent\n");
Status = STATUS_SUCCESS; Status = STATUS_SUCCESS;
goto cleanup; goto cleanup;
} }
else if (!NT_SUCCESS(Status)) else if (!NT_SUCCESS(Status))
{ {
DPRINT("ZwOpenKey() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "ZwOpenKey() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
@ -904,13 +904,13 @@ SearchForLegacyDrivers(
Status = ZwOpenKey(&hPortKey, KEY_QUERY_VALUE, &ObjectAttributes); Status = ZwOpenKey(&hPortKey, KEY_QUERY_VALUE, &ObjectAttributes);
if (Status == STATUS_OBJECT_NAME_NOT_FOUND) if (Status == STATUS_OBJECT_NAME_NOT_FOUND)
{ {
DPRINT("HKLM\\HARDWARE\\DEVICEMAP\\%wZ is non-existent\n", &PortBaseName); INFO_(CLASS_NAME, "HKLM\\HARDWARE\\DEVICEMAP\\%wZ is non-existent\n", &PortBaseName);
Status = STATUS_SUCCESS; Status = STATUS_SUCCESS;
goto cleanup; goto cleanup;
} }
else if (!NT_SUCCESS(Status)) else if (!NT_SUCCESS(Status))
{ {
DPRINT("ZwOpenKey() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "ZwOpenKey() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
@ -928,16 +928,16 @@ SearchForLegacyDrivers(
Status = IoGetDeviceObjectPointer(&PortName, FILE_READ_ATTRIBUTES, &FileObject, &PortDeviceObject); Status = IoGetDeviceObjectPointer(&PortName, FILE_READ_ATTRIBUTES, &FileObject, &PortDeviceObject);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("IoGetDeviceObjectPointer(%wZ) failed with status 0x%08lx\n", &PortName, Status); WARN_(CLASS_NAME, "IoGetDeviceObjectPointer(%wZ) failed with status 0x%08lx\n", &PortName, Status);
continue; continue;
} }
DPRINT("Legacy driver found\n"); INFO_(CLASS_NAME, "Legacy driver found\n");
Status = ClassAddDevice(DriverObject, PortDeviceObject); Status = ClassAddDevice(DriverObject, PortDeviceObject);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
/* FIXME: Log the error */ /* FIXME: Log the error */
DPRINT("ClassAddDevice() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "ClassAddDevice() failed with status 0x%08lx\n", Status);
} }
} }
@ -969,7 +969,7 @@ DriverEntry(
(PVOID*)&DriverExtension); (PVOID*)&DriverExtension);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("IoAllocateDriverObjectExtension() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "IoAllocateDriverObjectExtension() failed with status 0x%08lx\n", Status);
return Status; return Status;
} }
RtlZeroMemory(DriverExtension, sizeof(CLASS_DRIVER_EXTENSION)); RtlZeroMemory(DriverExtension, sizeof(CLASS_DRIVER_EXTENSION));
@ -980,14 +980,14 @@ DriverEntry(
&DriverExtension->RegistryPath); &DriverExtension->RegistryPath);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("DuplicateUnicodeString() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "DuplicateUnicodeString() failed with status 0x%08lx\n", Status);
return Status; return Status;
} }
Status = ReadRegistryEntries(RegistryPath, DriverExtension); Status = ReadRegistryEntries(RegistryPath, DriverExtension);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("ReadRegistryEntries() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "ReadRegistryEntries() failed with status 0x%08lx\n", Status);
return Status; return Status;
} }
@ -998,7 +998,7 @@ DriverEntry(
&DriverExtension->MainClassDeviceObject); &DriverExtension->MainClassDeviceObject);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("CreateClassDeviceObject() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "CreateClassDeviceObject() failed with status 0x%08lx\n", Status);
return Status; return Status;
} }
} }

View file

@ -4,7 +4,6 @@
#include <stdio.h> #include <stdio.h>
#include <pseh/pseh.h> #include <pseh/pseh.h>
#define NDEBUG
#include <debug.h> #include <debug.h>
#define MAX_PATH 260 #define MAX_PATH 260
@ -13,6 +12,7 @@
#define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24)) #define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24))
#define CLASS_TAG TAG('K', 'b', 'd', 'C') #define CLASS_TAG TAG('K', 'b', 'd', 'C')
#define DPFLTR_CLASS_NAME_ID DPFLTR_KBDCLASS_ID
typedef enum typedef enum
{ {

View file

@ -37,7 +37,7 @@ ForwardIrpAndWait(
KeInitializeEvent(&Event, NotificationEvent, FALSE); KeInitializeEvent(&Event, NotificationEvent, FALSE);
IoCopyCurrentIrpStackLocationToNext(Irp); IoCopyCurrentIrpStackLocationToNext(Irp);
DPRINT("Calling lower device %p\n", LowerDevice); TRACE_(CLASS_NAME, "Calling lower device %p\n", LowerDevice);
IoSetCompletionRoutine(Irp, ForwardIrpAndWaitCompletion, &Event, TRUE, TRUE, TRUE); IoSetCompletionRoutine(Irp, ForwardIrpAndWaitCompletion, &Event, TRUE, TRUE, TRUE);
Status = IoCallDriver(LowerDevice, Irp); Status = IoCallDriver(LowerDevice, Irp);

View file

@ -37,7 +37,7 @@ ForwardIrpAndWait(
KeInitializeEvent(&Event, NotificationEvent, FALSE); KeInitializeEvent(&Event, NotificationEvent, FALSE);
IoCopyCurrentIrpStackLocationToNext(Irp); IoCopyCurrentIrpStackLocationToNext(Irp);
DPRINT("Calling lower device %p\n", LowerDevice); TRACE_(CLASS_NAME, "Calling lower device %p\n", LowerDevice);
IoSetCompletionRoutine(Irp, ForwardIrpAndWaitCompletion, &Event, TRUE, TRUE, TRUE); IoSetCompletionRoutine(Irp, ForwardIrpAndWaitCompletion, &Event, TRUE, TRUE, TRUE);
Status = IoCallDriver(LowerDevice, Irp); Status = IoCallDriver(LowerDevice, Irp);

View file

@ -37,7 +37,7 @@ ClassCreate(
IN PDEVICE_OBJECT DeviceObject, IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp) IN PIRP Irp)
{ {
DPRINT("IRP_MJ_CREATE\n"); TRACE_(CLASS_NAME, "IRP_MJ_CREATE\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO)
return ForwardIrpAndForget(DeviceObject, Irp); return ForwardIrpAndForget(DeviceObject, Irp);
@ -54,7 +54,7 @@ ClassClose(
IN PDEVICE_OBJECT DeviceObject, IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp) IN PIRP Irp)
{ {
DPRINT("IRP_MJ_CLOSE\n"); TRACE_(CLASS_NAME, "IRP_MJ_CLOSE\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO)
return ForwardIrpAndForget(DeviceObject, Irp); return ForwardIrpAndForget(DeviceObject, Irp);
@ -71,7 +71,7 @@ ClassCleanup(
IN PDEVICE_OBJECT DeviceObject, IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp) IN PIRP Irp)
{ {
DPRINT("IRP_MJ_CLEANUP\n"); TRACE_(CLASS_NAME, "IRP_MJ_CLEANUP\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO)
return ForwardIrpAndForget(DeviceObject, Irp); return ForwardIrpAndForget(DeviceObject, Irp);
@ -92,7 +92,7 @@ ClassRead(
KIRQL OldIrql; KIRQL OldIrql;
NTSTATUS Status; NTSTATUS Status;
DPRINT("IRP_MJ_READ\n"); TRACE_(CLASS_NAME, "IRP_MJ_READ\n");
ASSERT(DeviceExtension->Common.IsClassDO); ASSERT(DeviceExtension->Common.IsClassDO);
@ -122,7 +122,7 @@ ClassDeviceControl(
PCLASS_DEVICE_EXTENSION DeviceExtension; PCLASS_DEVICE_EXTENSION DeviceExtension;
NTSTATUS Status = STATUS_NOT_SUPPORTED; NTSTATUS Status = STATUS_NOT_SUPPORTED;
DPRINT("IRP_MJ_DEVICE_CONTROL\n"); TRACE_(CLASS_NAME, "IRP_MJ_DEVICE_CONTROL\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO)
return ForwardIrpAndForget(DeviceObject, Irp); return ForwardIrpAndForget(DeviceObject, Irp);
@ -147,7 +147,7 @@ ClassDeviceControl(
break; break;
} }
default: default:
DPRINT1("IRP_MJ_DEVICE_CONTROL / unknown I/O control code 0x%lx\n", WARN_(CLASS_NAME, "IRP_MJ_DEVICE_CONTROL / unknown I/O control code 0x%lx\n",
IoGetCurrentIrpStackLocation(Irp)->Parameters.DeviceIoControl.IoControlCode); IoGetCurrentIrpStackLocation(Irp)->Parameters.DeviceIoControl.IoControlCode);
ASSERT(FALSE); ASSERT(FALSE);
break; break;
@ -177,7 +177,7 @@ IrpStub(
return ForwardIrpAndForget(DeviceObject, Irp); return ForwardIrpAndForget(DeviceObject, Irp);
default: default:
{ {
DPRINT1("Port DO stub for major function 0x%lx\n", ERR_(CLASS_NAME, "Port DO stub for major function 0x%lx\n",
IoGetCurrentIrpStackLocation(Irp)->MajorFunction); IoGetCurrentIrpStackLocation(Irp)->MajorFunction);
ASSERT(FALSE); ASSERT(FALSE);
} }
@ -185,7 +185,7 @@ IrpStub(
} }
else else
{ {
DPRINT1("Class DO stub for major function 0x%lx\n", ERR_(CLASS_NAME, "Class DO stub for major function 0x%lx\n",
IoGetCurrentIrpStackLocation(Irp)->MajorFunction); IoGetCurrentIrpStackLocation(Irp)->MajorFunction);
ASSERT(FALSE); ASSERT(FALSE);
} }
@ -213,7 +213,7 @@ ReadRegistryEntries(
ParametersRegistryKey.Buffer = ExAllocatePoolWithTag(PagedPool, ParametersRegistryKey.MaximumLength, CLASS_TAG); ParametersRegistryKey.Buffer = ExAllocatePoolWithTag(PagedPool, ParametersRegistryKey.MaximumLength, CLASS_TAG);
if (!ParametersRegistryKey.Buffer) if (!ParametersRegistryKey.Buffer)
{ {
DPRINT("ExAllocatePoolWithTag() failed\n"); WARN_(CLASS_NAME, "ExAllocatePoolWithTag() failed\n");
return STATUS_NO_MEMORY; return STATUS_NO_MEMORY;
} }
RtlCopyUnicodeString(&ParametersRegistryKey, RegistryPath); RtlCopyUnicodeString(&ParametersRegistryKey, RegistryPath);
@ -292,7 +292,7 @@ CreateClassDeviceObject(
PCLASS_DEVICE_EXTENSION DeviceExtension; PCLASS_DEVICE_EXTENSION DeviceExtension;
NTSTATUS Status; NTSTATUS Status;
DPRINT("CreateClassDeviceObject(0x%p)\n", DriverObject); TRACE_(CLASS_NAME, "CreateClassDeviceObject(0x%p)\n", DriverObject);
/* Create new device object */ /* Create new device object */
DriverExtension = IoGetDriverObjectExtension(DriverObject, DriverObject); DriverExtension = IoGetDriverObjectExtension(DriverObject, DriverObject);
@ -305,19 +305,19 @@ CreateClassDeviceObject(
DeviceNameU.Buffer = ExAllocatePoolWithTag(PagedPool, DeviceNameU.MaximumLength, CLASS_TAG); DeviceNameU.Buffer = ExAllocatePoolWithTag(PagedPool, DeviceNameU.MaximumLength, CLASS_TAG);
if (!DeviceNameU.Buffer) if (!DeviceNameU.Buffer)
{ {
DPRINT("ExAllocatePoolWithTag() failed\n"); WARN_(CLASS_NAME, "ExAllocatePoolWithTag() failed\n");
return STATUS_NO_MEMORY; return STATUS_NO_MEMORY;
} }
Status = RtlAppendUnicodeToString(&DeviceNameU, L"\\Device\\"); Status = RtlAppendUnicodeToString(&DeviceNameU, L"\\Device\\");
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("RtlAppendUnicodeToString() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "RtlAppendUnicodeToString() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
Status = RtlAppendUnicodeStringToString(&DeviceNameU, &DriverExtension->DeviceBaseName); Status = RtlAppendUnicodeStringToString(&DeviceNameU, &DriverExtension->DeviceBaseName);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("RtlAppendUnicodeStringToString() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "RtlAppendUnicodeStringToString() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
PrefixLength = DeviceNameU.MaximumLength - 4 * sizeof(WCHAR) - sizeof(UNICODE_NULL); PrefixLength = DeviceNameU.MaximumLength - 4 * sizeof(WCHAR) - sizeof(UNICODE_NULL);
@ -337,12 +337,12 @@ CreateClassDeviceObject(
goto cleanup; goto cleanup;
else if (Status != STATUS_OBJECT_NAME_COLLISION) else if (Status != STATUS_OBJECT_NAME_COLLISION)
{ {
DPRINT("IoCreateDevice() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "IoCreateDevice() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
DeviceId++; DeviceId++;
} }
DPRINT("Too many devices starting with '\\Device\\%wZ'\n", &DriverExtension->DeviceBaseName); WARN_(CLASS_NAME, "Too many devices starting with '\\Device\\%wZ'\n", &DriverExtension->DeviceBaseName);
Status = STATUS_TOO_MANY_NAMES; Status = STATUS_TOO_MANY_NAMES;
cleanup: cleanup:
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
@ -444,7 +444,7 @@ ClassCallback(
SIZE_T InputCount = DataEnd - DataStart; SIZE_T InputCount = DataEnd - DataStart;
SIZE_T ReadSize; SIZE_T ReadSize;
DPRINT("ClassCallback()\n"); TRACE_(CLASS_NAME, "ClassCallback()\n");
ASSERT(ClassDeviceExtension->Common.IsClassDO); ASSERT(ClassDeviceExtension->Common.IsClassDO);
@ -482,7 +482,7 @@ ClassCallback(
} }
KeReleaseSpinLock(&ClassDeviceExtension->SpinLock, OldIrql); KeReleaseSpinLock(&ClassDeviceExtension->SpinLock, OldIrql);
DPRINT("Leaving ClassCallback()\n"); TRACE_(CLASS_NAME, "Leaving ClassCallback()\n");
return TRUE; return TRUE;
} }
@ -498,7 +498,7 @@ ConnectPortDriver(
CONNECT_DATA ConnectData; CONNECT_DATA ConnectData;
NTSTATUS Status; NTSTATUS Status;
DPRINT("Connecting PortDO %p to ClassDO %p\n", PortDO, ClassDO); TRACE_(CLASS_NAME, "Connecting PortDO %p to ClassDO %p\n", PortDO, ClassDO);
KeInitializeEvent(&Event, NotificationEvent, FALSE); KeInitializeEvent(&Event, NotificationEvent, FALSE);
@ -554,7 +554,7 @@ DestroyPortDriver(
KIRQL OldIrql; KIRQL OldIrql;
NTSTATUS Status; NTSTATUS Status;
DPRINT("Destroying PortDO %p\n", PortDO); TRACE_(CLASS_NAME, "Destroying PortDO %p\n", PortDO);
DeviceExtension = (PPORT_DEVICE_EXTENSION)PortDO->DeviceExtension; DeviceExtension = (PPORT_DEVICE_EXTENSION)PortDO->DeviceExtension;
ClassDeviceExtension = DeviceExtension->ClassDO->DeviceExtension; ClassDeviceExtension = DeviceExtension->ClassDO->DeviceExtension;
@ -610,7 +610,7 @@ ClassAddDevice(
PPORT_DEVICE_EXTENSION DeviceExtension = NULL; PPORT_DEVICE_EXTENSION DeviceExtension = NULL;
NTSTATUS Status; NTSTATUS Status;
DPRINT("ClassAddDevice called. Pdo = 0x%p\n", Pdo); TRACE_(CLASS_NAME, "ClassAddDevice called. Pdo = 0x%p\n", Pdo);
DriverExtension = IoGetDriverObjectExtension(DriverObject, DriverObject); DriverExtension = IoGetDriverObjectExtension(DriverObject, DriverObject);
@ -629,7 +629,7 @@ ClassAddDevice(
&Fdo); &Fdo);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("IoCreateDevice() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "IoCreateDevice() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
IoSetStartIoAttributes(Fdo, TRUE, TRUE); IoSetStartIoAttributes(Fdo, TRUE, TRUE);
@ -642,7 +642,7 @@ ClassAddDevice(
Status = IoAttachDeviceToDeviceStackSafe(Fdo, Pdo, &DeviceExtension->LowerDevice); Status = IoAttachDeviceToDeviceStackSafe(Fdo, Pdo, &DeviceExtension->LowerDevice);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("IoAttachDeviceToDeviceStackSafe() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "IoAttachDeviceToDeviceStackSafe() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
if (DeviceExtension->LowerDevice->Flags & DO_POWER_PAGABLE) if (DeviceExtension->LowerDevice->Flags & DO_POWER_PAGABLE)
@ -662,14 +662,14 @@ ClassAddDevice(
&DeviceExtension->ClassDO); &DeviceExtension->ClassDO);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("CreateClassDeviceObject() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "CreateClassDeviceObject() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
} }
Status = ConnectPortDriver(Fdo, DeviceExtension->ClassDO); Status = ConnectPortDriver(Fdo, DeviceExtension->ClassDO);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("ConnectPortDriver() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "ConnectPortDriver() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
Fdo->Flags &= ~DO_DEVICE_INITIALIZING; Fdo->Flags &= ~DO_DEVICE_INITIALIZING;
@ -701,7 +701,7 @@ ClassCancelRoutine(
KIRQL OldIrql; KIRQL OldIrql;
BOOLEAN wasQueued = FALSE; BOOLEAN wasQueued = FALSE;
DPRINT("ClassCancelRoutine(DeviceObject %p, Irp %p)\n", DeviceObject, Irp); TRACE_(CLASS_NAME, "ClassCancelRoutine(DeviceObject %p, Irp %p)\n", DeviceObject, Irp);
ASSERT(ClassDeviceExtension->Common.IsClassDO); ASSERT(ClassDeviceExtension->Common.IsClassDO);
@ -738,7 +738,7 @@ HandleReadIrp(
PCLASS_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension; PCLASS_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension;
NTSTATUS Status; NTSTATUS Status;
DPRINT("HandleReadIrp(DeviceObject %p, Irp %p)\n", DeviceObject, Irp); TRACE_(CLASS_NAME, "HandleReadIrp(DeviceObject %p, Irp %p)\n", DeviceObject, Irp);
ASSERT(DeviceExtension->Common.IsClassDO); ASSERT(DeviceExtension->Common.IsClassDO);
@ -804,7 +804,7 @@ ClassStartIo(
PCLASS_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension; PCLASS_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension;
KIRQL OldIrql; KIRQL OldIrql;
DPRINT("ClassStartIo(DeviceObject %p, Irp %p)\n", DeviceObject, Irp); TRACE_(CLASS_NAME, "ClassStartIo(DeviceObject %p, Irp %p)\n", DeviceObject, Irp);
ASSERT(DeviceExtension->Common.IsClassDO); ASSERT(DeviceExtension->Common.IsClassDO);
@ -830,7 +830,7 @@ SearchForLegacyDrivers(
ULONG Size, ResultLength; ULONG Size, ResultLength;
NTSTATUS Status; NTSTATUS Status;
DPRINT("SearchForLegacyDrivers(%p %p %lu)\n", TRACE_(CLASS_NAME, "SearchForLegacyDrivers(%p %p %lu)\n",
DriverObject, Context, Count); DriverObject, Context, Count);
if (Count != 1) if (Count != 1)
@ -844,7 +844,7 @@ SearchForLegacyDrivers(
&PortBaseName); &PortBaseName);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("DuplicateUnicodeString() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "DuplicateUnicodeString() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
PortBaseName.Length -= (sizeof(L"Class") - sizeof(UNICODE_NULL)); PortBaseName.Length -= (sizeof(L"Class") - sizeof(UNICODE_NULL));
@ -855,7 +855,7 @@ SearchForLegacyDrivers(
KeyValueInformation = ExAllocatePoolWithTag(PagedPool, Size, CLASS_TAG); KeyValueInformation = ExAllocatePoolWithTag(PagedPool, Size, CLASS_TAG);
if (!KeyValueInformation) if (!KeyValueInformation)
{ {
DPRINT("ExAllocatePoolWithTag() failed\n"); WARN_(CLASS_NAME, "ExAllocatePoolWithTag() failed\n");
Status = STATUS_NO_MEMORY; Status = STATUS_NO_MEMORY;
goto cleanup; goto cleanup;
} }
@ -865,13 +865,13 @@ SearchForLegacyDrivers(
Status = ZwOpenKey(&hDeviceMapKey, 0, &ObjectAttributes); Status = ZwOpenKey(&hDeviceMapKey, 0, &ObjectAttributes);
if (Status == STATUS_OBJECT_NAME_NOT_FOUND) if (Status == STATUS_OBJECT_NAME_NOT_FOUND)
{ {
DPRINT("HKLM\\HARDWARE\\DEVICEMAP is non-existent\n"); INFO_(CLASS_NAME, "HKLM\\HARDWARE\\DEVICEMAP is non-existent\n");
Status = STATUS_SUCCESS; Status = STATUS_SUCCESS;
goto cleanup; goto cleanup;
} }
else if (!NT_SUCCESS(Status)) else if (!NT_SUCCESS(Status))
{ {
DPRINT("ZwOpenKey() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "ZwOpenKey() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
@ -880,13 +880,13 @@ SearchForLegacyDrivers(
Status = ZwOpenKey(&hPortKey, KEY_QUERY_VALUE, &ObjectAttributes); Status = ZwOpenKey(&hPortKey, KEY_QUERY_VALUE, &ObjectAttributes);
if (Status == STATUS_OBJECT_NAME_NOT_FOUND) if (Status == STATUS_OBJECT_NAME_NOT_FOUND)
{ {
DPRINT("HKLM\\HARDWARE\\DEVICEMAP\\%wZ is non-existent\n", &PortBaseName); INFO_(CLASS_NAME, "HKLM\\HARDWARE\\DEVICEMAP\\%wZ is non-existent\n", &PortBaseName);
Status = STATUS_SUCCESS; Status = STATUS_SUCCESS;
goto cleanup; goto cleanup;
} }
else if (!NT_SUCCESS(Status)) else if (!NT_SUCCESS(Status))
{ {
DPRINT("ZwOpenKey() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "ZwOpenKey() failed with status 0x%08lx\n", Status);
goto cleanup; goto cleanup;
} }
@ -904,16 +904,16 @@ SearchForLegacyDrivers(
Status = IoGetDeviceObjectPointer(&PortName, FILE_READ_ATTRIBUTES, &FileObject, &PortDeviceObject); Status = IoGetDeviceObjectPointer(&PortName, FILE_READ_ATTRIBUTES, &FileObject, &PortDeviceObject);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("IoGetDeviceObjectPointer(%wZ) failed with status 0x%08lx\n", &PortName, Status); WARN_(CLASS_NAME, "IoGetDeviceObjectPointer(%wZ) failed with status 0x%08lx\n", &PortName, Status);
continue; continue;
} }
DPRINT("Legacy driver found\n"); INFO_(CLASS_NAME, "Legacy driver found\n");
Status = ClassAddDevice(DriverObject, PortDeviceObject); Status = ClassAddDevice(DriverObject, PortDeviceObject);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
/* FIXME: Log the error */ /* FIXME: Log the error */
DPRINT("ClassAddDevice() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "ClassAddDevice() failed with status 0x%08lx\n", Status);
} }
} }
@ -945,7 +945,7 @@ DriverEntry(
(PVOID*)&DriverExtension); (PVOID*)&DriverExtension);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("IoAllocateDriverObjectExtension() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "IoAllocateDriverObjectExtension() failed with status 0x%08lx\n", Status);
return Status; return Status;
} }
RtlZeroMemory(DriverExtension, sizeof(CLASS_DRIVER_EXTENSION)); RtlZeroMemory(DriverExtension, sizeof(CLASS_DRIVER_EXTENSION));
@ -956,14 +956,14 @@ DriverEntry(
&DriverExtension->RegistryPath); &DriverExtension->RegistryPath);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("DuplicateUnicodeString() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "DuplicateUnicodeString() failed with status 0x%08lx\n", Status);
return Status; return Status;
} }
Status = ReadRegistryEntries(RegistryPath, DriverExtension); Status = ReadRegistryEntries(RegistryPath, DriverExtension);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("ReadRegistryEntries() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "ReadRegistryEntries() failed with status 0x%08lx\n", Status);
return Status; return Status;
} }
@ -974,7 +974,7 @@ DriverEntry(
&DriverExtension->MainClassDeviceObject); &DriverExtension->MainClassDeviceObject);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
DPRINT("CreateClassDeviceObject() failed with status 0x%08lx\n", Status); WARN_(CLASS_NAME, "CreateClassDeviceObject() failed with status 0x%08lx\n", Status);
return Status; return Status;
} }
} }

View file

@ -4,7 +4,6 @@
#include <stdio.h> #include <stdio.h>
#include <pseh/pseh.h> #include <pseh/pseh.h>
#define NDEBUG
#include <debug.h> #include <debug.h>
#define MAX_PATH 260 #define MAX_PATH 260
@ -13,6 +12,7 @@
#define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24)) #define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24))
#define CLASS_TAG TAG('M', 'o', 'u', 'C') #define CLASS_TAG TAG('M', 'o', 'u', 'C')
#define DPFLTR_CLASS_NAME_ID DPFLTR_MOUCLASS_ID
typedef enum typedef enum
{ {