Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

elfuse stalls at startup under any finite host RLIMIT_CPU

Offen
#474 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 3 Tagen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
48/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
c, macos

Rechercherichtung

Start by reproducing with the supplied zsh command and compare behavior with no host CPU limit. The report places the stall in hv_vcpu_run (Hv::Vcpu::run_once in hv_trap), with the vCPU stuck at the same EL1 PC; inspect that execution path and the host RLIMIT_CPU setup. Done means elfuse runs the guest and prints hello under a finite host CPU limit.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Under any finite host RLIMIT_CPU, elfuse stalls before the guest produces output: test-hello prints nothing, and the vCPU watchdog ends elfuse after 10 s with status 124. The limit is nowhere near used up, so the stall comes from a finite limit being set, not from the limit firing.

Reproducer (zsh):

(ulimit -St 1000; build/elfuse build/test-hello; echo "status=$?")
host limit result
none prints hello, status 0
ulimit -St 1000 no output, vCPU execution timed out after 10s, PC=0xfeffdf6000 CPSR=0x3c5, status 124
ulimit -St 100000 same
ulimit -Ht 100000 same
ulimit -St 1000, with SIGXCPU ignored in the parent shell (trap '' XCPU) same

The same happens on 3347188 (main), e9fdbbb, and c2785c7^1, from before #448 moved guest limits into the guest table, so it is not caused by the guest table or its enforcement. Ignoring SIGXCPU does not change it, so the host signal is not what stops the guest.

A sample of a stalled process shows the main thread inside hv_vcpu_run (Hv::Vcpu::run_once in hv_trap) for the whole 2 s window, with process CPU time equal to wall time, and the vCPU at EL1 at the same PC on every run. The cause is not traced yet.

Since #448 the guest seeds its RLIMIT_CPU from the host, so a CPU limit inherited from the shell, which the RLIMIT_CPU enforcement in the follow-up PR handles, cannot be exercised until this is fixed.

Vorherrschende Sprache
C
Sterne
278
Forks
31
Ø Merge
2 T. 22 Std.
Gemergte PRs (30 T.)
17

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus sysprog21/elfuse

Alle Issues in sysprog21/elfuse

Ähnliche Issues

Weitere Issues zu C

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.