cregit-Linux how code gets into the kernel

Release 4.8 arch/s390/include/asm/mmu.h

#ifndef __MMU_H

#define __MMU_H

#include <linux/cpumask.h>
#include <linux/errno.h>

typedef struct {
	
cpumask_t cpu_attach_mask;
	
atomic_t flush_count;
	
unsigned int flush_mm;
	
spinlock_t pgtable_lock;
	
struct list_head pgtable_list;
	
spinlock_t gmap_lock;
	
struct list_head gmap_list;
	
unsigned long asce;
	
unsigned long asce_limit;
	
unsigned long vdso_base;
	/* The mmu context allocates 4K page tables. */
	
unsigned int alloc_pgste:1;
	/* The mmu context uses extended page tables. */
	
unsigned int has_pgste:1;
	/* The mmu context uses storage keys. */
	
unsigned int use_skey:1;
} 
mm_context_t;


#define INIT_MM_CONTEXT(name)						   \
	.context.pgtable_lock =                                            \
                        __SPIN_LOCK_UNLOCKED(name.context.pgtable_lock),   \
        .context.pgtable_list = LIST_HEAD_INIT(name.context.pgtable_list), \
        .context.gmap_lock = __SPIN_LOCK_UNLOCKED(name.context.gmap_lock), \
        .context.gmap_list = LIST_HEAD_INIT(name.context.gmap_list),


static inline int tprot(unsigned long addr) { int rc = -EFAULT; asm volatile( " tprot 0(%1),0\n" "0: ipm %0\n" " srl %0,28\n" "1:\n" EX_TABLE(0b,1b) : "+d" (rc) : "a" (addr) : "cc"); return rc; }

Contributors

PersonTokensPropCommitsCommitProp
david howellsdavid howells23100.00%1100.00%
Total23100.00%1100.00%

#endif

Overall Contributors

PersonTokensPropCommitsCommitProp
martin schwidefskymartin schwidefsky5349.07%1161.11%
david howellsdavid howells2321.30%15.56%
pre-gitpre-git1312.04%15.56%
heiko carstensheiko carstens109.26%211.11%
dominik dingeldominik dingel76.48%15.56%
christian borntraegerchristian borntraeger10.93%15.56%
gerald schaefergerald schaefer10.93%15.56%
Total108100.00%18100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.