rust-lang / rust-lang/backtrace-rs

Could hurd use some mach port chicanery and `vm_map`?

Open
#672 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

OS-hurd
Dominant language
Rust
Stars
628
Forks
291
PR merge metrics
No merged PRs in 30d

Description

My understanding is that currently the /proc/self/maps implementation on Hurd exposes memory objects via their relevant mach ports as the "path", like [mem_obj={port_num}]. This seems like it might provide us with enough information that we can "simply" use the ultra-verbose vm_map (...with some wrapper code, obviously)... to map in the relevant segments of the relevant files.

I think emulating specifics of the /proc/self/maps implementation Linux has on Hurd may have made sense at one point but is ultimately a losing battle if one actually wants to make a different OS. See e.g. https://github.com/rust-lang/backtrace-rs/issues/671 which the Linux implementation may start to use soon enough.

cc @sthibaul

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source file or test is named. Start by reviewing the Hurd /proc/self/maps behavior described here, the Mach port and vm_map interfaces, and rust-lang/backtrace-rs#671; done would mean a decided, tested approach for obtaining file-backed segments on Hurd without relying on Linux-specific maps details.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.