pmap.c (de7201225514f33f0fde51cab02f4a86c879b13d) | pmap.c (e93d0cbef142a2c6276ae83390a2ea81f0889b43) |
---|---|
1/*- 2 * Copyright (c) 1991 Regents of the University of California. 3 * All rights reserved. 4 * Copyright (c) 1994 John S. Dyson 5 * All rights reserved. 6 * Copyright (c) 1994 David Greenman 7 * All rights reserved. 8 * Copyright (c) 2005-2010 Alan L. Cox <alc@cs.rice.edu> --- 1948 unchanged lines hidden (view full) --- 1957void 1958pmap_lazyfix_action(void) 1959{ 1960 1961#ifdef COUNT_IPIS 1962 (*ipi_lazypmap_counts[PCPU_GET(cpuid)])++; 1963#endif 1964 if (rcr3() == lazyptd) | 1/*- 2 * Copyright (c) 1991 Regents of the University of California. 3 * All rights reserved. 4 * Copyright (c) 1994 John S. Dyson 5 * All rights reserved. 6 * Copyright (c) 1994 David Greenman 7 * All rights reserved. 8 * Copyright (c) 2005-2010 Alan L. Cox <alc@cs.rice.edu> --- 1948 unchanged lines hidden (view full) --- 1957void 1958pmap_lazyfix_action(void) 1959{ 1960 1961#ifdef COUNT_IPIS 1962 (*ipi_lazypmap_counts[PCPU_GET(cpuid)])++; 1963#endif 1964 if (rcr3() == lazyptd) |
1965 load_cr3(PCPU_GET(curpcb)->pcb_cr3); | 1965 load_cr3(curpcb->pcb_cr3); |
1966 CPU_CLR_ATOMIC(PCPU_GET(cpuid), lazymask); 1967 atomic_store_rel_int(&lazywait, 1); 1968} 1969 1970static void 1971pmap_lazyfix_self(u_int cpuid) 1972{ 1973 1974 if (rcr3() == lazyptd) | 1966 CPU_CLR_ATOMIC(PCPU_GET(cpuid), lazymask); 1967 atomic_store_rel_int(&lazywait, 1); 1968} 1969 1970static void 1971pmap_lazyfix_self(u_int cpuid) 1972{ 1973 1974 if (rcr3() == lazyptd) |
1975 load_cr3(PCPU_GET(curpcb)->pcb_cr3); | 1975 load_cr3(curpcb->pcb_cr3); |
1976 CPU_CLR_ATOMIC(cpuid, lazymask); 1977} 1978 1979 1980static void 1981pmap_lazyfix(pmap_t pmap) 1982{ 1983 cpuset_t mymask, mask; --- 50 unchanged lines hidden (view full) --- 2034 */ 2035static void 2036pmap_lazyfix(pmap_t pmap) 2037{ 2038 u_int cr3; 2039 2040 cr3 = vtophys(pmap->pm_pdir); 2041 if (cr3 == rcr3()) { | 1976 CPU_CLR_ATOMIC(cpuid, lazymask); 1977} 1978 1979 1980static void 1981pmap_lazyfix(pmap_t pmap) 1982{ 1983 cpuset_t mymask, mask; --- 50 unchanged lines hidden (view full) --- 2034 */ 2035static void 2036pmap_lazyfix(pmap_t pmap) 2037{ 2038 u_int cr3; 2039 2040 cr3 = vtophys(pmap->pm_pdir); 2041 if (cr3 == rcr3()) { |
2042 load_cr3(PCPU_GET(curpcb)->pcb_cr3); | 2042 load_cr3(curpcb->pcb_cr3); |
2043 CPU_CLR(PCPU_GET(cpuid), &pmap->pm_active); 2044 } 2045} 2046#endif /* SMP */ 2047 2048/* 2049 * Release any resources held by the given physical map. 2050 * Called when a pmap initialized by pmap_pinit is being released. --- 3377 unchanged lines hidden --- | 2043 CPU_CLR(PCPU_GET(cpuid), &pmap->pm_active); 2044 } 2045} 2046#endif /* SMP */ 2047 2048/* 2049 * Release any resources held by the given physical map. 2050 * Called when a pmap initialized by pmap_pinit is being released. --- 3377 unchanged lines hidden --- |