@@ -111,6 +111,13 @@ impl SystemTable<Boot> {
111
111
/// `SystemTable<Boot>` view of the System Table and returning a more
112
112
/// restricted `SystemTable<Runtime>` view as an output.
113
113
///
114
+ /// Once boot services are exited, the logger and allocator provided by
115
+ /// this crate can no longer be used. The logger should be disabled using
116
+ /// the [`Logger::disable`] method, and the allocator should be disabled by
117
+ /// calling [`alloc::exit_boot_services`]. Note that if the logger and
118
+ /// allocator were initialized with [`uefi_services::init`], they will be
119
+ /// disabled automatically when `exit_boot_services` is called.
120
+ ///
114
121
/// The handle passed must be the one of the currently executing image,
115
122
/// which is received by the entry point of the UEFI application. In
116
123
/// addition, the application must provide storage for a memory map, which
@@ -132,6 +139,10 @@ impl SystemTable<Boot> {
132
139
/// system table which more accurately reflects the state of the UEFI
133
140
/// firmware following exit from boot services, along with a high-level
134
141
/// iterator to the UEFI memory map.
142
+ ///
143
+ /// [`alloc::exit_boot_services`]: crate::alloc::exit_boot_services
144
+ /// [`Logger::disable`]: crate::logger::Logger::disable
145
+ /// [`uefi_services::init`]: https://docs.rs/uefi-services/latest/uefi_services/fn.init.html
135
146
pub fn exit_boot_services (
136
147
self ,
137
148
image : Handle ,
0 commit comments