doc/wg/core/notes/core-notes-2022-07-29.md
Attendees:
tock-registers'
unsoundness with respect to having MMIO memory exposed no Rust references.
Johnathan has been looking into options there, I've been trying to reconcile
this to a generics-based approach to also allow testing of register
peripherals. I was going to ask if on the next call we could present
preliminary results and have a more focused discussion on it.Process.Process. There are certain things you can do today which you can't do if
you have credentials -- like marking processes runnable requires a capability
now. We have been very leery of using features.Process. One with checkable
credentials, one which doesn't.Process. A lot of the implementation would be shared, so
how do you factor that out? A ProcessStandard and a ProcessUnchecked, or
something like that.cfg-if.kernel/src/config.rs -- and there are multiple
things we turn on and off that way. I think this discussion is getting
derailed with conflating configuration with specifically cargo features.
Alyssa, if you want to take a look at the PR and give concrete suggestions
for how you would shave some of this overhead off that would be a more useful
way for us to frame any discussion around this.Process implementations
but a config-controlled type alias?Process trait is you can add either a second
upstream or a downstream implementation without any issues. Could help test
whether the API works out.#define
passed on the command line is an example of that. This led us to the config
structure we have in the kernel. Sometimes we do want to use features for the
hardware file, but we are very limited and constrained in what those can do.
It would be a discussion whether something like a type alias could fit in
that bin.make randomconfig and has farms testing build
configsProcessStandard and a ProcessUnchecked would also be
another approach.Process
implementations. May want to have two process types with different security
models.Process code
and the PR for app IDs, consolidate them into a base process, and have them
delegate as much as possible to share code.Processes that
work completely differently but this is not one of them.tockloader and elf2tab for app ID?elf2tab
and tockloader. I haven't done much testing with boards and deploying the
kernel + apps and with the kernel PR. The current state is elf2tab can add
signatures and reserve space for future signatures, and tockloader
understands them now. It can parse them, add and remove them, and check they
match the rest of the TBF application. Hopefully can also flash them onto
boards. Support is preliminarily robust in what it can do -- there are
probably edge cases that need to be tested. Provides the same experience as
tockloader provides to other tasks, just to the new footer. I'm sure there
are additional features that we'd want, but for the initial implementation
the features should be pretty good at this point.elf2tab and tockloader that nothing breaks. Don't expect
that, but I'd like to confirm. Do have some time because we don't expect
people to download the latest-and-greatest of the tools. I do think we should
get them in there so people interested in working on this can use the tools
without having to manage the PRs. The feature should be backwards-compatible
-- we want to support people who don't update their kernel right away.elf2tab stuff easier.elf2tab stuff.tockloader you may see
the credential show up.libtock-rs development,
which is unfortunate. Also easier to issue a release if you recently issued a
release, because stuff's more tested and you find fewer bugs.