Subject: Re: [PATCH] powerpc/pkeys: remove unused pkey_allows_readwrite

From: Ram Pai <[email-masked]>
Date: Tue, 17 Sep 2019 10:37:12 -0700

On Tue, Sep 17, 2019 at 11:22:30AM -0400, Qian Cai wrote:
> pkey_allows_readwrite() was first introduced in the commit 5586cf61e108
> ("powerpc: introduce execute-only pkey"), but the usage was removed
> entirely in the commit a4fcc877d4e1 ("powerpc/pkeys: Preallocate
> execute-only key").
> 
> Found by the "-Wunused-function" compiler warning flag.
> 
> Fixes: a4fcc877d4e1 ("powerpc/pkeys: Preallocate execute-only key")
> Signed-off-by: Qian Cai <[email-masked]>
> ---
>  arch/powerpc/mm/book3s64/pkeys.c | 10 ----------
>  1 file changed, 10 deletions(-)
> 
> diff --git a/arch/powerpc/mm/book3s64/pkeys.c b/arch/powerpc/mm/book3s64/pkeys.c
> index ae7fca40e5b3..59e0ebbd8036 100644
> --- a/arch/powerpc/mm/book3s64/pkeys.c
> +++ b/arch/powerpc/mm/book3s64/pkeys.c
> @@ -307,16 +307,6 @@ void thread_pkey_regs_init(struct thread_struct *thread)
>  	write_iamr(pkey_iamr_mask);
>  }
> 
> -static inline bool pkey_allows_readwrite(int pkey)
> -{
> -	int pkey_shift = pkeyshift(pkey);
> -
> -	if (!is_pkey_enabled(pkey))
> -		return true;
> -
> -	return !(read_amr() & ((AMR_RD_BIT|AMR_WR_BIT) << pkey_shift));
> -}
> -
>  int __execute_only_pkey(struct mm_struct *mm)
>  {
>  	return mm->context.execute_only_pkey;

The function was initially used by __execute_only_pkey(), but ones we
changed the implementation of __execute_only_pkey(), the need for 
pkey_allows_readwrite() disappeared.

Acked-by: Ram Pai <[email-masked]>

-- 
Ram Pai