Skip to main content

boot_options/
boot_options_rs.rs

1// Copyright 2026 The Fuchsia Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// This file is automatically generated by //zircon/kernel/lib/boot-options:_kernel_bindgen_crate.boot-options-rs.bindgen.
6
7#![expect(non_camel_case_types)]
8#![expect(non_upper_case_globals)]
9#![no_std]
10use stdbind::Optional as stdbind_optional;
11
12pub type AutoOr<T> = stdbind::Optional<T>;
13
14unsafe extern "C" {
15    fn cpp_boot_options_get() -> *const BootOptions;
16}
17
18impl BootOptions {
19    pub fn get() -> &'static Self {
20        // Safety: This pointer is set before the kernel proper boots.
21        unsafe { cpp_boot_options_get().as_ref_unchecked() }
22    }
23}
24
25#[derive(PartialEq, Eq, Copy, Clone, Debug, Hash)]
26#[repr(C)]
27pub struct __BindgenOpaqueArray<T>(pub T);
28impl<T: Copy + Default, const N: usize> Default for __BindgenOpaqueArray<[T; N]> {
29    fn default() -> Self {
30        Self([<T as Default>::default(); N])
31    }
32}
33#[derive(PartialEq, Eq, Copy, Clone, Debug, Hash)]
34#[repr(C, align(8))]
35pub struct __BindgenOpaqueArray8<T>(pub T);
36impl<T: Copy + Default, const N: usize> Default for __BindgenOpaqueArray8<[T; N]> {
37    fn default() -> Self {
38        Self([<T as Default>::default(); N])
39    }
40}
41#[repr(C)]
42#[derive(Debug, Copy, Clone)]
43pub struct std_optional {
44    pub _address: u8,
45}
46pub type std_optional___base = u8;
47pub type std_optional_value_type = u8;
48pub type std_optional___trivially_relocatable = u8;
49#[repr(C)]
50#[derive(Debug, Copy, Clone)]
51pub struct std_optional__CheckOptionalArgsConstructor {
52    pub _address: u8,
53}
54pub type std_optional__CheckOptionalArgsCtor = u8;
55#[repr(C)]
56#[derive(Debug, Copy, Clone)]
57pub struct std_optional__CheckOptionalLikeConstructor {
58    pub _address: u8,
59}
60pub type std_optional__CheckOptionalLikeConstructor___check_constructible_from_opt = u8;
61pub type std_optional__CheckOptionalLikeConstructor___check_assignable_from_opt = u8;
62pub type std_optional__CheckOptionalLikeCtor = u8;
63pub type std_optional__CheckOptionalLikeAssign = u8;
64#[repr(C)]
65#[derive(Debug, Copy, Clone)]
66pub struct std_char_traits {
67    pub _address: u8,
68}
69pub type std_array___trivially_relocatable = u8;
70pub type std_array___self = u8;
71pub type std_array_value_type = u8;
72pub type std_array_reference = u8;
73pub type std_array_const_reference = u8;
74pub type std_array_pointer = u8;
75pub type std_array_const_pointer = u8;
76pub type std_array_iterator = u8;
77pub type std_array_const_iterator = u8;
78pub type std_array_size_type = __BindgenOpaqueArray8<[u8; 8usize]>;
79pub type std_array_difference_type = __BindgenOpaqueArray8<[u8; 8usize]>;
80pub type std_array_reverse_iterator = u8;
81pub type std_array_const_reverse_iterator = u8;
82pub type std_string_view = __BindgenOpaqueArray8<[u8; 16usize]>;
83#[repr(C)]
84#[derive(Debug, Copy, Clone)]
85pub struct std_basic_string_view {
86    pub _address: u8,
87}
88pub type std_basic_string_view_traits_type = u8;
89pub type std_basic_string_view_value_type = u8;
90pub type std_basic_string_view_pointer = u8;
91pub type std_basic_string_view_const_pointer = u8;
92pub type std_basic_string_view_reference = u8;
93pub type std_basic_string_view_const_reference = u8;
94pub type std_basic_string_view_const_iterator = u8;
95pub type std_basic_string_view_iterator = u8;
96pub type std_basic_string_view_const_reverse_iterator = u8;
97pub type std_basic_string_view_reverse_iterator = u8;
98pub type std_basic_string_view_size_type = __BindgenOpaqueArray8<[u8; 8usize]>;
99pub type std_basic_string_view_difference_type = __BindgenOpaqueArray8<[u8; 8usize]>;
100#[repr(C)]
101#[derive(Debug, Copy, Clone)]
102pub struct std_basic_string_view___assume_valid {
103    pub _address: u8,
104}
105#[repr(C)]
106#[derive(Debug, Copy, Clone)]
107pub struct std_variant {
108    pub _address: u8,
109}
110pub type std_variant___first_type = u8;
111pub type std_variant___trivially_relocatable = u8;
112impl stdbind_optional_Tag {
113    pub const Some: stdbind_optional_Tag = stdbind_optional_Tag::None;
114}
115#[repr(i32)]
116#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
117pub enum stdbind_optional_Tag {
118    None = 0,
119}
120#[repr(C)]
121#[repr(align(1))]
122pub union stdbind_optional__bindgen_ty_1<T> {
123    pub _phantom_0: ::core::marker::PhantomData<::core::cell::UnsafeCell<T>>,
124    pub empty_: ::core::mem::ManuallyDrop<stdbind_optional__bindgen_ty_1__bindgen_ty_1>,
125    pub value_: ::core::mem::ManuallyDrop<T>,
126}
127#[repr(C)]
128#[derive(Debug, Copy, Clone)]
129pub struct stdbind_optional__bindgen_ty_1__bindgen_ty_1 {
130    pub _address: u8,
131}
132#[repr(C)]
133#[derive(Debug, Copy, Clone)]
134pub struct FILE {
135    pub write_: FILE_Callback,
136    pub ptr_: *mut ::core::ffi::c_void,
137}
138pub type FILE_Callback = ::core::option::Option<
139    unsafe extern "C" fn(
140        arg1: *mut ::core::ffi::c_void,
141        arg2: *const ::core::ffi::c_char,
142        arg3: usize,
143    ) -> ::core::ffi::c_int,
144>;
145#[allow(clippy::unnecessary_operation, clippy::identity_op)]
146const _: () = {
147    ["Size of FILE"][::core::mem::size_of::<FILE>() - 16usize];
148    ["Alignment of FILE"][::core::mem::align_of::<FILE>() - 8usize];
149    ["Offset of field: FILE::write_"][::core::mem::offset_of!(FILE, write_) - 0usize];
150    ["Offset of field: FILE::ptr_"][::core::mem::offset_of!(FILE, ptr_) - 8usize];
151};
152#[repr(C)]
153#[derive(Debug, Copy, Clone)]
154pub struct zbi_dcfg_simple_t {
155    pub mmio_phys: u64,
156    pub irq: u32,
157    pub flags: u32,
158}
159#[allow(clippy::unnecessary_operation, clippy::identity_op)]
160const _: () = {
161    ["Size of zbi_dcfg_simple_t"][::core::mem::size_of::<zbi_dcfg_simple_t>() - 16usize];
162    ["Alignment of zbi_dcfg_simple_t"][::core::mem::align_of::<zbi_dcfg_simple_t>() - 8usize];
163    ["Offset of field: zbi_dcfg_simple_t::mmio_phys"]
164        [::core::mem::offset_of!(zbi_dcfg_simple_t, mmio_phys) - 0usize];
165    ["Offset of field: zbi_dcfg_simple_t::irq"]
166        [::core::mem::offset_of!(zbi_dcfg_simple_t, irq) - 8usize];
167    ["Offset of field: zbi_dcfg_simple_t::flags"]
168        [::core::mem::offset_of!(zbi_dcfg_simple_t, flags) - 12usize];
169};
170#[repr(C)]
171#[derive(Debug, Copy, Clone)]
172pub struct zbi_dcfg_simple_pio_t {
173    pub base: u16,
174    pub reserved: u16,
175    pub irq: u32,
176}
177#[allow(clippy::unnecessary_operation, clippy::identity_op)]
178const _: () = {
179    ["Size of zbi_dcfg_simple_pio_t"][::core::mem::size_of::<zbi_dcfg_simple_pio_t>() - 8usize];
180    ["Alignment of zbi_dcfg_simple_pio_t"]
181        [::core::mem::align_of::<zbi_dcfg_simple_pio_t>() - 4usize];
182    ["Offset of field: zbi_dcfg_simple_pio_t::base"]
183        [::core::mem::offset_of!(zbi_dcfg_simple_pio_t, base) - 0usize];
184    ["Offset of field: zbi_dcfg_simple_pio_t::reserved"]
185        [::core::mem::offset_of!(zbi_dcfg_simple_pio_t, reserved) - 2usize];
186    ["Offset of field: zbi_dcfg_simple_pio_t::irq"]
187        [::core::mem::offset_of!(zbi_dcfg_simple_pio_t, irq) - 4usize];
188};
189#[repr(i32)]
190#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
191pub enum uart_IoRegisterType {
192    None = 0,
193    Mmio8 = 1,
194    Mmio32 = 2,
195    Pio = 3,
196}
197#[repr(C)]
198#[repr(align(8))]
199#[derive(Debug, Copy, Clone)]
200pub struct uart_dw8250_Driver {
201    pub _bindgen_opaque_blob: __BindgenOpaqueArray8<[u8; 24usize]>,
202}
203pub type uart_dw8250_Driver_Base = __BindgenOpaqueArray8<[u8; 16usize]>;
204#[allow(clippy::unnecessary_operation, clippy::identity_op)]
205const _: () = {
206    ["Size of uart_dw8250_Driver"][::core::mem::size_of::<uart_dw8250_Driver>() - 24usize];
207    ["Alignment of uart_dw8250_Driver"][::core::mem::align_of::<uart_dw8250_Driver>() - 8usize];
208};
209unsafe extern "C" {
210    #[link_name = "\u{1}_ZN4uart6dw82506Driver11kConfigNameE"]
211    pub static uart_dw8250_Driver_kConfigName: std_string_view;
212}
213unsafe extern "C" {
214    #[link_name = "\u{1}_ZN4uart6dw82506Driver19kDevicetreeBindingsE"]
215    pub static uart_dw8250_Driver_kDevicetreeBindings: __BindgenOpaqueArray8<[u8; 32usize]>;
216}
217pub type uart_ns8250_DriverImpl_Base = u8;
218pub type uart_ns8250_DriverImpl_FifoControlRegister = u8;
219pub type uart_ns8250_DriverImpl_InterruptEnableRegister = u8;
220#[repr(C)]
221#[repr(align(1))]
222#[derive(Debug, Copy, Clone)]
223pub struct uart_null_Driver {
224    pub _bindgen_opaque_blob: u8,
225}
226pub type uart_null_Driver_config_type = __BindgenOpaqueArray8<[u8; 8usize]>;
227#[allow(clippy::unnecessary_operation, clippy::identity_op)]
228const _: () = {
229    ["Size of uart_null_Driver"][::core::mem::size_of::<uart_null_Driver>() - 1usize];
230    ["Alignment of uart_null_Driver"][::core::mem::align_of::<uart_null_Driver>() - 1usize];
231};
232unsafe extern "C" {
233    #[link_name = "\u{1}_ZN4uart4null6Driver19kDevicetreeBindingsE"]
234    pub static uart_null_Driver_kDevicetreeBindings: __BindgenOpaqueArray8<[u8; 16usize]>;
235}
236unsafe extern "C" {
237    #[link_name = "\u{1}_ZN4uart4null6Driver11kConfigNameE"]
238    pub static uart_null_Driver_kConfigName: std_string_view;
239}
240unsafe extern "C" {
241    #[link_name = "\u{1}_ZN4uart4null6Driver7kIoTypeE"]
242    pub static uart_null_Driver_kIoType: uart_IoRegisterType;
243}
244pub const uart_null_Driver_kType: u32 = 0;
245pub const uart_null_Driver_kExtra: u32 = 0;
246#[repr(C)]
247#[repr(align(1))]
248#[derive(Debug, Copy, Clone)]
249pub struct uart_internal_DummyDriver {
250    pub _bindgen_opaque_blob: u8,
251}
252pub type uart_internal_DummyDriver_config_type = __BindgenOpaqueArray8<[u8; 8usize]>;
253#[allow(clippy::unnecessary_operation, clippy::identity_op)]
254const _: () = {
255    ["Size of uart_internal_DummyDriver"]
256        [::core::mem::size_of::<uart_internal_DummyDriver>() - 1usize];
257    ["Alignment of uart_internal_DummyDriver"]
258        [::core::mem::align_of::<uart_internal_DummyDriver>() - 1usize];
259};
260#[repr(C)]
261#[derive(Debug, Copy, Clone)]
262pub struct uart_all_Config {
263    pub _address: u8,
264}
265#[repr(C)]
266#[derive(Debug, Copy, Clone)]
267pub struct uart_all_Config_Variant {
268    pub _address: u8,
269}
270#[repr(u8)]
271#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
272pub enum IntelHwpPolicy {
273    BiosSpecified = 0,
274    Performance = 1,
275    Balanced = 2,
276    PowerSave = 3,
277    StablePerformance = 4,
278}
279pub type SmallString = [u8; 160];
280#[repr(C)]
281#[derive(Debug, Copy, Clone)]
282pub struct RedactedHex {
283    pub hex: SmallString,
284    pub len: usize,
285}
286#[allow(clippy::unnecessary_operation, clippy::identity_op)]
287const _: () = {
288    ["Size of RedactedHex"][::core::mem::size_of::<RedactedHex>() - 168usize];
289    ["Alignment of RedactedHex"][::core::mem::align_of::<RedactedHex>() - 8usize];
290    ["Offset of field: RedactedHex::hex"][::core::mem::offset_of!(RedactedHex, hex) - 0usize];
291    ["Offset of field: RedactedHex::len"][::core::mem::offset_of!(RedactedHex, len) - 160usize];
292};
293pub type AutoOr_Base<T> = stdbind_optional<T>;
294#[repr(u8)]
295#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
296pub enum OomBehavior {
297    Reboot = 0,
298    JobKill = 1,
299}
300#[repr(u8)]
301#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
302pub enum EntropyTestSource {
303    HwRng = 0,
304    JitterEntropy = 1,
305}
306#[repr(u8)]
307#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
308pub enum PageTableEvictionPolicy {
309    OnRequest = 0,
310    Never = 1,
311    Always = 2,
312}
313#[repr(u8)]
314#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
315pub enum SerialDebugSyscalls {
316    Disabled = 0,
317    Enabled = 1,
318    OutputOnly = 2,
319}
320#[repr(u8)]
321#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
322pub enum RootJobBehavior {
323    Halt = 0,
324    Reboot = 1,
325    Bootloader = 2,
326    Recovery = 3,
327    Shutdown = 4,
328}
329#[repr(u8)]
330#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
331pub enum WallclockType {
332    AutoDetect = 0,
333    Tsc = 1,
334    Pit = 2,
335    Hpet = 3,
336}
337#[repr(u8)]
338#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
339pub enum ScannerLruAction {
340    None = 0,
341    EvictOnly = 1,
342    CompressOnly = 2,
343    EvictAndCompress = 3,
344}
345#[repr(u8)]
346#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
347pub enum CompressionStrategy {
348    None = 0,
349    Lz4 = 1,
350}
351#[repr(u8)]
352#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
353pub enum CompressionStorageStrategy {
354    None = 0,
355    Slot = 1,
356}
357#[repr(C)]
358pub struct RamReservation {
359    pub paddr: stdbind_optional<u64>,
360    pub size: u64,
361}
362#[allow(clippy::unnecessary_operation, clippy::identity_op)]
363const _: () = {
364    ["Size of RamReservation"][::core::mem::size_of::<RamReservation>() - 24usize];
365    ["Alignment of RamReservation"][::core::mem::align_of::<RamReservation>() - 8usize];
366    ["Offset of field: RamReservation::paddr"]
367        [::core::mem::offset_of!(RamReservation, paddr) - 0usize];
368    ["Offset of field: RamReservation::size"]
369        [::core::mem::offset_of!(RamReservation, size) - 16usize];
370};
371#[repr(u8)]
372#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
373pub enum CheckFailAction {
374    Oops = 0,
375    Panic = 1,
376}
377#[repr(u8)]
378#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
379pub enum CheckerEnable {
380    True = 0,
381    False = 1,
382    Auto = 2,
383}
384#[repr(i32)]
385#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
386pub enum TestEnum {
387    Default = 0,
388    Value1 = 1,
389    Value2 = 2,
390}
391#[repr(C)]
392#[derive(Debug, Copy, Clone)]
393pub struct TestStruct {
394    pub present: bool,
395}
396#[allow(clippy::unnecessary_operation, clippy::identity_op)]
397const _: () = {
398    ["Size of TestStruct"][::core::mem::size_of::<TestStruct>() - 1usize];
399    ["Alignment of TestStruct"][::core::mem::align_of::<TestStruct>() - 1usize];
400    ["Offset of field: TestStruct::present"][::core::mem::offset_of!(TestStruct, present) - 0usize];
401};
402#[repr(C)]
403pub struct BootOptions {
404    pub aslr_disabled: bool,
405    pub aslr_entropy_bits: u8,
406    pub cprng_reseed_require_hw_rng: bool,
407    pub cprng_reseed_require_jitterentropy: bool,
408    pub cprng_seed_require_hw_rng: bool,
409    pub cprng_disable_jitterentropy: bool,
410    pub cprng_disable_hw_rng: bool,
411    pub cprng_seed_require_jitterentropy: bool,
412    pub cprng_seed_require_cmdline: bool,
413    pub entropy_mixin: RedactedHex,
414    pub jitterentropy_bs: u32,
415    pub jitterentropy_bc: u32,
416    pub jitterentropy_ml: u32,
417    pub jitterentropy_ll: u32,
418    pub jitterentropy_raw: bool,
419    pub jitterentropy_entropy_per_1000_bytes: u32,
420    pub lockup_detector_critical_section_threshold_ms: u64,
421    pub lockup_detector_critical_section_fatal_threshold_ms: u64,
422    pub lockup_detector_heartbeat_period_ms: u64,
423    pub lockup_detector_heartbeat_age_threshold_ms: u64,
424    pub lockup_detector_age_fatal_threshold_ms: u64,
425    pub lockup_detector_diagnostic_query_timeout_ms: u64,
426    pub oom_behavior: OomBehavior,
427    pub oom_timeout_ms: u32,
428    pub mexec_force_high_ramdisk: bool,
429    pub oom_enabled: bool,
430    pub oom_out_of_memory_threshold_mb: u64,
431    pub oom_critical_threshold_mb: u64,
432    pub oom_warning_threshold_mb: u64,
433    pub oom_debounce_mb: u64,
434    pub oom_evict_at_warning: bool,
435    pub oom_evict_continuous: bool,
436    pub oom_eviction_delay_ms: u64,
437    pub oom_evict_with_min_target: bool,
438    pub oom_eviction_delta_at_oom_mb: u64,
439    pub oom_hysteresis_seconds: u64,
440    pub oom_imminent_oom_delta_mb: u64,
441    pub oom_trigger_on_alloc_failure: bool,
442    pub phys_next: SmallString,
443    pub phys_verbose: bool,
444    pub phys_backtrace_max: u32,
445    pub phys_print_stack_max: u32,
446    pub ppb_borrow_on_mru: bool,
447    pub ppb_loan: bool,
448    pub ppb_replace_on_unloan: bool,
449    pub render_dlog_to_crashlog: bool,
450    pub serial: __BindgenOpaqueArray8<[u8; 24usize]>,
451    pub always_use_next_vdso: bool,
452    pub vdso_ticks_get_force_syscall: bool,
453    pub vdso_clock_get_force_syscall: bool,
454    pub userpager_overtime_wait_seconds: u64,
455    pub userpager_overtime_timeout_seconds: u64,
456    pub userpager_overtime_printout_limit: u32,
457    pub enable_virtual_heap: bool,
458    pub heap_max_size_mb: u64,
459    pub heap_alloc_fill_threshold: u64,
460    pub bufferchain_reserve_pages: u64,
461    pub bypass_debuglog: bool,
462    pub debug_uart_poll: bool,
463    pub enable_debugging_syscalls: bool,
464    pub enable_serial_syscalls: SerialDebugSyscalls,
465    pub entropy_test_src: EntropyTestSource,
466    pub entropy_test_len: u64,
467    pub force_watchdog_disabled: bool,
468    pub halt_on_panic: bool,
469    pub ktrace_bufsize: u32,
470    pub ktrace_grpmask: u32,
471    pub memory_limit_dbg: bool,
472    pub memory_limit_mb: u64,
473    pub page_scanner_enable_eviction: bool,
474    pub page_scanner_page_table_eviction_policy: PageTableEvictionPolicy,
475    pub page_scanner_page_table_eviction_period_ms: u32,
476    pub page_scanner_min_aging_interval_ms: u32,
477    pub page_scanner_max_aging_interval_ms: u32,
478    pub page_scanner_accessed_scan_interval_ms: u32,
479    pub page_scanner_active_ratio_multiplier: u32,
480    pub page_scanner_start_at_boot: bool,
481    pub page_scanner_zero_page_scans_per_second: u64,
482    pub lru_action: ScannerLruAction,
483    pub random_debug_compress: bool,
484    pub compression_strategy: CompressionStrategy,
485    pub compression_storage_strategy: CompressionStorageStrategy,
486    pub compression_threshold: u32,
487    pub compression_lz4_acceleration: u32,
488    pub compression_at_memory_pressure: bool,
489    pub compression_reclaim_anonymous: bool,
490    pub compression_reclaim_zero_forks: bool,
491    pub pmm_checker_action: CheckFailAction,
492    pub pmm_checker_enabled: CheckerEnable,
493    pub pmm_checker_fill_size: AutoOr<u64>,
494    pub pmm_alloc_random_should_wait: bool,
495    pub stack_canary_percent_free: u64,
496    pub port_observer_reserve_pages: u64,
497    pub port_packet_reserve_pages: u64,
498    pub root_job_behavior: RootJobBehavior,
499    pub root_job_notice: SmallString,
500    pub shell: bool,
501    pub shell_script: SmallString,
502    pub smp_ht_enabled: bool,
503    pub test_ram_reserve: stdbind_optional<RamReservation>,
504    pub max_port_observers: u64,
505    pub select: SmallString,
506    pub userboot: SmallString,
507    pub power_boot_boost: bool,
508    pub power_rppm: bool,
509    pub scheduler_prefer_little_cpus: bool,
510    pub enable_new_wakeup_accounting: bool,
511    pub ubsan_action: CheckFailAction,
512    pub debug_boot_spin: bool,
513    pub allow_debug_uart_suspend: bool,
514    pub experimental_expand_memory_stall: bool,
515    pub x86_disable_spec_mitigations: bool,
516    pub x86_hwp: bool,
517    pub x86_hwp_policy: IntelHwpPolicy,
518    pub x86_md_clear_on_user_return: bool,
519    pub x86_spec_store_bypass_disable: bool,
520    pub x86_turbo: bool,
521    pub x86_enable_pcid: bool,
522    pub x86_smp_max_cpus: u32,
523    pub x86_wallclock: WallclockType,
524    pub test_uint32: u32,
525    pub test_uint64: u64,
526    pub test_bool: bool,
527    pub test_smallstring: SmallString,
528    pub test_enum: TestEnum,
529    pub test_struct: TestStruct,
530    pub test_redacted_hex: RedactedHex,
531    pub test_auto_or_uint64: AutoOr<u64>,
532    pub smp_max_cpus: u32,
533}
534#[allow(clippy::unnecessary_operation, clippy::identity_op)]
535const _: () = {
536    ["Size of BootOptions"][::core::mem::size_of::<BootOptions>() - 1856usize];
537    ["Alignment of BootOptions"][::core::mem::align_of::<BootOptions>() - 8usize];
538    ["Offset of field: BootOptions::aslr_disabled"]
539        [::core::mem::offset_of!(BootOptions, aslr_disabled) - 0usize];
540    ["Offset of field: BootOptions::aslr_entropy_bits"]
541        [::core::mem::offset_of!(BootOptions, aslr_entropy_bits) - 1usize];
542    ["Offset of field: BootOptions::cprng_reseed_require_hw_rng"]
543        [::core::mem::offset_of!(BootOptions, cprng_reseed_require_hw_rng) - 2usize];
544    ["Offset of field: BootOptions::cprng_reseed_require_jitterentropy"]
545        [::core::mem::offset_of!(BootOptions, cprng_reseed_require_jitterentropy) - 3usize];
546    ["Offset of field: BootOptions::cprng_seed_require_hw_rng"]
547        [::core::mem::offset_of!(BootOptions, cprng_seed_require_hw_rng) - 4usize];
548    ["Offset of field: BootOptions::cprng_disable_jitterentropy"]
549        [::core::mem::offset_of!(BootOptions, cprng_disable_jitterentropy) - 5usize];
550    ["Offset of field: BootOptions::cprng_disable_hw_rng"]
551        [::core::mem::offset_of!(BootOptions, cprng_disable_hw_rng) - 6usize];
552    ["Offset of field: BootOptions::cprng_seed_require_jitterentropy"]
553        [::core::mem::offset_of!(BootOptions, cprng_seed_require_jitterentropy) - 7usize];
554    ["Offset of field: BootOptions::cprng_seed_require_cmdline"]
555        [::core::mem::offset_of!(BootOptions, cprng_seed_require_cmdline) - 8usize];
556    ["Offset of field: BootOptions::entropy_mixin"]
557        [::core::mem::offset_of!(BootOptions, entropy_mixin) - 16usize];
558    ["Offset of field: BootOptions::jitterentropy_bs"]
559        [::core::mem::offset_of!(BootOptions, jitterentropy_bs) - 184usize];
560    ["Offset of field: BootOptions::jitterentropy_bc"]
561        [::core::mem::offset_of!(BootOptions, jitterentropy_bc) - 188usize];
562    ["Offset of field: BootOptions::jitterentropy_ml"]
563        [::core::mem::offset_of!(BootOptions, jitterentropy_ml) - 192usize];
564    ["Offset of field: BootOptions::jitterentropy_ll"]
565        [::core::mem::offset_of!(BootOptions, jitterentropy_ll) - 196usize];
566    ["Offset of field: BootOptions::jitterentropy_raw"]
567        [::core::mem::offset_of!(BootOptions, jitterentropy_raw) - 200usize];
568    ["Offset of field: BootOptions::jitterentropy_entropy_per_1000_bytes"]
569        [::core::mem::offset_of!(BootOptions, jitterentropy_entropy_per_1000_bytes) - 204usize];
570    ["Offset of field: BootOptions::lockup_detector_critical_section_threshold_ms"][::core::mem::offset_of!(
571        BootOptions,
572        lockup_detector_critical_section_threshold_ms
573    ) - 208usize];
574    ["Offset of field: BootOptions::lockup_detector_critical_section_fatal_threshold_ms"][::core::mem::offset_of!(
575        BootOptions,
576        lockup_detector_critical_section_fatal_threshold_ms
577    )
578        - 216usize];
579    ["Offset of field: BootOptions::lockup_detector_heartbeat_period_ms"]
580        [::core::mem::offset_of!(BootOptions, lockup_detector_heartbeat_period_ms) - 224usize];
581    ["Offset of field: BootOptions::lockup_detector_heartbeat_age_threshold_ms"][::core::mem::offset_of!(
582        BootOptions,
583        lockup_detector_heartbeat_age_threshold_ms
584    ) - 232usize];
585    ["Offset of field: BootOptions::lockup_detector_age_fatal_threshold_ms"]
586        [::core::mem::offset_of!(BootOptions, lockup_detector_age_fatal_threshold_ms) - 240usize];
587    ["Offset of field: BootOptions::lockup_detector_diagnostic_query_timeout_ms"][::core::mem::offset_of!(
588        BootOptions,
589        lockup_detector_diagnostic_query_timeout_ms
590    ) - 248usize];
591    ["Offset of field: BootOptions::oom_behavior"]
592        [::core::mem::offset_of!(BootOptions, oom_behavior) - 256usize];
593    ["Offset of field: BootOptions::oom_timeout_ms"]
594        [::core::mem::offset_of!(BootOptions, oom_timeout_ms) - 260usize];
595    ["Offset of field: BootOptions::mexec_force_high_ramdisk"]
596        [::core::mem::offset_of!(BootOptions, mexec_force_high_ramdisk) - 264usize];
597    ["Offset of field: BootOptions::oom_enabled"]
598        [::core::mem::offset_of!(BootOptions, oom_enabled) - 265usize];
599    ["Offset of field: BootOptions::oom_out_of_memory_threshold_mb"]
600        [::core::mem::offset_of!(BootOptions, oom_out_of_memory_threshold_mb) - 272usize];
601    ["Offset of field: BootOptions::oom_critical_threshold_mb"]
602        [::core::mem::offset_of!(BootOptions, oom_critical_threshold_mb) - 280usize];
603    ["Offset of field: BootOptions::oom_warning_threshold_mb"]
604        [::core::mem::offset_of!(BootOptions, oom_warning_threshold_mb) - 288usize];
605    ["Offset of field: BootOptions::oom_debounce_mb"]
606        [::core::mem::offset_of!(BootOptions, oom_debounce_mb) - 296usize];
607    ["Offset of field: BootOptions::oom_evict_at_warning"]
608        [::core::mem::offset_of!(BootOptions, oom_evict_at_warning) - 304usize];
609    ["Offset of field: BootOptions::oom_evict_continuous"]
610        [::core::mem::offset_of!(BootOptions, oom_evict_continuous) - 305usize];
611    ["Offset of field: BootOptions::oom_eviction_delay_ms"]
612        [::core::mem::offset_of!(BootOptions, oom_eviction_delay_ms) - 312usize];
613    ["Offset of field: BootOptions::oom_evict_with_min_target"]
614        [::core::mem::offset_of!(BootOptions, oom_evict_with_min_target) - 320usize];
615    ["Offset of field: BootOptions::oom_eviction_delta_at_oom_mb"]
616        [::core::mem::offset_of!(BootOptions, oom_eviction_delta_at_oom_mb) - 328usize];
617    ["Offset of field: BootOptions::oom_hysteresis_seconds"]
618        [::core::mem::offset_of!(BootOptions, oom_hysteresis_seconds) - 336usize];
619    ["Offset of field: BootOptions::oom_imminent_oom_delta_mb"]
620        [::core::mem::offset_of!(BootOptions, oom_imminent_oom_delta_mb) - 344usize];
621    ["Offset of field: BootOptions::oom_trigger_on_alloc_failure"]
622        [::core::mem::offset_of!(BootOptions, oom_trigger_on_alloc_failure) - 352usize];
623    ["Offset of field: BootOptions::phys_next"]
624        [::core::mem::offset_of!(BootOptions, phys_next) - 353usize];
625    ["Offset of field: BootOptions::phys_verbose"]
626        [::core::mem::offset_of!(BootOptions, phys_verbose) - 513usize];
627    ["Offset of field: BootOptions::phys_backtrace_max"]
628        [::core::mem::offset_of!(BootOptions, phys_backtrace_max) - 516usize];
629    ["Offset of field: BootOptions::phys_print_stack_max"]
630        [::core::mem::offset_of!(BootOptions, phys_print_stack_max) - 520usize];
631    ["Offset of field: BootOptions::ppb_borrow_on_mru"]
632        [::core::mem::offset_of!(BootOptions, ppb_borrow_on_mru) - 524usize];
633    ["Offset of field: BootOptions::ppb_loan"]
634        [::core::mem::offset_of!(BootOptions, ppb_loan) - 525usize];
635    ["Offset of field: BootOptions::ppb_replace_on_unloan"]
636        [::core::mem::offset_of!(BootOptions, ppb_replace_on_unloan) - 526usize];
637    ["Offset of field: BootOptions::render_dlog_to_crashlog"]
638        [::core::mem::offset_of!(BootOptions, render_dlog_to_crashlog) - 527usize];
639    ["Offset of field: BootOptions::serial"]
640        [::core::mem::offset_of!(BootOptions, serial) - 528usize];
641    ["Offset of field: BootOptions::always_use_next_vdso"]
642        [::core::mem::offset_of!(BootOptions, always_use_next_vdso) - 552usize];
643    ["Offset of field: BootOptions::vdso_ticks_get_force_syscall"]
644        [::core::mem::offset_of!(BootOptions, vdso_ticks_get_force_syscall) - 553usize];
645    ["Offset of field: BootOptions::vdso_clock_get_force_syscall"]
646        [::core::mem::offset_of!(BootOptions, vdso_clock_get_force_syscall) - 554usize];
647    ["Offset of field: BootOptions::userpager_overtime_wait_seconds"]
648        [::core::mem::offset_of!(BootOptions, userpager_overtime_wait_seconds) - 560usize];
649    ["Offset of field: BootOptions::userpager_overtime_timeout_seconds"]
650        [::core::mem::offset_of!(BootOptions, userpager_overtime_timeout_seconds) - 568usize];
651    ["Offset of field: BootOptions::userpager_overtime_printout_limit"]
652        [::core::mem::offset_of!(BootOptions, userpager_overtime_printout_limit) - 576usize];
653    ["Offset of field: BootOptions::enable_virtual_heap"]
654        [::core::mem::offset_of!(BootOptions, enable_virtual_heap) - 580usize];
655    ["Offset of field: BootOptions::heap_max_size_mb"]
656        [::core::mem::offset_of!(BootOptions, heap_max_size_mb) - 584usize];
657    ["Offset of field: BootOptions::heap_alloc_fill_threshold"]
658        [::core::mem::offset_of!(BootOptions, heap_alloc_fill_threshold) - 592usize];
659    ["Offset of field: BootOptions::bufferchain_reserve_pages"]
660        [::core::mem::offset_of!(BootOptions, bufferchain_reserve_pages) - 600usize];
661    ["Offset of field: BootOptions::bypass_debuglog"]
662        [::core::mem::offset_of!(BootOptions, bypass_debuglog) - 608usize];
663    ["Offset of field: BootOptions::debug_uart_poll"]
664        [::core::mem::offset_of!(BootOptions, debug_uart_poll) - 609usize];
665    ["Offset of field: BootOptions::enable_debugging_syscalls"]
666        [::core::mem::offset_of!(BootOptions, enable_debugging_syscalls) - 610usize];
667    ["Offset of field: BootOptions::enable_serial_syscalls"]
668        [::core::mem::offset_of!(BootOptions, enable_serial_syscalls) - 611usize];
669    ["Offset of field: BootOptions::entropy_test_src"]
670        [::core::mem::offset_of!(BootOptions, entropy_test_src) - 612usize];
671    ["Offset of field: BootOptions::entropy_test_len"]
672        [::core::mem::offset_of!(BootOptions, entropy_test_len) - 616usize];
673    ["Offset of field: BootOptions::force_watchdog_disabled"]
674        [::core::mem::offset_of!(BootOptions, force_watchdog_disabled) - 624usize];
675    ["Offset of field: BootOptions::halt_on_panic"]
676        [::core::mem::offset_of!(BootOptions, halt_on_panic) - 625usize];
677    ["Offset of field: BootOptions::ktrace_bufsize"]
678        [::core::mem::offset_of!(BootOptions, ktrace_bufsize) - 628usize];
679    ["Offset of field: BootOptions::ktrace_grpmask"]
680        [::core::mem::offset_of!(BootOptions, ktrace_grpmask) - 632usize];
681    ["Offset of field: BootOptions::memory_limit_dbg"]
682        [::core::mem::offset_of!(BootOptions, memory_limit_dbg) - 636usize];
683    ["Offset of field: BootOptions::memory_limit_mb"]
684        [::core::mem::offset_of!(BootOptions, memory_limit_mb) - 640usize];
685    ["Offset of field: BootOptions::page_scanner_enable_eviction"]
686        [::core::mem::offset_of!(BootOptions, page_scanner_enable_eviction) - 648usize];
687    ["Offset of field: BootOptions::page_scanner_page_table_eviction_policy"]
688        [::core::mem::offset_of!(BootOptions, page_scanner_page_table_eviction_policy) - 649usize];
689    ["Offset of field: BootOptions::page_scanner_page_table_eviction_period_ms"][::core::mem::offset_of!(
690        BootOptions,
691        page_scanner_page_table_eviction_period_ms
692    ) - 652usize];
693    ["Offset of field: BootOptions::page_scanner_min_aging_interval_ms"]
694        [::core::mem::offset_of!(BootOptions, page_scanner_min_aging_interval_ms) - 656usize];
695    ["Offset of field: BootOptions::page_scanner_max_aging_interval_ms"]
696        [::core::mem::offset_of!(BootOptions, page_scanner_max_aging_interval_ms) - 660usize];
697    ["Offset of field: BootOptions::page_scanner_accessed_scan_interval_ms"]
698        [::core::mem::offset_of!(BootOptions, page_scanner_accessed_scan_interval_ms) - 664usize];
699    ["Offset of field: BootOptions::page_scanner_active_ratio_multiplier"]
700        [::core::mem::offset_of!(BootOptions, page_scanner_active_ratio_multiplier) - 668usize];
701    ["Offset of field: BootOptions::page_scanner_start_at_boot"]
702        [::core::mem::offset_of!(BootOptions, page_scanner_start_at_boot) - 672usize];
703    ["Offset of field: BootOptions::page_scanner_zero_page_scans_per_second"]
704        [::core::mem::offset_of!(BootOptions, page_scanner_zero_page_scans_per_second) - 680usize];
705    ["Offset of field: BootOptions::lru_action"]
706        [::core::mem::offset_of!(BootOptions, lru_action) - 688usize];
707    ["Offset of field: BootOptions::random_debug_compress"]
708        [::core::mem::offset_of!(BootOptions, random_debug_compress) - 689usize];
709    ["Offset of field: BootOptions::compression_strategy"]
710        [::core::mem::offset_of!(BootOptions, compression_strategy) - 690usize];
711    ["Offset of field: BootOptions::compression_storage_strategy"]
712        [::core::mem::offset_of!(BootOptions, compression_storage_strategy) - 691usize];
713    ["Offset of field: BootOptions::compression_threshold"]
714        [::core::mem::offset_of!(BootOptions, compression_threshold) - 692usize];
715    ["Offset of field: BootOptions::compression_lz4_acceleration"]
716        [::core::mem::offset_of!(BootOptions, compression_lz4_acceleration) - 696usize];
717    ["Offset of field: BootOptions::compression_at_memory_pressure"]
718        [::core::mem::offset_of!(BootOptions, compression_at_memory_pressure) - 700usize];
719    ["Offset of field: BootOptions::compression_reclaim_anonymous"]
720        [::core::mem::offset_of!(BootOptions, compression_reclaim_anonymous) - 701usize];
721    ["Offset of field: BootOptions::compression_reclaim_zero_forks"]
722        [::core::mem::offset_of!(BootOptions, compression_reclaim_zero_forks) - 702usize];
723    ["Offset of field: BootOptions::pmm_checker_action"]
724        [::core::mem::offset_of!(BootOptions, pmm_checker_action) - 703usize];
725    ["Offset of field: BootOptions::pmm_checker_enabled"]
726        [::core::mem::offset_of!(BootOptions, pmm_checker_enabled) - 704usize];
727    ["Offset of field: BootOptions::pmm_checker_fill_size"]
728        [::core::mem::offset_of!(BootOptions, pmm_checker_fill_size) - 712usize];
729    ["Offset of field: BootOptions::pmm_alloc_random_should_wait"]
730        [::core::mem::offset_of!(BootOptions, pmm_alloc_random_should_wait) - 728usize];
731    ["Offset of field: BootOptions::stack_canary_percent_free"]
732        [::core::mem::offset_of!(BootOptions, stack_canary_percent_free) - 736usize];
733    ["Offset of field: BootOptions::port_observer_reserve_pages"]
734        [::core::mem::offset_of!(BootOptions, port_observer_reserve_pages) - 744usize];
735    ["Offset of field: BootOptions::port_packet_reserve_pages"]
736        [::core::mem::offset_of!(BootOptions, port_packet_reserve_pages) - 752usize];
737    ["Offset of field: BootOptions::root_job_behavior"]
738        [::core::mem::offset_of!(BootOptions, root_job_behavior) - 760usize];
739    ["Offset of field: BootOptions::root_job_notice"]
740        [::core::mem::offset_of!(BootOptions, root_job_notice) - 761usize];
741    ["Offset of field: BootOptions::shell"][::core::mem::offset_of!(BootOptions, shell) - 921usize];
742    ["Offset of field: BootOptions::shell_script"]
743        [::core::mem::offset_of!(BootOptions, shell_script) - 922usize];
744    ["Offset of field: BootOptions::smp_ht_enabled"]
745        [::core::mem::offset_of!(BootOptions, smp_ht_enabled) - 1082usize];
746    ["Offset of field: BootOptions::test_ram_reserve"]
747        [::core::mem::offset_of!(BootOptions, test_ram_reserve) - 1088usize];
748    ["Offset of field: BootOptions::max_port_observers"]
749        [::core::mem::offset_of!(BootOptions, max_port_observers) - 1120usize];
750    ["Offset of field: BootOptions::select"]
751        [::core::mem::offset_of!(BootOptions, select) - 1128usize];
752    ["Offset of field: BootOptions::userboot"]
753        [::core::mem::offset_of!(BootOptions, userboot) - 1288usize];
754    ["Offset of field: BootOptions::power_boot_boost"]
755        [::core::mem::offset_of!(BootOptions, power_boot_boost) - 1448usize];
756    ["Offset of field: BootOptions::power_rppm"]
757        [::core::mem::offset_of!(BootOptions, power_rppm) - 1449usize];
758    ["Offset of field: BootOptions::scheduler_prefer_little_cpus"]
759        [::core::mem::offset_of!(BootOptions, scheduler_prefer_little_cpus) - 1450usize];
760    ["Offset of field: BootOptions::enable_new_wakeup_accounting"]
761        [::core::mem::offset_of!(BootOptions, enable_new_wakeup_accounting) - 1451usize];
762    ["Offset of field: BootOptions::ubsan_action"]
763        [::core::mem::offset_of!(BootOptions, ubsan_action) - 1452usize];
764    ["Offset of field: BootOptions::debug_boot_spin"]
765        [::core::mem::offset_of!(BootOptions, debug_boot_spin) - 1453usize];
766    ["Offset of field: BootOptions::allow_debug_uart_suspend"]
767        [::core::mem::offset_of!(BootOptions, allow_debug_uart_suspend) - 1454usize];
768    ["Offset of field: BootOptions::experimental_expand_memory_stall"]
769        [::core::mem::offset_of!(BootOptions, experimental_expand_memory_stall) - 1455usize];
770    ["Offset of field: BootOptions::x86_disable_spec_mitigations"]
771        [::core::mem::offset_of!(BootOptions, x86_disable_spec_mitigations) - 1456usize];
772    ["Offset of field: BootOptions::x86_hwp"]
773        [::core::mem::offset_of!(BootOptions, x86_hwp) - 1457usize];
774    ["Offset of field: BootOptions::x86_hwp_policy"]
775        [::core::mem::offset_of!(BootOptions, x86_hwp_policy) - 1458usize];
776    ["Offset of field: BootOptions::x86_md_clear_on_user_return"]
777        [::core::mem::offset_of!(BootOptions, x86_md_clear_on_user_return) - 1459usize];
778    ["Offset of field: BootOptions::x86_spec_store_bypass_disable"]
779        [::core::mem::offset_of!(BootOptions, x86_spec_store_bypass_disable) - 1460usize];
780    ["Offset of field: BootOptions::x86_turbo"]
781        [::core::mem::offset_of!(BootOptions, x86_turbo) - 1461usize];
782    ["Offset of field: BootOptions::x86_enable_pcid"]
783        [::core::mem::offset_of!(BootOptions, x86_enable_pcid) - 1462usize];
784    ["Offset of field: BootOptions::x86_smp_max_cpus"]
785        [::core::mem::offset_of!(BootOptions, x86_smp_max_cpus) - 1464usize];
786    ["Offset of field: BootOptions::x86_wallclock"]
787        [::core::mem::offset_of!(BootOptions, x86_wallclock) - 1468usize];
788    ["Offset of field: BootOptions::test_uint32"]
789        [::core::mem::offset_of!(BootOptions, test_uint32) - 1472usize];
790    ["Offset of field: BootOptions::test_uint64"]
791        [::core::mem::offset_of!(BootOptions, test_uint64) - 1480usize];
792    ["Offset of field: BootOptions::test_bool"]
793        [::core::mem::offset_of!(BootOptions, test_bool) - 1488usize];
794    ["Offset of field: BootOptions::test_smallstring"]
795        [::core::mem::offset_of!(BootOptions, test_smallstring) - 1489usize];
796    ["Offset of field: BootOptions::test_enum"]
797        [::core::mem::offset_of!(BootOptions, test_enum) - 1652usize];
798    ["Offset of field: BootOptions::test_struct"]
799        [::core::mem::offset_of!(BootOptions, test_struct) - 1656usize];
800    ["Offset of field: BootOptions::test_redacted_hex"]
801        [::core::mem::offset_of!(BootOptions, test_redacted_hex) - 1664usize];
802    ["Offset of field: BootOptions::test_auto_or_uint64"]
803        [::core::mem::offset_of!(BootOptions, test_auto_or_uint64) - 1832usize];
804    ["Offset of field: BootOptions::smp_max_cpus"]
805        [::core::mem::offset_of!(BootOptions, smp_max_cpus) - 1848usize];
806};