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

Collapse All | Expand All

(-)sys/dev/cpuctl/cpuctl.c (-2 / +4 lines)
Lines 362-367 Link Here
362
	is_bound = cpu_sched_is_bound(td);
362
	is_bound = cpu_sched_is_bound(td);
363
	set_cpu(cpu, td);
363
	set_cpu(cpu, td);
364
	critical_enter();
364
	critical_enter();
365
	wrmsr_safe(MSR_BIOS_SIGN, 0);
366
	do_cpuid(1, tmp);
365
	rdmsr_safe(MSR_BIOS_SIGN, &rev0); /* Get current microcode revision. */
367
	rdmsr_safe(MSR_BIOS_SIGN, &rev0); /* Get current microcode revision. */
366
368
367
	/*
369
	/*
Lines 373-381 Link Here
373
	/*
375
	/*
374
	 * Serialize instruction flow.
376
	 * Serialize instruction flow.
375
	 */
377
	 */
376
	do_cpuid(0, tmp);
378
	do_cpuid(1, tmp);
377
	critical_exit();
378
	rdmsr_safe(MSR_BIOS_SIGN, &rev1); /* Get new microcode revision. */
379
	rdmsr_safe(MSR_BIOS_SIGN, &rev1); /* Get new microcode revision. */
380
	critical_exit();
379
	restore_cpu(oldcpu, is_bound, td);
381
	restore_cpu(oldcpu, is_bound, td);
380
	if (rev1 > rev0)
382
	if (rev1 > rev0)
381
		ret = 0;
383
		ret = 0;

Return to bug 192487