/linux-6.14.4/include/asm-generic/ |
D | tlb.h | 2 /* include/asm-generic/tlb.h 4 * Generic TLB shootdown code 35 * correct and efficient ordering of freeing pages and TLB invalidations. 40 * 2) TLB invalidate page 53 * Finish in particular will issue a (final) TLB invalidate and free 94 * tlb_flush_mmu_tlbonly() - does the TLB invalidate (and resets 97 * tlb_flush_mmu() - in addition to the above TLB invalidate, also frees 114 * flush the entire TLB irrespective of the range. For instance 133 * returns the smallest TLB entry size unmapped in this range. 146 * This might be useful if your architecture has size specific TLB [all …]
|
/linux-6.14.4/arch/arm64/include/asm/ |
D | tlb.h | 3 * Based on arch/arm/include/asm/tlb.h 15 static void tlb_flush(struct mmu_gather *tlb); 17 #include <asm-generic/tlb.h> 24 static inline int tlb_get_level(struct mmu_gather *tlb) in tlb_get_level() argument 27 if (tlb->freed_tables) in tlb_get_level() 30 if (tlb->cleared_ptes && !(tlb->cleared_pmds || in tlb_get_level() 31 tlb->cleared_puds || in tlb_get_level() 32 tlb->cleared_p4ds)) in tlb_get_level() 35 if (tlb->cleared_pmds && !(tlb->cleared_ptes || in tlb_get_level() 36 tlb->cleared_puds || in tlb_get_level() [all …]
|
/linux-6.14.4/mm/ |
D | mmu_gather.c | 14 #include <asm/tlb.h> 18 static bool tlb_next_batch(struct mmu_gather *tlb) in tlb_next_batch() argument 23 if (tlb->delayed_rmap && tlb->active != &tlb->local) in tlb_next_batch() 26 batch = tlb->active; in tlb_next_batch() 28 tlb->active = batch->next; in tlb_next_batch() 32 if (tlb->batch_count == MAX_GATHER_BATCH_COUNT) in tlb_next_batch() 39 tlb->batch_count++; in tlb_next_batch() 44 tlb->active->next = batch; in tlb_next_batch() 45 tlb->active = batch; in tlb_next_batch() 73 * tlb_flush_rmaps - do pending rmap removals after we have flushed the TLB [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/arm64/fujitsu/monaka/ |
D | tlb.json | 4 …"BriefDescription": "This event counts operations that cause a TLB refill of the L1I TLB. See L1I_… 8 …"BriefDescription": "This event counts operations that cause a TLB refill of the L1D TLB. See L1D_… 12 …"BriefDescription": "This event counts operations that cause a TLB access to the L1D TLB. See L1D_… 16 …"BriefDescription": "This event counts operations that cause a TLB access to the L1I TLB. See L1I_… 20 …"BriefDescription": "This event counts operations that cause a TLB refill of the L2D TLB. See L2D_… 24 …"BriefDescription": "This event counts operations that cause a TLB access to the L2D TLB. See L2D_… 28 … "BriefDescription": "This event counts data TLB access with at least one translation table walk." 32 …"BriefDescription": "This event counts instruction TLB access with at least one translation table … 37 … "BriefDescription": "This event counts operations that cause a TLB access to the L1I in 4KB page." 42 …"BriefDescription": "This event counts operations that cause a TLB access to the L1I in 64KB page." [all …]
|
/linux-6.14.4/arch/s390/include/asm/ |
D | tlb.h | 6 * TLB flushing on s390 is complicated. The following requirement 14 * AND PURGE instruction that purges the TLB." 25 static inline void tlb_flush(struct mmu_gather *tlb); 26 static inline bool __tlb_remove_page_size(struct mmu_gather *tlb, 28 static inline bool __tlb_remove_folio_pages(struct mmu_gather *tlb, 38 #include <asm-generic/tlb.h> 42 * tlb_ptep_clear_flush. In both flush modes the tlb for a page cache page 47 static inline bool __tlb_remove_page_size(struct mmu_gather *tlb, in __tlb_remove_page_size() argument 56 static inline bool __tlb_remove_folio_pages(struct mmu_gather *tlb, in __tlb_remove_folio_pages() argument 71 static inline void tlb_flush(struct mmu_gather *tlb) in tlb_flush() argument [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/arm64/arm/neoverse-n1/ |
D | tlb.json | 4 …TLB refills from any Instruction fetch. If there are multiple misses in the TLB that are resolved … 8 …TLB accesses that resulted in TLB refills. If there are multiple misses in the TLB that are resolv… 12 …TLB accesses caused by any memory load or store operation. Note that load or store instructions ca… 16 …ublicDescription": "Counts level 1 instruction TLB accesses, whether the access hits or misses in … 20 …ion": "Counts level 2 TLB refills caused by memory operations from both data and instruction fetch… 24 …"PublicDescription": "Counts level 2 TLB accesses except those caused by TLB maintenance operation… 28 …TLB driven by a memory access. Note that partial translations that also cause a table walk are cou… 32 … L2 TLB driven by a memory access. Partial translations that also cause a table walk are counted. … 36 …TLB refills caused by memory read operations. If there are multiple misses in the TLB that are res… 40 …TLB refills caused by data side memory write operations. If there are multiple misses in the TLB t… [all …]
|
D | metrics.json | 40 …"BriefDescription": "This metric measures the number of data TLB Walks per thousand instructions e… 47 …atio of instruction TLB Walks to the total number of data TLB accesses. This gives an indication o… 49 "ScaleUnit": "1per TLB access" 75 …"BriefDescription": "This metric measures the number of instruction TLB Walks per thousand instruc… 82 … instruction TLB Walks to the total number of instruction TLB accesses. This gives an indication o… 84 "ScaleUnit": "1per TLB access" 103 …1 data TLB accesses missed to the total number of level 1 data TLB accesses. This gives an indicat… 105 "ScaleUnit": "1per TLB access" 110 …"BriefDescription": "This metric measures the number of level 1 instruction TLB accesses missed pe… 131 …TLB accesses missed to the total number of level 1 instruction TLB accesses. This gives an indicat… [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/arm64/arm/neoverse-v1/ |
D | tlb.json | 4 …TLB refills from any Instruction fetch. If there are multiple misses in the TLB that are resolved … 8 …TLB accesses that resulted in TLB refills. If there are multiple misses in the TLB that are resolv… 12 …TLB accesses caused by any memory load or store operation. Note that load or store instructions ca… 16 …ublicDescription": "Counts level 1 instruction TLB accesses, whether the access hits or misses in … 20 …ion": "Counts level 2 TLB refills caused by memory operations from both data and instruction fetch… 24 …"PublicDescription": "Counts level 2 TLB accesses except those caused by TLB maintenance operation… 28 …TLB driven by a memory access. Note that partial translations that also cause a table walk are cou… 32 … L2 TLB driven by a memory access. Partial translations that also cause a table walk are counted. … 36 …TLB refills caused by memory read operations. If there are multiple misses in the TLB that are res… 40 …TLB refills caused by data side memory write operations. If there are multiple misses in the TLB t… [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/arm64/arm/neoverse-n2-v2/ |
D | tlb.json | 4 …TLB refills from any Instruction fetch. If there are multiple misses in the TLB that are resolved … 8 …TLB accesses that resulted in TLB refills. If there are multiple misses in the TLB that are resolv… 12 …TLB accesses caused by any memory load or store operation. Note that load or store instructions ca… 16 …ublicDescription": "Counts level 1 instruction TLB accesses, whether the access hits or misses in … 20 …ion": "Counts level 2 TLB refills caused by memory operations from both data and instruction fetch… 24 …"PublicDescription": "Counts level 2 TLB accesses except those caused by TLB maintenance operation… 28 …TLB and performing at least one memory access. Translation table walks are counted even if the tra… 32 …TLB and performing at least one memory access. Translation table walks are counted even if the tra… 36 …TLB refills caused by memory read operations. If there are multiple misses in the TLB that are res… 40 …TLB refills caused by data side memory write operations. If there are multiple misses in the TLB t… [all …]
|
/linux-6.14.4/arch/loongarch/include/asm/ |
D | tlb.h | 13 * TLB Invalidate Flush 26 * TLB R/W operations. 49 /* Invalid all tlb */ 51 /* Invalid current tlb */ 53 /* Invalid all global=1 lines in current tlb */ 55 /* Invalid all global=0 lines in current tlb */ 57 /* Invalid global=0 and matched asid lines in current tlb */ 59 /* Invalid addr with global=0 and matched asid in current tlb */ 61 /* Invalid addr with global=1 or matched asid in current tlb */ 63 /* Invalid matched gid in guest tlb */ [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/powerpc/power8/ |
D | translation.json | 5 "BriefDescription": "Data ERAT Miss (Data TLB Access) page size 16G", 11 "BriefDescription": "Data ERAT Miss (Data TLB Access) page size 16M", 17 "BriefDescription": "Data ERAT Miss (Data TLB Access) page size 4K", 23 "BriefDescription": "Data ERAT Miss (Data TLB Access) page size 64K", 29 …"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from anothe… 35 …"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another … 41 …"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 due to a data… 47 …"BriefDescription": "A Page Table Entry was loaded into the TLB from a location other than the loc… 53 …"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 hit without d… 59 …"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 without confl… [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/arm64/ampere/ampereonex/ |
D | mmu.json | 9 "PublicDescription": "Data TLB translation cache hit on S1L2 walk cache entry", 12 "BriefDescription": "Data TLB translation cache hit on S1L2 walk cache entry" 15 "PublicDescription": "Data TLB translation cache hit on S1L1 walk cache entry", 18 "BriefDescription": "Data TLB translation cache hit on S1L1 walk cache entry" 21 "PublicDescription": "Data TLB translation cache hit on S1L0 walk cache entry", 24 "BriefDescription": "Data TLB translation cache hit on S1L0 walk cache entry" 27 "PublicDescription": "Data TLB translation cache hit on S2L2 walk cache entry", 30 "BriefDescription": "Data TLB translation cache hit on S2L2 walk cache entry" 33 "PublicDescrition": "Data TLB translation cache hit on S2L1 walk cache entry", 36 "BriefDescription": "Data TLB translation cache hit on S2L1 walk cache entry" [all …]
|
/linux-6.14.4/arch/mips/kvm/ |
D | tlb.c | 6 * KVM/MIPS TLB handling, this file is part of the Linux host kernel so that 7 * TLB handlers run from KSEG0 26 #include <asm/tlb.h> 92 * Sets the root GuestID to match the current guest GuestID, for TLB operation 93 * on the GPA->RPA mappings in the root TLB. 96 * possibly longer if TLB registers are modified. 121 /* Set root GuestID for root probe and write of guest TLB entry */ in kvm_vz_host_tlb_inv() 137 * We don't want to get reserved instruction exceptions for missing tlb in kvm_vz_host_tlb_inv() 153 * kvm_vz_guest_tlb_lookup() - Lookup a guest VZ TLB mapping. 155 * @gpa: Guest virtual address in a TLB mapped guest segment. [all …]
|
/linux-6.14.4/arch/riscv/include/asm/ |
D | tlb.h | 11 static void tlb_flush(struct mmu_gather *tlb); 14 #include <asm-generic/tlb.h> 16 static inline void tlb_flush(struct mmu_gather *tlb) in tlb_flush() argument 19 if (tlb->fullmm || tlb->need_flush_all || tlb->freed_tables) in tlb_flush() 20 flush_tlb_mm(tlb->mm); in tlb_flush() 22 flush_tlb_mm_range(tlb->mm, tlb->start, tlb->end, in tlb_flush() 23 tlb_get_unmap_size(tlb)); in tlb_flush()
|
/linux-6.14.4/tools/perf/pmu-events/arch/x86/skylake/ |
D | virtual-memory.json | 7 … a page walk of any page size (4K/2M/4M/1G). This implies it missed in all TLB levels, but the wal… 16 …blicDescription": "Counts loads that miss the DTLB (Data TLB) and hit the STLB (Second level TLB).… 31 …"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (All page size… 35 …emand data loads. This implies it missed in the DTLB and further levels of TLB. The page walk can … 44 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 53 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 62 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 80 … a page walk of any page size (4K/2M/4M/1G). This implies it missed in all TLB levels, but the wal… 89 … "PublicDescription": "Stores that miss the DTLB (Data TLB) and hit the STLB (2nd Level TLB).", 104 …"BriefDescription": "Store misses in all TLB levels causes a page walk that completes. (All page s… [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/x86/skylakex/ |
D | virtual-memory.json | 7 … a page walk of any page size (4K/2M/4M/1G). This implies it missed in all TLB levels, but the wal… 16 …blicDescription": "Counts loads that miss the DTLB (Data TLB) and hit the STLB (Second level TLB).… 31 …"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (All page size… 35 …emand data loads. This implies it missed in the DTLB and further levels of TLB. The page walk can … 44 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 53 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 62 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 80 … a page walk of any page size (4K/2M/4M/1G). This implies it missed in all TLB levels, but the wal… 89 … "PublicDescription": "Stores that miss the DTLB (Data TLB) and hit the STLB (2nd Level TLB).", 104 …"BriefDescription": "Store misses in all TLB levels causes a page walk that completes. (All page s… [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/x86/cascadelakex/ |
D | virtual-memory.json | 7 … a page walk of any page size (4K/2M/4M/1G). This implies it missed in all TLB levels, but the wal… 16 …blicDescription": "Counts loads that miss the DTLB (Data TLB) and hit the STLB (Second level TLB).… 31 …"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (All page size… 35 …emand data loads. This implies it missed in the DTLB and further levels of TLB. The page walk can … 44 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 53 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 62 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 80 … a page walk of any page size (4K/2M/4M/1G). This implies it missed in all TLB levels, but the wal… 89 … "PublicDescription": "Stores that miss the DTLB (Data TLB) and hit the STLB (2nd Level TLB).", 104 …"BriefDescription": "Store misses in all TLB levels causes a page walk that completes. (All page s… [all …]
|
/linux-6.14.4/arch/arm/include/asm/ |
D | tlb.h | 3 * arch/arm/include/asm/tlb.h 8 * to use the "invalidate whole tlb" rather than "invalidate single 9 * tlb" for this. 23 #define tlb_flush(tlb) ((void) tlb) argument 25 #include <asm-generic/tlb.h> 30 #include <asm-generic/tlb.h> 33 __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, unsigned long addr) in __pte_free_tlb() argument 43 __tlb_adjust_range(tlb, addr - PAGE_SIZE, 2 * PAGE_SIZE); in __pte_free_tlb() 46 tlb_remove_ptdesc(tlb, ptdesc); in __pte_free_tlb() 50 __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmdp, unsigned long addr) in __pmd_free_tlb() argument [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/x86/sapphirerapids/ |
D | virtual-memory.json | 7 …blicDescription": "Counts loads that miss the DTLB (Data TLB) and hit the STLB (Second level TLB).… 22 …"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (All page size… 26 …emand data loads. This implies it missed in the DTLB and further levels of TLB. The page walk can … 35 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 44 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 53 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 71 …ublicDescription": "Counts stores that miss the DTLB (Data TLB) and hit the STLB (2nd Level TLB).", 86 …"BriefDescription": "Store misses in all TLB levels causes a page walk that completes. (All page s… 90 …mand data stores. This implies it missed in the DTLB and further levels of TLB. The page walk can … 99 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/x86/graniterapids/ |
D | virtual-memory.json | 7 …blicDescription": "Counts loads that miss the DTLB (Data TLB) and hit the STLB (Second level TLB).… 22 …"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (All page size… 26 …emand data loads. This implies it missed in the DTLB and further levels of TLB. The page walk can … 35 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 44 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 53 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 71 …ublicDescription": "Counts stores that miss the DTLB (Data TLB) and hit the STLB (2nd Level TLB).", 86 …"BriefDescription": "Store misses in all TLB levels causes a page walk that completes. (All page s… 90 …mand data stores. This implies it missed in the DTLB and further levels of TLB. The page walk can … 99 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/x86/emeraldrapids/ |
D | virtual-memory.json | 7 …blicDescription": "Counts loads that miss the DTLB (Data TLB) and hit the STLB (Second level TLB).… 22 …"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (All page size… 26 …emand data loads. This implies it missed in the DTLB and further levels of TLB. The page walk can … 35 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 44 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 53 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 71 …ublicDescription": "Counts stores that miss the DTLB (Data TLB) and hit the STLB (2nd Level TLB).", 86 …"BriefDescription": "Store misses in all TLB levels causes a page walk that completes. (All page s… 90 …mand data stores. This implies it missed in the DTLB and further levels of TLB. The page walk can … 99 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … [all …]
|
/linux-6.14.4/drivers/gpu/drm/v3d/ |
D | v3d_perfmon.c | 17 …{"TLB", "TLB-quads-not-passing-stencil-test", "[TLB] Quads with no pixels passing the stencil test… 18 …{"TLB", "TLB-quads-not-passing-z-and-stencil-test", "[TLB] Quads with no pixels passing the Z and … 19 …{"TLB", "TLB-quads-passing-z-and-stencil-test", "[TLB] Quads with any pixels passing the Z and ste… 20 {"TLB", "TLB-quads-with-zero-coverage", "[TLB] Quads with all pixels having zero coverage"}, 21 …{"TLB", "TLB-quads-with-non-zero-coverage", "[TLB] Quads with any pixels having non-zero coverage"… 22 …{"TLB", "TLB-quads-written-to-color-buffer", "[TLB] Quads with valid pixels written to colour buff… 61 …{"TLB", "TLB-partial-quads-written-to-color-buffer", "[TLB] Partial quads written to the colour bu… 87 {"TLB", "TLB-memory-writes", "[TLB] Total memory writes"}, 92 {"TLB", "TLB-memory-reads", "[TLB] Total memory reads"}, 95 {"TLB", "TLB-memory-words-writes", "[TLB] Total memory words written"}, [all …]
|
/linux-6.14.4/arch/x86/include/asm/ |
D | tlb.h | 6 static inline void tlb_flush(struct mmu_gather *tlb); 8 #include <asm-generic/tlb.h> 10 static inline void tlb_flush(struct mmu_gather *tlb) in tlb_flush() argument 13 unsigned int stride_shift = tlb_get_unmap_shift(tlb); in tlb_flush() 15 if (!tlb->fullmm && !tlb->need_flush_all) { in tlb_flush() 16 start = tlb->start; in tlb_flush() 17 end = tlb->end; in tlb_flush() 20 flush_tlb_mm_range(tlb->mm, start, end, stride_shift, tlb->freed_tables); in tlb_flush()
|
/linux-6.14.4/tools/perf/pmu-events/arch/arm64/arm/cortex-a75/ |
D | cache.json | 129 "PublicDescription": "Level 1 PLD TLB refill", 132 "BriefDescription": "Level 1 PLD TLB refill" 135 …"PublicDescription": "Level 2 preload and MMU prefetcher TLB access. This event only counts softwa… 138 …"BriefDescription": "Level 2 preload and MMU prefetcher TLB access. This event only counts softwar… 141 "PublicDescription": "Level 1 TLB flush", 144 "BriefDescription": "Level 1 TLB flush" 147 "PublicDescription": "Level 2 TLB access", 150 "BriefDescription": "Level 2 TLB access" 153 …eload TLB access. This event only counts software and hardware prefetches at Level 1. This event c… 156 …eload TLB access. This event only counts software and hardware prefetches at Level 1. This event c… [all …]
|
/linux-6.14.4/tools/perf/pmu-events/arch/x86/icelakex/ |
D | virtual-memory.json | 7 …blicDescription": "Counts loads that miss the DTLB (Data TLB) and hit the STLB (Second level TLB).… 22 …"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (All page size… 26 …emand data loads. This implies it missed in the DTLB and further levels of TLB. The page walk can … 35 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 44 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 53 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … 71 …ublicDescription": "Counts stores that miss the DTLB (Data TLB) and hit the STLB (2nd Level TLB).", 86 …"BriefDescription": "Store misses in all TLB levels causes a page walk that completes. (All page s… 90 …mand data stores. This implies it missed in the DTLB and further levels of TLB. The page walk can … 99 …This implies address translations missed in the DTLB and further levels of TLB. The page walk can … [all …]
|