Commit Graph

15 Commits

Author SHA1 Message Date
4926723228 libsysprof-analyze: process lower/upper dir from overlay
In modern podman, we will get lowerdir= and upperdir= in the superblock
options which we can parse to find where things are on the host. Use that
instead of relying on overlay mounts.
2023-05-23 19:49:21 -07:00
5bf178e07b libsysprof-analyze: include mount root when translating
Additionally, if we're on a subvolume, and that subvolume matches the
prefix of the root, then skip past that. I have no idea if this is the
right thing to do, but it's what we were doing before and seems to be
able to help us get proper path resolving on Silverblue.
2023-05-23 15:39:27 -07:00
5ef6911d65 libsysprof-analyze: ignore /sysroot devices
I highly doubt this is foolproof, but this makes Silverblue more likely to
resolve the proper fstab entry when translating to paths we can access
from the host system.
2023-05-23 15:37:57 -07:00
b6f3379c2e libsysprof-analyze: ensure relative path on entry 2023-05-19 18:47:15 -07:00
04797587e6 libsysprof-analyze: sort overlays before non-overlays
We still need to support mounts that do not include overlay frames, but
this fixes some of the cases for captures we already generate.
2023-05-22 18:56:30 -07:00
1469e8691a libsysprof-analyze: treat overlay as SysprofMount
This creates a synthesized SysprofMount for the overlays so that we can
process them as we walk the other mounts.
2023-05-22 18:39:00 -07:00
9d8096baa6 libsysprof-analyze: pass-through when there are no matches 2023-05-19 17:30:03 -07:00
f1d0d71ee5 libsysprof-analyze: ensure mounts are sorted by length
This matches what we did previously so that we find the closest mount
match first.
2023-05-19 17:07:29 -07:00
39e6be47fb libsysprof-analyze: add plumbing to track overlays
This just gets the plumbing into place, we'll still need to use it to do
the path translations.
2023-05-19 17:03:35 -07:00
322a6253ba libsysprof-analyze: add note about container breakouts 2023-05-19 10:25:13 -07:00
1a9e11baef libsysprof-analyze: start on namespace translation 2023-05-19 10:23:48 -07:00
685f9e8bab libsysprof-analyze: add scaffolding for translate API 2023-05-18 15:44:20 -07:00
7c37120edf libsysprof-analyze: make SysprofMount public API
And expose it via sysprof_document_process_list_mounts() so that when
inspecting processes we can see what binaries were mapped as well as what
the filesystem looked like to locate those mapped paths.
2023-05-11 14:37:02 -07:00
fa39a3291a libsysprof-analyze: start plumbing mounts into namespaces 2023-05-09 21:03:13 -07:00
ee957ed1d4 libsysprof-analyze: start on mount namespace APIs
The goal here is that we can try to reproduce to some degree the mount
namespace as the PID saw it, but also convert that to paths where we can
find the files on the host system.
2023-05-05 12:44:31 -07:00