Page MenuHomeFreeBSD

dougm (Doug Moore)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 30 2017, 3:18 PM (387 w, 4 d)

Tauist. Bit twiddler. Advocate for continued logarithms.

Recent Activity

Yesterday

dougm requested review of D47863: vm_page: remove iter before iter free.
Mon, Dec 2, 7:15 AM

Sun, Dec 1

dougm added a comment to D47680: subr_pctrie: straightline climbing.

The timing results for 8-10 buildworlds, with and without this patch. Without:

Sun, Dec 1, 4:18 AM

Fri, Nov 29

dougm updated the diff for D47680: subr_pctrie: straightline climbing.

Drop the vm_page_iter_free() parts committed elsewhere.

Fri, Nov 29, 9:30 PM
dougm accepted D47829: vm: Micro-optimize page rename.
Fri, Nov 29, 6:58 PM
dougm added inline comments to D47829: vm: Micro-optimize page rename.
Fri, Nov 29, 6:16 PM

Thu, Nov 28

dougm updated the diff for D47695: vm_object: iterate to add pages in reconstruction.

Add a panic when a page duplication is found. Match param names between definition and declaration.

Thu, Nov 28, 6:44 PM
dougm added inline comments to D47829: vm: Micro-optimize page rename.
Thu, Nov 28, 6:39 PM
dougm added a comment to D47829: vm: Micro-optimize page rename.

Comments in vm_reserv.c need to be updated to reflect this change.

Thu, Nov 28, 5:12 PM

Wed, Nov 27

dougm updated the diff for D46895: pctrie: unlock writes without smr.

Define inline pctrie_setpop() to flip popmap bits from 0 to 1 and assert that they have become set. Use it in 3 places.

Wed, Nov 27, 8:52 PM

Tue, Nov 26

dougm added inline comments to D47044: pctrie: Introduce batch pctrie insertion routines.
Tue, Nov 26, 11:06 PM
dougm committed rG40c1672e886b: swap_pager: fix seek_data with invalid first page (authored by dougm).
swap_pager: fix seek_data with invalid first page
Tue, Nov 26, 6:16 PM
dougm closed D47767: swap_pager: fix seek_data with invalid first page.
Tue, Nov 26, 6:15 PM
dougm added a reviewer for D47767: swap_pager: fix seek_data with invalid first page: markj.
Tue, Nov 26, 6:06 PM
dougm requested review of D47767: swap_pager: fix seek_data with invalid first page.
Tue, Nov 26, 6:06 PM
dougm added inline comments to D47744: pctrie: Add a function for calculating the number of allocations for inserting a range of keys.
Tue, Nov 26, 10:16 AM

Mon, Nov 25

dougm requested review of D47730: vm_page: pass page to iter_remove.
Mon, Nov 25, 8:12 AM
dougm committed rGff4c19bb5427: vm_page: pass page to iter_free (authored by dougm).
vm_page: pass page to iter_free
Mon, Nov 25, 8:05 AM
dougm closed D47727: vm_page: pass page to iter_free.
Mon, Nov 25, 8:05 AM
dougm updated the diff for D47727: vm_page: pass page to iter_free.

Remove changes to vm_page_iter_remove.

Mon, Nov 25, 7:33 AM

Sun, Nov 24

dougm updated the diff for D47727: vm_page: pass page to iter_free.

Pass the removed page to vm_page_iter_remove, and functions that use it. Update comments. Reorder declarations.

Sun, Nov 24, 11:32 PM
dougm updated the diff for D47727: vm_page: pass page to iter_free.
Sun, Nov 24, 8:45 PM
dougm requested review of D47727: vm_page: pass page to iter_free.
Sun, Nov 24, 8:07 PM
dougm updated the diff for D47680: subr_pctrie: straightline climbing.

Apply suggestions from feedback on D46724 to improve performance.

Sun, Nov 24, 9:30 AM

Sat, Nov 23

dougm requested review of D47718: vm_map: replace list links with iterator.
Sat, Nov 23, 10:37 PM
dougm updated the diff for D47695: vm_object: iterate to add pages in reconstruction.

Drop the fix that @kib has committed separately.

Sat, Nov 23, 10:08 AM

Thu, Nov 21

dougm committed rG38e3125d6df9: device_pager: user iterators to free device pages (authored by dougm).
device_pager: user iterators to free device pages
Thu, Nov 21, 9:51 PM
dougm closed D47692: device_pager: user iterators to free device pages.
Thu, Nov 21, 9:51 PM
dougm requested review of D47695: vm_object: iterate to add pages in reconstruction.
Thu, Nov 21, 8:39 AM
dougm updated the diff for D47692: device_pager: user iterators to free device pages.

Drop length argument to cdev_mgtdev_pager_free_pages().

Thu, Nov 21, 6:31 AM
dougm updated the diff for D47692: device_pager: user iterators to free device pages.

Fix typo in tegra_bo.c.

Thu, Nov 21, 4:19 AM

Wed, Nov 20

dougm requested review of D47692: device_pager: user iterators to free device pages.
Wed, Nov 20, 11:45 PM
dougm committed rG18a8f4e586b1: vm_page: correct page iterator patch (authored by dougm).
vm_page: correct page iterator patch
Wed, Nov 20, 6:05 PM
dougm committed rG5b78ff830791: vm_page: remove pages with iterators (authored by dougm).
vm_page: remove pages with iterators
Wed, Nov 20, 5:56 PM
dougm closed D46724: vm_object: use pciters to remove pages.
Wed, Nov 20, 5:56 PM
dougm updated the diff for D47680: subr_pctrie: straightline climbing.
Wed, Nov 20, 7:12 AM
dougm requested review of D47680: subr_pctrie: straightline climbing.
Wed, Nov 20, 4:57 AM

Mon, Nov 18

dougm updated the diff for D47656: pctrie: avoid pointless null check in lookup.
Mon, Nov 18, 11:06 PM
dougm updated the diff for D47656: pctrie: avoid pointless null check in lookup.

Use vm_radix_iter_found in swap_pager.c. Tweak the pctrie.h implement to avoid a pointless null check.

Mon, Nov 18, 7:33 AM
dougm requested review of D47656: pctrie: avoid pointless null check in lookup.
Mon, Nov 18, 5:19 AM

Sun, Nov 17

dougm updated the summary of D46724: vm_object: use pciters to remove pages.
Sun, Nov 17, 10:41 PM
dougm updated the diff for D46724: vm_object: use pciters to remove pages.

Avoid the object != NULL check in vm_page_iter_free.

Sun, Nov 17, 11:00 AM
dougm accepted D47644: vm: static-ize vm_page_alloc_after().
Sun, Nov 17, 6:15 AM

Sat, Nov 16

dougm committed rGf334c0b8b3cb: vm_page: use iterators in alloc_contig_domain (authored by dougm).
vm_page: use iterators in alloc_contig_domain
Sat, Nov 16, 7:17 PM
dougm closed D47036: vm_page: iterators in alloc_contig_domain.
Sat, Nov 16, 7:17 PM
dougm updated the summary of D46724: vm_object: use pciters to remove pages.
Sat, Nov 16, 6:53 PM
dougm updated the diff for D47036: vm_page: iterators in alloc_contig_domain.

alc update 11/16.

Sat, Nov 16, 6:22 PM

Fri, Nov 15

dougm updated the diff for D46724: vm_object: use pciters to remove pages.

Drop the bool argument from vm_page_free_toq. Turn vm_page_free_toq into a wrapper for the real implementation function, to which it passes 'true' as the bool argument.

Fri, Nov 15, 11:08 PM
dougm added inline comments to D46724: vm_object: use pciters to remove pages.
Fri, Nov 15, 6:17 PM
dougm updated the diff for D46724: vm_object: use pciters to remove pages.

Update some comments.

Fri, Nov 15, 6:16 PM

Thu, Nov 14

dougm abandoned D47271: pctrie: add function to transfer between pctries.
Thu, Nov 14, 4:55 AM
dougm updated the diff for D46724: vm_object: use pciters to remove pages.

Remove changes to subr_pctrie.c. Pass the iterator to vm_page_rename() to allow the page to be removed with the iterator and the appropriate page number.

Thu, Nov 14, 4:54 AM

Wed, Nov 13

dougm updated the diff for D46724: vm_object: use pciters to remove pages.

Rename vm_page_object_remove.

Wed, Nov 13, 6:54 PM
dougm added inline comments to D46724: vm_object: use pciters to remove pages.
Wed, Nov 13, 8:54 AM
dougm updated the diff for D46724: vm_object: use pciters to remove pages.

Rearrange into vm_page_iter_remove and vm_page_iter_free iter-based substitutes for the iter-less equivalents.

Wed, Nov 13, 8:49 AM
dougm accepted D47526: swap_pager: Ensure that swapoff puts swapped-in pages in page queues.
Wed, Nov 13, 8:11 AM

Sat, Nov 9

dougm committed rGf3895e983ce8: vm_radix: Add iter lookup_le interface (authored by dougm).
vm_radix: Add iter lookup_le interface
Sat, Nov 9, 7:38 PM
dougm closed D47046: vm_radix: Add iter lookup_le interface.
Sat, Nov 9, 7:37 PM
dougm added a comment to D46895: pctrie: unlock writes without smr.

Performance test:
Ran 12 buildworlds, without and with this change, on an amd64 machine to verify it did not harm performance there.
Without:

Sat, Nov 9, 8:29 AM

Tue, Nov 5

dougm added inline comments to D47044: pctrie: Introduce batch pctrie insertion routines.
Tue, Nov 5, 11:01 PM

Mon, Nov 4

dougm added inline comments to D47044: pctrie: Introduce batch pctrie insertion routines.
Mon, Nov 4, 7:55 PM
dougm updated the diff for D46895: pctrie: unlock writes without smr.

Rebase. Undo some function reordering that makes this reviewer easier, even if it preserves some odd ordering.

Mon, Nov 4, 7:35 PM
dougm committed rGa905c589be67: pctrie: breakup pctrie_root_store (authored by dougm).
pctrie: breakup pctrie_root_store
Mon, Nov 4, 7:25 PM
dougm closed D47347: pctrie: breakup pctrie_root_store.
Mon, Nov 4, 7:25 PM
dougm added inline comments to D47044: pctrie: Introduce batch pctrie insertion routines.
Mon, Nov 4, 7:19 PM

Nov 3 2024

dougm added inline comments to D47044: pctrie: Introduce batch pctrie insertion routines.
Nov 3 2024, 9:10 AM

Nov 1 2024

dougm updated the diff for D46895: pctrie: unlock writes without smr.

Rebase.

Nov 1 2024, 4:14 PM
dougm committed rGb2dbd3d3ae33: pctrie: reduce code duplication in PCTRIE_REMOVE_* (authored by dougm).
pctrie: reduce code duplication in PCTRIE_REMOVE_*
Nov 1 2024, 4:13 PM
dougm closed D47320: pctrie: reduce code duplication in PCTRIE_REMOVE_*.
Nov 1 2024, 4:12 PM

Oct 30 2024

dougm requested review of D47347: pctrie: breakup pctrie_root_store.
Oct 30 2024, 10:24 PM
dougm updated the diff for D45409: vm_phys: reduce touching of page->pool fields.

Refresh.

Oct 30 2024, 6:39 PM
dougm added a comment to D47044: pctrie: Introduce batch pctrie insertion routines.

If you're inserting batch [a,b,...,y.z], and if you began by inserting a and z with normal iter-insert, then your BATCH_SPLIT case would never happen and some of the complexity of batch_insert could be reduced. True or false?

Oct 30 2024, 3:12 AM

Oct 28 2024

dougm added a comment to D47046: vm_radix: Add iter lookup_le interface.

In D47036, I put it after vm_radix_iter_step, mostly because PCTRIE_ITER_LOOKUP_LE comes shortly after PCTRIE_ITER_STEP_GE in pctrie.h. 'step' and 'jump' are built on top of lookup_ge, so I kept them grouped with lookup_ge.

Oct 28 2024, 10:27 PM
dougm requested review of D47320: pctrie: reduce code duplication in PCTRIE_REMOVE_*.
Oct 28 2024, 10:04 PM
dougm updated the diff for D46895: pctrie: unlock writes without smr.

Rebase.

Oct 28 2024, 9:46 PM
dougm committed rGb02d6a6b5a07: pctrie: reduce code duplication in PCTRIE_INSERT_* (authored by dougm).
pctrie: reduce code duplication in PCTRIE_INSERT_*
Oct 28 2024, 9:45 PM
dougm closed D47288: pctrie: reduce code duplication in PCTRIE_INSERT_*.
Oct 28 2024, 9:45 PM

Oct 27 2024

dougm accepted D47298: vm: Eliminate unnecessary lock asserts.
Oct 27 2024, 5:53 PM

Oct 26 2024

dougm updated the diff for D47036: vm_page: iterators in alloc_contig_domain.

Tweak the first loop in pctrie_iter_lookup_le to make it 2 whole bytes smaller. And, for the _ge version, one byte smaller.

Oct 26 2024, 7:31 PM
dougm updated the diff for D47036: vm_page: iterators in alloc_contig_domain.

Drop ..._iter_lookup_lt().

Oct 26 2024, 6:47 PM
dougm committed rG39f6d1e7f835: swap_pager: iter in haspage, lookup, getpages (authored by dougm).
swap_pager: iter in haspage, lookup, getpages
Oct 26 2024, 6:08 PM
dougm closed D47232: swap_pager: iter in haspage, lookup, getpages.
Oct 26 2024, 6:08 PM

Oct 25 2024

dougm committed rG0d965bc03428: subr_pctrie: improve iter nbr search (authored by dougm).
subr_pctrie: improve iter nbr search
Oct 25 2024, 10:02 PM
dougm closed D47207: subr_pctrie: improve iter nbr search.
Oct 25 2024, 10:02 PM
dougm requested review of D47288: pctrie: reduce code duplication in PCTRIE_INSERT_*.
Oct 25 2024, 9:56 PM
dougm committed rGf11a9f19b298: pctrie: drop meaningless neighbor check (authored by dougm).
pctrie: drop meaningless neighbor check
Oct 25 2024, 5:39 PM
dougm closed D47277: pctrie: drop meaningless neighbor check.
Oct 25 2024, 5:38 PM

Oct 24 2024

dougm committed rGfaa9356f97d2: swap_pager: fix seek_hole assert (authored by dougm).
swap_pager: fix seek_hole assert
Oct 24 2024, 11:09 PM
dougm committed rG02e85d1c8a41: swap_pager: fix assert in seek_data (authored by dougm).
swap_pager: fix assert in seek_data
Oct 24 2024, 11:05 PM
dougm closed D47278: swap_pager: fix assert in seek_data.
Oct 24 2024, 11:05 PM
dougm added a comment to D47278: swap_pager: fix assert in seek_data.

Jenkins says:
sys/fs/tmpfs/times_test:holey -> panic: Lock vmobject not exclusively locked @ /usr/src/sys/vm/swap_pager.c:2490

Oct 24 2024, 10:12 PM
dougm requested review of D47278: swap_pager: fix assert in seek_data.
Oct 24 2024, 10:11 PM
dougm added a reviewer for D47207: subr_pctrie: improve iter nbr search: bnovkov.
Oct 24 2024, 9:20 PM
dougm requested review of D47277: pctrie: drop meaningless neighbor check.
Oct 24 2024, 9:19 PM
dougm committed rGdb08b0b04dec: tmpfs_vnops: move swap work to swap_pager (authored by dougm).
tmpfs_vnops: move swap work to swap_pager
Oct 24 2024, 7:26 PM
dougm closed D47212: tmpfs_vnops: move swap work to swap_pager.
Oct 24 2024, 7:26 PM
dougm added inline comments to D47044: pctrie: Introduce batch pctrie insertion routines.
Oct 24 2024, 7:15 PM
dougm committed rG34951b0b9e78: swap_pager: move scan_all_shadowed, use iterators (authored by dougm).
swap_pager: move scan_all_shadowed, use iterators
Oct 24 2024, 2:33 AM
dougm closed D47150: swap_pager: move scan_all_shadowed, use pctrie iterators.
Oct 24 2024, 2:33 AM

Oct 23 2024

dougm requested review of D47271: pctrie: add function to transfer between pctries.
Oct 23 2024, 10:42 PM

Oct 22 2024

dougm committed rGe2414d91d33f: vfs_subr: maintain sorted tailq (authored by dougm).
vfs_subr: maintain sorted tailq
Oct 22 2024, 9:59 PM