note backups in release notes

This commit is contained in:
bunnie 2022-10-09 18:52:00 +08:00
parent 13217fa402
commit 6f255d1e44

View file

@ -271,6 +271,13 @@ perform the Xous firmware upgrade. This requires running manual update commands,
- Added a sanity check to the backup.py to make sure that the backup preparation was run: you must prepare backups every time before doing a backup. The exported key headers are erased after the backup is run, because you don't want the exported keys just laying around where anyone can read it out by plugging in a USB cable. Unfortunately, a user lost data because this check was missing :(
- Added crates.io package verification to `xtask`. Note: Cargo.toml files are munged by `cargo publish`, so it's difficult to prove equivalence of your source file and what you're sent from crates.io. Instead, there's now a check in CI to confirm that Cargo.lock did not change, which should change with a tampered Cargo.toml.
- Fixed cache coherence issue in FLASH. Writes to flash memory need to also invalidate D$ because they are out of band to the regular memory hierarchy.
- Add checksums to backups
- every 1MiB block of the PDDB is checksummed with a SHA-512 hash, of which the first 128 bits are stored in a table
- checksums are included in the backup header
- `backalyzer.py`, `backup.py`, and `restore.py` now parse the header and if checksums are there, it will flag if there is a checksum error
- backups now take about an extra minute to run, due to the inclusion of the extra checksums
- backups are no longer abortable, because in order to do the checksums, we have to unmount the PDDB and put the system into a semi-shutdown state. A confirmation screen now gates backups to avoid users accidentally triggering backups with a fat-fingered menu selection.
## Roadmap to 1.0