Page MenuHomeFreeBSD

rlibby (Ryan Libby)
User

Projects

User Details

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

Recent Activity

Today

rlibby accepted D58272: malloc: Refactor redzone and KASAN handling.
Mon, Jul 20, 9:53 PM
rlibby added a comment to D58336: hwpstate_intel(4): use CPU_FOREACH instead of an IPI.

Fine, though please note I have a lot of rework of hwpstate_intel(4) incoming, in particular dropping this hybrid core detection code, so if you plan more/significant work in this area please liaise with me.

Mon, Jul 20, 8:42 PM

Yesterday

rlibby updated the diff for D58336: hwpstate_intel(4): use CPU_FOREACH instead of an IPI.

Refresh after conflict resolution for 02c440e20404 ("hwpstate_intel: Minimize ifdef for i386 build")

Sun, Jul 19, 8:10 PM
rlibby committed rG29d15d658d17: i386: provide PCPU pc_small_core for amd64 compat (authored by rlibby).
i386: provide PCPU pc_small_core for amd64 compat
Sun, Jul 19, 8:08 PM
rlibby closed D58335: i386: provide PCPU pc_small_core for amd64 compat.
Sun, Jul 19, 8:08 PM
rlibby accepted D58301: apei: Fix i386 build.

Comparing to sys/x86/include/bus.h and sys/dev/ntb/ntb_hw/ntb_hw_*.c, they just call the bus_space_tag_t parameter tag, and sys/x86/include/bus.h calls the bus_space_handle_t parameter bsh while ntb calls it handle. I think you could simplify those names. A verbatim copy of ntb's definitions would seem fine.

Sun, Jul 19, 7:44 PM
rlibby abandoned D58318: acpi: fix i386 build for bus_read_8 and bus_write_8.

D58301 seems a better alternative to this?

Sun, Jul 19, 4:41 PM
rlibby updated the test plan for D58318: acpi: fix i386 build for bus_read_8 and bus_write_8.
Sun, Jul 19, 4:07 PM
rlibby retitled D58336: hwpstate_intel(4): use CPU_FOREACH instead of an IPI from hwpstate_intel(4): use memorized hybrid_small_cores instead of an IPI to hwpstate_intel(4): use CPU_FOREACH instead of an IPI.
Sun, Jul 19, 3:40 PM
rlibby retitled D58335: i386: provide PCPU pc_small_core for amd64 compat from x86: memorize the existence of hybrid small cores to i386: provide PCPU pc_small_core for amd64 compat.
Sun, Jul 19, 3:39 PM
rlibby updated the diff for D58336: hwpstate_intel(4): use CPU_FOREACH instead of an IPI.

kib feedback and earlier olce comment: CPU_FOREACH

Sun, Jul 19, 3:37 PM
rlibby updated the diff for D58335: i386: provide PCPU pc_small_core for amd64 compat.

kib feedback from D58336: just provide pc_small_core on i386

Sun, Jul 19, 3:35 PM
rlibby added inline comments to D58336: hwpstate_intel(4): use CPU_FOREACH instead of an IPI.
Sun, Jul 19, 3:09 PM
rlibby updated the summary of D58335: i386: provide PCPU pc_small_core for amd64 compat.
Sun, Jul 19, 3:52 AM
rlibby updated the test plan for D58336: hwpstate_intel(4): use CPU_FOREACH instead of an IPI.
Sun, Jul 19, 3:52 AM
rlibby requested review of D58336: hwpstate_intel(4): use CPU_FOREACH instead of an IPI.
Sun, Jul 19, 3:44 AM
rlibby requested review of D58335: i386: provide PCPU pc_small_core for amd64 compat.
Sun, Jul 19, 3:44 AM
rlibby added a comment to D58332: i386: supply thermal interrupt handler.

Thank you very much for creating this.
I failed to notice the missing handler for i386 when I made my initial proposal. I apologize for that.

Sun, Jul 19, 3:35 AM
rlibby committed rGcb325dcedfa2: i386: supply thermal interrupt handler (authored by rlibby).
i386: supply thermal interrupt handler
Sun, Jul 19, 3:30 AM
rlibby closed D58332: i386: supply thermal interrupt handler.
Sun, Jul 19, 3:30 AM

Sat, Jul 18

rlibby updated the test plan for D58332: i386: supply thermal interrupt handler.
Sat, Jul 18, 11:58 PM
rlibby requested review of D58332: i386: supply thermal interrupt handler.
Sat, Jul 18, 11:56 PM
rlibby updated the test plan for D58318: acpi: fix i386 build for bus_read_8 and bus_write_8.
Sat, Jul 18, 3:11 AM
rlibby requested review of D58318: acpi: fix i386 build for bus_read_8 and bus_write_8.
Sat, Jul 18, 3:08 AM

Fri, Jul 17

rlibby added a comment to D58316: malloc: Fix domainset usage in malloc_domainset() for large allocs.

Maybe one day we should plumb it for malloc_dbg / memguard_alloc too.

Do you use memguard at all? I haven't needed to reach for it since KASAN was added.

Fri, Jul 17, 9:39 PM
rlibby accepted D58316: malloc: Fix domainset usage in malloc_domainset() for large allocs.

Maybe one day we should plumb it for malloc_dbg / memguard_alloc too.

Fri, Jul 17, 9:22 PM
rlibby added inline comments to D58272: malloc: Refactor redzone and KASAN handling.
Fri, Jul 17, 8:33 PM
rlibby accepted D58312: uma: Enqueue full buckets in FIFO order when KASAN is configured.
Fri, Jul 17, 7:21 PM
rlibby added a comment to D58271: uma: Insert KASAN redzones after slab-allocated items.

I also wonder if we should have an option to add this redzone without KASAN. We could come up with a cheap-ish debugging feature to verify the redzone with uma_junk when we don't have KASAN. Not asking for that in this patch.

Fri, Jul 17, 7:16 PM
rlibby added a comment to D58271: uma: Insert KASAN redzones after slab-allocated items.

Add an assertion to item_ctor() that the returned item is properly
aligned. I couldn't see any pre-existing checks which verify this.

Fri, Jul 17, 7:11 PM
rlibby accepted D58270: uma: Avoid allocating from free buckets when KASAN is enabled.

The other thing that SMR does in this respect is it puts free buckets at the tail of uzd_buckets in zone_put_bucket. Did you think about whether you want that for KASAN also, to extend the length of time before reuse further?

Fri, Jul 17, 4:48 PM
rlibby accepted D58269: uma: Make an effort to defer reuse of items when KASAN is enabled.

Looks good.

Fri, Jul 17, 4:19 PM
rlibby accepted D58268: uma: Factor out the implementations of uma_zfree_{arg,smr}().

Looks good.

Fri, Jul 17, 4:07 PM

Thu, Jul 16

rlibby added a comment to D58269: uma: Make an effort to defer reuse of items when KASAN is enabled.

Looks fine modulo the uz_flags comment and style and history nits.

Thu, Jul 16, 7:26 PM
rlibby added a comment to D58268: uma: Factor out the implementations of uma_zfree_{arg,smr}().

BTW git arc can fetch patches from phabricator and apply them to a local tree, though of course that can fail, e.g., if the patch in phabricator needs a rebase. The following invocation will fetch and apply all of the patches in this series:

$ git arc patch -c -s -r D58272

Kind of cumbersome versus fetching a git branch, but hey...

Thu, Jul 16, 6:31 PM
rlibby accepted D58268: uma: Factor out the implementations of uma_zfree_{arg,smr}().

Style nits, but logic looks good.

Thu, Jul 16, 6:30 PM
rlibby added a comment to D58268: uma: Factor out the implementations of uma_zfree_{arg,smr}().

Just for review convenience, do you have a public git branch with the patch set?

Thu, Jul 16, 3:33 PM

Fri, Jul 10

rlibby closed D58130: fusefs: fix gcc build error with shadowed variable in tests.
Fri, Jul 10, 5:52 PM
rlibby committed rGc503d23a6ccb: fusefs: fix gcc build error with shadowed variable in tests (authored by rlibby).
fusefs: fix gcc build error with shadowed variable in tests
Fri, Jul 10, 5:52 PM

Thu, Jul 9

rlibby updated the test plan for D58130: fusefs: fix gcc build error with shadowed variable in tests.
Thu, Jul 9, 6:32 PM
rlibby requested review of D58130: fusefs: fix gcc build error with shadowed variable in tests.
Thu, Jul 9, 6:30 PM

Mon, Jun 29

rlibby committed rG2407abc9fb3b: witness: harden tunables for large settings (authored by rlibby).
witness: harden tunables for large settings
Mon, Jun 29, 5:14 PM
rlibby closed D57793: witness: harden tunables for large settings.
Mon, Jun 29, 5:13 PM

Fri, Jun 26

rlibby accepted D57893: loader.efi: Fix build with gcc due to pointer / int issues on 32-bit build.

Logic LGTM.

Fri, Jun 26, 8:20 PM
rlibby updated the diff for D57793: witness: harden tunables for large settings.

kib feedback

Fri, Jun 26, 6:22 PM

Thu, Jun 25

rlibby added inline comments to D57793: witness: harden tunables for large settings.
Thu, Jun 25, 6:25 PM
rlibby updated the diff for D57793: witness: harden tunables for large settings.

tweak comment and log message

Thu, Jun 25, 5:17 PM

Wed, Jun 24

rlibby added inline comments to D57793: witness: harden tunables for large settings.
Wed, Jun 24, 4:13 PM
rlibby updated the diff for D57793: witness: harden tunables for large settings.

markj feedback

Wed, Jun 24, 3:44 PM
rlibby added inline comments to D57793: witness: harden tunables for large settings.
Wed, Jun 24, 3:19 PM
rlibby updated the diff for D57793: witness: harden tunables for large settings.

whitespace fixup

Wed, Jun 24, 1:25 AM
rlibby updated the test plan for D57793: witness: harden tunables for large settings.
Wed, Jun 24, 1:19 AM
rlibby requested review of D57793: witness: harden tunables for large settings.
Wed, Jun 24, 1:10 AM

Jun 18 2026

rlibby committed rGca8a1c3c27b0: witness: add tunables debug.witness.lock_order_{data_count,hash_size} (authored by rlibby).
witness: add tunables debug.witness.lock_order_{data_count,hash_size}
Jun 18 2026, 4:17 AM
rlibby committed rG08180f1b613b: witness: actually set read-only tunables in time for witness_startup (authored by rlibby).
witness: actually set read-only tunables in time for witness_startup
Jun 18 2026, 4:17 AM
rlibby closed D57600: witness: add tunables debug.witness.lock_order_{data_count,hash_size}.
Jun 18 2026, 4:17 AM
rlibby closed D57613: witness: actually set read-only tunables in time for witness_startup.
Jun 18 2026, 4:17 AM

Jun 16 2026

rlibby added a comment to D57613: witness: actually set read-only tunables in time for witness_startup.

So, why mess with the types (int -> bool and int -> u_long)? Strictly speaking it is not necessary and I can revert it if you prefer. I note though that there is no TUNABLE_UINT() and a comment for TUNABLE_INT() suggests not to use it. I don't know why this is, but just converting to bool and u_long seems fine anyway.

Jun 16 2026, 11:29 PM
rlibby added reviewers for D57613: witness: actually set read-only tunables in time for witness_startup: markj, kib, glebius.
Jun 16 2026, 11:25 PM
rlibby updated the diff for D57600: witness: add tunables debug.witness.lock_order_{data_count,hash_size}.

Addressing problems uncovered in testing. I had assumed that the
mechanism used by debug.witness.witness_count actually worked, but it
didn't. I added a new patch D57613 to address the problem with
witness_count by itself, and then applied that fix here too. I also
fixed an alignment problem.

Jun 16 2026, 11:24 PM
rlibby requested review of D57613: witness: actually set read-only tunables in time for witness_startup.
Jun 16 2026, 11:19 PM

Jun 15 2026

rlibby added inline comments to D57600: witness: add tunables debug.witness.lock_order_{data_count,hash_size}.
Jun 15 2026, 5:31 PM
rlibby updated the test plan for D57600: witness: add tunables debug.witness.lock_order_{data_count,hash_size}.
Jun 15 2026, 4:06 PM
rlibby requested review of D57600: witness: add tunables debug.witness.lock_order_{data_count,hash_size}.
Jun 15 2026, 4:02 PM

Jun 10 2026

rlibby committed rG331613ddd8a5: Pause failpoint: replace mtx_sleep with tsleep (authored by Mark Ranger <markovic@internode.on.net>).
Pause failpoint: replace mtx_sleep with tsleep
Jun 10 2026, 9:20 PM
rlibby accepted D57521: callout: ddb: resolve symbol of callout function.

Looks good. I presume you've tested it?

Jun 10 2026, 3:35 PM

May 27 2026

rlibby attached a referenced file: F158031792: grep-executable-stack.3771.log.
May 27 2026, 5:19 PM
rlibby abandoned D56893: kern.mk: quiet bfd executable stack warnings.

Abandoning this for now, though I still think it would be fine to take. I addressed some of the underlying issues with D56894 and D56946.

May 27 2026, 5:19 PM

May 19 2026

rlibby committed rG296c174835cf: vnlru: avoid trigger calculation when force < 2 (authored by rlibby).
vnlru: avoid trigger calculation when force < 2
May 19 2026, 6:42 PM
rlibby closed D56950: vnlru: avoid trigger calculation when force < 2.
May 19 2026, 6:42 PM

May 16 2026

rlibby committed rG755c1e039adf: kernel: address executable stack warnings in amd64 gcc build (authored by rlibby).
kernel: address executable stack warnings in amd64 gcc build
May 16 2026, 8:26 PM
rlibby closed D56946: kernel: address executable stack warnings in amd64 gcc build.
May 16 2026, 8:25 PM

May 13 2026

rlibby committed rG33355275247c: vnlru: avoid cache line contention (authored by rlibby).
vnlru: avoid cache line contention
May 13 2026, 5:46 PM
rlibby committed rGe30e507a7737: vfs_bio: mark uma zone pointer __read_mostly (authored by rlibby).
vfs_bio: mark uma zone pointer __read_mostly
May 13 2026, 5:46 PM
rlibby committed rG2a56cedac2e4: bq_insert: delay the BUF_UNLOCK if not bd_flush()ing (authored by rlibby).
bq_insert: delay the BUF_UNLOCK if not bd_flush()ing
May 13 2026, 5:46 PM
rlibby closed D56951: vnlru: avoid cache line contention.
May 13 2026, 5:45 PM
rlibby closed D56949: vfs_bio: mark uma zone pointer __read_mostly.
May 13 2026, 5:45 PM
rlibby closed D56948: bq_insert: delay the BUF_UNLOCK if not bd_flush()ing.
May 13 2026, 5:45 PM

May 12 2026

rlibby updated the diff for D56950: vnlru: avoid trigger calculation when force < 2.

Also make the vnlru_read_freevnodes() call conditional.

May 12 2026, 7:15 PM
rlibby added a comment to D56950: vnlru: avoid trigger calculation when force < 2.

Regarding braces... I prefer to leave it with the braces. My preference is to apply to both branches if applied to one. Style says "may" be left out. There are many examples of the balanced use, including about 10 in this file.

May 12 2026, 6:20 PM
rlibby added a reviewer for D56949: vfs_bio: mark uma zone pointer __read_mostly: olce.
May 12 2026, 3:38 PM
rlibby added a comment to D56951: vnlru: avoid cache line contention.

Seems reasonable. Do you have any specific benchmark showing an actual improvement?

May 12 2026, 3:37 PM

May 11 2026

rlibby added reviewers for D56951: vnlru: avoid cache line contention: kib, mjg.
May 11 2026, 7:50 PM
rlibby added a reviewer for D56950: vnlru: avoid trigger calculation when force < 2: kib.
May 11 2026, 7:47 PM
rlibby added a reviewer for D56949: vfs_bio: mark uma zone pointer __read_mostly: kib.
May 11 2026, 7:45 PM
rlibby added reviewers for D56948: bq_insert: delay the BUF_UNLOCK if not bd_flush()ing: kib, markj, jeff.
May 11 2026, 7:45 PM
rlibby requested review of D56951: vnlru: avoid cache line contention.
May 11 2026, 7:43 PM
rlibby requested review of D56950: vnlru: avoid trigger calculation when force < 2.
May 11 2026, 7:43 PM
rlibby requested review of D56949: vfs_bio: mark uma zone pointer __read_mostly.
May 11 2026, 7:43 PM
rlibby requested review of D56948: bq_insert: delay the BUF_UNLOCK if not bd_flush()ing.
May 11 2026, 7:42 PM
rlibby updated the summary of D56946: kernel: address executable stack warnings in amd64 gcc build.
May 11 2026, 4:19 PM
rlibby requested review of D56946: kernel: address executable stack warnings in amd64 gcc build.
May 11 2026, 4:14 PM
rlibby committed rGbac7bd5038e0: linux: address executable stack warnings (authored by rlibby).
linux: address executable stack warnings
May 11 2026, 7:43 AM
rlibby closed D56894: linux: address executable stack warnings.
May 11 2026, 7:43 AM

May 10 2026

rlibby committed rG0f6c880fcecd: stand/i386: quiet executable stack warning (authored by rlibby).
stand/i386: quiet executable stack warning
May 10 2026, 4:44 AM
rlibby committed rG58e5b4dbd959: vfs_subr: mark uma zone and smr pointers __read_mostly (authored by rlibby).
vfs_subr: mark uma zone and smr pointers __read_mostly
May 10 2026, 4:43 AM
rlibby closed D56908: stand/i386: quiet executable stack warning.
May 10 2026, 4:43 AM
rlibby closed D56892: vfs_subr: mark uma zone and smr pointers __read_mostly.
May 10 2026, 4:43 AM

May 9 2026

rlibby updated the test plan for D56908: stand/i386: quiet executable stack warning.
May 9 2026, 7:49 PM
rlibby requested review of D56908: stand/i386: quiet executable stack warning.
May 9 2026, 7:48 PM