Skip to content
Snippets Groups Projects
user avatar
Pierre-Clément Tosi authored
Zero any memory that could still hold secrets before executing the guest
OS, to reduce as much as possible the risk of leaking them.

Note that this only covers memory that can't be zeroed from high-level
compiled code (i.e. the .bss and .data sections and stack regions) and
doesn't zero the received configuration data, which contains the
BccHandover holding the secret CDIs as that is (and must still be)
zeroed from Rust.

Furthermore, no other region is flushed so data such as the DT or BCC
that must be made available to the guest OS (even if it doesn't
immediately re-enable the MMU) should still be flushed from Rust.

Remove unnecessary ISB in jump_to_payload().

Bug: 270684188
Test: atest MicrodroidHostTests
Change-Id: I8e923a468d1826c00ce1d0b07e1a91f5d2909f99
Merged-In: I8e923a468d1826c00ce1d0b07e1a91f5d2909f99
68533613
History