cregit-Linux how code gets into the kernel

Release 4.18 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, unsigned long addr) { 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 Kleikamp4785.45%133.33%
Khalid Aziz47.27%133.33%
Chen Gang S47.27%133.33%
Total55100.00%3100.00%

#define arch_validate_prot arch_validate_prot #endif /* CONFIG_PPC64 */ #endif /* _ASM_POWERPC_MMAN_H */

Overall Contributors

PersonTokensPropCommitsCommitProp
Dave Kleikamp11651.56%17.69%
Ram Pai6629.33%215.38%
Stephen Rothwell83.56%17.69%
Dave Hansen73.11%17.69%
Anton Blanchard62.67%17.69%
Khalid Aziz52.22%17.69%
Chen Gang S41.78%17.69%
Jon Loeliger31.33%17.69%
Kevin Hao31.33%17.69%
David Gibson31.33%17.69%
Michael S. Tsirkin20.89%17.69%
David Howells20.89%17.69%
Total225100.00%13100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.