Back to Tock

Tock OT Notes 2/21/2020

doc/wg/opentitan/notes/2020-02-21.md

latest3.0 KB
Original Source

Tock OT Notes 2/21/2020

Present:

  • Laura Abbott, Oxide Computer
  • Brad Campbell (Chair), University of Virginia
  • Jon Flatley, Google
  • Alistair Francis, Western Digital
  • Garret Kelly, Google
  • Patrick Mooney, Oxide Computer
  • Bryan Cantrill, Oxide Computer
  • Adam Leventhal, Oxide Computer

TODO

  • @gkelly: Open PR to add Silvestrs to the WG
  • @gkelly: Investigate options for LLVM development
  • @bradjc: Add libtock-rs RISC-V support to charter
  • Add @jrvanwhy to the call
  • all: Work to streamline libtock-rs building for RISC-V platforms

PR Merge Policy

  • Brad: tock-core has two types of PRs: upkeep and significant. Upkeep are merged quickly with one or two approvals, significant are merged after all team members approve or after at least a weak with no objections. Anyone can block a PR and then further review and discussion occurs before merging.
  • Consensus this is a reasonable policy to mirror for OT WG.
  • Makes sense to use the same approach.

libtock-rs

  • RISC-V support not well maintained
    • Scripts not correct
    • Very difficult to build PMP test
    • Alistair: works if you build manually
  • No CI support currently
    • Something we should work towards
    • Can use QEMU to help
  • Goal: converge on a build system to make building libtock-rs easy on RISC-V to help ensure it gets more testing as we work towards CI
  • Google: expect libtock-c to be supported on OT, but want top notch support for libtock-rs

libtock-rs ownership

  • Not clear that libtock-rs should be completely under the OT WG umbrella
  • However, there is a lot of overlap between OT WG and libtock-rs development
    • Decided to see if we could add RISC-V support in libtock-rs under the OT WG umbrella in the same way that RISC-V support for the kernel is.

Relocation Support

  • Bryan: not having relocation for RISC-V/libtock-rs is an "iceberg" standing in the way
  • Alistair: Difficult to have to change how apps compile when kernel size changes
    • Maybe could automate the process with some tooling?
  • Alistair: Western Digital is working on GCC PIC support for RISC-V
    • Currently in the design phase
    • Working on an ABI
  • Garret: Need a better scope of work for what updates LLVM needs
    • Can look for person/team at Google who could help
  • Brad: How feasible is updating LLVM to do the correct relocations?
    • Laura: It seems like it is doable by an experience LLVM engineer
  • Garret: Google intends to use monolithic signed binaries initially to workaround the relocation problem

Tock 2.0

  • Would include breaking changes to the syscall interface
  • Brad: Tock 1.0 specified the low level syscall interface, the TBF format, and a small handful of driver interfaces
  • Brad: consensus is to do a 2.0 version which would aggregate several breaking changes to the syscall interface
  • Brad: timeline:
    • Now/next few weeks: suggest ideas for syscall changes
    • 1+ months: discussion of proposed changes, work towards a design
    • 3-6 months: implement and test changes
  • Brad: loading apps at runtime should not require 2.0