Page MenuHomeFreeBSD

rlibby (Ryan Libby)
User

Projects

User Details

User Since
Nov 12 2015, 8:14 PM (521 w, 4 d)

Recent Activity

Tue, Oct 28

rlibby committed rG4c1b0c70f40a: fsck_ffs: garbage collect calcsb (authored by rlibby).
fsck_ffs: garbage collect calcsb
Tue, Oct 28, 9:50 AM
rlibby committed rGcd6b58e50cda: ffs_truncate: correct INVARIANTS panic debug output (authored by rlibby).
ffs_truncate: correct INVARIANTS panic debug output
Tue, Oct 28, 9:50 AM
rlibby committed rGba753f180082: acpidump: quiet gcc -Wstrict-aliasing (authored by rlibby).
acpidump: quiet gcc -Wstrict-aliasing
Tue, Oct 28, 9:50 AM
rlibby committed rGefb1583237fb: acpidump: quiet GCC -Wmaybe-uninitialized (authored by rlibby).
acpidump: quiet GCC -Wmaybe-uninitialized
Tue, Oct 28, 9:50 AM
rlibby committed rGf699d8aa02a6: bitstring_test: fix bit_nclear/bit_nset tests for last iteration (authored by rlibby).
bitstring_test: fix bit_nclear/bit_nset tests for last iteration
Tue, Oct 28, 9:50 AM
rlibby committed rGa2ce3bd0df22: ddb show lockedvnods: avoid trap for ufs vnode under construction (authored by rlibby).
ddb show lockedvnods: avoid trap for ufs vnode under construction
Tue, Oct 28, 9:50 AM
rlibby committed rG0c1e50e59b00: ddb show allchains: avoid traps and show pointers for lockmgr and sx (authored by rlibby).
ddb show allchains: avoid traps and show pointers for lockmgr and sx
Tue, Oct 28, 9:50 AM

Mon, Oct 20

rlibby accepted D53224: quot: Make nusers unsigned.

Thanks for the follow up.

Mon, Oct 20, 7:21 PM

Fri, Oct 17

rlibby committed rG5bd3ce4ef629: achiem: quiet gcc -Warray-bounds (authored by rlibby).
achiem: quiet gcc -Warray-bounds
Fri, Oct 17, 10:59 PM
rlibby committed rGbf427a09b617: libalias: quiet gcc -Wcalloc-transposed-args (authored by rlibby).
libalias: quiet gcc -Wcalloc-transposed-args
Fri, Oct 17, 10:59 PM
rlibby closed D53152: achiem: quiet gcc -Warray-bounds.
Fri, Oct 17, 10:58 PM
rlibby closed D53151: libalias: quiet gcc -Wcalloc-transposed-args.
Fri, Oct 17, 10:58 PM
rlibby added a comment to D53152: achiem: quiet gcc -Warray-bounds.
In D53152#1214504, @mav wrote:

I think there should be 1, not 2.

Fri, Oct 17, 4:16 PM
rlibby updated the test plan for D53152: achiem: quiet gcc -Warray-bounds.
Fri, Oct 17, 7:06 AM
rlibby updated the test plan for D53151: libalias: quiet gcc -Wcalloc-transposed-args.
Fri, Oct 17, 7:05 AM
rlibby requested review of D53152: achiem: quiet gcc -Warray-bounds.
Fri, Oct 17, 7:00 AM
rlibby requested review of D53151: libalias: quiet gcc -Wcalloc-transposed-args.
Fri, Oct 17, 7:00 AM
rlibby committed rGc2fa94ad0868: stand/i386: quiet gcc -Warray-bounds (authored by rlibby).
stand/i386: quiet gcc -Warray-bounds
Fri, Oct 17, 6:51 AM
rlibby closed D53036: stand/i386: quiet gcc -Warray-bounds.
Fri, Oct 17, 6:51 AM

Thu, Oct 16

rlibby added a comment to D53036: stand/i386: quiet gcc -Warray-bounds.

Great, thanks. I'll push as is.

Thu, Oct 16, 3:40 PM

Wed, Oct 15

rlibby added a comment to D53036: stand/i386: quiet gcc -Warray-bounds.

So, I realized that --param min-pagesize was introduced in gcc 11.3 and this will cause an error for older gcc. @imp is it still gcc 9 that's the minimum? I can either wrap this with something like

.if ${COMPILER_TYPE} == "gcc" and ${COMPILER_VERSION} >= 110300
CFLAGS.gcc+= --param min-pagesize=1024
.endif

or just drop this as not worth the ugliness.

Wed, Oct 15, 5:26 PM
rlibby committed rGb679303544b3: fsck_ffs: garbage collect calcsb (authored by rlibby).
fsck_ffs: garbage collect calcsb
Wed, Oct 15, 7:26 AM
rlibby committed rGc44d2663a790: rb tree: remove strict aliasing violations (authored by rlibby).
rb tree: remove strict aliasing violations
Wed, Oct 15, 7:26 AM
rlibby committed rGa0ea4c04b526: ffs_truncate: correct INVARIANTS panic debug output (authored by rlibby).
ffs_truncate: correct INVARIANTS panic debug output
Wed, Oct 15, 7:25 AM
rlibby committed rG68501a93076a: mv88e151x: fix potential attach and autonegotiation issues (authored by rlibby).
mv88e151x: fix potential attach and autonegotiation issues
Wed, Oct 15, 7:25 AM
rlibby closed D52939: rb tree: remove strict aliasing violations.
Wed, Oct 15, 7:25 AM
rlibby closed D53038: fsck_ffs: garbage collect calcsb.
Wed, Oct 15, 7:25 AM
rlibby closed D53037: ffs_truncate: correct INVARIANTS panic debug output.
Wed, Oct 15, 7:25 AM
rlibby closed D45919: mv88e151x: fix potential attach and autonegotiation issues.
Wed, Oct 15, 7:25 AM

Tue, Oct 14

rlibby updated the diff for D45919: mv88e151x: fix potential attach and autonegotiation issues.

kp feedback: just initialize the copies to 0

Tue, Oct 14, 6:56 PM
rlibby added a comment to D53047: rb tree: change INSERT_COLOR to avoid always-true test.

I'll defer to you and kib as maintainers whether this is a good direction. Personally I do like the flattening of the structure that results from moving line 561/563 and following out of the loop, but I'm less sure about the initial loop unrolling. FWIW my preference for the warning would still be to just NULL initialize child.

Tue, Oct 14, 6:39 PM

Oct 10 2025

rlibby updated the test plan for D53036: stand/i386: quiet gcc -Warray-bounds.
Oct 10 2025, 11:47 PM
rlibby updated the test plan for D53038: fsck_ffs: garbage collect calcsb.
Oct 10 2025, 11:39 PM
rlibby updated the test plan for D53037: ffs_truncate: correct INVARIANTS panic debug output.
Oct 10 2025, 11:38 PM
rlibby requested review of D53038: fsck_ffs: garbage collect calcsb.
Oct 10 2025, 11:35 PM
rlibby requested review of D53037: ffs_truncate: correct INVARIANTS panic debug output.
Oct 10 2025, 11:34 PM
rlibby requested review of D53036: stand/i386: quiet gcc -Warray-bounds.
Oct 10 2025, 11:34 PM
rlibby added inline comments to D45919: mv88e151x: fix potential attach and autonegotiation issues.
Oct 10 2025, 5:06 PM
rlibby added a comment to D52940: rb tree: quiet gcc -Wmaybe-uninitialized.

It seems to me that a sufficiently smart compiler could use this to figure out that child would not be used uninitialized.

--- a/sys/sys/tree.h
+++ b/sys/sys/tree.h
@@ -540,6 +540,11 @@ name##_RB_INSERT_COLOR(struct name *head,                          \
        struct type *child, *child_up, *gpar;                           \
        __uintptr_t elmdir, sibdir;                                     \
                                                                        \
+       gpar = _RB_UP(parent, field);                                   \
+       if ((_RB_BITS(gpar) & _RB_LR) == _RB_LR) {                      \
+               __unreachable();                                        \
+               return (NULL);                                          \
+       }                                                               \
        do {                                                            \
                /* the rank of the tree rooted at elm grew */           \
                gpar = _RB_UP(parent, field);                           \
Oct 10 2025, 8:40 AM

Oct 9 2025

rlibby committed rGe474fdfde604: acpidump: quiet gcc -Wstrict-aliasing (authored by rlibby).
acpidump: quiet gcc -Wstrict-aliasing
Oct 9 2025, 8:09 PM
rlibby closed D52941: acpidump: quiet gcc -Wstrict-aliasing.
Oct 9 2025, 8:09 PM
rlibby added inline comments to D52939: rb tree: remove strict aliasing violations.
Oct 9 2025, 1:18 AM
rlibby updated the diff for D52939: rb tree: remove strict aliasing violations.

dougm feedback: _UPMOD_ macros don't improve clarity

Oct 9 2025, 12:46 AM
rlibby added a comment to D52940: rb tree: quiet gcc -Wmaybe-uninitialized.

@dougm, do you have a preference here? I'm happy to follow a suggestion or have you take it over.

Oct 9 2025, 12:33 AM

Oct 8 2025

rlibby updated the diff for D52939: rb tree: remove strict aliasing violations.

whitespace fixup

Oct 8 2025, 7:36 AM
rlibby updated the diff for D52939: rb tree: remove strict aliasing violations.

kib feedback: macro names could be more clear about modifying the
argument. I went with "MOD" instead of "SET".

Oct 8 2025, 7:27 AM
rlibby updated the diff for D52940: rb tree: quiet gcc -Wmaybe-uninitialized.

kib feedback

Oct 8 2025, 5:59 AM

Oct 7 2025

rlibby added a reviewer for D45919: mv88e151x: fix potential attach and autonegotiation issues: kp.
Oct 7 2025, 6:05 PM
rlibby retitled D52941: acpidump: quiet gcc -Wstrict-aliasing from acpidump: quiet GCC -Wstrict-aliasing to acpidump: quiet gcc -Wstrict-aliasing.
Oct 7 2025, 6:04 PM
rlibby updated the test plan for D52940: rb tree: quiet gcc -Wmaybe-uninitialized.
Oct 7 2025, 6:04 PM
rlibby updated the test plan for D52939: rb tree: remove strict aliasing violations.
Oct 7 2025, 6:04 PM

Oct 6 2025

rlibby added a comment to D52939: rb tree: remove strict aliasing violations.

There are other options for how to spell the internal macros. I'm open to something else that might be more clear. Something in particular I considered is just providing

#define _RB_OP_RVAL(elm, op, dir)	((__typeof(elm))		\
					((__uintptr_t)(elm) op (dir)))
#define	_RB_OP(elm, op, dir)	((elm) = _RB_OP_RVAL((elm), op, (dir)))
#define	_RB_OPUP(elm, field, op, dir)	_RB_OP(_RB_UP((elm), field), op, (dir))

and not _RB_{OR,XOR,ORUP,XORUP} and then having the rb code look like e.g.

			_RB_OPUP(parent, field, ^, elmdir);

instead of _RB_XORUP(parent, field, elmdir).

Oct 6 2025, 5:58 PM
rlibby requested review of D52941: acpidump: quiet gcc -Wstrict-aliasing.
Oct 6 2025, 5:47 PM
rlibby requested review of D52940: rb tree: quiet gcc -Wmaybe-uninitialized.
Oct 6 2025, 5:44 PM
rlibby requested review of D52939: rb tree: remove strict aliasing violations.
Oct 6 2025, 5:29 PM

Oct 3 2025

rlibby committed rGdaf4da4d0971: acpidump: quiet GCC -Wmaybe-uninitialized (authored by rlibby).
acpidump: quiet GCC -Wmaybe-uninitialized
Oct 3 2025, 10:57 PM
rlibby committed rGe7e958d83d85: ddb show allchains: avoid traps and show pointers for lockmgr and sx (authored by rlibby).
ddb show allchains: avoid traps and show pointers for lockmgr and sx
Oct 3 2025, 5:56 AM
rlibby closed D52794: ddb show allchains: avoid traps and show pointers for lockmgr and sx.
Oct 3 2025, 5:55 AM

Oct 2 2025

rlibby updated the test plan for D52794: ddb show allchains: avoid traps and show pointers for lockmgr and sx.
Oct 2 2025, 7:02 PM
rlibby created P673 D52794 test demo.
Oct 2 2025, 7:01 PM
rlibby committed rG54b24b9da8be: bitstring_test: fix bit_nclear/bit_nset tests for last iteration (authored by rlibby).
bitstring_test: fix bit_nclear/bit_nset tests for last iteration
Oct 2 2025, 4:43 PM
rlibby closed D45893: bitstring_test: fix bit_nclear/bit_nset tests for last iteration.
Oct 2 2025, 4:43 PM
rlibby updated the diff for D45893: bitstring_test: fix bit_nclear/bit_nset tests for last iteration.

asomers feedback: use ATF_REQUIRE_EQ family of tests.

Oct 2 2025, 6:00 AM

Oct 1 2025

rlibby added a comment to D45893: bitstring_test: fix bit_nclear/bit_nset tests for last iteration.

So is -1 being cast to true?

Oct 1 2025, 11:21 PM
rlibby added a comment to D45893: bitstring_test: fix bit_nclear/bit_nset tests for last iteration.

Apologies, trying to recall. IIRC...

Oct 1 2025, 10:37 PM
rlibby updated the test plan for D45893: bitstring_test: fix bit_nclear/bit_nset tests for last iteration.
Oct 1 2025, 9:41 PM
rlibby committed rG76157a63a0c6: ddb show lockedvnods: avoid trap for ufs vnode under construction (authored by rlibby).
ddb show lockedvnods: avoid trap for ufs vnode under construction
Oct 1 2025, 6:33 PM
rlibby closed D52795: ddb show lockedvnods: avoid trap for ufs vnode under construction.
Oct 1 2025, 6:33 PM

Sep 30 2025

rlibby updated the test plan for D52795: ddb show lockedvnods: avoid trap for ufs vnode under construction.
Sep 30 2025, 5:41 PM
rlibby updated the diff for D52795: ddb show lockedvnods: avoid trap for ufs vnode under construction.

mjg feedback: indicate when i_din2 is NULL

Sep 30 2025, 5:39 PM
rlibby added a comment to D52795: ddb show lockedvnods: avoid trap for ufs vnode under construction.

Alternately, we could fib and do

printf(", extsize=%d", ip->i_din2 != NULL ? ip->i_din2->di_extsize : 0);
Sep 30 2025, 5:24 PM
rlibby added a comment to D52795: ddb show lockedvnods: avoid trap for ufs vnode under construction.

Sure, I'm ambivalent, I just wanted to fix the trap. I'll prepare the patch.

Sep 30 2025, 5:16 PM
rlibby added a comment to D52795: ddb show lockedvnods: avoid trap for ufs vnode under construction.
In D52795#1206234, @mjg wrote:

maybe print that the pointer is NULL?

Sep 30 2025, 4:34 PM
rlibby updated the test plan for D52795: ddb show lockedvnods: avoid trap for ufs vnode under construction.
Sep 30 2025, 7:26 AM
rlibby updated the test plan for D52794: ddb show allchains: avoid traps and show pointers for lockmgr and sx.
Sep 30 2025, 7:24 AM
rlibby requested review of D52795: ddb show lockedvnods: avoid trap for ufs vnode under construction.
Sep 30 2025, 7:21 AM
rlibby requested review of D52794: ddb show allchains: avoid traps and show pointers for lockmgr and sx.
Sep 30 2025, 7:20 AM

Nov 13 2024

rlibby committed R9:9b63a580c10e: Update PGP key for rlibby@ (authored by rlibby).
Update PGP key for rlibby@
Nov 13 2024, 9:07 PM

Aug 14 2024

rlibby added a comment to D46289: ttm_bo_vm: avoid lookup before insert.

I'm okay with the idea but I'm a little worried that it changes the semantics of vm_page_insert / vm_page_insert_after, which I just preserved with the insert_lookup patch. Those two procedures have several callers. However, several of the callers appear to be broken (lacking error checks), so maybe we should audit them all anyway.

Aug 14 2024, 7:01 AM

Jul 20 2024

rlibby committed rG90818083d795: ipf: correct size limit in snprintf (authored by rlibby).
ipf: correct size limit in snprintf
Jul 20 2024, 4:15 PM
rlibby closed D45899: ipf: correct size limit in snprintf.
Jul 20 2024, 4:15 PM

Jul 19 2024

rlibby added a comment to D46041: kyua: fix gcc13 builds.

After some experiments, I think that [[noreturn]] is not a solution that either clang or g++ will accept.

Jul 19 2024, 11:01 PM
rlibby added a comment to D46014: fwcontrol: Allocate full fw_asyreq structures passed to the kernel.
In D46014#1049503, @jhb wrote:

Also, I think this kind of pattern is behind many of our -Warray-bounds
violations too, where we allocate a part of a structure and then rely on
code referring to only those parts. Especially in areas like cam. This
one is a little different in that we apparently also actually access
beyond the short allocation.

Well, some of those are due to using [0] arrays instead of the more modern syntax for variable length arrays.

Jul 19 2024, 4:02 PM

Jul 17 2024

rlibby accepted D46005: libcasper: Consistently use item count as the first argument to calloc.
Jul 17 2024, 8:29 PM
rlibby accepted D46007: elftoolchain: Consistently use item count as the first argument to calloc.

Hmm, I've been avoiding addressing warnings in contrib...

Jul 17 2024, 8:28 PM
rlibby accepted D46013: ctld: Consistently use item count as the first argument to calloc.
Jul 17 2024, 8:25 PM
rlibby accepted D46012: bsdinstall: Consistently use item count as the first argument to calloc.
Jul 17 2024, 8:24 PM
rlibby added a comment to D46014: fwcontrol: Allocate full fw_asyreq structures passed to the kernel.

I guess you can also consider if you want to make the malloc spelling more conventional. Don't need the casts, and can now do sizeof(*asyreq). I'm ambivalent, but in case you hadn't considered it.

Jul 17 2024, 8:23 PM
rlibby accepted D46014: fwcontrol: Allocate full fw_asyreq structures passed to the kernel.

I don't know this code but I'm assuming that we don't really care about
the overhead here or performance generally for this ioctl. In other
words, we don't need a longer term fix to do a saner amount of copying,
correct? It seems that we never actually use asyreq->data in the ioctl,
so we're now allocating and passing around an extra 2k because of a
weird definition?

Jul 17 2024, 8:19 PM
rlibby accepted D46011: ministat: Consistently use item count as the first argument to calloc.
Jul 17 2024, 7:55 PM
rlibby accepted D46010: recoverdisk: Consistently use item count as the first argument to calloc.
Jul 17 2024, 7:54 PM
rlibby accepted D46009: md5: Consistently use item count as the first argument to calloc.
Jul 17 2024, 7:54 PM
rlibby accepted D46008: lib80211: Consistently use item count as the first argument to calloc.
Jul 17 2024, 7:54 PM
rlibby accepted D46006: libgeom: Consistently use item count as the first argument to calloc.
Jul 17 2024, 7:54 PM

Jul 14 2024

rlibby updated subscribers of D45627: pctrie: create iterator.

I haven't looked at swap_pager.c yet. I'll get back to that hopefully tonight.

Jul 14 2024, 9:26 PM

Jul 9 2024

rlibby committed rG430be7e1ee71: sx: avoid gcc -Wunused-value (authored by rlibby).
sx: avoid gcc -Wunused-value
Jul 9 2024, 6:46 PM
rlibby committed rG6bd85498ec2d: bthidd: declare appropriate size bitstring (authored by rlibby).
bthidd: declare appropriate size bitstring
Jul 9 2024, 6:46 PM
rlibby committed rGf0a7df4a6cc9: ddb: make db_error reliably no-return (authored by rlibby).
ddb: make db_error reliably no-return
Jul 9 2024, 6:46 PM
rlibby committed rGff1c63671b73: kdb_sysctl_trap: suppress gcc -Warray-bounds (authored by rlibby).
kdb_sysctl_trap: suppress gcc -Warray-bounds
Jul 9 2024, 6:46 PM
rlibby closed D45875: sx: avoid gcc -Wunused-value.
Jul 9 2024, 6:46 PM