cregit-Linux how code gets into the kernel

Release 4.16 arch/powerpc/include/asm/mman.h

/*
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version
 * 2 of the License, or (at your option) any later version.
 */
#ifndef _ASM_POWERPC_MMAN_H

#define _ASM_POWERPC_MMAN_H

#include <uapi/asm/mman.h>

#ifdef CONFIG_PPC64

#include <asm/cputable.h>
#include <linux/mm.h>
#include <linux/pkeys.h>
#include <asm/cpu_has_feature.h>

/*
 * This file is included by linux/mman.h, so we can't use cacl_vm_prot_bits()
 * here.  How important is the optimization?
 */

static inline unsigned long arch_calc_vm_prot_bits(unsigned long prot, unsigned long pkey) { #ifdef CONFIG_PPC_MEM_KEYS return (((prot & PROT_SAO) ? VM_SAO : 0) | pkey_to_vmflag_bits(pkey)); #else return ((prot & PROT_SAO) ? VM_SAO : 0); #endif }

Contributors

PersonTokensPropCommitsCommitProp
Ram Pai2951.79%133.33%
Dave Kleikamp2341.07%133.33%
Dave Hansen47.14%133.33%
Total56100.00%3100.00%

#define arch_calc_vm_prot_bits(prot, pkey) arch_calc_vm_prot_bits(prot, pkey)
static inline pgprot_t arch_vm_get_page_prot(unsigned long vm_flags) { #ifdef CONFIG_PPC_MEM_KEYS return (vm_flags & VM_SAO) ? __pgprot(_PAGE_SAO | vmflag_to_pte_pkey_bits(vm_flags)) : __pgprot(0 | vmflag_to_pte_pkey_bits(vm_flags)); #else return (vm_flags & VM_SAO) ? __pgprot(_PAGE_SAO) : __pgprot(0); #endif }

Contributors

PersonTokensPropCommitsCommitProp
Ram Pai3454.84%133.33%
Dave Kleikamp2540.32%133.33%
David Gibson34.84%133.33%
Total62100.00%3100.00%

#define arch_vm_get_page_prot(vm_flags) arch_vm_get_page_prot(vm_flags)
static inline bool arch_validate_prot(unsigned long prot) { if (prot & ~(PROT_READ | PROT_WRITE | PROT_EXEC | PROT_SEM | PROT_SAO)) return false; if ((prot & PROT_SAO) && !cpu_has_feature(CPU_FTR_SAO)) return false; return true; }

Contributors

PersonTokensPropCommitsCommitProp
Dave Kleikamp4792.16%150.00%
Chen Gang S47.84%150.00%
Total51100.00%2100.00%

#define arch_validate_prot(prot) arch_validate_prot(prot) #endif /* CONFIG_PPC64 */ #endif /* _ASM_POWERPC_MMAN_H */

Overall Contributors

PersonTokensPropCommitsCommitProp
Dave Kleikamp12053.57%18.33%
Ram Pai6629.46%216.67%
Stephen Rothwell83.57%18.33%
Dave Hansen73.12%18.33%
Anton Blanchard62.68%18.33%
Chen Gang S41.79%18.33%
David Gibson31.34%18.33%
Kevin Hao31.34%18.33%
Jon Loeliger31.34%18.33%
David Howells20.89%18.33%
Michael S. Tsirkin20.89%18.33%
Total224100.00%12100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.