page_queues_bindings/
page_queues_bindings.rs1#![expect(non_camel_case_types)]
8#![expect(non_upper_case_globals)]
9#![no_std]
10pub use event_bindings::{AutounsignalEvent, Event};
11use page_bindings::vm_page_t;
12pub use zx_types::{zx_duration_mono_t, zx_instant_mono_t, zx_paddr_t};
13pub type Thread = core::ffi::c_void;
14pub type VmCowPages = *const core::ffi::c_void;
15pub type VmDebugCompressor = core::ffi::c_void;
16pub type VmPageDoublyLinkedList = usize;
17
18#[derive(PartialEq, Eq, Copy, Clone, Debug, Hash)]
19#[repr(C, align(8))]
20pub struct __BindgenOpaqueArray8<T>(pub T);
21impl<T: Copy + Default, const N: usize> Default for __BindgenOpaqueArray8<[T; N]> {
22 fn default() -> Self {
23 Self([<T as Default>::default(); N])
24 }
25}
26#[repr(C)]
27#[derive(Debug, Copy, Clone)]
28pub struct PageQueuesVmoBacklink {
29 pub cow: *mut VmCowPages,
30 pub page: *mut vm_page_t,
31 pub offset: u64,
32}
33#[repr(C)]
34#[derive(Debug)]
35pub struct PageQueues {
36 pub storage_: __BindgenOpaqueArray8<[u8; 592usize]>,
37}
38#[repr(i32)]
39#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
40pub enum PageQueues_AgeReason {
41 Timeout = 0,
42 ActiveRatio = 1,
43 Manual = 2,
44}
45#[repr(C)]
46#[derive(Debug, Copy, Clone)]
47pub struct PageQueues_ReclaimCounts {
48 pub total: usize,
49 pub newest: usize,
50 pub oldest: usize,
51}
52#[repr(C)]
53#[derive(Debug, Copy, Clone)]
54pub struct PageQueues_Counts {
55 pub reclaim: __BindgenOpaqueArray8<[u8; 64usize]>,
56 pub reclaim_isolate: usize,
57 pub pager_backed_dirty: usize,
58 pub anonymous: usize,
59 pub wired: usize,
60 pub anonymous_zero_fork: usize,
61 pub failed_reclaim: usize,
62 pub high_priority: usize,
63}
64#[repr(C)]
65#[derive(Debug, Copy, Clone)]
66pub struct PageQueues_ActiveInactiveCounts {
67 pub active: usize,
68 pub inactive: usize,
69}
70#[repr(i32)]
71#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
72pub enum PageQueues_LruAction {
73 None = 0,
74 EvictOnly = 1,
75 CompressOnly = 2,
76 EvictAndCompress = 3,
77}
78pub const PageQueues_kNumReclaim: usize = 8;
79pub const PageQueues_kNumActiveQueues: usize = 2;
80pub const PageQueues_kActiveInactiveErrorMargin: usize = 512;
81pub const PageQueues_kNumOldestQueues: usize = 2;
82pub const PageQueues_kIsolateQueueDontNeed: usize = 0;
83pub const PageQueues_kIsolateQueueStandard: usize = 1;
84pub const PageQueues_kNumIsolateQueues: usize = 2;
85pub const PageQueues_kDefaultMinMruRotateTime: zx_duration_mono_t = 5000000000;
86pub const PageQueues_kDefaultMaxMruRotateTime: zx_duration_mono_t = 5000000000;
87pub const PageQueues_kDefaultActiveRatioMultiplier: u64 = 0;