Lines Matching +full:shadow +full:- +full:interrupts
1 .\"-
36 .Pa GENERIC-KMSAN
37 kernel configuration can be used to compile a KMSAN-enabled kernel using
42 .Bd -ragged -offset indent
73 runtime component and use hidden, byte-granular shadow state to determine
78 Otherwise, the shadow state is propagated to destination operand.
94 In addition to compiler-detected uses of uninitialized memory,
99 perform validation of the input's shadow state and will raise an error if
106 the kernel map requires two bytes of shadow state.
114 The sanitizer in a KMSAN-configured kernel can be disabled by setting the loader
124 shadow state.
139 mark device-written memory as initialized.
148 shadow state.
161 function and its sub-typed siblings validate the shadow state of the region(s)
175 .Ss Shadow Maps
181 The first, simply called the shadow map, tracks the state of the corresponding
183 A non-zero byte in the shadow map indicates that the corresponding byte of
187 instrumentation automatically propagates shadow state as the contents of kernel
190 The second shadow is called the origin map, and exists only to help debug
204 Unlike the shadow map, the origin map is not byte-granular, but consists of 4-byte
218 Files containing assembly code are left un-instrumented.
222 shadow state to reflect the operations performed by the original
227 to manually update shadow state.
228 This is typically only necessary in machine-dependent code.
230 Inline assembly is instrumented by the compiler to update shadow state
233 .Ss Interrupts and Exceptions
234 In addition to the shadow maps, the sanitizer requires some thread-local
242 Most kernel code runs in a context where interrupts or exceptions may
244 To ensure that thread-local sanitizer state remains consistent, the
246 When machine-dependent interrupt and exception handlers begin execution,
258 .Bd -literal -offset indent
265 /* A 2-byte hole is here. */
350 Some kernel memory allocators provide type-stable objects, and code which uses