[starnix] Basic kernel panic support.

When a single process in the kernel panics, we need to tear down
the entire kernel which includes all the processes in the same job.

This is implemented as a small library that can be integration tested
without adding any new panicking paths to Starnix or depending on
particular panicking behaviors of the kernel's current implementation.

Manually confirmed that the test times out if the panic hook is
commented out from panicker.rs.

Multiply: kill_job_on_panic_tests

Change-Id: I53474868066ed65cbe488d2abad3048bd9d25896
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/830879
Reviewed-by: Kevin Lindkvist <lindkvist@google.com>
Commit-Queue: Adam Perry <adamperry@google.com>
10 files changed
tree: 08782da4df461678f72324d31075a77cbd7bd152
  1. boards/
  2. build/
  3. bundles/
  4. docs/
  5. examples/
  6. infra/
  7. products/
  8. scripts/
  9. sdk/
  10. src/
  11. third_party/
  12. tools/
  13. zircon/
  14. .clang-format
  15. .clang-tidy
  16. .editorconfig
  17. .git-blame-ignore-revs
  18. .gitattributes
  19. .gitignore
  20. .gitmodules
  21. .gn
  22. .ignore
  23. .style.yapf
  24. analysis_options.yaml
  25. AUTHORS
  26. BUILD.gn
  27. CODE_OF_CONDUCT.md
  28. CONTRIBUTING.md
  29. fuchsia.code-workspace
  30. LICENSE
  31. OWNERS
  32. PATENTS
  33. pyrightconfig.json
  34. README.md
  35. rustfmt.toml
README.md

Fuchsia

What is Fuchsia?

Fuchsia is an open source, general purpose operating system supporting modern 64-bit Intel and ARM processors.

We expect everyone interacting with our project to respect our code of conduct.

Read more about Fuchsia's principles.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See fuchsia.dev.