Sang Woo Kim commented: https://gitlab.rtems.org/rtems/pkg/rtems-libbsd/-/work_items/39#note_155673 `sys_pipe.c` is compiled in with a working `pipe_poll()` and `pipe_kqfilter()`, and `kern_pipe()` is exported, but no POSIX entry point references it, so the linker keeps the IMFS FIFO. That is the `POLLHUP`, and the `EINVAL` from `kevent` `EV_ADD` on the same descriptor. Missing is `pipe()`/`pipe2()` in `rtemsbsd/rtems/rtems-bsd-syscall-api.c`: allocate both libio descriptors, call `kern_pipe()`, install. On `7-freebsd-14` and `6-freebsd-14` two `chgpipecnt()` calls left on the shared path in `sys_pipe.c` also have to go, since `kern_resource.c` keeps `chglimit()` under `#ifndef __rtems__`. It reaches past pipes: libevent's poll backend uses a pipe or a socketpair as its own notify descriptor, so `POLLERR` on it makes the backend treat itself as permanently ready and spin — EPICS pvxs wedges before `iocInit` at 94 % host CPU, and reaches `iocRun` with these entry points in place. [7-freebsd-14](https://github.com/physwkim/rtems-libbsd/commit/0198e7f05f55d1b9ca55b847c95bd6b223b58b4c) · [6-freebsd-14](https://github.com/physwkim/rtems-libbsd/commit/34dce963c8a6350b13341f389ef10f046a9c9d0c) · [6-freebsd-12](https://github.com/physwkim/rtems-libbsd/commit/97fcebdd47347a957c272f6c97644caf90e8b4fb) -- View it on GitLab: https://gitlab.rtems.org/rtems/pkg/rtems-libbsd/-/work_items/39#note_155673 You're receiving this email because of your account on gitlab.rtems.org. Unsubscribe from this thread: https://gitlab.rtems.org/-/sent_notifications/4-26edi9kfa3ioq18yb3xc0ai8v-k/unsubscribe | Manage all notifications: https://gitlab.rtems.org/-/profile/notifications | Help: https://gitlab.rtems.org/help
_______________________________________________ bugs mailing list [email protected] http://lists.rtems.org/mailman/listinfo/bugs
