Page MenuHomeFreeBSD

Revert the IPI startup sequence to match what is described in the Intel Multiprocessor Specification v1.4.
ClosedPublic

Authored by jhb on Jan 29 2015, 4:23 PM.

Details

Reviewers
jhb
avg
Summary

Revert the IPI startup sequence to match what is described in the
Intel Multiprocessor Specification v1.4. The Intel SDM claims that
the INIT IPIs here are invalid, but other systems follow the MP
spec instead.

While here, fix the IPI wait routine to accept a timeout in microseconds
instead of a raw spin count, and don't spin forever during AP startup.
Instead, panic if a STARTUP IPI is not delivered after 20 us.

PR: 196542

Diff Detail

Repository
rS FreeBSD src repository
Lint
No Linters Available
Unit
No Unit Test Coverage

Event Timeline

jhb updated this revision to Diff 3511.Jan 29 2015, 4:23 PM
jhb retitled this revision from to Revert the IPI startup sequence to match what is described in the Intel Multiprocessor Specification v1.4..
jhb updated this object.
jhb edited the test plan for this revision. (Show Details)
jhb added a reviewer: avg.
jhb updated this revision to Diff 3513.Jan 29 2015, 4:44 PM
  • Compile.
  • Always set the level mode for all except the INIT de-assert.

Updating D1719: Revert the IPI startup sequence to match what is described in the

Intel Multiprocessor Specification v1.4.

emaste added a subscriber: emaste.Jan 29 2015, 6:00 PM
emaste added inline comments.
sys/amd64/amd64/mp_machdep.c
1068

missing space theIntel
(and in i386)

jhb updated this revision to Diff 3522.Jan 29 2015, 7:50 PM
  • Whitespace nit noted by emaste@.

Updating D1719: Revert the IPI startup sequence to match what is described in the

Intel Multiprocessor Specification v1.4.

jhb updated this revision to Diff 3670.Feb 6 2015, 5:20 PM
  • Merge branch 'master' into x86_mp_startup

Updating D1719: Revert the IPI startup sequence to match what is described in the

Intel Multiprocessor Specification v1.4.

jhb accepted this revision.Feb 6 2015, 6:20 PM
jhb added a reviewer: jhb.
This revision is now accepted and ready to land.Feb 6 2015, 6:20 PM
jhb closed this revision.Feb 6 2015, 6:20 PM