google / gvisor

Application Kernel for Containers

Home Page:https://gvisor.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Regression in handling of `xxx | grep > /dev/null`

markusthoemmes opened this issue · comments

Description

There used to be an issue with piping grep to /dev/null, which was fixed via #9736. However, it seems to have come back in a different form in that the respective call seems to never return at all and just hang.

@nixprime FYI.

Steps to reproduce

Apply the following deployment and observe it never becoming ready. It doesn't even print any logs (it should be printing some basic info about the memory available etc.). My runsc config was as follows:

log_path = "/var/log/runsc/%ID%/shim.log"
log_level = "debug"
[runsc_config]
systemd-cgroup = "true"
platform = "systrap"
strace = "true"
debug = "true"
debug-log = "/var/log/runsc/%ID%/gvisor.%COMMAND%.log"
apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
spec:
  minReadySeconds: 10
  replicas: 1
  selector:
    matchLabels:
      app-component: web
  template:
    metadata:
      labels:
        app-component: web
    spec:
      automountServiceAccountToken: false
      containers:
      - env:
        - name: CNB_PROCESS_TYPE
          value: web
        - name: PORT
          value: "8080"
        image: markusthoemmes/php-regression
        imagePullPolicy: IfNotPresent
        name: web
        ports:
        - containerPort: 8080
          name: http-8080
          protocol: TCP
        readinessProbe:
          failureThreshold: 9
          periodSeconds: 10
          successThreshold: 1
          tcpSocket:
            port: 8080
          timeoutSeconds: 1
      restartPolicy: Always
      runtimeClassName: gvisor-systrap

I can try to minimize the example some more if necessary, but the strace output below seems to indicate the offender being grep + /dev/null pretty clearly.

runsc version

runsc --version
runsc version release-20240212.0-20-gbfd27a1e43cb
spec: 1.1.0-rc.1

docker version (if using docker)

No response

uname

Linux pool-apps-appworkload-dedicated-c-4-o6omr 6.1.0-17-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.69-1 (2023-12-30) x86_64 GNU/Linux

kubectl (if using Kubernetes)

No response

repo state (if built from source)

No response

runsc debug logs (if available)

I think this might be the most interesting spot. I'm guessing we're in https://github.com/heroku/heroku-buildpack-php/blob/6c579f59f0d1b3e47d8bd90e8784c4c5a3851625/bin/heroku-php-apache2#L301 (which is where we used to fail out with an error before the original bug fix)

...
I0222 10:13:31.948498    4574 strace.go:570] [  40(  39):  40(  39)] httpd E newfstatat(AT_FDCWD /workspace, 0x557e4c2c8580 /app/.heroku/php/var/apache2/log/, 0x7efb6a6f7620, 0x0)
I0222 10:13:31.948636    4574 strace.go:608] [  40(  39):  40(  39)] httpd X newfstatat(AT_FDCWD /workspace, 0x557e4c2c8580 /app/.heroku/php/var/apache2/log/, 0x7efb6a6f7620 {dev=35, ino=76, mode=S_IFDIR|0o755, nlink=2, uid=1000, gid=1000, rdev=0, size=4096, blksize=4096, blocks=8, atime=2024-02-22 10:12:12.115088658 +0000 UTC, mtime=1980-01-01 00:00:01 +0000 UTC, ctime=2024-02-22 10:12:12.107088401 +0000 UTC}, 0x0) = 0 (0x0) (113.375µs)
I0222 10:13:31.948669    4574 strace.go:570] [  40(  39):  40(  39)] httpd E newfstatat(AT_FDCWD /workspace, 0x557e4c2c85d8 /app/.heroku/php/var/apache2/log/, 0x7efb6a6f7610, 0x0)
I0222 10:13:31.948698    4574 strace.go:608] [  40(  39):  40(  39)] httpd X newfstatat(AT_FDCWD /workspace, 0x557e4c2c85d8 /app/.heroku/php/var/apache2/log/, 0x7efb6a6f7610 {dev=35, ino=76, mode=S_IFDIR|0o755, nlink=2, uid=1000, gid=1000, rdev=0, size=4096, blksize=4096, blocks=8, atime=2024-02-22 10:12:12.115088658 +0000 UTC, mtime=1980-01-01 00:00:01 +0000 UTC, ctime=2024-02-22 10:12:12.107088401 +0000 UTC}, 0x0) = 0 (0x0) (14.791µs)
D0222 10:13:31.948740    4574 usertrap_amd64.go:212] [  40(  39):  40(  39)] Found the pattern at ip 7ed717314a70:sysno 1
D0222 10:13:31.948750    4574 usertrap_amd64.go:122] [  40(  39):  40(  39)] Allocate a new trap: 0xc00077a900 33
D0222 10:13:31.948760    4574 usertrap_amd64.go:225] [  40(  39):  40(  39)] Apply the binary patch addr 7ed717314a70 trap addr 69a50 ([184 1 0 0 0 15 5] -> [255 36 37 80 154 6 0])
I0222 10:13:31.948794    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 "Loaded Modules:\n", 0x10)
I0222 10:13:31.948817    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x10) = 16 (0x10) (12.232µs)
I0222 10:13:31.948861    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06000 "Loaded Modules:\n", 0x18000) = 16 (0x10) (434.254738ms)
I0222 10:13:31.948866    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " core_module (static)\n", 0x16)
I0222 10:13:31.948910    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x16) = 22 (0x16) (3.984µs)
I0222 10:13:31.948956    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " so_module (static)\n", 0x14)
I0222 10:13:31.948962    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df06010, 0x18000)
I0222 10:13:31.948971    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x14) = 20 (0x14) (1.973µs)
I0222 10:13:31.948982    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06010 " core_module (static)\n so_module (static)\n", 0x18000) = 42 (0x2a) (2.55µs)
I0222 10:13:31.948993    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " http_module (static)\n", 0x16)
I0222 10:13:31.949008    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x16) = 22 (0x16) (1.604µs)
I0222 10:13:31.949024    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " mpm_event_module (static)\n", 0x1b)
I0222 10:13:31.949043    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1b) = 27 (0x1b) (1.655µs)
I0222 10:13:31.949024    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df0603a, 0x18000)
I0222 10:13:31.949068    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df0603a " http_module (static)\n mpm_event_module (static)\n", 0x18000) = 49 (0x31) (2.022µs)
I0222 10:13:31.949102    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " authn_file_module (shared)\n", 0x1c)
I0222 10:13:31.949116    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (1.282µs)
I0222 10:13:31.949117    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df0606b, 0x18000)
I0222 10:13:31.949141    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df0606b " authn_file_module (shared)\n", 0x18000) = 28 (0x1c) (1.765µs)
I0222 10:13:31.949164    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " authn_core_module (shared)\n", 0x1c)
I0222 10:13:31.949178    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (2.107µs)
I0222 10:13:31.949198    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df06087, 0x18000)
I0222 10:13:31.949217    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06087 " authn_core_module (shared)\n", 0x18000) = 28 (0x1c) (2.793µs)
I0222 10:13:31.949236    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " authz_host_module (shared)\n", 0x1c)
I0222 10:13:31.949246    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (1.295µs)
I0222 10:13:31.949260    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df060a3, 0x18000)
I0222 10:13:31.949271    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df060a3 " authz_host_module (shared)\n", 0x18000) = 28 (0x1c) (989ns)
I0222 10:13:31.949320    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df060bf, 0x18000)
I0222 10:13:31.949399    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " authz_groupfile_module (shared)\n", 0x21)
I0222 10:13:31.949422    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x21) = 33 (0x21) (6.413µs)
I0222 10:13:31.949463    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df060bf " authz_groupfile_module (shared)\n", 0x18000) = 33 (0x21) (104.967µs)
I0222 10:13:31.949519    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " authz_user_module (shared)\n", 0x1c)
I0222 10:13:31.949544    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (4.265µs)
I0222 10:13:31.949563    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df060e0, 0x18000)
I0222 10:13:31.949581    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df060e0 " authz_user_module (shared)\n", 0x18000) = 28 (0x1c) (3.004µs)
I0222 10:13:31.949615    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df060fc, 0x18000)
I0222 10:13:31.949658    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " authz_core_module (shared)\n", 0x1c)
I0222 10:13:31.949682    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (8.911µs)
I0222 10:13:31.949700    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df060fc " authz_core_module (shared)\n", 0x18000) = 28 (0x1c) (70.721µs)
I0222 10:13:31.949733    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df06118, 0x18000)
I0222 10:13:31.949785    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " access_compat_module (shared)\n", 0x1f)
I0222 10:13:31.949801    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1f) = 31 (0x1f) (2.439µs)
I0222 10:13:31.949819    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06118 " access_compat_module (shared)\n", 0x18000) = 31 (0x1f) (72.272µs)
I0222 10:13:31.949874    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df06137, 0x18000)
I0222 10:13:31.949883    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " auth_basic_module (shared)\n", 0x1c)
I0222 10:13:31.949901    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (3.655µs)
I0222 10:13:31.949919    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06137 " auth_basic_module (shared)\n", 0x18000) = 28 (0x1c) (27.411µs)
I0222 10:13:31.949952    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df06153, 0x18000)
I0222 10:13:31.949983    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " reqtimeout_module (shared)\n", 0x1c)
I0222 10:13:31.949998    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (2.47µs)
I0222 10:13:31.950014    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06153 " reqtimeout_module (shared)\n", 0x18000) = 28 (0x1c) (49.743µs)
I0222 10:13:31.950032    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " filter_module (shared)\n", 0x18)
I0222 10:13:31.950042    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x18) = 24 (0x18) (980ns)
I0222 10:13:31.950053    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df0616f, 0x18000)
I0222 10:13:31.950063    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df0616f " filter_module (shared)\n", 0x18000) = 24 (0x18) (1.035µs)
I0222 10:13:31.950080    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " deflate_module (shared)\n", 0x19)
I0222 10:13:31.950089    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x19) = 25 (0x19) (1.214µs)
I0222 10:13:31.950109    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df06187, 0x18000)
I0222 10:13:31.950129    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06187 " deflate_module (shared)\n", 0x18000) = 25 (0x19) (3.144µs)
I0222 10:13:31.950162    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df061a0, 0x18000)
I0222 10:13:31.950196    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " xml2enc_module (shared)\n", 0x19)
I0222 10:13:31.950211    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x19) = 25 (0x19) (5.76µs)
I0222 10:13:31.950229    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df061a0 " xml2enc_module (shared)\n", 0x18000) = 25 (0x19) (53.163µs)
I0222 10:13:31.950264    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df061b9, 0x18000)
I0222 10:13:31.950297    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " proxy_html_module (shared)\n", 0x1c)
I0222 10:13:31.950313    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (6.693µs)
I0222 10:13:31.950330    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df061b9 " proxy_html_module (shared)\n", 0x18000) = 28 (0x1c) (51.883µs)
I0222 10:13:31.950364    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df061d5, 0x18000)
I0222 10:13:31.950407    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " mime_module (shared)\n", 0x16)
I0222 10:13:31.950422    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x16) = 22 (0x16) (5.361µs)
I0222 10:13:31.950439    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df061d5 " mime_module (shared)\n", 0x18000) = 22 (0x16) (60.98µs)
I0222 10:13:31.950480    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df061eb, 0x18000)
I0222 10:13:31.950516    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " log_config_module (shared)\n", 0x1c)
I0222 10:13:31.950537    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (7.386µs)
I0222 10:13:31.950551    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df061eb " log_config_module (shared)\n", 0x18000) = 28 (0x1c) (58.484µs)
I0222 10:13:31.950567    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " env_module (shared)\n", 0x15)
I0222 10:13:31.950577    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x15) = 21 (0x15) (1.305µs)
I0222 10:13:31.950589    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df06207, 0x18000)
I0222 10:13:31.950600    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06207 " env_module (shared)\n", 0x18000) = 21 (0x15) (1.276µs)
I0222 10:13:31.950616    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " expires_module (shared)\n", 0x19)
I0222 10:13:31.950627    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x19) = 25 (0x19) (2.106µs)
I0222 10:13:31.950641    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df0621c, 0x18000)
I0222 10:13:31.950652    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df0621c " expires_module (shared)\n", 0x18000) = 25 (0x19) (960ns)
I0222 10:13:31.950667    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " headers_module (shared)\n", 0x19)
I0222 10:13:31.950676    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x19) = 25 (0x19) (959ns)
I0222 10:13:31.950690    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df06235, 0x18000)
I0222 10:13:31.950705    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06235 " headers_module (shared)\n", 0x18000) = 25 (0x19) (1.461µs)
I0222 10:13:31.950727    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " setenvif_module (shared)\n", 0x1a)
I0222 10:13:31.950737    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1a) = 26 (0x1a) (1.47µs)
I0222 10:13:31.950737    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df0624e, 0x18000)
I0222 10:13:31.950757    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df0624e " setenvif_module (shared)\n", 0x18000) = 26 (0x1a) (1.502µs)
I0222 10:13:31.950780    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " version_module (shared)\n", 0x19)
I0222 10:13:31.950794    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x19) = 25 (0x19) (1.528µs)
I0222 10:13:31.950810    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df06268, 0x18000)
I0222 10:13:31.950821    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06268 " version_module (shared)\n", 0x18000) = 25 (0x19) (1.065µs)
I0222 10:13:31.950840    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " remoteip_module (shared)\n", 0x1a)
I0222 10:13:31.950854    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1a) = 26 (0x1a) (1.785µs)
I0222 10:13:31.950854    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df06281, 0x18000)
I0222 10:13:31.950880    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df06281 " remoteip_module (shared)\n", 0x18000) = 26 (0x1a) (2.275µs)
I0222 10:13:31.950911    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df0629b, 0x18000)
I0222 10:13:31.950909    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " proxy_module (shared)\n", 0x17)
I0222 10:13:31.950943    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x17) = 23 (0x17) (2.361µs)
I0222 10:13:31.950962    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df0629b " proxy_module (shared)\n", 0x18000) = 23 (0x17) (28.5µs)
I0222 10:13:31.950984    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " proxy_http_module (shared)\n", 0x1c)
I0222 10:13:31.950999    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (1.507µs)
I0222 10:13:31.951019    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df062b2, 0x18000)
I0222 10:13:31.951035    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df062b2 " proxy_http_module (shared)\n", 0x18000) = 28 (0x1c) (1.452µs)
I0222 10:13:31.951057    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " proxy_fcgi_module (shared)\n", 0x1c)
I0222 10:13:31.951072    4574 strace.go:567] [  41(  40):  41(  40)] grep E read(0x0 pipe:[43], 0x56013df062ce, 0x18000)
I0222 10:13:31.951083    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x1c) = 28 (0x1c) (2.339µs)
I0222 10:13:31.951095    4574 strace.go:605] [  41(  40):  41(  40)] grep X read(0x0 pipe:[43], 0x56013df062ce " proxy_fcgi_module (shared)\n", 0x18000) = 28 (0x1c) (2.858µs)
I0222 10:13:31.951115    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " proxy_wstunnel_module (shared)\n", 0x20)
I0222 10:13:31.951128    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x20) = 32 (0x20) (1.338µs)
D0222 10:13:31.951145    4574 usertrap_amd64.go:212] [  41(  40):  41(  40)] Found the pattern at ip 7ecd415261e3:sysno 275
D0222 10:13:31.951159    4574 usertrap_amd64.go:122] [  41(  40):  41(  40)] Allocate a new trap: 0xc00069a000 24
I0222 10:13:31.951161    4574 strace.go:567] [  40(  39):  40(  39)] httpd E write(0x1 pipe:[43], 0x557e4c2ede20 " ssl_module (shared)\n", 0x15)
D0222 10:13:31.951171    4574 usertrap_amd64.go:225] [  41(  40):  41(  40)] Apply the binary patch addr 7ecd415261e3 trap addr 60780 ([184 19 1 0 0 15 5] -> [255 36 37 128 7 6 0])
I0222 10:13:31.951177    4574 strace.go:605] [  40(  39):  40(  39)] httpd X write(0x1 pipe:[43], ..., 0x15) = 21 (0x15) (1.658µs)
I0222 10:13:31.951452    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951480    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (5.536µs)
I0222 10:13:31.951508    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951522    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (1.208µs)
I0222 10:13:31.951549    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951562    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (1.099µs)
I0222 10:13:31.951574    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951584    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (1.136µs)
I0222 10:13:31.951596    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951607    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (815ns)
I0222 10:13:31.951625    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951635    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (902ns)
I0222 10:13:31.951648    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951657    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (803ns)
I0222 10:13:31.951669    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951679    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (983ns)
I0222 10:13:31.951691    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951700    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (784ns)
I0222 10:13:31.951713    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951722    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (805ns)
I0222 10:13:31.951734    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951743    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (778ns)
I0222 10:13:31.951756    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951766    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (775ns)
I0222 10:13:31.951803    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951819    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (1.192µs)
I0222 10:13:31.951841    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951851    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (845ns)
I0222 10:13:31.951863    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951873    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (1.044µs)
I0222 10:13:31.951887    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951897    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (793ns)
I0222 10:13:31.951909    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951918    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (780ns)
I0222 10:13:31.951930    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951940    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (786ns)
I0222 10:13:31.951952    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951961    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (782ns)
I0222 10:13:31.951978    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.951988    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (849ns)
I0222 10:13:31.952000    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952010    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (759ns)
I0222 10:13:31.952022    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952031    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (754ns)
I0222 10:13:31.952043    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952054    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (822ns)
I0222 10:13:31.952066    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952076    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (767ns)
I0222 10:13:31.952088    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952097    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (793ns)
I0222 10:13:31.952109    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952119    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (796ns)
I0222 10:13:31.952132    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952141    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (786ns)
I0222 10:13:31.952171    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952181    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (777ns)
I0222 10:13:31.952193    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952202    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (952ns)
I0222 10:13:31.952224    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952233    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (817ns)
I0222 10:13:31.952247    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952257    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (776ns)
I0222 10:13:31.952269    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952279    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (2.07µs)
I0222 10:13:31.952291    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952301    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (771ns)
I0222 10:13:31.952316    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952326    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (891ns)
I0222 10:13:31.952339    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952348    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (771ns)
I0222 10:13:31.952361    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952370    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (765ns)
I0222 10:13:31.952383    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952392    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (803ns)
I0222 10:13:31.952404    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952413    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (791ns)
I0222 10:13:31.952426    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952435    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (778ns)
I0222 10:13:31.952447    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952457    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (788ns)
I0222 10:13:31.952469    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952481    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (908ns)
I0222 10:13:31.952501    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952511    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (816ns)
I0222 10:13:31.952523    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952532    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (781ns)
I0222 10:13:31.952545    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952554    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (771ns)
I0222 10:13:31.952567    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952576    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (812ns)
I0222 10:13:31.952588    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952597    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (764ns)
I0222 10:13:31.952610    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952619    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (743ns)
I0222 10:13:31.952635    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952655    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (10.265µs)
I0222 10:13:31.952676    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952686    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (840ns)
I0222 10:13:31.952707    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952716    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (773ns)
I0222 10:13:31.952729    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952739    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (775ns)
I0222 10:13:31.952752    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952761    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (800ns)
I0222 10:13:31.952773    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952783    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (779ns)
I0222 10:13:31.952795    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952804    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (793ns)
I0222 10:13:31.952816    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952826    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (1.009µs)
I0222 10:13:31.952838    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952847    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (790ns)
I0222 10:13:31.952860    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952869    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (795ns)
I0222 10:13:31.952882    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952892    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (1.047µs)
I0222 10:13:31.952903    4574 strace.go:576] [  41(  40):  41(  40)] grep E splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1)
I0222 10:13:31.952914    4574 strace.go:614] [  41(  40):  41(  40)] grep X splice(0x0 pipe:[43], 0x0, 0x1 /dev/null, 0x0, 0x18000, 0x1) = 53 (0x35) (766ns)
...

I whacked at it some more and was able to minimize the reproducer to:

Running

./workspace/.heroku/php/sbin/httpd -t -D DUMP_MODULES | grep 'proxy_fcgi_module' > /dev/null`

in this image triggers the issue reliably! It has to be a pipe from httpd to grep to /dev/null. Piping the httpd output to a file first and then cat that doesn't trigger the issue and not piping to /dev/null also doesn't trigger the issue.

@nixprime thanks for promptly looking at a fix. Greatly appreciated 🥳 .

Thanks for the bug reports!