[HDAUDBUS][KS][WDMAUD] Use ExAllocatePoolZero() and ExFreePoolWithTag() (#5792)

And promote/fix 2 DPRINTs as well.
This commit is contained in:
Serge Gautherie 2023-10-20 18:09:03 +02:00 committed by GitHub
parent 1fed9475cc
commit c03b2ed9be
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 13 additions and 38 deletions

View file

@ -247,7 +247,7 @@ IKsFilterFactory_fnInitialize(
This->FilterFactory.FilterDescriptor = AllocateItem(NonPagedPool, sizeof(KSFILTER_DESCRIPTOR));
if (!This->FilterFactory.FilterDescriptor)
{
DPRINT("out of memory");
DPRINT1("Out of memory\n");
return STATUS_INSUFFICIENT_RESOURCES;
}
RtlMoveMemory((PVOID)This->FilterFactory.FilterDescriptor, (PVOID)Descriptor, sizeof(KSFILTER_DESCRIPTOR));
@ -751,4 +751,3 @@ KsFilterFactoryUpdateCacheData(
/* done */
return Status;
}

View file

@ -22,7 +22,6 @@ CompleteRequest(
ASSERT(Irp->IoStatus.Status != STATUS_PENDING);
IoCompleteRequest(Irp, PriorityBoost);
}
@ -31,19 +30,14 @@ AllocateItem(
IN POOL_TYPE PoolType,
IN SIZE_T NumberOfBytes)
{
PVOID Item = ExAllocatePoolWithTag(PoolType, NumberOfBytes, TAG_KS);
if (!Item)
return Item;
RtlZeroMemory(Item, NumberOfBytes);
return Item;
return ExAllocatePoolZero(PoolType, NumberOfBytes, TAG_KS);
}
VOID
FreeItem(
IN PVOID Item)
{
ExFreePool(Item);
ExFreePoolWithTag(Item, TAG_KS);
}
NTSTATUS
@ -172,5 +166,3 @@ KsGetParent(
/* return object type */
return (PVOID)BasicHeader->Parent.KsDevice;
}

View file

@ -5,6 +5,7 @@
* PURPOSE: HDA Driver Entry
* PROGRAMMER: Johannes Anderwald
*/
#include "hdaudbus.h"
BOOLEAN
@ -217,7 +218,7 @@ HDA_InitCodec(
Entry = (PHDA_CODEC_ENTRY)AllocateItem(NonPagedPool, sizeof(HDA_CODEC_ENTRY));
if (!Entry)
{
DPRINT1("hda: failed to allocate memory");
DPRINT1("hda: failed to allocate memory\n");
return STATUS_UNSUCCESSFUL;
}
@ -812,5 +813,3 @@ HDA_FDOQueryBusRelations(
/* done */
return STATUS_SUCCESS;
}

View file

@ -5,6 +5,7 @@
* PURPOSE: HDA Driver Entry
* PROGRAMMER: Johannes Anderwald
*/
#include "hdaudbus.h"
DRIVER_DISPATCH HDA_Pnp;
@ -19,19 +20,14 @@ AllocateItem(
_In_ POOL_TYPE PoolType,
_In_ SIZE_T NumberOfBytes)
{
PVOID Item = ExAllocatePoolWithTag(PoolType, NumberOfBytes, TAG_HDA);
if (!Item)
return Item;
RtlZeroMemory(Item, NumberOfBytes);
return Item;
return ExAllocatePoolZero(PoolType, NumberOfBytes, TAG_HDA);
}
VOID
FreeItem(
__drv_freesMem(Mem) PVOID Item)
{
ExFreePool(Item);
ExFreePoolWithTag(Item, TAG_HDA);
}
NTSTATUS
@ -305,6 +301,7 @@ HDA_Unload(
extern "C"
{
NTSTATUS
NTAPI
DriverEntry(
@ -320,4 +317,4 @@ DriverEntry(
return STATUS_SUCCESS;
}
}
} // extern "C"

View file

@ -21,23 +21,16 @@ AllocateItem(
IN POOL_TYPE PoolType,
IN SIZE_T NumberOfBytes)
{
PVOID Item = ExAllocatePoolWithTag(PoolType, NumberOfBytes, TAG_WDMAUD);
if (!Item)
return Item;
RtlZeroMemory(Item, NumberOfBytes);
return Item;
return ExAllocatePoolZero(PoolType, NumberOfBytes, TAG_WDMAUD);
}
VOID
FreeItem(
IN PVOID Item)
{
ExFreePool(Item);
ExFreePoolWithTag(Item, TAG_WDMAUD);
}
ULONG
GetSysAudioDeviceCount(
IN PDEVICE_OBJECT DeviceObject)
@ -62,7 +55,6 @@ GetSysAudioDeviceCount(
return Count;
}
NTSTATUS
SetIrpIoStatus(
IN PIRP Irp,
@ -72,8 +64,8 @@ SetIrpIoStatus(
Irp->IoStatus.Information = Length;
Irp->IoStatus.Status = Status;
IoCompleteRequest(Irp, IO_NO_INCREMENT);
return Status;
return Status;
}
ULONG
@ -186,7 +178,6 @@ ReadKeyValue(
return PartialInformation;
}
NTSTATUS
CompareProductName(
IN HANDLE hSubKey,
@ -248,8 +239,6 @@ CompareProductName(
return STATUS_SUCCESS;
}
NTSTATUS
FindProductName(
IN LPWSTR PnpName,
@ -431,5 +420,4 @@ OpenDevice(
}
return Status;
}