Visitar URL original
[Bug]: de.beyondco.herd.helper (Not Responding) · Issue #1784 · beyondcode/herd-community · GitHub
Skip to content

[Bug]: de.beyondco.herd.helper (Not Responding) #1784

Open

Description

@mikescott

Platform

macOS

Operating system version

macOS Tahoe 26.7.1

System architecture

ARM64 (M1, M2, etc)

Herd Version

2.0.3 (Build: 72)

PHP Version

No response

Bug description

In Activity Monitor I can see the hung process de.beyondco.herd.helper

It stops responding moments after Herd launches. I haven't noticed any negative effects from this, Herd seems to work normally.

Steps to reproduce

No response

Relevant log output

Activity

  1. diegoandornoorangepix commented on Oct 28, 2026

    @diegoandornoorangepix

    Same helper, Herd 2.0.3 (72), but in my case it crashes and nginx/dnsmasq never start.

    Environment: macOS 26.2 (25C56), arm64. Herd.app last modified 2026-10-26; the helper binary was
    installed 2026-10-20; helper bundle version 1.0.53.

    Symptoms: after launching Herd (or "Restart all"), php-fpm and the devtools helper start, but
    nginx and dnsmasq do not. Nothing listens on :80, :443 or :53. The .test resolver points to
    127.0.0.1, so DNS times out and every .test site is unreachable.

    launchctl print system/de.beyondco.herd.helper -> state = not running, runs = 2.

    Crash reports in /Library/LaunchDiagnostics... (/Library/Logs/DiagnosticReports):
    de.beyondco.herd.helper-2026-10-28-095647.ips, ...-090531.ips (today, at Herd launch) and
    2026-10-27-091211.ips. Exception in all of them:
    EXC_BAD_ACCESS / SIGSEGV, KERN_INVALID_ADDRESS at 0x8000000000000008 -> 0x0000000000000008
    (possible pointer authentication failure), terminated by SIGNAL 11. The helper was launched at
    09:56:32 and crashed about 6 s later. The crashed thread has no frames in the report.

    Restarting the services from the Herd app does not help. First crash report is the day after the
    app was updated. Attached the .ips files.

    herd-helper-crash-redacted.zip

  2. mikescott commented on Nov 12, 2026

    @mikescott
    Author

    I've updated to Herd 2.1 and this process still shows as not responding

  3. diegoandornoorangepix commented on Nov 13, 2026

    @diegoandornoorangepix

    Same here on 2.1.0. The helper still crashed on the first boot after the update, so nginx and dnsmasq never started and every .test site timed out.

    2.1.0 still ships the old helper. The helper inside Herd.app 2.1.0 is still bundle version 1.0.53, the same binary I had before (image UUID 7bef5732-466b-33c0-a9b7-b12d37b4f2fe). The update never replaced /Library/PrivilegedHelperTools/de.beyondco.herd.helper (dated 2026-10-20).

    The faulting thread now has a stack. It is identical, offset for offset, in today's crash (2.1.0) and in the one from Nov 10 (before the update):

    EXC_BAD_ACCESS (SIGSEGV) KERN_INVALID_ADDRESS at 0x8000000000000008 (possible pointer authentication failure)
    Thread: com.apple.root.default-qos
    0  libswiftCore.dylib       +0x923cc  swift_isUniquelyReferenced_nonNull_native
    1  de.beyondco.herd.helper  +0x1039c
    2  de.beyondco.herd.helper  +0x2fe0
    3  de.beyondco.herd.helper  +0x2ef8
    4  de.beyondco.herd.helper  +0x301c
    5  de.beyondco.herd.helper  +0x2f30
    6  de.beyondco.herd.helper  +0x83940
    7  de.beyondco.herd.helper  +0x65230
    8  de.beyondco.herd.helper  +0x8271c
    9  de.beyondco.herd.helper  +0x80b68
    10 de.beyondco.herd.helper  +0x7ef2c
    11 de.beyondco.herd.helper  +0x11d98
    12 libdispatch.dylib        +0x1b5c   _dispatch_call_block_and_release
    

    Timing from the unified log (crash at boot):

    09:00:12.789 launchd  Successfully spawned de.beyondco.herd.helper[5912] because ipc (mach)
    09:00:24.660 helper[5912:4bbd] Starting DNSMasq with command: ...
    09:00:24.662 helper[5912:4bbb] Starting Nginx with command: ...
    09:00:24.665 kernel   de.beyondco.herd.helper[5912] Corpse allowed 2 of 5
    09:00:24.666 launchd  service inactive: de.beyondco.herd.helper
    

    DNSMasq and Nginx are started from two different dispatch threads 2 ms apart, and the helper dies 3 ms later in swift_isUniquelyReferenced_nonNull_native. That looks like a data race: two concurrent blocks mutating the same Swift collection, for example a dictionary of running processes.

    The successful run fits that reading. Later, herd restart from the CLI recovered everything. In that run the two starts were about 300 ms apart and the helper did not crash:

    12:17:34.612 helper[63490:97170] Starting DNSMasq with command: ...
    12:17:34.905 helper[63490:97172] Starting Nginx with command: ...
    

    My guess is that the "Not Responding" state in the original report is the same race ending in a hang instead of a crash, but I can't confirm that from here.

    Environment: macOS 26.2 (25C56), Mac15,4 (arm64), Herd 2.1.0.

    Attached: both .ips reports (machine identifiers redacted) and the relevant unified log lines.

    herd-helper-crash-2.1.0-redacted.zip

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions