Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Interference analysis #676

Open
matthew-l-weber opened this issue Dec 16, 2024 · 3 comments
Open

Interference analysis #676

matthew-l-weber opened this issue Dec 16, 2024 · 3 comments
Labels
documentation Improvements or additions to documentation

Comments

@matthew-l-weber
Copy link

Thank you to those from Redhat who gave a great talk on QM and ASIL at the ELISA workshop this month (Dec 2024.)

I wondered where to find more information about the interference analysis testing/reports. My interest is related to isolation between multiple applications with different criticality/rigor/quality levels to run on the same hardware platform while ensuring that each application is isolated from the others regarding memory access (spatial) and execution time (temporal), preventing interference between them. I'm also curious about the highest ASIL possible with this approach.

I did get through the Readme and noticed details of spatial management (OOM management and use of SELinux to manage access/behaviors) and wondered where I could find test cases I could build on to prove those assumptions.

Is there an outline of the source code required to support the safety-related functions? I noticed some of that in the Readme, but I didn't want to research if this is already captured in another location.

Thank you for entertaining this question; I'd like to provide a good picture of this effort to my other contributors to the ELISA Aerospace/Space working group. This looks like a very interesting approach to a problem that might suit some of our use cases!

@dougsland
Copy link
Collaborator

dougsland commented Dec 30, 2024

Thank you to those from Redhat who gave a great talk on QM and ASIL at the ELISA workshop this month (Dec 2024.)

I wondered where to find more information about the interference analysis testing/reports. My interest is related to isolation between multiple applications with different criticality/rigor/quality levels to run on the same hardware platform while ensuring that each application is isolated from the others regarding memory access (spatial) and execution time (temporal), preventing interference between them. I'm also curious about the highest ASIL possible with this approach.

I did get through the Readme and noticed details of spatial management (OOM management and use of SELinux to manage access/behaviors) and wondered where I could find test cases I could build on to prove those assumptions.

Is there an outline of the source code required to support the safety-related functions? I noticed some of that in the Readme, but I didn't want to research if this is already captured in another location.

Thank you for entertaining this question; I'd like to provide a good picture of this effort to my other contributors to the ELISA Aerospace/Space working group. This looks like a very interesting approach to a problem that might suit some of our use cases!

@matthew-l-weber was very nice to met you there, your presentation was great too, here is Douglas. I am interested in learn more about your documentation project to implement in QM too.

For now, let me introduce @Yarboa responsible of qm testsing. @Yarboa could you please share some tests and details about our tests with @matthew-l-weber ? Matthew is a great person from Boeing. I am here to help too.

@matthew-l-weber meanwhile, let me share some links:

General tests dir: https://github.com/containers/qm/tree/main/tests
Freedrom From Interference dir tests here: https://github.com/containers/qm/tree/main/tests/ffi

Most important, @matthew-l-weber if there are tests missing from Boeing point of view, we are more than interested to help or even implement I guess. More adoption, more hands, more power we have as group.

Thanks so much.

@dougsland
Copy link
Collaborator

dougsland commented Dec 30, 2024

@matthew-l-weber feel free to reach me regarding your doc project via dougsland AT redhat DOT com. We can help ramping your project and be one of the early adopters i guess.

@Yarboa
Copy link
Collaborator

Yarboa commented Jan 1, 2025

@matthew-l-weber

Repo is using fedora ci framework, tmt, please refer https://tmt.readthedocs.io/en/stable/
You could also learn from fedora docs more,
https://docs.fedoraproject.org/en-US/ci/

As mentioned READMEs by @dougsland , recommended after playing a bit with tmt docs, refer examples under tmt
In any issue you could try QM matrix room #Qm:matrix.org

I did get through the Readme and noticed details of spatial management (OOM management and use of SELinux to manage access/behaviors) and wondered where I could find test cases I could build on to prove those assumptions.

So the main idea here, that container management with podman fork/exec model not like docker containerd.
The following linux components used to control containerized processes

  1. namespaces
  2. cgroups
  3. selinux
  4. libseccomp

Now, in QM deployment, instead of running containerized image, there is another partition under /usr/liq/qm/rootfs
so the kernel start systemd (regular OS use case) with podman installed, which init another systemd in rootfs partition with podman in it.

There is another integration of containers with host systemd, another podman feature called quadlet.
Quadlet are one stop for configuration since QM quadlet is generated once, if one would like to extend it's capabilities
update or modify the defaults he should use quadlet drop-in files.

It is all explained in the doc, sections,
It is a good start to open tickets related to docs.

@Yarboa Yarboa added the documentation Improvements or additions to documentation label Jan 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

3 participants