On 27.03.2023 21:41, Andrew Cooper wrote: > These both incorrectly cache bootstrap_map()'d pointers across returns back to > __start_xen(). This is never valid, and such pointers may fault, or point to > something unrelated.
As before - unless bootstrap_map(NULL) was (carefully) not called in between. Same ... > With the refactoring work in the previous patches, they're clearly now just > non-standard function return parameters. > > Rename struct ucode_mod_blob to just struct blob for breviy and because > there's nothing really ucode-specific about it. > > Introduce find_microcode_blob(), to replace microcode_grab_module(), and > rework microcode_scan_module() so they both return a pointer/size tuple, and > don't cache their return values in global state. > > This allows us to remove the microcode_init() initcall, the comments of which > gives the false impression that either of the cached pointers are safe to use. ... here. > Signed-off-by: Andrew Cooper <[email protected]> Reviewed-by: Jan Beulich <[email protected]> but I'd appreciate if the description was adjusted to only call the original code as bad as it really is, not any worse. Jan
