Subject: Re: [PATCH] include: mman: Use bool instead of int for the return value of arch_validate_prot

From: Dave Hansen <[email-masked]>
Date: Sun, 10 Jul 2016 16:47:49 -0700

On 07/09/2016 09:29 AM, [email-masked] wrote:
> -static inline int arch_validate_prot(unsigned long prot)
> +static inline bool arch_validate_prot(unsigned long prot)
>  {
>  	if (prot & ~(PROT_READ | PROT_WRITE | PROT_EXEC | PROT_SEM | PROT_SAO))
> -		return 0;
> -	if ((prot & PROT_SAO) && !cpu_has_feature(CPU_FTR_SAO))
> -		return 0;
> -	return 1;
> +		return false;
> +	return (prot & PROT_SAO) == 0 || cpu_has_feature(CPU_FTR_SAO);
>  }
>  #define arch_validate_prot(prot) arch_validate_prot(prot)

Please don't do things like this.  They're not obviously correct and
also have no obvious benefit.  You also don't mention why you bothered
to alter the logical structure of these checks.