Page MenuHomeFreeBSD

jfree (Jake Freeland)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 22 2022, 12:24 AM (84 w, 3 d)

Recent Activity

Jan 9 2024

jfree updated the diff for D40680: ktrace: Record vfs violations with KTR_CAPFAIL.

Replace all instances of "AT_FDCWD" with "<AT_FDCWD>" when reporting a violation via ktrcapfail().

Jan 9 2024, 4:28 AM · capsicum
jfree added inline comments to D40680: ktrace: Record vfs violations with KTR_CAPFAIL.
Jan 9 2024, 4:22 AM · capsicum
jfree added inline comments to D40680: ktrace: Record vfs violations with KTR_CAPFAIL.
Jan 9 2024, 4:14 AM · capsicum
jfree added a comment to D40677: ktrace: Record cpuset violations with KTR_CAPFAIL.

I would frown at that. :) It introduces hidden control flow which makes it hard to see quickly what a function does.

Consider the common case where a function allocates some memory and is supposed to free it before returning: if I'm reviewing the code and want to verify it behaves properly with respect to that free() call, it's much easier to check if I just have to look for the "return" keyword in the function.

Once in a while it's handy, but it should be avoided if possible.

Jan 9 2024, 12:52 AM · capsicum

Jan 7 2024

jfree updated the diff for D40677: ktrace: Record cpuset violations with KTR_CAPFAIL.

Actually, scratch that. I just understood your comment and this is a better solution.

Jan 7 2024, 8:24 AM · capsicum
jfree updated the diff for D40677: ktrace: Record cpuset violations with KTR_CAPFAIL.

It feels wrong to return inside of a macro, but I did not see any comments about it in style(9). This seems to be the solution that is most elegant in minimizing code duplication. Let me know your thoughts.

Jan 7 2024, 7:53 AM · capsicum

Jan 6 2024

jfree added a comment to D43294: audio/spotify-player: Update to v0.16.3.

@jrm Would you mind pushing this? I'm on vacation and forgot to copy my ssh key from my desktop before I left. Sigh.

Jan 6 2024, 2:19 AM

Jan 5 2024

jfree updated the diff for D43294: audio/spotify-player: Update to v0.16.3.
  • Update version from 0.16.2 to 0.16.3.
  • Add NOT_FOR_ARCHS=i386 to avoid building on i386.
Jan 5 2024, 12:30 PM
jfree added a comment to D43294: audio/spotify-player: Update to v0.16.3.

I read through the pkg-fallout logs and I think the build failure on i386 is a FreeBSD Rust issue, unrelated to this port. I do not have the time to debug this further right now, so I'm going to add the NOT_FOR_ARCHS=i386 line.

Jan 5 2024, 12:28 PM

Jan 4 2024

jfree added a comment to D43294: audio/spotify-player: Update to v0.16.3.
In D43294#986818, @jrm wrote:

Looks good, but I see a build failure on 13i386. The easy workaround is to add NOT_FOR_ARCHS=i386.

Here is an excerpt from http://pkg.ftfl.ca/data/13i386-default/2024-01-03_09h20m47s/logs/errors/spotify-player-0.16.2.log.

fatal runtime error: Rust cannot catch foreign exceptions
thread 'coordinator' panicked at compiler/rustc_middle/src/util/bug.rs:36:26:
/wrkdirs/usr/ports/lang/rust/work/rustc-1.74.1-src/compiler/rustc_codegen_ssa/src/back/write.rs:1594:29: worker thread panicked
stack backtrace:
error: could not compile `spotify_player` (bin "spotify_player")

Caused by:
  process didn't exit successfully: `CARGO=/usr/local/bin/cargo CARGO_BIN_NAME=spotify_player CARGO_CRATE_NAME=spotify_player CARGO_MANIFEST_DIR=/wrkdirs/usr/ports/audio/spotify-player/work/spotify-player-0.16.2/spotify_player CARGO_PKG_AUTHORS='Thang Pham <phamducthang1234@gmail.com>' CARGO_PKG_DESCRIPTION='A Spotify player in the terminal with full feature parity' CARGO_PKG_HOMEPAGE='' CARGO_PKG_LICENSE=MIT CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=spotify_player CARGO_PKG_README=../README.md CARGO_PKG_REPOSITORY='https://github.com/aome510/spotify-player' CARGO_PKG_RUST_VERSION='' CARGO_PKG_VERSION=0.16.2 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=16 CARGO_PKG_VERSION_PATCH=2 CARGO_PKG_VERSION_PRE='' CARGO_PRIMARY_PACKAGE=1 LD_LIBRARY_PATH='/wrkdirs/usr/ports/audio/spotify-player/work/target/release/deps:/usr/local/lib' /usr/local/bin/rustc --crate-name spotify_player --edition=2021 spotify_player/src/main.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type bin --emit=dep-info,link -C opt-level=3 -C panic=abort -C lto -C codegen-units=1 -C debuginfo=1 --cfg 'feature="librespot-connect"' --cfg 'feature="librespot-playback"' --cfg 'feature="media-control"' --cfg 'feature="portaudio-backend"' --cfg 'feature="souvlaki"' --cfg 'feature="streaming"' --cfg 'feature="windows"' --cfg 'feature="winit"' -C metadata=842a5826db0fb510 -C extra-filename=-842a5826db0fb510 --out-dir /wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps --target i686-unknown-freebsd -C linker=cc -L dependency=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps -L dependency=/wrkdirs/usr/ports/audio/spotify-player/work/target/release/deps --extern anyhow=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libanyhow-492e95592132e846.rlib --extern async_trait=/wrkdirs/usr/ports/audio/spotify-player/work/target/release/deps/libasync_trait-eca6456b894ce27c.so --extern backtrace=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libbacktrace-f57ec322f0894034.rlib --extern chrono=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libchrono-acc36c673ba0f08f.rlib --extern clap=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libclap-60ee68e025a5e10f.rlib --extern clap_complete=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libclap_complete-30f3c0217e28ae2b.rlib --extern config_parser2=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libconfig_parser2-d438472295b8cdf9.rlib --extern crossterm=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libcrossterm-15dc999b95cc1ad1.rlib --extern dirs_next=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libdirs_next-02326dcb3231e062.rlib --extern flume=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libflume-47a756dbfdc912d2.rlib --extern librespot_connect=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/liblibrespot_connect-50ea358dd123aa2f.rlib --extern librespot_core=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/liblibrespot_core-cc2808a70f134f6f.rlib --extern librespot_playback=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/liblibrespot_playback-d8f8adce0273d879.rlib --extern log=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/liblog-52ca4419f4151259.rlib --extern maybe_async=/wrkdirs/usr/ports/audio/spotify-player/work/target/release/deps/libmaybe_async-b4f208a4b0e125db.so --extern once_cell=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libonce_cell-482f28c6cd93cfac.rlib --extern parking_lot=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libparking_lot-d8248febb18213d7.rlib --extern rand=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/librand-78475f571f4b4aec.rlib --extern tui=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libratatui-c7bb9188981c8543.rlib --extern regex=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libregex-544d63dea77fe560.rlib --extern reqwest=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libreqwest-f04879bc79d3cf23.rlib --extern rpassword=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/librpassword-be83209b7548322d.rlib --extern rspotify=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/librspotify-d5494f75020f48dc.rlib --extern serde=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libserde-edc3dcd9604a350e.rlib --extern serde_json=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libserde_json-2772e51251182b23.rlib --extern souvlaki=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libsouvlaki-c014ac77b78d1997.rlib --extern tokio=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libtokio-3fe91b33c7fa1ca1.rlib --extern toml=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libtoml-d20ca67802cbd3ca.rlib --extern tracing=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libtracing-e68690b439812601.rlib --extern tracing_subscriber=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libtracing_subscriber-b20445ea9a897d94.rlib --extern ttl_cache=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libttl_cache-195711d19044f579.rlib --extern winit=/wrkdirs/usr/ports/audio/spotify-player/work/target/i686-unknown-freebsd/release/deps/libwinit-2f7284f3133e8e8d.rlib -C link-arg=-fstack-protector-strong -L native=/usr/local/lib -L native=/usr/lib -L native=/usr/local/lib` (signal: 6, SIGABRT: process abort signal)
*** Error code 101
Jan 4 2024, 12:24 AM

Jan 3 2024

jfree requested review of D43294: audio/spotify-player: Update to v0.16.3.
Jan 3 2024, 11:45 AM

Nov 17 2023

jfree added a comment to D42640: audio/spotify-player: Update to v0.15.2.
In D42640#973086, @jrm wrote:

Good to see this made it into the tree. The Committer's Guide describes helpful metadata, such as Approved by: and Differential Revision: to include in your commit logs. See https://docs.freebsd.org/en/articles/committers-guide/#_include_appropriate_metadata_in_a_footer. Differential Revision: is helpful to refer a commit to review, and it also automatically closes the review after the commit. There is a commit log template you can install. See https://docs.freebsd.org/en/articles/committers-guide/#git-mini-primer-getting-started.

Nov 17 2023, 1:08 PM

Nov 16 2023

jfree committed R11:eab7a4b1efdc: audio/spotify-player: Update to v0.15.2 (authored by jfree).
audio/spotify-player: Update to v0.15.2
Nov 16 2023, 9:11 PM
jfree added a comment to D42640: audio/spotify-player: Update to v0.15.2.

Hey @markj. Need approval to commit.

Nov 16 2023, 9:00 PM
jfree added a reviewer for D42640: audio/spotify-player: Update to v0.15.2: markj.
Nov 16 2023, 9:00 PM
jfree requested review of D42640: audio/spotify-player: Update to v0.15.2.
Nov 16 2023, 8:17 PM

Nov 15 2023

jfree closed D42457: pgpkeys: Add key for jfree.
Nov 15 2023, 5:56 PM
jfree accepted D42457: pgpkeys: Add key for jfree.
Nov 15 2023, 5:56 PM
jfree closed D42455: committers-src: Add Jake Freeland.
Nov 15 2023, 5:55 PM
jfree added a comment to D42456: New src committer: Jake Freeland.
In D42456#969094, @imp wrote:

Do we have old commits to change to the FreeBSD address?

Nov 15 2023, 5:55 PM
jfree closed D42456: New src committer: Jake Freeland.
Nov 15 2023, 5:54 PM

Nov 4 2023

jfree committed R9:8ae6fb35d44e: New src committer: Jake Freeland (authored by jfree).
New src committer: Jake Freeland
Nov 4 2023, 12:14 AM
jfree committed R9:99f653a5632d: pgpkeys: Add key for jfree (authored by jfree).
pgpkeys: Add key for jfree
Nov 4 2023, 12:14 AM
jfree committed rGb0203aaa46fb: committers-src: Add Jake Freeland (authored by jfree).
committers-src: Add Jake Freeland
Nov 4 2023, 12:05 AM

Nov 3 2023

jfree requested review of D42457: pgpkeys: Add key for jfree.
Nov 3 2023, 4:28 PM
jfree requested review of D42456: New src committer: Jake Freeland.
Nov 3 2023, 4:27 PM
jfree requested review of D42455: committers-src: Add Jake Freeland.
Nov 3 2023, 4:25 PM

Oct 15 2023

jfree requested review of D42215: syslogd: Keep console and tty descriptors open.
Oct 15 2023, 9:49 PM
jfree archived P613 arcanist: failed to find commit.
Oct 15 2023, 9:34 PM
jfree created P613 arcanist: failed to find commit.
Oct 15 2023, 9:19 PM

Oct 5 2023

jfree added a comment to D40676: ktrace: Record detailed ECAPMODE violations.

I created this patch to make the Capsicumization experience less intimidating for inexperienced developers. Both David and Mariusz may not be the target audience for this change because they already know how to extract the information that the tracing provides. Developers that are unfamiliar with Capsicum's semantics could use this tracing mode to easily determine why their program is not working in capability mode. I think it provides a solid starting point so new developers don't get lost and discouraged.

Oct 5 2023, 11:50 PM · capsicum

Sep 28 2023

jfree added a comment to D40676: ktrace: Record detailed ECAPMODE violations.

Again, maybe I just need some more context to understand the reasoning behind this change.

Sep 28 2023, 6:39 PM · capsicum

Sep 4 2023

jfree accepted D41708: Linux ABI timerfd can't work on FreeBSD 14 stable..
Sep 4 2023, 4:28 PM

Sep 3 2023

jfree updated the diff for D41641: timerfd: Namespace pollution adjustments.

Reword comment to say the namespace instead of just namespace.

Sep 3 2023, 3:45 AM
jfree updated the diff for D41477: syslogd: Watch for dead pipe processes.

Update to avoid rebase conflicts.

Sep 3 2023, 3:27 AM
jfree updated the diff for D41467: syslogd: Enter capability mode.

Update to avoid rebase conflicts.

Sep 3 2023, 3:27 AM
jfree added inline comments to D41465: syslogd: Log messages using libcasper.
Sep 3 2023, 3:26 AM
jfree updated the diff for D41465: syslogd: Log messages using libcasper.

Create a new cap_filed structure and accompanying cfiled SLIST for filed integrity verification in libcasper's cap_p_open().

Sep 3 2023, 3:23 AM
jfree added inline comments to D41464: syslogd: Refresh configuration using libcasper.
Sep 3 2023, 3:20 AM
jfree updated the diff for D41464: syslogd: Refresh configuration using libcasper.

Create filed nvlist directly from readconfigfile() and address Mark's comments.

Sep 3 2023, 3:18 AM
jfree requested review of D41703: syslogd: Use anonymous union in struct filed.
Sep 3 2023, 3:16 AM

Sep 1 2023

jfree updated the diff for D41641: timerfd: Namespace pollution adjustments.

Add comment explaining intentional namespace pollution.

Sep 1 2023, 6:50 PM
jfree abandoned D38459: timerfd: Add native support for Linux's timerfd.

This patch has been applied to src under commit af93fea710385b2b11f0cabd377e7ed6f3d97c34.

Sep 1 2023, 6:41 PM · linuxkpi, Linux Emulation
jfree abandoned D40177: Improve header self-containment.
Sep 1 2023, 6:39 PM
jfree accepted D38459: timerfd: Add native support for Linux's timerfd.
Sep 1 2023, 6:35 PM · linuxkpi, Linux Emulation

Aug 30 2023

jfree requested review of D41641: timerfd: Namespace pollution adjustments.
Aug 30 2023, 4:41 AM
jfree requested review of D41640: timerfd: Relocate 32-bit compat code.
Aug 30 2023, 4:40 AM
jfree updated the diff for D41600: timerfd: Define a locking regime.

This patch was getting long, as @bsdimp pointed out. Split it into three separate patches. This patch will still define the locking regime.

Aug 30 2023, 4:39 AM

Aug 29 2023

jfree updated the summary of D41600: timerfd: Define a locking regime.
Aug 29 2023, 4:10 PM
jfree updated the diff for D41600: timerfd: Define a locking regime.

Include <sys/time.h> instead of <sys/timespec.h>. This causes intentional namespace pollution that mimics Linux.

Aug 29 2023, 4:09 PM

Aug 28 2023

jfree updated the diff for D41600: timerfd: Define a locking regime.
  • Remove locking around knlist_add() and set islocked arg to 0
  • Add space under declarations in timerfd_getboottime()
Aug 28 2023, 12:50 AM

Aug 27 2023

jfree added inline comments to D41600: timerfd: Define a locking regime.
Aug 27 2023, 3:08 PM
jfree added inline comments to D41600: timerfd: Define a locking regime.
Aug 27 2023, 12:31 AM

Aug 26 2023

jfree updated the summary of D41600: timerfd: Define a locking regime.
Aug 26 2023, 9:36 PM
jfree updated the diff for D41600: timerfd: Define a locking regime.
  • Do not initialize tfd_lock with MTX_RECURSE.
  • Add assertion in filt_timerfdread(), showing that the tfd_lock is held.
  • Place tfd_count in kn->kn_data.
Aug 26 2023, 9:35 PM
jfree added a comment to D41600: timerfd: Define a locking regime.
In D41600#948035, @kib wrote:

Recursive locks is much harder to reason about and correctly use. In this case there is no sense in making the lock recursive, at worst you should add assertions instead of acquiring it more than needed.

Aug 26 2023, 9:25 PM
jfree added inline comments to D41600: timerfd: Define a locking regime.
Aug 26 2023, 5:29 AM
jfree updated the diff for D41600: timerfd: Define a locking regime.
  • Add recursion to tfd_lock mtx.
  • Return boolean in filt_timerfdread().
  • Don't check if tfd == NULL.
  • Declare struct thread in timerfd.h instead of including sys/proc.h.
Aug 26 2023, 5:28 AM
jfree requested review of D41600: timerfd: Define a locking regime.
Aug 26 2023, 4:11 AM

Aug 25 2023

jfree updated the diff for D41465: syslogd: Log messages using libcasper.

Add assertions to guarantee that the iovec count returned by nvlist_get_nvlist_array() is less or equal to than TTYMSG_IOV_MAX, the maximum amount of iovecs allowed by ttymsg().

Aug 25 2023, 10:13 PM
jfree updated the diff for D41464: syslogd: Refresh configuration using libcasper.

Fix minor mistyping in populate_config(). filed_count should be declared as size_t, not uint64_t.

Aug 25 2023, 10:10 PM
jfree updated the diff for D41463: syslogd: Create syslogd libcasper service.

Fix incorrect handling of the nvlist size argument for in nvlist_get_nvlist_array() and nvlist_get_binary()

Aug 25 2023, 10:08 PM

Aug 24 2023

jfree added inline comments to D38459: timerfd: Add native support for Linux's timerfd.
Aug 24 2023, 11:44 PM · linuxkpi, Linux Emulation
jfree updated the diff for D40218: timerfd: Add manual page.

Address @grahamperrin's comments.

Aug 24 2023, 5:12 PM · manpages
jfree added inline comments to D41463: syslogd: Create syslogd libcasper service.
Aug 24 2023, 4:08 PM
jfree added inline comments to D41465: syslogd: Log messages using libcasper.
Aug 24 2023, 4:01 PM
jfree updated the diff for D41465: syslogd: Log messages using libcasper.

Don't manually add the iovec count to the nvlist. The iovec count is fetched when getting the nvlist iovec array.

Aug 24 2023, 3:57 PM
jfree updated the diff for D41464: syslogd: Refresh configuration using libcasper.

Don't manually add the filed count to the nvlist. The filed count is fetched when getting the nvlist filed array.

Aug 24 2023, 3:56 PM
jfree updated the diff for D41463: syslogd: Create syslogd libcasper service.
  • Address Mark's style(9) comments
  • Add error checking for strdup() in prop_filter_compile()
Aug 24 2023, 3:53 PM
jfree added inline comments to D41465: syslogd: Log messages using libcasper.
Aug 24 2023, 3:18 PM
jfree added inline comments to D41364: syslogd: Only use peerlist during flag parsing.
Aug 24 2023, 3:06 PM
jfree added inline comments to D41463: syslogd: Create syslogd libcasper service.
Aug 24 2023, 3:00 PM
jfree added inline comments to D41364: syslogd: Only use peerlist during flag parsing.
Aug 24 2023, 2:20 PM
jfree added a comment to D38459: timerfd: Add native support for Linux's timerfd.
In D38459#947334, @imp wrote:

Are there any tests?

Aug 24 2023, 2:08 PM · linuxkpi, Linux Emulation
jfree abandoned D38460: timerfd: Add libc syscall wrappers.
Aug 24 2023, 2:01 PM · linuxkpi, Linux Emulation
jfree abandoned D38497: specialfd: Extend interface to support many fds.
Aug 24 2023, 2:01 PM

Aug 23 2023

jfree updated the summary of D41467: syslogd: Enter capability mode.
Aug 23 2023, 10:14 PM
jfree updated the diff for D41467: syslogd: Enter capability mode.

Open the renamed syslogd.casper service (used to be syslogd.*).

Aug 23 2023, 10:13 PM
jfree updated the diff for D41459: syslogd: Use pipe to communicate with daemon.

Address Mark's comments

Aug 23 2023, 10:12 PM
jfree updated the diff for D41466: syslogd: Block timezone updating in capability mode.

Add XXX comment for needed future tzcode capability module

Aug 23 2023, 10:12 PM
jfree updated the diff for D41465: syslogd: Log messages using libcasper.
  • Do not allocate a new iovlist in nvlist_to_iovec()
  • Use calloc() when allocating memory for the iovlist array.
Aug 23 2023, 10:11 PM
jfree updated the diff for D41463: syslogd: Create syslogd libcasper service.
  • Change service name to syslogd.casper
  • Compile the regex exp in nvlist_to_prop_filter()
Aug 23 2023, 10:09 PM
jfree updated the diff for D41526: syslogd: Do not add shutdown sockets to the kqueue.
  • Do not add sockets with sl_recv == NULL to the kqueue.
  • Remove listen() altogether.
Aug 23 2023, 10:06 PM
jfree added inline comments to D41465: syslogd: Log messages using libcasper.
Aug 23 2023, 9:32 PM
jfree added inline comments to D41463: syslogd: Create syslogd libcasper service.
Aug 23 2023, 6:11 PM
jfree added inline comments to D41463: syslogd: Create syslogd libcasper service.
Aug 23 2023, 5:31 PM
jfree added a comment to D41403: syslogd: Create regression tests.

Do you have any updates to this patch? I think I will commit it first, since I'm still waiting for the stable/14 branch, but having extra tests poses no problems.

Aug 23 2023, 4:02 PM
jfree added a comment to D41526: syslogd: Do not add shutdown sockets to the kqueue.

I believe that you could leave the block which calls listen() alone (and I do think that block is totally bogus and could be deleted, syslogd doesn't handle listening sockets) and the problem would still be gone. Is that right?

Aug 23 2023, 4:00 PM
jfree added inline comments to D41477: syslogd: Watch for dead pipe processes.
Aug 23 2023, 3:45 PM
jfree added inline comments to D41463: syslogd: Create syslogd libcasper service.
Aug 23 2023, 3:37 PM
jfree added a comment to D41526: syslogd: Do not add shutdown sockets to the kqueue.

I don't really understand this change. You wrote, "To fix this, listen() should not be called if syslogd is in secure mode.", but nothing has changed with respect to listen() calls. All that's changed is that we don't call shutdown().

If the problem is that data on unread sockets is thrashing kevent(), why not avoid creating EVFILT_READ events for those sockets?

Notice the else on line 3751. If we're in secure mode and we have INET sockets, then sl_recv will be set to NULL, else we will listen. No listening happens in secure mode for INET sockets.

Now I'm even more confused. :) hints.ai_socktype = SOCK_DGRAM in the sole caller of socksetup(), so when is it the case that ai->ai_socktype != SOCK_DGRAM?

Aug 23 2023, 3:30 PM
jfree added a comment to D41526: syslogd: Do not add shutdown sockets to the kqueue.

I don't really understand this change. You wrote, "To fix this, listen() should not be called if syslogd is in secure mode.", but nothing has changed with respect to listen() calls. All that's changed is that we don't call shutdown().

If the problem is that data on unread sockets is thrashing kevent(), why not avoid creating EVFILT_READ events for those sockets?

Aug 23 2023, 3:04 PM

Aug 22 2023

jfree updated the summary of D41465: syslogd: Log messages using libcasper.
Aug 22 2023, 6:59 PM
jfree updated the diff for D41465: syslogd: Log messages using libcasper.

Use cap_xfer_nvlist() to transfer nvlists in cap_wallmsg(). Previously, cap_send_nvlist() was used without cap_recv_nvliust(), leaving an extra nvlist on libcasper's queue. This resulted in future nvlist transfers to retreive the wrong result.

Aug 22 2023, 6:54 PM
jfree updated the diff for D41464: syslogd: Refresh configuration using libcasper.

Update to avoid rebase conflicts

Aug 22 2023, 6:52 PM
jfree updated the diff for D41463: syslogd: Create syslogd libcasper service.

Make sure that filed->f_type is F_FILE before adding descriptor to nvlist

Aug 22 2023, 6:50 PM
jfree updated the diff for D41380: syslogd: Do not open console descriptor.

Close console/tty descriptors while config parsing.

Aug 22 2023, 6:49 PM
jfree abandoned D41401: ttymsg: Create ttymsgat().
Aug 22 2023, 6:47 PM

Aug 21 2023

jfree updated the diff for D41467: syslogd: Enter capability mode.

Use cap_ttymsg() instead of ttymsgat()

Aug 21 2023, 10:55 PM
jfree updated the diff for D41465: syslogd: Log messages using libcasper.

Add cap_ttymsg() and update to avoid rebasing conflicts

Aug 21 2023, 10:52 PM