cregit-Linux how code gets into the kernel

Release 4.18 arch/riscv/include/asm/pgtable-bits.h

/*
 * Copyright (C) 2012 Regents of the University of California
 *
 *   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, version 2.
 *
 *   This program is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 */

#ifndef _ASM_RISCV_PGTABLE_BITS_H

#define _ASM_RISCV_PGTABLE_BITS_H

/*
 * PTE format:
 * | XLEN-1  10 | 9             8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0
 *       PFN      reserved for SW   D   A   G   U   X   W   R   V
 */


#define _PAGE_ACCESSED_OFFSET 6


#define _PAGE_PRESENT   (1 << 0)

#define _PAGE_READ      (1 << 1)    
/* Readable */

#define _PAGE_WRITE     (1 << 2)    
/* Writable */

#define _PAGE_EXEC      (1 << 3)    
/* Executable */

#define _PAGE_USER      (1 << 4)    
/* User */

#define _PAGE_GLOBAL    (1 << 5)    
/* Global */

#define _PAGE_ACCESSED  (1 << 6)    
/* Set by hardware on any access */

#define _PAGE_DIRTY     (1 << 7)    
/* Set by hardware on any write */

#define _PAGE_SOFT      (1 << 8)    
/* Reserved for software */


#define _PAGE_SPECIAL   _PAGE_SOFT

#define _PAGE_TABLE     _PAGE_PRESENT


#define _PAGE_PFN_SHIFT 10

/* Set of bits to preserve across pte_modify() */

#define _PAGE_CHG_MASK  (~(unsigned long)(_PAGE_PRESENT | _PAGE_READ |  \
                                          _PAGE_WRITE | _PAGE_EXEC |    \
                                          _PAGE_USER | _PAGE_GLOBAL))

#endif /* _ASM_RISCV_PGTABLE_BITS_H */

Overall Contributors

PersonTokensPropCommitsCommitProp
Palmer Dabbelt76100.00%1100.00%
Total76100.00%1100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.