Page MenuHomeFreeBSD

dteske (Devin Teske)
src committer

Projects

User Details

User Since
Sep 2 2014, 7:30 PM (618 w, 6 d)

Creator/Maintainer of FreeBSD bootloader-menu/bsdconfig/dpv/dwatch/figpar/sysrc
Maintainer of FreeBSD base/bsdinstall/DTrace/forth/jail/netgraph/ports/vnet
Maintainer of FreeBSD ports: (net-p2p) shx (sysutils) bsdconfig cmocka DTraceToolkit dwatch-gource dwatch-pwsnoop host-setup mping ssd_report sysrc tzdialog zfs-stats-lite
Drive-by's: (devel) p4d p4web (emulators) xen xen-kernel (net) pptpclient (ports-mgmt) pkg (sysutils) getssl syslinux vzvol

Recent Activity

Today

dteske requested changes to D56167: bsdinstall(8): add desktop script.

See inline.

Tue, Jul 14, 5:19 AM

Yesterday

dteske updated the diff for D58093: dwatch: add nine diagnostic modules; grow errno, io, proc, sched.

Updates to mkpriv

Mon, Jul 13, 9:45 PM

Sun, Jul 12

dteske updated the test plan for D58185: bsdconfig: finish wlanconfig SSID join and wpa_supplicant(5) editing.
Sun, Jul 12, 1:58 AM
dteske requested review of D58185: bsdconfig: finish wlanconfig SSID join and wpa_supplicant(5) editing.
Sun, Jul 12, 1:56 AM
dteske added reviewers for D58184: bsdinstall: give pkgbase/distextract a progress bar: adrian, emaste, des, bapt, asiciliano.
Sun, Jul 12, 1:47 AM
dteske updated the test plan for D58184: bsdinstall: give pkgbase/distextract a progress bar.
Sun, Jul 12, 1:45 AM
dteske requested review of D58184: bsdinstall: give pkgbase/distextract a progress bar.
Sun, Jul 12, 1:43 AM
dteske updated the test plan for D58183: bsdconfig: dependency-aware parallel package installer with progress.
Sun, Jul 12, 1:43 AM
dteske updated the test plan for D58183: bsdconfig: dependency-aware parallel package installer with progress.
Sun, Jul 12, 1:42 AM
dteske requested review of D58183: bsdconfig: dependency-aware parallel package installer with progress.
Sun, Jul 12, 1:37 AM

Sat, Jul 11

dteske added a comment to D58118: [DNM] contrib/bsddialog: import version 1.2 rendering and API improvements.

I don't see any of this upstream at https://gitlab.com/alfix/bsddialog, nor even as a merge request there?

Sat, Jul 11, 3:00 PM
dteske retitled D58118: [DNM] contrib/bsddialog: import version 1.2 rendering and API improvements from contrib/bsddialog: import version 1.2 rendering and API improvements to [DNM] contrib/bsddialog: import version 1.2 rendering and API improvements.
Sat, Jul 11, 2:55 PM

Fri, Jul 10

dteske added a comment to D58133: bsdpv: revive dpv atop bsddialog.

Worth repeating:

Fri, Jul 10, 1:23 AM
dteske updated the test plan for D58133: bsdpv: revive dpv atop bsddialog.
Fri, Jul 10, 1:22 AM
dteske added reviewers for D58133: bsdpv: revive dpv atop bsddialog: manpages, Installer.
Fri, Jul 10, 1:18 AM
dteske added reviewers for D58133: bsdpv: revive dpv atop bsddialog: adrian, asiciliano, emaste, des.
Fri, Jul 10, 1:17 AM
dteske updated the summary of D58133: bsdpv: revive dpv atop bsddialog.
Fri, Jul 10, 1:17 AM
dteske updated the summary of D58133: bsdpv: revive dpv atop bsddialog.
Fri, Jul 10, 1:16 AM
dteske retitled D58133: bsdpv: revive dpv atop bsddialog from commit 1214275b63fee367987c62bda49bf8519353d2ef Author: Devin Teske <dteske@FreeBSD.org> Date: Fri Jul 3 09:48:34 2026 -0700 to bsdpv: revive dpv atop bsddialog.
Fri, Jul 10, 1:10 AM
dteske requested review of D58133: bsdpv: revive dpv atop bsddialog.
Fri, Jul 10, 1:10 AM

Thu, Jul 9

dteske updated the diff for D58093: dwatch: add nine diagnostic modules; grow errno, io, proc, sched.

Add mkpriv update Makefile to produce priv.d

Thu, Jul 9, 7:36 PM
dteske added a comment to D58118: [DNM] contrib/bsddialog: import version 1.2 rendering and API improvements.

This work supports the incoming bsdpv(3) library and bsdpv(1) utility -- which is dpv(3)/dpv(1) rebuilt to use bsddialog(1) instead of cdialog(1) that was removed from base

Thu, Jul 9, 6:38 AM
dteske updated the test plan for D58118: [DNM] contrib/bsddialog: import version 1.2 rendering and API improvements.
Thu, Jul 9, 6:37 AM
dteske updated the test plan for D58118: [DNM] contrib/bsddialog: import version 1.2 rendering and API improvements.
Thu, Jul 9, 6:35 AM
dteske added a reviewer for D58118: [DNM] contrib/bsddialog: import version 1.2 rendering and API improvements: des.
Thu, Jul 9, 6:34 AM
dteske added reviewers for D58118: [DNM] contrib/bsddialog: import version 1.2 rendering and API improvements: asiciliano, adrian, emaste.
Thu, Jul 9, 6:29 AM
dteske requested review of D58118: [DNM] contrib/bsddialog: import version 1.2 rendering and API improvements.
Thu, Jul 9, 6:29 AM

Tue, Jul 7

dteske updated the test plan for D58093: dwatch: add nine diagnostic modules; grow errno, io, proc, sched.
Tue, Jul 7, 10:46 PM
dteske added a reviewer for D58093: dwatch: add nine diagnostic modules; grow errno, io, proc, sched: manpages.
Tue, Jul 7, 10:40 PM
dteske added reviewers for D58093: dwatch: add nine diagnostic modules; grow errno, io, proc, sched: DTrace, markj.
Tue, Jul 7, 10:40 PM
dteske added a comment to D58093: dwatch: add nine diagnostic modules; grow errno, io, proc, sched.

Amended the squashed commit message to fold in the second batch (hang, jail, dtmalloc, mib, sched-latency, io-slow) and to note taint scope: no kernel changes, libexec profiles plus priv.d only. Tip commit is now 176b3b389fde (tree unchanged from c029c0fb59f4).

Tue, Jul 7, 10:31 PM
dteske updated the summary of D58093: dwatch: add nine diagnostic modules; grow errno, io, proc, sched.
Tue, Jul 7, 10:31 PM
dteske requested review of D58093: dwatch: add nine diagnostic modules; grow errno, io, proc, sched.
Tue, Jul 7, 10:27 PM
dteske updated the diff for D58066: Add sysconf(8) and libbsdconf(3).

Adversarial parser fuzzing (ASan/UBSan) found and fixed two figpar-inherited memory-safety bugs: NULL directive buffer on an empty-name line, and a bsdconf_strexpand() heap over-read/over-write when a value shrinks as backslash escapes collapse (plus a one-byte over-read on a trailing backslash)

Tue, Jul 7, 5:19 PM
dteske updated the diff for D58066: Add sysconf(8) and libbsdconf(3).

Adopt the abridged license form per style(9) and the FreeBSD license guide across all new files (requested by ziaee): copyright lines first, then SPDX-License-Identifier: BSD-2-Clause, dropping the full 2-clause text

Tue, Jul 7, 3:30 PM
dteske updated the diff for D58066: Add sysconf(8) and libbsdconf(3).

Touch-ups: --version prints '1.0 Jul-6,2026' (sysrc format), -h/--help advertise name[[+|-]=value], SYNOPSIS renders name[[+|-]=value] via sysrc.8's mdoc idiom

Tue, Jul 7, 3:32 AM
dteske updated the diff for D58066: Add sysconf(8) and libbsdconf(3).

Defaults-aware reads: the defaults file is always scanned first (like the boot loader), so 'sysconf loader acpi_video_load' reports the effective boot value; the defaults slot is read-only and never appears in -l/-L, write targeting, or removals

Tue, Jul 7, 3:27 AM
dteske updated the diff for D58066: Add sysconf(8) and libbsdconf(3).

Add rc pass-through to sysrc(8) (all arguments verbatim, unvalidated), sysrc-style name+=word/name-=word list editing for non-make targets, and --version

Tue, Jul 7, 3:06 AM
dteske updated the diff for D58066: Add sysconf(8) and libbsdconf(3).

Allow -A with -D as in sysrc(8): -D's scoping wins, -A keeps its dump-implying role, so -ADd describes all defaults and only defaults

Tue, Jul 7, 1:55 AM
dteske updated the diff for D58066: Add sysconf(8) and libbsdconf(3).

Let -d compose with the dump flags as in sysrc(8): -ad/-Ad/-aDd dump descriptions of every directive in scope; sysctl -ad pairs configured directives with kernel OID descriptions

Tue, Jul 7, 1:44 AM
dteske updated the diff for D58066: Add sysconf(8) and libbsdconf(3).

Honor loader_conf_files discovery from /boot/defaults/loader.conf (kevans); add sysrc-style -d/-D/-A defaults querying, LOADER_DEFAULTS, and a FILES section

Tue, Jul 7, 1:29 AM
dteske updated the diff for D58066: Add sysconf(8) and libbsdconf(3).

Echo 'name: old -> new' on writes after the fashion of sysctl(8)/sysrc(8), silenced by -q

Tue, Jul 7, 12:17 AM
dteske added a comment to D58066: Add sysconf(8) and libbsdconf(3).

I think I might update the code to print the before/after value. I think it should, when setting a value, like sysrc(8), show (for example) <old> -> <new>

Tue, Jul 7, 12:02 AM
dteske added a comment to D58066: Add sysconf(8) and libbsdconf(3).

Playing around (and yes, my hostname is literally "BSDCan2026" because this is running on my Framework Laptop 12 that I purchased just-prior-to and took to BSDCan 2026 conference):

Tue, Jul 7, 12:01 AM

Mon, Jul 6

dteske updated the test plan for D58066: Add sysconf(8) and libbsdconf(3).
Mon, Jul 6, 11:47 PM
dteske added a reviewer for D58066: Add sysconf(8) and libbsdconf(3): emaste.
Mon, Jul 6, 11:46 PM
dteske added a reviewer for D58066: Add sysconf(8) and libbsdconf(3): bdrewery.
Mon, Jul 6, 11:45 PM
dteske added reviewers for D58066: Add sysconf(8) and libbsdconf(3): des, manpages.
Mon, Jul 6, 11:45 PM
dteske added a reviewer for D58066: Add sysconf(8) and libbsdconf(3): adrian.
Mon, Jul 6, 11:45 PM
dteske added a reviewer for D58066: Add sysconf(8) and libbsdconf(3): kfv_kfv.io.
Mon, Jul 6, 11:44 PM
dteske requested review of D58066: Add sysconf(8) and libbsdconf(3).
Mon, Jul 6, 11:42 PM

Thu, Jul 2

dteske committed rGd1b62492f97f: acpi: ignore wake button press replayed by firmware on resume (authored by dteske).
acpi: ignore wake button press replayed by firmware on resume
Thu, Jul 2, 11:43 PM
dteske closed D57712: acpi: ignore wake button press replayed by firmware on resume.
Thu, Jul 2, 11:43 PM

Mon, Jun 29

dteske added a comment to D56167: bsdinstall(8): add desktop script.

@ziaee thank you for bringing this to my attention -- happy to review

Mon, Jun 29, 8:01 PM
dteske accepted D33381: rc.subr: Do not apply limits unless requested.

👍

Mon, Jun 29, 7:59 PM · rc
dteske added a reviewer for D54410: acpi: Implement suspend-to-idle loop: dteske.
Mon, Jun 29, 7:56 PM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

@olce — thanks again, and good call on the term. I've updated the diff: "sleep event" is gone in favor of the spec's wording — the comment now names the 0x80 path as the "S0 Power/Sleep Button Pressed" notify and 0x02 as "Device Wake," so nothing is mislabeled (this also covers Daniel's note on the same line). It's a comment-only change with no functional difference from what you accepted, so it should be a quick re-look.

Mon, Jun 29, 5:31 PM
dteske updated the diff for D57712: acpi: ignore wake button press replayed by firmware on resume.

Reword the grace-window comment to use the ACPI spec's exact notify names: 0x80 = "S0 Power/Sleep Button Pressed", 0x02 = "Device Wake" (was loosely called a "sleep event"). Addresses olce's and Daniel's review feedback on the wording at the replay-window comment. No functional change.

Mon, Jun 29, 5:28 PM
dteske added a comment to D55424: Retire dialog.
In D55424#1328418, @des wrote:

Here's a preview of the conversion: https://git.des.dev/des/dpv

As soon as you give me the go-ahead, I will push this to its intended location.

Mon, Jun 29, 5:24 PM
dteske added a comment to D55424: Retire dialog.

@asiciliano I don't think anyone wants to see LGPL re-infect the base.

Mon, Jun 29, 2:21 AM
dteske added a comment to D55424: Retire dialog.
In D55424#1328125, @des wrote:

Do you prefer GitHub or Codeberg, and what is your login there? Or would you prefer to host the repository yourself somewhere else?

Mon, Jun 29, 12:09 AM

Sun, Jun 28

dteske added a comment to D55424: Retire dialog.
In D55424#1328049, @des wrote:

or ports, if you want separate ports for each component

Sun, Jun 28, 10:01 PM
dteske accepted D55424: Retire dialog.
In D55424#1328049, @des wrote:

How does one construct a port to install software that has no home? Does that fall on me to rip it out an old base and port it to GitHub without the benefit of the FreeBSD build infrastructure?

We extract the source with complete history into a separate repository under the FreeBSD organization either on GitHub or on Codeberg, unless you prefer to host it somewhere else. We'll have to replace some of the missing build glue, but that's easily done. See for instance OPIE.

Sun, Jun 28, 9:59 PM
dteske added a comment to D55424: Retire dialog.

So, the question begs to be asked:

Sun, Jun 28, 9:11 PM
dteske added a comment to D55424: Retire dialog.
In D55424#1327998, @des wrote:

Does bsddialog have an interface that is similar to dpv?

Yes, bsddialog_progressview(). It's undocumented but it was developed specifically to replace libdpv in the installer.

Sun, Jun 28, 7:54 PM
dteske added a comment to D55424: Retire dialog.
In D55424#1327945, @des wrote:
In D55424#1327936, @des wrote:

To what end?

  1. bsdinstall for dist-based installations
  2. bsdconfig packages
  3. for utilization by humans that use the operating system

They've already been replaced in bsdinstall and bsdconfig, and “humans that use the operating system“ can install them from ports after we convert them.

Sun, Jun 28, 4:07 PM
dteske added a comment to D55424: Retire dialog.
In D55424#1327936, @des wrote:

I obviously do not want to see dpv, libdpv, and libfigpar removed from base. I would like to update them.

To what end? Nothing in base uses them and they've been disconnected since 2023. They're gone from 14 and 15 already. We offered to move them to ports months ago.

Sun, Jun 28, 3:06 PM
dteske added a comment to D55424: Retire dialog.

I obviously do not want to see dpv, libdpv, and libfigpar removed from base. I would like to update them.

Sun, Jun 28, 1:07 PM
dteske added a comment to D55424: Retire dialog.
In D55424#1327904, @des wrote:

@dteske have you given this any further thought?

Sun, Jun 28, 1:04 PM

Sat, Jun 27

dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

@git_danielschaefer.me — thank you, pulling that AML is exactly the right place to look.

Sat, Jun 27, 4:17 AM

Wed, Jun 24

dteske updated the summary of D57712: acpi: ignore wake button press replayed by firmware on resume.
Wed, Jun 24, 4:45 AM
dteske updated the diff for D57712: acpi: ignore wake button press replayed by firmware on resume.

Add 'MFC after: 2 weeks' to give the change soak time on HEAD before merging back.

Wed, Jun 24, 4:45 AM
dteske updated the diff for D57712: acpi: ignore wake button press replayed by firmware on resume.

Restore the pre-existing 'ACPICA Event Handlers' section comment to its function (acpi_invoke_sleep_eventhandler); the replay-window comment, define, and helper now sit above that header as a self-contained block. No functional change.

Wed, Jun 24, 4:37 AM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

@olce -- thanks for the review; I've worked in all of it. Summary of this update:

Wed, Jun 24, 4:11 AM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

@adrian -- thanks for pushing on this; asking for real traces was the right call and it turned up more than I expected.

Wed, Jun 24, 4:08 AM
dteske updated the summary of D57712: acpi: ignore wake button press replayed by firmware on resume.
Wed, Jun 24, 4:05 AM
dteske updated the summary of D57712: acpi: ignore wake button press replayed by firmware on resume.
Wed, Jun 24, 4:04 AM
dteske updated the diff for D57712: acpi: ignore wake button press replayed by firmware on resume.

Move the replay guard back inside the #if defined(amd64) || defined(i386) block in acpi_event_power_button_sleep(), per olce's note that the non-x86 paths don't support suspend/resume anyway. No functional change on x86.

Wed, Jun 24, 3:58 AM
dteske updated the diff for D57712: acpi: ignore wake button press replayed by firmware on resume.

Rework per review: take the resume timestamp before DEVICE_RESUME() to close a race the instrumentation exposed (PR 296243); window 1s (replay measured ~600 ms from that anchor); condense comments; move the guard ahead of the arch #if so it also covers the non-x86 path; rebased on current main.

Wed, Jun 24, 3:48 AM

Tue, Jun 23

dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

@adrian -- good call on the PR; I'll open one and dump the bootverbose traces, the EC _Qxx timing, and the per-cycle timestamps there, then link it from the comment block so the "why" survives long after our short-term memory fades. (Noted for the i2c one too.)

Tue, Jun 23, 4:58 PM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

@guest-seuros — thank you for the testing; validating across Apple, MSI, Gigabyte, Intel, Lenovo, Sony, Panasonic, Toshiba, AZW, Minisforum, Qotom, Beelink and coreboot is real work, and it's useful: it scopes the replayed-0x80 behavior tightly, which makes a guard easy to reason about.

Tue, Jun 23, 2:31 PM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

Hmm we don't have any issues on Linux though.
I think the system would still be asleep by the time you receive the power button event.

Tue, Jun 23, 4:16 AM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

@obiwac — great seeing you at BSDCan! Looks like your comment came through empty on my end (which is all my "??" meant — sorry if it read as terse). I'd really value your take on this one; you know this corner of ACPI better than I do, having written the s2idle loop, and I'd rather shape it with your input than land it without. Whenever you get a sec, mind re-posting whatever didn't make it through?

Tue, Jun 23, 3:42 AM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

@guest-seuros — thanks for digging into this, and for offering to test on hardware you have on hand; more data points across machines would be genuinely valuable, so please do share what you find.

Tue, Jun 23, 3:36 AM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

I checked the firmware behavior, it first triggers a wake-up via PWRBTN# pin

Here is how linux handles it: https://github.com/torvalds/linux/commit/e71eeb2a6bcc
It does not have a timeout, it just ignores powerbutton ACPI notify events in sleep, it requires a wake source.

Linux systemd HoldoffTimeoutSec defaults to 30 seconds where all events are ignored after a resume for a spell.

Documentation says just lid events are ignored, so not power button, so this is probably not the same logic.
https://www.freedesktop.org/software/systemd/man/latest/logind.conf.html#HoldoffTimeoutSec=

Tue, Jun 23, 3:26 AM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.
Tue, Jun 23, 2:27 AM

Sun, Jun 21

dteske attached a referenced file: F160113671: IMG_1089.jpeg.
Sun, Jun 21, 12:55 PM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

Do you know which firmware stack your machine is running ?

Sun, Jun 21, 12:54 PM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

One question: is the Framework running the latest BIOS/EC firmware available? A lot of suspend/resume bugs end up being fixed in firmware updates, especially around button handling, debounce logic or device reattachment during resume.

Sun, Jun 21, 12:44 PM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

I m not fully convinced this is a firmware issue.

While debugging ACPI, I have seen cases

Sun, Jun 21, 11:02 AM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

do other operating systems have to carry a similar quirk for this hardware? This laptop is well tested in arch linux, so someone must have noticed this.

Sun, Jun 21, 10:55 AM
dteske committed rGa4ed783cee2a: ig4: unconditionally un-idle the controller core on resume (authored by dteske).
ig4: unconditionally un-idle the controller core on resume
Sun, Jun 21, 5:30 AM
dteske closed D57673: ig4: unconditionally un-idle the controller core on resume.
Sun, Jun 21, 5:30 AM · drivers

Sat, Jun 20

dteske updated the diff for D57673: ig4: unconditionally un-idle the controller core on resume.

Address review: consolidate the un-idle/restore handshake into ig4iic_set_config() behind a force_restore argument (per adrian) so ig4iic_resume() no longer duplicates it; warn if the core never leaves reset after the COMP_TYPE poll; restore the matching pause() in the handshake.

Sat, Jun 20, 7:54 PM · drivers
dteske added inline comments to D57673: ig4: unconditionally un-idle the controller core on resume.
Sat, Jun 20, 7:33 PM · drivers
dteske updated the diff for D57712: acpi: ignore wake button press replayed by firmware on resume.

Address review (imp): hide the ignore message behind bootverbose and report elapsed time in microseconds.

Sat, Jun 20, 7:06 PM
dteske added a comment to D57712: acpi: ignore wake button press replayed by firmware on resume.

Without verbose boot, the message is gone.

Sat, Jun 20, 6:52 PM
dteske added inline comments to D57712: acpi: ignore wake button press replayed by firmware on resume.
Sat, Jun 20, 5:47 PM
dteske added inline comments to D57673: ig4: unconditionally un-idle the controller core on resume.
Sat, Jun 20, 5:27 PM · drivers
dteske added a reviewer for D57712: acpi: ignore wake button press replayed by firmware on resume: obiwac.
Sat, Jun 20, 5:00 PM