Skip to content

Commit

Permalink
theory statement
Browse files Browse the repository at this point in the history
  • Loading branch information
gjcolombo committed Oct 14, 2024
1 parent 363c9ec commit 9ab7192
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions lib/propolis/src/msr.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,22 @@
// file, You can obtain one at https://mozilla.org/MPL/2.0/.

//! A virtual "address space" for model-specific registers (MSRs).
//!
//! MSRs provide system software with a way to configure or interact with the
//! underlying CPU in an extensible way that (as the name suggests) may be
//! specific to a particular range of CPU models. Some MSRs are architectural
//! parts of the x86-64 architecture, though many really are manufacturer- and
//! model-specific.
//!
//! This module provides the [`MsrSpace`] type, which provides a virtual
//! "address space" that other Propolis components can use to register to handle
//! RDMSR/WRMSR operations. Some architectural MSRs are handled entirely in
//! bhyve; those that are handled in Propolis are dispatched to the calling
//! CPU's MSR space for possible handling.
//!
//! Individual handlers are responsible for keeping track of the values that are
//! written to the MSRs they manage (including saving and restoring them during
//! live migration).

use std::sync::{Arc, Mutex};

Expand Down

0 comments on commit 9ab7192

Please sign in to comment.