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}