cregit-Linux how code gets into the kernel

Release 4.14 arch/sparc/include/asm/tlbflush_64.h

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _SPARC64_TLBFLUSH_H

#define _SPARC64_TLBFLUSH_H

#include <asm/mmu_context.h>

/* TSB flush operations. */


#define TLB_BATCH_NR	192


struct tlb_batch {
	
unsigned int hugepage_shift;
	
struct mm_struct *mm;
	
unsigned long tlb_nr;
	
unsigned long active;
	
unsigned long vaddrs[TLB_BATCH_NR];
};

void flush_tsb_kernel_range(unsigned long start, unsigned long end);
void flush_tsb_user(struct tlb_batch *tb);
void flush_tsb_user_page(struct mm_struct *mm, unsigned long vaddr,
			 unsigned int hugepage_shift);

/* TLB flush operations. */


static inline void flush_tlb_mm(struct mm_struct *mm) { }

Contributors

PersonTokensPropCommitsCommitProp
David S. Miller981.82%150.00%
Sam Ravnborg218.18%150.00%
Total11100.00%2100.00%


static inline void flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr) { }

Contributors

PersonTokensPropCommitsCommitProp
David S. Miller1386.67%150.00%
Sam Ravnborg213.33%150.00%
Total15100.00%2100.00%


static inline void flush_tlb_range(struct vm_area_struct *vma, unsigned long start, unsigned long end) { }

Contributors

PersonTokensPropCommitsCommitProp
David S. Miller1157.89%150.00%
Sam Ravnborg842.11%150.00%
Total19100.00%2100.00%

void flush_tlb_kernel_range(unsigned long start, unsigned long end); #define __HAVE_ARCH_ENTER_LAZY_MMU_MODE void flush_tlb_pending(void); void arch_enter_lazy_mmu_mode(void); void arch_leave_lazy_mmu_mode(void); #define arch_flush_lazy_mmu_mode() do {} while (0) /* Local cpu only. */ void __flush_tlb_all(void); void __flush_tlb_page(unsigned long context, unsigned long vaddr); void __flush_tlb_kernel_range(unsigned long start, unsigned long end); #ifndef CONFIG_SMP
static inline void global_flush_tlb_page(struct mm_struct *mm, unsigned long vaddr) { __flush_tlb_page(CTX_HWBITS(mm->context), vaddr); }

Contributors

PersonTokensPropCommitsCommitProp
David S. Miller28100.00%1100.00%
Total28100.00%1100.00%

#else /* CONFIG_SMP */ void smp_flush_tlb_kernel_range(unsigned long start, unsigned long end); void smp_flush_tlb_page(struct mm_struct *mm, unsigned long vaddr); #define global_flush_tlb_page(mm, vaddr) \ smp_flush_tlb_page(mm, vaddr) #endif /* ! CONFIG_SMP */ #endif /* _SPARC64_TLBFLUSH_H */

Overall Contributors

PersonTokensPropCommitsCommitProp
David S. Miller14553.31%228.57%
Sam Ravnborg9133.46%114.29%
Peter Zijlstra279.93%114.29%
Nitin Gupta82.94%228.57%
Greg Kroah-Hartman10.37%114.29%
Total272100.00%7100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.