Commit graph

384 commits

Author SHA1 Message Date
bunnie
20c2e979c8 add more tests, make print outputs a bit clearer 2022-08-04 21:11:55 +08:00
bunnie
473c95a74c strip out the test flag 2022-08-02 16:49:50 +08:00
bunnie
536d90034c add a manually-triggered test suite for the net crate
requires the feature "nettest" to be present in shellchat.
this commit has it turned on, it'll be stripped out before
we push to main.
2022-08-02 16:46:36 +08:00
bunnie
3118ebddc9 add error code printout on dictlist failure 2022-08-02 02:52:20 +08:00
bunnie
2c815375a1 add sync to write function in pddb commands 2022-07-29 00:25:01 +08:00
bunnie
46c53d9612 add telemetry for better PDDB CI 2022-07-28 18:46:56 +08:00
bunnie
deecd3651d sync PDDB before churning or flushing 2022-07-28 04:47:32 +08:00
bunnie
edfbc1e4f0 update some text on the USB command to be more accurate 2022-07-23 17:32:13 +08:00
bunnie
6f10061653 reset "don't ask again" flag for password creation during factory test
this facility is necessary in case a worker accidentally picks
the wrong setting, disabling the feature for the device. When
the factory test completes, a call is made to reset the parameter.

This was a slightly complicated affair because the the don't ask
flag is contained within the rootkeys enclave itself, and we can't
just give access to rootkeys willy-nilly. So the flag is passed
through the PDDB and then to the rootkeys enclave. It's not harmful
to have it reset by an unauthorized actor; the pop-up will not
happen if passwords are, in fact, already set.
2022-07-19 23:57:25 +08:00
bunnie
4a9af7b220 add churn function to the PDDB command list 2022-07-19 15:32:07 +08:00
bunnie
fa984845ed add testing commands for rekeying. 2022-07-19 03:17:08 +08:00
bunnie
13b9064517 convert DNA output to something CI can pick up
this is for automation around PDDB readouts -- it is locked to the
device's DNA.
2022-07-16 00:40:04 +08:00
bunnie
abe153208f update shellchat to use the new semver returns 2022-07-13 04:43:35 +08:00
bunnie
af1013a1f3 rework SoC semver reporting to use xous-semver 2022-07-11 15:39:42 +08:00
bunnie
6e7798ff6c remove ECUP from shellchat 2022-07-11 04:06:26 +08:00
bunnie
77a92e310f shift around position of test in modals test and add a dedicated shellchat test 2022-07-06 05:04:26 +08:00
bunnie
3ad1ae7325 fix typo 2022-07-05 02:43:47 +08:00
bunnie
900e3e6ae2 fix limit on manual FSCB test so we're triggering basis gen once
it's pretty tedious to do repeated basis regens manually.
2022-07-04 18:35:18 +08:00
bunnie
e26106e334 fix warnings and clean up configs
tighten up the scope of some features to reduce warning messages
2022-07-04 18:13:11 +08:00
bunnie
608817f343 finalize/improve basis stress testing
- add an autotrigger feature for the basis stress test so it can
  be run in a fuzzer loop
- various fixes and improvements to the implementation to help
  integrate with CI
2022-07-04 17:55:52 +08:00
bunnie
a977e9852d add a comprehensive secret basis tester 2022-07-04 04:04:39 +08:00
bunnie
41a144a7e0 add some more feedback to the fscbtest test 2022-07-03 01:13:48 +08:00
bunnie
3992a45763 add a test case for "large" keys (128k datasets) 2022-07-03 00:36:49 +08:00
bunnie
5ba62df98d add a test routine for FSCB regeneration
this is meant to work with a reduced-size PDDB to trigger
fast space regen calls more rapidly.
2022-07-01 17:12:25 +08:00
bunnie
a828b3e665 add "extension test" to the PDDB shellchat test command 2022-07-01 00:02:42 +08:00
bunnie
5d874ac0f3 when connecting to debug core, enable programming 2022-06-28 20:38:23 +08:00
bunnie
4fcc1ea173 bump pddb key listing limits
makes it a bit easier for debugging
2022-06-28 19:59:52 +08:00
bunnie
79cb4cd982 image display now works, once heap increase is called
takes about 1MiB of heap to decode the test PNG.

Putting the heap increase at boot seems to not
work, it causes other processes to not spawn. The condition
is not terribly reproducible, so it's probably a concurrency
issue of some type.
2022-06-27 04:03:49 +08:00
bunnie
78ea80f809 remove main() thread-wrapping for non-ditherpunk configs
saves a bit of memory
2022-06-19 21:39:29 +08:00
bunnie
770f7e1f53 add tracking allocator
has to be instrumented on functions of interest, but there is one
e.g. in shellchat now for tracking allocations to display a PNG.
2022-06-19 01:55:16 +08:00
bunnie
e504e9b89c attempt to limit memory size used by PNG decoder
still getting a heap allocation failure, something is
looking for 256k and even when the heap is increased
to a couple megabytes we get heap allocation failures.
2022-06-18 14:21:56 +08:00
nworbnhoj
409f696fde Implement gam::PixelType
enables gam::Img to import different image formats: U8 & U8x3 for now
2022-06-18 08:43:32 +10:00
bunnie
cf89ebe5f5 add wrapper around main functions that need bigger stacks
This allows for `ditherpunk` config to have a much larger
stack size on select processes only.

The cost comes at a 4k fixed overhead for the sacrificial
wrapper thread, so we lose about 20k of runtime RAM, even
when ditherpunk is *not* activated (because we're
always wrapping the threads).

There is no impact on scheduling or CPU utilization, as the
wrapper thread blocks and is never scheduled once the real
main starts. However, it does subtract one thread from the
total available thread pool.
2022-06-16 03:40:19 +08:00
bunnie
18fc6663b2 work around various shortcomings in the net crate to download images 2022-06-14 19:06:08 +08:00
bunnie
0a94e80504 fix warnings 2022-06-14 17:09:44 +08:00
bunnie
6c5d7d511c update the net image test routine 2022-06-14 16:46:37 +08:00
bunnie
fc8e5df2b1 Merge remote-tracking branch 'origin/dither2' into dp2-merge 2022-06-14 16:45:38 +08:00
bunnie
8cb632180c fix fractional decimal places on integer conversions 2022-06-14 04:30:58 +08:00
bunnie
7b2fbdc88b evict f64's from the kernel, and eliminate f32 parsing
turns out these routines add quite a bit of bloat to the kernel
for only cosmetic reasons.
2022-06-14 04:14:25 +08:00
bunnie
e32ea4d3f5 fix #174 2022-06-10 21:36:53 +08:00
bunnie
09a968ef09 remove debug-here dependency
this contains a dependency to `failure` two levels down that has a critical
vulnerability. Unfortunately no new versions of debug-here have been
published in a while. It's no longer used, so just stripping it out
altogether.
2022-06-07 14:00:25 +08:00
bunnie
f620296a94 fix warnings in hosted mode 2022-06-01 11:54:25 +10:00
bunnie
06cda24c19 fix another errant mut that wasn't needed in pddb 2022-06-01 11:54:25 +10:00
bunnie
503615a138 fix warnings that result from the PDDB mutability change 2022-06-01 11:54:25 +10:00
Sean Cross
d342d7a885 apps/services: remove xous::xous_main macro usage
This macro will be removed, since it is no longer necessary. Remove this
macro across the project and replace it with a standard `main()`
function.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-06-01 11:54:24 +10:00
bunnie
8c08a9a188 bring shellchat to AES 0.8 compatibility
Also note here that we have:

- Run all the AES test vectors and confirmed the pass for both
  hw and sw
- Updated the benchmark numbers for the new AES implementation
2022-06-01 11:53:33 +10:00
bunnie
47b76a3d5b include a getrandom implementation that allows us to use modern randcore
A lot of packages are depending on 0.6 api, which requires a crate
that has OS specific TRNG calls. This patch keeps the 0.5 calls
inside the TRNG crate as direct API calls, and migrates to support
a 0.6 api to a patched version of getrandom that supports Xous.
2022-06-01 11:53:02 +10:00
bunnie
5337d34d45 fix warnings in hosted mode 2022-06-01 00:32:49 +08:00
bunnie
2eee81b218 fix another errant mut that wasn't needed in pddb 2022-06-01 00:21:30 +08:00
bunnie
3b1629744c fix warnings that result from the PDDB mutability change 2022-06-01 00:21:22 +08:00