| 949 | } |
| 950 | |
| 951 | static void |
| 952 | invlrng_handler(vm_offset_t smp_tlb_addr1, vm_offset_t smp_tlb_addr2) |
| 953 | { |
| 954 | vm_offset_t addr, addr2; |
| 955 | |
| 956 | #ifdef COUNT_XINVLTLB_HITS |
| 957 | xhits_rng[PCPU_GET(cpuid)]++; |
| 958 | #endif /* COUNT_XINVLTLB_HITS */ |
| 959 | #ifdef COUNT_IPIS |
| 960 | (*ipi_invlrng_counts[PCPU_GET(cpuid)])++; |
| 961 | #endif /* COUNT_IPIS */ |
| 962 | |
| 963 | addr = smp_tlb_addr1; |
| 964 | addr2 = smp_tlb_addr2; |
| 965 | do { |
| 966 | invlpg(addr); |
| 967 | addr += PAGE_SIZE; |
| 968 | } while (addr < addr2); |
| 969 | } |
| 970 | |
| 971 | static void |
| 972 | invlrng_invpcid_handler(pmap_t smp_tlb_pmap, vm_offset_t smp_tlb_addr1, |
no test coverage detected