Skip to main content

virtio_spec/
balloon.rs

1//! Traditional Memory Balloon Device
2
3use volatile::access::{ReadOnly, ReadWrite};
4use volatile_macro::VolatileFieldAccess;
5
6pub use super::features::balloon::F;
7use crate::le32;
8
9/// Traditional Memory Balloon Device Configuration Layout
10///
11/// Use [`ConfigVolatileFieldAccess`] to work with this struct.
12#[doc(alias = "virtio_balloon_config")]
13#[derive(VolatileFieldAccess)]
14#[repr(C)]
15pub struct Config {
16    #[access(ReadOnly)]
17    num_pages: le32,
18
19    #[access(ReadWrite)]
20    actual: le32,
21
22    #[access(ReadOnly)]
23    free_page_hint_cmd_id: le32,
24
25    #[access(ReadWrite)]
26    poison_val: le32,
27}