View | Details | Raw Unified | Return to bug 261338 | Differences between
and this patch

Collapse All | Expand All

(-)sys/amd64/amd64/pmap.c (-4 lines)
Lines 2337-2344 Link Here
2337
{
2337
{
2338
	u_int cpuid, i;
2338
	u_int cpuid, i;
2339
2339
2340
	sched_pin();
2341
2342
	cpuid = PCPU_GET(cpuid);
2340
	cpuid = PCPU_GET(cpuid);
2343
	if (pmap != PCPU_GET(curpmap))
2341
	if (pmap != PCPU_GET(curpmap))
2344
		cpuid = 0xffffffff;	/* An impossible value */
2342
		cpuid = 0xffffffff;	/* An impossible value */
Lines 2364-2370 Link Here
2364
static void
2362
static void
2365
pmap_invalidate_preipi_nopcid(pmap_t pmap __unused)
2363
pmap_invalidate_preipi_nopcid(pmap_t pmap __unused)
2366
{
2364
{
2367
	sched_pin();
2368
}
2365
}
2369
2366
2370
DEFINE_IFUNC(static, void, pmap_invalidate_preipi, (pmap_t), static)
2367
DEFINE_IFUNC(static, void, pmap_invalidate_preipi, (pmap_t), static)
Lines 2667-2673 Link Here
2667
void
2664
void
2668
pmap_invalidate_cache(void)
2665
pmap_invalidate_cache(void)
2669
{
2666
{
2670
	sched_pin();
2671
	smp_cache_flush(pmap_invalidate_cache_curcpu_cb);
2667
	smp_cache_flush(pmap_invalidate_cache_curcpu_cb);
2672
}
2668
}
2673
2669
(-)sys/x86/x86/mp_x86.c (-3 / +2 lines)
Lines 1656-1664 Link Here
1656
 * underlying processor, even when this processor is not set in the
1656
 * underlying processor, even when this processor is not set in the
1657
 * mask.  So, the callback function must be prepared to handle such
1657
 * mask.  So, the callback function must be prepared to handle such
1658
 * spurious invocations.
1658
 * spurious invocations.
1659
 *
1660
 * This function must be called with the thread pinned, and it unpins on
1661
 * completion.
1662
 */
1659
 */
1663
static void
1660
static void
1664
smp_targeted_tlb_shootdown(cpuset_t mask, u_int vector, pmap_t pmap,
1661
smp_targeted_tlb_shootdown(cpuset_t mask, u_int vector, pmap_t pmap,
Lines 1668-1673 Link Here
1668
	volatile uint32_t *p_cpudone;
1665
	volatile uint32_t *p_cpudone;
1669
	uint32_t generation;
1666
	uint32_t generation;
1670
	int cpu;
1667
	int cpu;
1668
1669
	sched_pin();
1671
1670
1672
	/*
1671
	/*
1673
	 * It is not necessary to signal other CPUs while booting or
1672
	 * It is not necessary to signal other CPUs while booting or

Return to bug 261338