$ kyua test -k /usr/tests/Kyuafile lib/libc/stdlib/tsearch_test
lib/libc/stdlib/tsearch_test:tdestroy_test -> passed [0.001s]
lib/libc/stdlib/tsearch_test:tsearch_test -> passed [0.030s]
- Feed Queries
- All Stories
- Search
- Feed Search
- Transactions
- Transaction Logs
Jan 16 2026
Jan 15 2026
Jan 14 2026
Remove a redundant NULL check.
Dec 28 2025
Dec 27 2025
In D54365#1242780, @kib wrote:Doug' version, with a fix to re-check for xtn != NULL.
Dec 26 2025
Remove blank line.
Dec 25 2025
Fix comment typo.
Add comments preceding each block of code that processes a range of consecutive pages. Reformat comment blocks.
Dec 24 2025
Add npages variable.
Dec 23 2025
Dec 22 2025
Apply suggestion from @alc.
Dec 21 2025
Since this was first posted for review, changes have made some parts redundant, and other parts incomplete. The patch can no longer be applied to main. Update it to use atop() in more places, and to simplify loops in one function.
Oct 15 2025
Oct 14 2025
In D53047#1212888, @rlibby wrote:Would you take a look at this patch and see if you think there's anything useful in this formulation? I was working on a similar way to try to make both compilers happy but I didn't get there. The patch in the link quiets the gcc warning and makes the gcc code shorter, but makes the clang code longer, clang apparently starts pushing registers onto the stack.
https://github.com/rlibby/freebsd/commit/2597adf5d05eedeacb283356920da7f3765d7f8f
Oct 12 2025
Oct 9 2025
It seems to me that a sufficiently smart compiler could use this to figure out that child would not be used uninitialized.
Oct 8 2025
This is adding a needless instruction to every RB_INSERT. Can that be avoided somehow?
I'd make style changes, but they're not important enough to block this, or to have a protracted discussion about it.
Jul 29 2025
Abandon an attempt to use the synchronization that comes with writing a new root after modifying the pctrie to avoid synchronization when performing the last write that modified a node of the pctrie, as this attempt is based on my misunderstanding of the memory consistency model, as reported verbally by @alc.
Jul 23 2025
Jul 18 2025
Jul 12 2025
Avoid extra lookup for fault. Use page_lookup().
Jul 10 2025
Handle the case where the pctrie is empty.
Jul 9 2025
Update to account for call to vm_page_lookup that was dropped from vm_fault.c.
Jul 8 2025
Avoid using range-storing arrays too large for the kernel stack.
Jul 6 2025
In D51179#1168320, @kib wrote:Then why not convert the check into the assertion in the final patch too? IMO it is good to have, since the path from lookup to this busy_sleep() line is somewhat long.
In D51179#1168320, @kib wrote:Then why not convert the check into the assertion in the final patch too? IMO it is good to have, since the path from lookup to this busy_sleep() line is somewhat long.
Jul 5 2025
If a pointer to the top of the pctrie were preserved, when would a search begin from where the last search left off, and when would a search begin from the top of the pctrie?
Avoid defining new pctrie methods; just copy the pctrie (root) before the search and search the copy so that only the root of the copy can be modified.
Jul 3 2025
In D51060#1167241, @kib wrote:The name pt_root and the term root is confusing IMO. At least it is worth adding a comment explaining the pt_root is some node, not necessary root.
In D51060#1167200, @kib wrote:What this revision basically does is changing the semantic of the pt_root. Instead being a real root of the trie, it becomes the starting point for search. The argument for not needed the real root is that we can always climb up to it from any node, following pn_parent. Am I right?
Jul 1 2025
Enhance more comments.
Update some comments. Fix some formatting. Add a function for stepping from one leaf to the next in the trie.
Jun 28 2025
Jun 26 2025
Update comments, asserts, convert one more lookup to lookup_readonly.
Jun 25 2025
Jun 22 2025
Jun 16 2025
Jun 15 2025
Update ObsoleteFiles.inc.
Jun 14 2025
Jun 13 2025
Jun 11 2025
Jun 10 2025
Discard the "leaf parents of root" part.
Jun 9 2025
Jun 6 2025
Jun 2 2025
In D50640#1156361, @markj wrote:Do you mean that slab->us_free should still have type int *? Then, is the idea that BIT_* would only access the low 32 bits of each bitset (us_free and slab_dbg_bits()), so it's okay to let them overlap from the perspective of BIT_*?
Could you shrink uma_slab at still use BITSET?