[ofw] RE: patches for depreciated ExAllocatePool() calls
Tzachi Dar
tzachid at mellanox.co.il
Mon Dec 17 05:39:11 PST 2007
Seems fine by me.
By the way which compiler are you using?
Thanks
Tzachi
> -----Original Message-----
> From: Smith, Stan [mailto:stan.smith at intel.com]
> Sent: Friday, December 14, 2007 6:55 PM
> To: Tzachi Dar
> Cc: ofw at lists.openfabrics.org
> Subject: patches for depreciated ExAllocatePool() calls
>
> Hello,
> Would you kindly take a look at the proposed patches which replace
> ExAllocatePool() calls with ExAllocatePoolWithTag() calls.
> The Windows Server 2008 compiler complains loudly about the
> depreciated call ExAllocatePool(). Tags are loosely based on
> the function name.
> Attempting to reduce compilation noise in order to clearly
> see the 'real' issues.
>
> Formatting in the patch file is not expanding tabs correctly,
> although when the file is patched and viewed from Vstudio the
> formatting is correct.
>
> Patched files have been tested on Win2k3 x86, x64 & ia64.
> IPoIB & DAPL tests have run successfully.
>
> If you agree these patches are correct, I will push the
> modified files to svn.
>
> Thanks,
>
> Stan.
>
> Signed off by Stan.Smith at intel.com
>
> diff U3 core/bus/kernel/bus_iou_mgr.c core/bus/kernel/bus_iou_mgr.c
> --- core/bus/kernel/bus_iou_mgr.c Fri Oct 12 13:10:15 2007
> +++ core/bus/kernel/bus_iou_mgr.c Thu Dec 13 11:49:57 2007
> @@ -971,7 +971,7 @@
> }
>
> /* Device ID is "IBA\SID_<sid> where <sid> is the IPoIB
> Service ID. */
> - p_string = ExAllocatePool( PagedPool, IOU_DEV_ID_SIZE );
> + p_string = ExAllocatePoolWithTag( PagedPool, IOU_DEV_ID_SIZE,
> 'didq' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1016,7 +1016,7 @@
> return STATUS_NO_SUCH_DEVICE;
> }
>
> - p_string = ExAllocatePool( PagedPool, IOU_HW_ID_SIZE );
> + p_string = ExAllocatePoolWithTag( PagedPool, IOU_HW_ID_SIZE,
> 'dihq' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1070,7 +1070,7 @@
>
> UNUSED_PARAM( p_dev_obj );
>
> - p_string = ExAllocatePool( PagedPool, sizeof(IOU_COMPAT_ID) );
> + p_string = ExAllocatePoolWithTag( PagedPool,
> sizeof(IOU_COMPAT_ID), 'dicq' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1106,7 +1106,7 @@
> }
>
> /* The instance ID is the port GUID. */
> - p_string = ExAllocatePool( PagedPool, sizeof(WCHAR) * 33 );
> + p_string = ExAllocatePoolWithTag( PagedPool, sizeof(WCHAR) * 33,
> 'diuq' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1152,8 +1152,9 @@
> }
>
> /* The instance ID is the port GUID. */
> - p_string =
> - ExAllocatePool( PagedPool, sizeof(WCHAR) *
> sizeof(p_ext->desc) );
> + p_string = ExAllocatePoolWithTag( PagedPool,
> +
> sizeof(WCHAR) * sizeof(p_ext->desc),
> +
> 'sedq' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1197,7 +1198,7 @@
> return STATUS_NO_SUCH_DEVICE;
> }
>
> - p_string = ExAllocatePool( PagedPool, IOU_LOCATION_SIZE );
> + p_string = ExAllocatePoolWithTag( PagedPool, IOU_LOCATION_SIZE,
> 'colq' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1236,7 +1237,7 @@
>
> *p_action = IrpComplete;
>
> - p_bus_info = ExAllocatePool( PagedPool,
> sizeof(PNP_BUS_INFORMATION) );
> + p_bus_info = ExAllocatePoolWithTag( PagedPool,
> sizeof(PNP_BUS_INFORMATION), 'subq' );
> if( !p_bus_info )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> diff U3 core/bus/kernel/bus_port_mgr.c core/bus/kernel/bus_port_mgr.c
> --- core/bus/kernel/bus_port_mgr.c Fri Oct 12 13:10:15 2007
> +++ core/bus/kernel/bus_port_mgr.c Thu Dec 13 11:27:15 2007
> @@ -966,7 +966,7 @@
> }
>
> /* Device ID is "IBA\SID_<sid> where <sid> is the IPoIB
> Service ID. */
> - p_string = ExAllocatePool( PagedPool, sizeof(IPOIB_DEVICE_ID) );
> + p_string = ExAllocatePoolWithTag( PagedPool,
> sizeof(IPOIB_DEVICE_ID), 'vedq' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1000,7 +1000,7 @@
> return STATUS_NO_SUCH_DEVICE;
> }
>
> - p_string = ExAllocatePool( PagedPool, sizeof(IPOIB_HARDWARE_ID)
> );
> + p_string = ExAllocatePoolWithTag( PagedPool,
> sizeof(IPOIB_HARDWARE_ID), 'ihqp' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1027,7 +1027,7 @@
>
> UNUSED_PARAM( p_dev_obj );
>
> - p_string = ExAllocatePool( PagedPool, sizeof(IPOIB_COMPAT_ID) );
> + p_string = ExAllocatePoolWithTag( PagedPool,
> sizeof(IPOIB_COMPAT_ID), 'icqp' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1063,7 +1063,7 @@
> }
>
> /* The instance ID is the port GUID. */
> - p_string = ExAllocatePool( PagedPool, sizeof(WCHAR) * 17 );
> + p_string = ExAllocatePoolWithTag( PagedPool, sizeof(WCHAR) * 17,
> 'iuqp' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1108,7 +1108,7 @@
>
>
> /* The instance ID is the port GUID. */
> - p_string = ExAllocatePool( PagedPool, sizeof(IPOIB_DESCRIPTION)
> );
> + p_string = ExAllocatePoolWithTag( PagedPool,
> sizeof(IPOIB_DESCRIPTION), 'edqp' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1171,7 +1171,7 @@
> return STATUS_INSUFFICIENT_RESOURCES;
> }
>
> - p_string = ExAllocatePool( PagedPool, size );
> + p_string = ExAllocatePoolWithTag( PagedPool, size, 'olqp' );
> if( !p_string )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> @@ -1224,7 +1224,7 @@
>
> *p_action = IrpComplete;
>
> - p_bus_info = ExAllocatePool( PagedPool,
> sizeof(PNP_BUS_INFORMATION) );
> + p_bus_info = ExAllocatePoolWithTag( PagedPool,
> sizeof(PNP_BUS_INFORMATION), 'ibqp' );
> if( !p_bus_info )
> {
> BUS_TRACE_EXIT( BUS_DBG_ERROR,
> diff U3 core/complib/kernel/cl_memory_osd.c
> core/complib/kernel/cl_memory_osd.c
> --- core/complib/kernel/cl_memory_osd.c Fri Oct 12 13:10:13 2007
> +++ core/complib/kernel/cl_memory_osd.c Thu Dec 13 11:29:35 2007
> @@ -41,12 +41,12 @@
> if( pageable )
> {
> CL_ASSERT( KeGetCurrentIrql() < DISPATCH_LEVEL );
> - return( ExAllocatePool( PagedPool, size ) );
> + return( ExAllocatePoolWithTag( PagedPool, size, 'virp' )
> );
> }
> else
> {
> CL_ASSERT( KeGetCurrentIrql() <= DISPATCH_LEVEL );
> - return( ExAllocatePool( NonPagedPool, size ) );
> + return( ExAllocatePoolWithTag( NonPagedPool, size,
> 'virp' ) );
> }
> }
>
> @@ -56,5 +56,5 @@
> IN void* const p_memory )
> {
> CL_ASSERT( KeGetCurrentIrql() <= DISPATCH_LEVEL );
> - ExFreePool( p_memory );
> + ExFreePoolWithTag( p_memory, 'virp' );
> }
> diff U3 core/complib/kernel/cl_pnp_po.c
> core/complib/kernel/cl_pnp_po.c
> --- core/complib/kernel/cl_pnp_po.c Fri Oct 12 13:10:13 2007
> +++ core/complib/kernel/cl_pnp_po.c Thu Dec 13 11:30:32 2007
> @@ -1207,7 +1207,7 @@
> alloc_size += (sizeof(PDEVICE_OBJECT) *
> p_old_rel->Count);
>
> /* Allocate the new relations structure. */
> - p_rel = ExAllocatePool( PagedPool, alloc_size );
> + p_rel = ExAllocatePoolWithTag( PagedPool, alloc_size, 'ralc' );
> p_irp->IoStatus.Information = (ULONG_PTR)p_rel;
> if( !p_rel )
> {
> diff U3 core/iou/kernel/iou_ioc_mgr.c core/iou/kernel/iou_ioc_mgr.c
> --- core/iou/kernel/iou_ioc_mgr.c Fri Oct 12 13:10:29 2007
> +++ core/iou/kernel/iou_ioc_mgr.c Thu Dec 13 11:36:46 2007
> @@ -823,7 +823,7 @@
> return STATUS_NO_SUCH_DEVICE;
> }
>
> - p_string = ExAllocatePool( PagedPool, IOC_DEV_ID_SIZE );
> + p_string = ExAllocatePoolWithTag( PagedPool, IOC_DEV_ID_SIZE,
> 'didq' );
> if( !p_string )
> {
> IOU_PRINT_EXIT( TRACE_LEVEL_ERROR,
> IOU_DBG_ERROR, @@ -875,7 +875,7 @@
> return STATUS_NO_SUCH_DEVICE;
> }
>
> - p_string = ExAllocatePool( PagedPool, IOC_HW_ID_SIZE );
> + p_string = ExAllocatePoolWithTag( PagedPool, IOC_HW_ID_SIZE,
> 'ihqi' );
> if( !p_string )
> {
> IOU_PRINT_EXIT( TRACE_LEVEL_ERROR,
> IOU_DBG_ERROR, @@ -967,7 +967,7 @@
> return STATUS_NO_SUCH_DEVICE;
> }
>
> - p_string = ExAllocatePool( PagedPool, IOC_COMPAT_ID_SIZE );
> + p_string = ExAllocatePoolWithTag( PagedPool, IOC_COMPAT_ID_SIZE,
> 'icqi' );
> if( !p_string )
> {
> IOU_PRINT_EXIT( TRACE_LEVEL_ERROR,
> IOU_DBG_ERROR, @@ -1032,7 +1032,7 @@
> }
>
> /* The instance ID is the port GUID. */
> - p_string = ExAllocatePool( PagedPool, sizeof(WCHAR) * 33 );
> + p_string = ExAllocatePoolWithTag( PagedPool, sizeof(WCHAR) * 33,
> 'iuqi' );
> if( !p_string )
> {
> IOU_PRINT_EXIT( TRACE_LEVEL_ERROR,
> IOU_DBG_ERROR, @@ -1078,8 +1078,9 @@
> return STATUS_NO_SUCH_DEVICE;
> }
>
> - p_string = ExAllocatePool(
> - PagedPool, sizeof(WCHAR) *
> sizeof(p_ext->info.profile.id_string) );
> + p_string = ExAllocatePoolWithTag( PagedPool,
> +
> sizeof(WCHAR) * sizeof(p_ext->info.profile.id_string),
> +
> 'edqi');
> if( !p_string )
> {
> IOU_PRINT_EXIT( TRACE_LEVEL_ERROR,
> IOU_DBG_ERROR, @@ -1142,9 +1143,9 @@
> return STATUS_NO_SUCH_DEVICE;
> }
>
> - p_string = ExAllocatePool( PagedPool,
> - max( IOC_LOCATION_SIZE,
> - sizeof( WCHAR ) * ( sizeof(
> p_ext->info.profile.id_string ) + 1 )));
> + p_string = ExAllocatePoolWithTag( PagedPool,
> + max( IOC_LOCATION_SIZE, sizeof( WCHAR ) * ( sizeof(
> p_ext->info.profile.id_string ) + 1 )),
> + 'olqi');
> if( !p_string )
> {
> IOU_PRINT_EXIT( TRACE_LEVEL_ERROR,
> IOU_DBG_ERROR, @@ -1201,7 +1202,7 @@
>
> *p_action = IrpComplete;
>
> - p_iou_info = ExAllocatePool( PagedPool,
> sizeof(PNP_BUS_INFORMATION) );
> + p_iou_info = ExAllocatePoolWithTag( PagedPool,
> sizeof(PNP_BUS_INFORMATION), 'ibqi' );
> if( !p_iou_info )
> {
> IOU_PRINT_EXIT( TRACE_LEVEL_ERROR,
> IOU_DBG_ERROR, diff U3 hw/mt23108/kernel/hca_driver.c
> hw/mt23108/kernel/hca_driver.c
> --- hw/mt23108/kernel/hca_driver.c Fri Oct 12 13:11:31 2007
> +++ hw/mt23108/kernel/hca_driver.c Thu Dec 13 11:38:44 2007
> @@ -664,7 +664,7 @@
>
> HCA_ENTER( HCA_DBG_PNP );
>
> - p_ifc = ExAllocatePool( PagedPool, sizeof(ci_interface_t) );
> + p_ifc = ExAllocatePoolWithTag( PagedPool,
> sizeof(ci_interface_t), 'fiha' );
> if( !p_ifc )
> {
> HCA_TRACE_EXIT( HCA_DBG_ERROR,
> diff U3 hw/mt23108/vapi/mlxsys/mosal/os_dep/win/mosal_mem.c
> hw/mt23108/vapi/mlxsys/mosal/os_dep/win/mosal_mem.c
> --- hw/mt23108/vapi/mlxsys/mosal/os_dep/win/mosal_mem.c
> Fri Oct 12
> 13:11:10 2007
> +++ hw/mt23108/vapi/mlxsys/mosal/os_dep/win/mosal_mem.c
> Thu Dec 13
> 11:44:59 2007
> @@ -912,7 +912,7 @@
> if (flags)
> return
> (MT_virt_addr_t)ExAllocatePoolWithTag(NonPagedPool,size,flags);
> else
> - return
> (MT_virt_addr_t)ExAllocatePool(NonPagedPool,size);
> + return
> (MT_virt_addr_t)ExAllocatePoolWithTag(NonPagedPool,size,'amOM');
> }
>
>
> /*************************************************************
> **********
> *******
> diff U3 hw/mt23108/vapi/mlxsys/os_dep/win/tdriver/MdDbg.c
> hw/mt23108/vapi/mlxsys/os_dep/win/tdriver/MdDbg.c
> --- hw/mt23108/vapi/mlxsys/os_dep/win/tdriver/MdDbg.c Fri Oct 12
> 13:11:07 2007
> +++ hw/mt23108/vapi/mlxsys/os_dep/win/tdriver/MdDbg.c Thu Dec 13
> 10:36:21 2007
> @@ -49,7 +49,7 @@
> {
> g_pDbgData->m_nExAllocCount++;
> MdKdPrint( DBGLVL_HIGH,("MdExAllocatePool()
> nExAllocCount = %d\n", g_pDbgData->m_nExAllocCount ));
> - return ExAllocatePool( PoolType, NumberOfBytes );
> + return ExAllocatePoolWithTag( PoolType, NumberOfBytes, 'xEdM'
> );
>
> }
>
> @@ -63,7 +63,7 @@
> {
> g_pDbgData->m_nExAllocCount--;
> MdKdPrint( DBGLVL_HIGH,("MdExFreePool() nExAllocCount =
> %d\n", g_pDbgData->m_nExAllocCount ));
> - ExFreePool( p );
> + ExFreePoolWithTag( p, 'xEdM' );
> }
>
>
> diff U3 hw/mt23108/vapi/mlxsys/os_dep/win/tdriver/MdDbg.h
> hw/mt23108/vapi/mlxsys/os_dep/win/tdriver/MdDbg.h
> --- hw/mt23108/vapi/mlxsys/os_dep/win/tdriver/MdDbg.h Fri Oct 12
> 13:11:07 2007
> +++ hw/mt23108/vapi/mlxsys/os_dep/win/tdriver/MdDbg.h Thu Dec 13
> 11:47:33 2007
> @@ -225,8 +225,8 @@
> #define MdStringForPnpMnFunc( mnfunc )
> #define MdStringForIrpMjFunc( mjfunc )
>
> -#define MdExAllocatePool( typ, siz ) ExAllocatePool( typ, siz )
> -#define MdExFreePool( p ) ExFreePool( p )
> +#define MdExAllocatePool( typ, siz ) ExAllocatePoolWithTag(
> typ, siz,
> 'xEdM' )
> +#define MdExFreePool( p ) ExFreePoolWithTag( p, 'xEdM' )
>
>
> #endif /* DBG */
> diff U3 hw/mthca/kernel/hca_pnp.c hw/mthca/kernel/hca_pnp.c
> --- hw/mthca/kernel/hca_pnp.c Fri Oct 12 13:10:55 2007
> +++ hw/mthca/kernel/hca_pnp.c Thu Dec 13 11:40:53 2007
> @@ -431,7 +431,7 @@
> HCA_ENTER( HCA_DBG_PNP );
>
> pIfc =
> - (ci_interface_t*)ExAllocatePool( PagedPool,
> sizeof(ci_interface_t) );
> + (ci_interface_t*)ExAllocatePoolWithTag( PagedPool,
> sizeof(ci_interface_t), 'pnpa' );
> if( !pIfc )
> {
> HCA_PRINT( TRACE_LEVEL_ERROR,HCA_DBG_PNP, @@
> -564,8 +564,8 @@
> if (!p_ext->al_sym_name.Buffer) {
> p_ext->al_sym_name.Length =
> pNotify->SymbolicLinkName->Length;
> p_ext->al_sym_name.MaximumLength =
> pNotify->SymbolicLinkName->MaximumLength;
> - p_ext->al_sym_name.Buffer = ExAllocatePool(
> NonPagedPool,
> - p_ext->al_sym_name.MaximumLength *
> sizeof(wchar_t) );
> + p_ext->al_sym_name.Buffer = ExAllocatePoolWithTag(
> NonPagedPool,
> + p_ext->al_sym_name.MaximumLength *
> sizeof(wchar_t), 'cfin' );
> if (!p_ext->al_sym_name.Buffer)
> {
> HCA_PRINT( TRACE_LEVEL_ERROR
> ,HCA_DBG_PNP ,("allocation of sym IBAL name failed.\n"));
>
More information about the ofw
mailing list