Page MenuHomeFreeBSD

brooks (Brooks Davis)
User

Projects

User Details

User Since
Jul 1 2014, 6:02 PM (607 w, 3 d)

Recent Activity

Thu, Feb 19

brooks committed rGdcbd1fccdc66: types.h: use central definition of offsetof() (authored by brooks).
types.h: use central definition of offsetof()
Thu, Feb 19, 4:26 PM
brooks committed rG89c3ae5fc9cc: build: add stddef.h to define ptraddr_t as required (authored by brooks).
build: add stddef.h to define ptraddr_t as required
Thu, Feb 19, 3:11 PM
brooks committed rGa31127e6dfbf: sys/syscallsubr.h: assorted tidying (authored by brooks).
sys/syscallsubr.h: assorted tidying
Thu, Feb 19, 3:11 PM
brooks committed rG2adc3f0db187: stddef.h: centralize definition of offsetof() (authored by brooks).
stddef.h: centralize definition of offsetof()
Thu, Feb 19, 3:11 PM
brooks committed rG1e1892795764: .github: support all stable branches (authored by brooks).
.github: support all stable branches
Thu, Feb 19, 3:11 PM
brooks committed rGcb59eec9ebbf: stddef.h: add ptraddr_t (authored by brooks).
stddef.h: add ptraddr_t
Thu, Feb 19, 3:11 PM
brooks closed D55308: build: add stddef.h to define ptraddr_t as required.
Thu, Feb 19, 3:11 PM
brooks closed D55309: sys/syscallsubr.h: assorted tidying.
Thu, Feb 19, 3:11 PM
brooks closed D55307: stddef.h: centralize definition of offsetof().
Thu, Feb 19, 3:11 PM
brooks closed D55305: stddef.h: add ptraddr_t.
Thu, Feb 19, 3:11 PM
brooks closed D53838: .github: support all stable branches.
Thu, Feb 19, 3:11 PM

Wed, Feb 18

brooks added reviewers for D53838: .github: support all stable branches: jrtc27, andrew.
Wed, Feb 18, 2:51 PM
brooks updated the diff for D55307: stddef.h: centralize definition of offsetof().

centralize definition

Wed, Feb 18, 2:40 PM
brooks retitled D55307: stddef.h: centralize definition of offsetof() from sys/stddef.h: guard offsetof definition to stddef.h: centralize definition of offsetof().
Wed, Feb 18, 2:39 PM
brooks committed R11:1580588b79e4: devel/llvm22: 22.1.0-rc3 (authored by brooks).
devel/llvm22: 22.1.0-rc3
Wed, Feb 18, 12:01 PM
brooks committed R11:f59cd32a1a9b: Mk: add LLVM 22 in default versions list (authored by eric_camachat.org).
Mk: add LLVM 22 in default versions list
Wed, Feb 18, 12:01 PM

Tue, Feb 17

brooks closed D55332: OpenSSL: install EVP_CIPHER_CTX_get_app_data.3 once.
Tue, Feb 17, 6:25 PM
brooks committed rGc4130a8a84e1: OpenSSL: install EVP_CIPHER_CTX_get_app_data.3 once (authored by brooks).
OpenSSL: install EVP_CIPHER_CTX_get_app_data.3 once
Tue, Feb 17, 6:25 PM
brooks requested review of D55332: OpenSSL: install EVP_CIPHER_CTX_get_app_data.3 once.
Tue, Feb 17, 5:19 PM
brooks added inline comments to D55308: build: add stddef.h to define ptraddr_t as required.
Tue, Feb 17, 11:20 AM
brooks updated the diff for D55308: build: add stddef.h to define ptraddr_t as required.

Use size_t as the fall back type

Tue, Feb 17, 11:19 AM

Mon, Feb 16

brooks added inline comments to D55308: build: add stddef.h to define ptraddr_t as required.
Mon, Feb 16, 3:27 PM
brooks updated the diff for D55308: build: add stddef.h to define ptraddr_t as required.

Use PTRADDR_TYPE where available

Mon, Feb 16, 3:26 PM
brooks requested review of D55310: getnetconfig: make nc_error a thread local variable.
Mon, Feb 16, 2:17 PM
brooks added a comment to D55309: sys/syscallsubr.h: assorted tidying.

The is a no-op change before I start trickling in about a large collection of kern_ and user_ functions required to handle integer pointer ABI compat with CHERI.

Mon, Feb 16, 2:11 PM
brooks requested review of D55309: sys/syscallsubr.h: assorted tidying.
Mon, Feb 16, 2:01 PM
brooks added a comment to D55308: build: add stddef.h to define ptraddr_t as required.

With this stack of changes it's possible to (cross)build world and kernel with ptraddr_t in a system header.

Mon, Feb 16, 1:51 PM
brooks requested review of D55308: build: add stddef.h to define ptraddr_t as required.
Mon, Feb 16, 1:50 PM
brooks requested review of D55307: stddef.h: centralize definition of offsetof().
Mon, Feb 16, 1:50 PM
brooks requested review of D55305: stddef.h: add ptraddr_t.
Mon, Feb 16, 1:47 PM

Mon, Feb 9

brooks accepted D55151: amd64: define and use STACKALIGN and REDZONE_SZ.
Mon, Feb 9, 4:33 PM

Fri, Feb 6

brooks accepted D55135: Sprinkle the use of freebsd32_uint64_t over compat32.

This is a nice improvement over the mix of adhoc versions.

Fri, Feb 6, 2:49 PM
brooks added inline comments to D55135: Sprinkle the use of freebsd32_uint64_t over compat32.
Fri, Feb 6, 11:41 AM
brooks accepted D54920: STACKALIGN: Reimplement in terms of __align_down.
Fri, Feb 6, 9:14 AM

Mon, Feb 2

brooks committed rG18d47c1856f4: rpc: correct resultproc_t's type (authored by brooks).
rpc: correct resultproc_t's type
Mon, Feb 2, 9:21 PM
brooks committed rGe236502a997d: clnt_broadcast(3): fix eachresult argument type (authored by brooks).
clnt_broadcast(3): fix eachresult argument type
Mon, Feb 2, 9:21 PM
brooks committed rG47413f23e503: clnt_broadcast(3): don't free function pointers (authored by brooks).
clnt_broadcast(3): don't free function pointers
Mon, Feb 2, 9:21 PM
brooks closed D54941: rpc: correct resultproc_t's type.
Mon, Feb 2, 9:21 PM
brooks closed D54940: clnt_broadcast(3): fix eachresult argument type.
Mon, Feb 2, 9:21 PM
brooks closed D54939: clnt_broadcast(3): don't free function pointers.
Mon, Feb 2, 9:20 PM
brooks committed R11:dcdd54847b9d: devel/llvm-cheri: new snapshot (authored by brooks).
devel/llvm-cheri: new snapshot
Mon, Feb 2, 5:59 PM
brooks committed R11:75ec43cc2c95: devel/llvm-morello: new snapshot (authored by brooks).
devel/llvm-morello: new snapshot
Mon, Feb 2, 5:59 PM
brooks committed R11:7c32287b8d20: devel/llvm22: 22.1.0 RC2 (authored by brooks).
devel/llvm22: 22.1.0 RC2
Mon, Feb 2, 5:59 PM
brooks added a comment to D54939: clnt_broadcast(3): don't free function pointers.
In D54939#1258282, @jhb wrote:

I suspect the old code just predates reliable TLS support in the toolchain so was using the guts of the implementation for pthread_key.

Mon, Feb 2, 4:46 PM
brooks added a comment to D55039: Introduce setrlimit_uid(2).

This makes me wonder why not setrlimit_type(id_t id, int /*idtype_t*/ type, int which, const struct rlimit *rlp), but it's not clear most types really want limits so it feels overall like premature generalization.

Mon, Feb 2, 4:36 PM

Fri, Jan 30

brooks updated the diff for D54941: rpc: correct resultproc_t's type.

rebase

Fri, Jan 30, 9:17 AM
brooks updated the diff for D54940: clnt_broadcast(3): fix eachresult argument type.

proc not prot in clnt_broadcast_resultproc_t

Fri, Jan 30, 9:17 AM
brooks added a comment to D54941: rpc: correct resultproc_t's type.

@brooks : not sure if my tree is out of date, but I found a few more references of potential concern:

% rg -l '\(resultproc_t\)' worktree/main/ | sort | sed -e 's,worktree/main/,,g'
...
usr.bin/rup/rup.c
usr.bin/rusers/rusers.c
usr.sbin/bootparamd/callbootd/callbootd.c
usr.sbin/ypbind/ypbind.c

Do those need to be changed?

Fri, Jan 30, 9:15 AM
brooks added a comment to D54940: clnt_broadcast(3): fix eachresult argument type.

Question on naming. I would read "resultproc" as "result process". What does "resultprot" stands for?

Fri, Jan 30, 9:07 AM

Thu, Jan 29

brooks requested review of D54941: rpc: correct resultproc_t's type.
Thu, Jan 29, 12:19 PM
brooks requested review of D54940: clnt_broadcast(3): fix eachresult argument type.
Thu, Jan 29, 12:17 PM
brooks added a comment to D54939: clnt_broadcast(3): don't free function pointers.

Alternatively one could avoid passing free to thr_keycreate, but the complexity of the thr_keycreate approach doesn't seem worth it to save sizeof(void *) of TLS storage.

Thu, Jan 29, 12:17 PM
brooks requested review of D54939: clnt_broadcast(3): don't free function pointers.
Thu, Jan 29, 12:15 PM

Wed, Jan 28

brooks accepted D54920: STACKALIGN: Reimplement in terms of __align_down.
Wed, Jan 28, 10:12 AM

Tue, Jan 27

brooks accepted D54894: wlanstat: Drop unneeded bsd.compiler.mk from Makefile.

NFC = "No functional change" in this context.

Tue, Jan 27, 9:26 AM

Mon, Jan 26

brooks accepted D54876: bsd.mkopt.mk: Allow OPT_FOO to be set to override FOO.

LGTM

Mon, Jan 26, 10:18 AM

Fri, Jan 23

brooks committed rGe17d7ab869bb: xdr_string: don't leak strings with xdr_free (authored by brooks).
xdr_string: don't leak strings with xdr_free
Fri, Jan 23, 11:08 AM
brooks closed D54825: xdr_string: don't leak strings with xdr_free.
Fri, Jan 23, 11:07 AM
brooks committed rGac5a19ec6989: rpc/xdr.h: make xdrproc_t always take two arguments (authored by brooks).
rpc/xdr.h: make xdrproc_t always take two arguments
Fri, Jan 23, 11:07 AM
brooks closed D54824: rpc/xdr.h: make xdrproc_t always take two arguments.
Fri, Jan 23, 11:07 AM

Jan 22 2026

brooks requested review of D54825: xdr_string: don't leak strings with xdr_free.
Jan 22 2026, 10:12 AM
brooks requested review of D54824: rpc/xdr.h: make xdrproc_t always take two arguments.
Jan 22 2026, 10:12 AM

Jan 20 2026

brooks accepted D54797: rpctls_impl.c: Use a direct cast to uintptr_t instead of __DECONST.
Jan 20 2026, 5:49 PM

Jan 19 2026

brooks added a comment to D54770: queue.3: splist into slist.3, stailq.3, list.3, and tailq.3.

I like the idea of the split, but I'm not convinced queue.3 should go away entirely. If nothing else this commit fails to remove all references to queue(3) in the tree and I suspect it's in some people's finger memory. I'd suggest transforming queue.3 into an intro-like manpage with a brief comparison of each of the relevant list/queue types.

Jan 19 2026, 9:52 PM · Contributor Reviews (src)
brooks committed R11:6cda2f3ed1b0: devel/llvm22: 22.1.0-RC1 (authored by brooks).
devel/llvm22: 22.1.0-RC1
Jan 19 2026, 2:09 PM
brooks committed R11:c1a068509119: devel/llvm22: bootstrap from devel/llvm21 (authored by brooks).
devel/llvm22: bootstrap from devel/llvm21
Jan 19 2026, 2:09 PM

Jan 16 2026

brooks added a comment to D54663: sys/abi_compat.h: fix UB.
In D54663#1250782, @kib wrote:
In D54663#1250766, @kib wrote:

After we agree on the approach and this change lands, I plan to do the pass over uses of val1/val2 in compat32, where int64_t val is used by the host ABI, converting them to freebsd32_uint64_t.

Please consider limiting this sweep to cases where the value will be mis-aligned relative to the struct.

Can you elaborate please, why? I understand that it formally changes nothing.

Jan 16 2026, 3:03 PM
brooks added a comment to D54663: sys/abi_compat.h: fix UB.
In D54663#1250766, @kib wrote:

After we agree on the approach and this change lands, I plan to do the pass over uses of val1/val2 in compat32, where int64_t val is used by the host ABI, converting them to freebsd32_uint64_t.

Jan 16 2026, 2:46 PM
brooks committed rGa01a4c0730c5: CODEOWNERS: register interest in some infrastructure (authored by brooks).
CODEOWNERS: register interest in some infrastructure
Jan 16 2026, 9:45 AM
brooks committed rGd78291b0e973: lib/virtual_oss: don't (over)link to libsamplerate (authored by brooks).
lib/virtual_oss: don't (over)link to libsamplerate
Jan 16 2026, 9:45 AM
brooks committed rG373c72ad5044: virtual_oss: build system tidying (authored by brooks).
virtual_oss: build system tidying
Jan 16 2026, 9:45 AM
brooks committed rGadab1dd6a70e: virtual_oss: build commands/libs in parallel (authored by brooks).
virtual_oss: build commands/libs in parallel
Jan 16 2026, 9:45 AM
brooks committed rG497a13601fb7: virtual_oss: remove needless .include in intermediate Makefile (authored by brooks).
virtual_oss: remove needless .include in intermediate Makefile
Jan 16 2026, 9:45 AM
brooks closed D54705: lib/virtual_oss: don't (over)link to libsamplerate.
Jan 16 2026, 9:45 AM
brooks closed D54704: vitual_oss: build system tidying.
Jan 16 2026, 9:45 AM
brooks closed D54703: virtual_oss: build commands/libs in parallel.
Jan 16 2026, 9:45 AM
brooks closed D54702: virtual_oss: remove needless .include in intermediate Makefile.
Jan 16 2026, 9:45 AM
brooks committed rG296ebf7b8a50: iflib: remove convoluted custom zeroing code (authored by brooks).
iflib: remove convoluted custom zeroing code
Jan 16 2026, 9:31 AM
brooks committed rG484edabb9455: iflib: remove convoluted custom zeroing code (authored by brooks).
iflib: remove convoluted custom zeroing code
Jan 16 2026, 9:30 AM

Jan 15 2026

brooks added a comment to D54704: vitual_oss: build system tidying.

Neither lib/virtual_oss nor usr.sbin/virtual_oss build with this patch:

root@freebsd:/mnt/src/lib/virtual_oss # make
Building /usr/obj/mnt/src/amd64.amd64/lib/virtual_oss/null/null.pico
In file included from /mnt/src/lib/virtual_oss/null/null.c:39:
/mnt/src/usr.sbin/virtual_oss/virtual_oss/int.h:33:10: fatal error: 'samplerate.h' file not found
   33 | #include <samplerate.h>
Jan 15 2026, 11:55 AM
brooks accepted D54673: linuxkpi: Clean up linux_shmem_file_setup() a bit.

In practice, this would be fine with default CHERI C, but broken with subobject bounds.

Jan 15 2026, 11:38 AM
brooks committed R11:241a2e105297: devel/llvm1[4567]: keep backport patches local (authored by brooks).
devel/llvm1[4567]: keep backport patches local
Jan 15 2026, 10:23 AM
brooks added inline comments to D54591: devstat: Provide 32-bit compatibility.
Jan 15 2026, 9:48 AM

Jan 14 2026

brooks committed R11:846c560f3722: devel/llvm-devel: update to the LLVM 22 branch point (authored by brooks).
devel/llvm-devel: update to the LLVM 22 branch point
Jan 14 2026, 3:10 PM
brooks committed R11:d5c827648ead: devel/llvm1[4567]: keep backport patches local (authored by brooks).
devel/llvm1[4567]: keep backport patches local
Jan 14 2026, 3:09 PM
brooks added a comment to D54702: virtual_oss: remove needless .include in intermediate Makefile.

@ivy Makefile.inc defines:

PACKAGE?=	sound

Is it a problem if the inclusion is removed from here?

Jan 14 2026, 3:01 PM
brooks accepted D54708: virtual_oss: Take MK_CUSE into account.

I'm not sure if this is the right sorting, but otherwise it's good.

Jan 14 2026, 2:59 PM
brooks added a comment to D54705: lib/virtual_oss: don't (over)link to libsamplerate.

The whole stack of review builds including subdirectories that aren't connected to the build (other then sndio since I didn't have libsndio installed). However, these changes are untested and I've only verified this last change by building and examining the library with nm to verity that they don't include surprising undefined symbols.

Jan 14 2026, 12:53 PM
brooks requested review of D54705: lib/virtual_oss: don't (over)link to libsamplerate.
Jan 14 2026, 12:50 PM
brooks requested review of D54704: vitual_oss: build system tidying.
Jan 14 2026, 12:50 PM
brooks requested review of D54703: virtual_oss: build commands/libs in parallel.
Jan 14 2026, 12:50 PM
brooks requested review of D54702: virtual_oss: remove needless .include in intermediate Makefile.
Jan 14 2026, 12:49 PM

Jan 9 2026

brooks added a comment to D54605: iflib: remove convoluted custom zeroing code.
In D54605#1248134, @erj wrote:

If this really matters we should find a more maintainable solution.

I'm assuming it probably doesn't matter, at least until someone profiles it. Thanks for looking at it!

Jan 9 2026, 10:01 PM
brooks added a reverting change for rG19728f31ae42: sys/_types.h: Unbreak gcc build: rG0a64d16cef17: sys/_types.h: avoid use of __has_feature().
Jan 9 2026, 2:43 PM
brooks added a reverting change for rG029a09f18032: sys/_types.h: Actually unbreak gcc build: rG0a64d16cef17: sys/_types.h: avoid use of __has_feature().
Jan 9 2026, 2:43 PM
brooks committed rG0a64d16cef17: sys/_types.h: avoid use of __has_feature() (authored by brooks).
sys/_types.h: avoid use of __has_feature()
Jan 9 2026, 2:43 PM
brooks committed rG31e7dc6b9a00: iflib: remove convoluted custom zeroing code (authored by brooks).
iflib: remove convoluted custom zeroing code
Jan 9 2026, 2:43 PM
brooks closed D54009: sys/_types.h: avoid use of __has_feature().
Jan 9 2026, 2:43 PM
brooks added a reverting change for D53986: sys/_types.h: Actually unbreak gcc build: rG0a64d16cef17: sys/_types.h: avoid use of __has_feature().
Jan 9 2026, 2:43 PM
brooks added a reverting change for D53980: sys/_types.h: Unbreak gcc build: rG0a64d16cef17: sys/_types.h: avoid use of __has_feature().
Jan 9 2026, 2:43 PM