[openib-general] RE: [PATCH] OpenSM/complib: Restore cl_mem* routines as deprecatedrather than removing them altogether

Eitan Zahavi eitan at mellanox.co.il
Tue May 23 23:48:13 PDT 2006


OK Thanks. This will give us some time to find and remove all these
gracefully.

> -----Original Message-----
> From: Hal Rosenstock [mailto:halr at voltaire.com]
> Sent: Tuesday, May 23, 2006 7:03 PM
> To: openib-general at openib.org
> Cc: Eitan Zahavi
> Subject: [PATCH] OpenSM/complib: Restore cl_mem* routines as
deprecatedrather
> than removing them altogether
> 
> OpenSM/complib: Restore cl_mem* routines as deprecated rather than
> removing them altogether
> 
> Signed-off-by: Hal Rosenstock <halr at voltaire.com>
> 
> Note: If this approach is acceptable, I will be doing the same with
> cl_malloc, cl_zalloc, cl_free, and friends.
> 
> Index: include/complib/cl_memory.h
> ===================================================================
> --- include/complib/cl_memory.h	(revision 7432)
> +++ include/complib/cl_memory.h	(working copy)
> @@ -436,7 +436,7 @@ cl_malloc(
>  *	environments.
>  *
>  * SEE ALSO
> -*	Memory Management, cl_free, cl_zalloc
> +*	Memory Management, cl_free, cl_zalloc, cl_memset, cl_memclr,
cl_memcpy,
> cl_memcmp
>  **********/
> 
> 
> @@ -467,7 +467,7 @@ cl_zalloc(
>  *	environments.
>  *
>  * SEE ALSO
> -*	Memory Management, cl_free, cl_malloc
> +*	Memory Management, cl_free, cl_malloc, cl_memset, cl_memclr,
cl_memcpy,
> cl_memcmp
>  **********/
> 
> 
> @@ -502,6 +502,142 @@ cl_free(
>  **********/
> 
> 
> +/****f* Public: Memory Management/cl_memset
> +* NAME
> +*	cl_memset
> +*
> +* DESCRIPTION
> +*	The cl_memset function sets every byte in a memory range to a
given value.
> +*
> +* SYNOPSIS
> +*/
> +void __attribute__((deprecated))
> +cl_memset(
> +	IN	void* const		p_memory,
> +	IN	const uint8_t	fill,
> +	IN	const size_t	count );
> +/*
> +* PARAMETERS
> +*	p_memory
> +*		[in] Pointer to a memory block.
> +*
> +*	fill
> +*		[in] Byte value with which to fill the memory.
> +*
> +*	count
> +*		[in] Number of bytes to set.
> +*
> +* RETURN VALUE
> +*	This function does not return a value.
> +*
> +* SEE ALSO
> +*	Memory Management, cl_memclr, cl_memcpy, cl_memcmp
> +**********/
> +
> +
> +/****f* Public: Memory Management/cl_memclr
> +* NAME
> +*	cl_memclr
> +*
> +* DESCRIPTION
> +*	The cl_memclr function sets every byte in a memory range to
zero.
> +*
> +* SYNOPSIS
> +*/
> +static inline void __attribute__((deprecated))
> +cl_memclr(
> +	IN	void* const		p_memory,
> +	IN	const size_t	count )
> +{
> +	memset( p_memory, 0, count );
> +}
> +/*
> +* PARAMETERS
> +*	p_memory
> +*		[in] Pointer to a memory block.
> +*
> +*	count
> +*		[in] Number of bytes to set.
> +*
> +* RETURN VALUE
> +*	This function does not return a value.
> +*
> +* SEE ALSO
> +*	Memory Management, cl_memset, cl_memcpy, cl_memcmp
> +**********/
> +
> +
> +/****f* Public: Memory Management/cl_memcpy
> +* NAME
> +*	cl_memcpy
> +*
> +* DESCRIPTION
> +*	The cl_memcpy function copies a given number of bytes from
> +*	one buffer to another.
> +*
> +* SYNOPSIS
> +*/
> +void __attribute__((deprecated)) *
> +cl_memcpy(
> +	IN	void* const			p_dest,
> +	IN	const void* const	p_src,
> +	IN	const size_t		count );
> +/*
> +* PARAMETERS
> +*	p_dest
> +*		[in] Pointer to the buffer being copied to.
> +*
> +*	p_src
> +*		[in] Pointer to the buffer being copied from.
> +*
> +*	count
> +*		[in] Number of bytes to copy from the source buffer to
the
> +*		destination buffer.
> +*
> +* RETURN VALUE
> +*	This function does not return a value.
> +*
> +* SEE ALSO
> +*	Memory Management, cl_memset, cl_memclr, cl_memcmp
> +**********/
> +
> +
> +/****f* Public: Memory Management/cl_memcmp
> +* NAME
> +*	cl_memcmp
> +*
> +* DESCRIPTION
> +*	The cl_memcmp function compares two memory buffers.
> +*
> +* SYNOPSIS
> +*/
> +int32_t  __attribute__((deprecated))
> +cl_memcmp(
> +	IN	const void* const	p_mem,
> +	IN	const void* const	p_ref,
> +	IN	const size_t		count );
> +/*
> +* PARAMETERS
> +*	p_mem
> +*		[in] Pointer to a memory block being compared.
> +*
> +*	p_ref
> +*		[in] Pointer to the reference memory block to compare
against.
> +*
> +*	count
> +*		[in] Number of bytes to compare.
> +*
> +* RETURN VALUES
> +*	Returns less than zero if p_mem is less than p_ref.
> +*
> +*	Returns greater than zero if p_mem is greater than p_ref.
> +*
> +*	Returns zero if the two memory regions are the identical.
> +*
> +* SEE ALSO
> +*	Memory Management, cl_memset, cl_memclr, cl_memcpy
> +**********/
> +
>  /****f* Public: Memory Management/cl_get_pagesize
>  * NAME
>  *	cl_get_pagesize
> Index: complib/cl_memory_osd.c
> ===================================================================
> --- complib/cl_memory_osd.c	(revision 7432)
> +++ complib/cl_memory_osd.c	(working copy)
> @@ -69,3 +69,30 @@ __cl_free_priv(
>  	free( p_memory );
>  }
> 
> +void
> +cl_memset(
> +	IN	void* const		p_memory,
> +	IN	const uint8_t	fill,
> +	IN	const size_t	count )
> +{
> +	memset( p_memory, fill, count );
> +}
> +
> +void*
> +cl_memcpy(
> +	IN	void* const			p_dest,
> +	IN	const void* const	p_src,
> +	IN	const size_t		count )
> +{
> +	return( memcpy( p_dest, p_src, count ) );
> +}
> +
> +int32_t
> +cl_memcmp(
> +	IN	const void* const	p_mem,
> +	IN	const void* const	p_ref,
> +	IN	const size_t		count )
> +{
> +	return( memcmp( p_mem, p_ref, count ) );
> +}
> +
> Index: complib/libosmcomp.map
> ===================================================================
> --- complib/libosmcomp.map	(revision 7432)
> +++ complib/libosmcomp.map	(working copy)
> @@ -1,4 +1,4 @@
> -OSMCOMP_1.0 {
> +OSMCOMP_1.1 {
>  	global:
>  		cl_async_proc_construct;
>  		cl_async_proc_init;
> @@ -87,6 +87,9 @@ OSMCOMP_1.0 {
>  		__cl_find_mem;
>  		__cl_free_trk;
>  		__cl_free_ntrk;
> +		cl_memset;
> +		cl_memcpy;
> +		cl_memcmp;
>  		__cl_perf_run_calibration;
>  		__cl_perf_construct;
>  		__cl_perf_init;
> Index: complib/libosmcomp.ver
> ===================================================================
> --- complib/libosmcomp.ver	(revision 7432)
> +++ complib/libosmcomp.ver	(working copy)
> @@ -6,4 +6,4 @@
>  # API_REV - advance on any added API
>  # RUNNING_REV - advance any change to the vendor files
>  # AGE - number of backward versions the API still supports
> -LIBVERSION=1:0:0
> +LIBVERSION=1:1:0
> 




More information about the general mailing list