svn commit: r368738 - head/sys/compat/linuxkpi/common/include/linux

Jessica Clarke jrtc27 at freebsd.org
Thu Dec 17 20:32:30 UTC 2020


On 17 Dec 2020, at 20:28, John Baldwin <jhb at freebsd.org> wrote:
> 
> Author: jhb
> Date: Thu Dec 17 20:28:53 2020
> New Revision: 368738
> URL: https://svnweb.freebsd.org/changeset/base/368738
> 
> Log:
>  Cleanups to *ERR* compat shims.
> 
>  - Use [u]intptr_t casts to convert pointers to integers.
> 
>  - Change IS_ERR* to return bool instead of long.
> 
>  Reviewed by:	manu
>  Obtained from:	CheriBSD
>  Sponsored by:	DARPA
>  Differential Revision:	https://reviews.freebsd.org/D27577
> 
> Modified:
>  head/sys/compat/linuxkpi/common/include/linux/err.h
> 
> Modified: head/sys/compat/linuxkpi/common/include/linux/err.h
> ==============================================================================
> --- head/sys/compat/linuxkpi/common/include/linux/err.h	Thu Dec 17 20:11:31 2020	(r368737)
> +++ head/sys/compat/linuxkpi/common/include/linux/err.h	Thu Dec 17 20:28:53 2020	(r368738)
> @@ -37,30 +37,30 @@
> 
> #define MAX_ERRNO	4095
> 
> -#define IS_ERR_VALUE(x) unlikely((x) >= (unsigned long)-MAX_ERRNO)
> +#define IS_ERR_VALUE(x) unlikely((x) >= (uintptr_t)-MAX_ERRNO)
> 
> static inline void *
> ERR_PTR(long error)
> {
> -	return (void *)error;
> +	return (void *)(intptr_t)error;
> }
> 
> static inline long
> PTR_ERR(const void *ptr)
> {
> -	return (long)ptr;
> +	return (intptr_t)ptr;

This should probably be (long)(intptr_t) after no longer changing the
return type to intptr_t?

Jess



More information about the svn-src-all mailing list