Page MenuHomeFreeBSD

Put other CPUs into tight loop when updating microcode from loaded OS.
ClosedPublic

Authored by kib on May 8 2019, 6:54 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Apr 19, 8:37 AM
Unknown Object (File)
Fri, Apr 18, 10:38 PM
Unknown Object (File)
Fri, Apr 18, 7:43 PM
Unknown Object (File)
Fri, Apr 18, 7:41 PM
Unknown Object (File)
Fri, Apr 18, 7:38 PM
Unknown Object (File)
Apr 4 2025, 5:49 AM
Unknown Object (File)
Mar 27 2025, 7:40 AM
Unknown Object (File)
Mar 19 2025, 5:42 PM
Subscribers

Details

Summary

This should prevent at least some theoretical issues whith code execution on HT sibling of the core where the update is loaded.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

sys/dev/cpuctl/cpuctl.c
387 ↗(On Diff #57193)

I believe you can simply pass NULL instead of null_st for the same effect.

kib marked an inline comment as done.May 8 2019, 7:43 PM
kib added inline comments.
sys/dev/cpuctl/cpuctl.c
387 ↗(On Diff #57193)

Ah yes, smp_rendezvous() requires special value, not NULL, to skip spinning.

kib marked an inline comment as done.

Simplify.

This revision is now accepted and ready to land.May 8 2019, 7:48 PM
This revision was automatically updated to reflect the committed changes.