Page MenuHomeFreeBSD

jeff (Jeffrey Roberson)
User

Projects

User Details

User Since
Aug 6 2017, 12:45 AM (128 w, 6 d)

Recent Activity

Yesterday

jeff added inline comments to D23279: Remove some lingering page lock usages..
Fri, Jan 24, 1:56 AM
jeff accepted D23343: lockmgr: don't touch the lock after unlock.

I am happy with this change but I have not followed all code paths to be sure none were left out.

Fri, Jan 24, 1:53 AM
jeff accepted D23331: Handle a race of collapse with a retrying fault..

The goto is unfortunate but I see that without the loop becomes even weirder

Fri, Jan 24, 1:52 AM
jeff accepted D23344: vfs: stop unlocking the vnode upfront in vput.

thank you

Fri, Jan 24, 1:51 AM

Thu, Jan 23

jeff updated the diff for D22586: Implement safe memory reclamation in UMA..

Merge to latest uma changes.

Thu, Jan 23, 7:08 PM
jeff added a reviewer for D22586: Implement safe memory reclamation in UMA.: markj.
Thu, Jan 23, 7:06 PM
jeff committed rS357028: (fault 9/9) Move zero fill into a dedicated function to make the object lock.
(fault 9/9) Move zero fill into a dedicated function to make the object lock
Thu, Jan 23, 5:23 AM
jeff closed D23326: Move zero fill into its own function so that the object locking is more clear..
Thu, Jan 23, 5:23 AM
jeff committed rS357027: (fault 8/9) Restructure some code to reduce duplication and simplify flow.
(fault 8/9) Restructure some code to reduce duplication and simplify flow
Thu, Jan 23, 5:22 AM
jeff closed D23321: Restructure fault to eliminate a goto and label..
Thu, Jan 23, 5:22 AM
jeff committed rS357026: (fault 7/9) Move fault population and allocation into a dedicated function.
(fault 7/9) Move fault population and allocation into a dedicated function
Thu, Jan 23, 5:20 AM
jeff closed D23320: Move fault page allocation into its own routine..
Thu, Jan 23, 5:20 AM
jeff committed rS357025: (fault 6/9) Move getpages and associated logic into a dedicated function..
(fault 6/9) Move getpages and associated logic into a dedicated function.
Thu, Jan 23, 5:18 AM
jeff closed D23311: Move the fault getpages code into its own function..
Thu, Jan 23, 5:18 AM
jeff closed D23310: Move the backing_object chain traversal into its own function..
Thu, Jan 23, 5:14 AM
jeff committed rS357024: (fault 5/9) Move the backing_object traversal into a dedicated function..
(fault 5/9) Move the backing_object traversal into a dedicated function.
Thu, Jan 23, 5:14 AM
jeff committed rS357023: (fault 4/9) Move copy-on-write into a dedicated function..
(fault 4/9) Move copy-on-write into a dedicated function.
Thu, Jan 23, 5:11 AM
jeff closed D23304: Move cow into its own function..
Thu, Jan 23, 5:11 AM
jeff committed rS357022: (fault 3/9) Move map relookup into a dedicated function..
(fault 3/9) Move map relookup into a dedicated function.
Thu, Jan 23, 5:07 AM
jeff closed D23303: Move map relookup into its own function..
Thu, Jan 23, 5:07 AM
jeff committed rS357021: (fault 2/9) Move map lookup into a dedicated function..
(fault 2/9) Move map lookup into a dedicated function.
Thu, Jan 23, 5:06 AM
jeff closed D23302: Move map lookup into a separate function..
Thu, Jan 23, 5:06 AM
jeff committed rS357020: (fault 1/9) Move a handful of stack variables into the faultstate..
(fault 1/9) Move a handful of stack variables into the faultstate.
Thu, Jan 23, 5:03 AM
jeff closed D23301: Move a handful of stack variables into the faultstate..
Thu, Jan 23, 5:03 AM
jeff committed rS357017: Consistently use busy and vm_page_valid() rather than touching page bits.
Consistently use busy and vm_page_valid() rather than touching page bits
Thu, Jan 23, 4:55 AM
jeff closed D23283: Consistently use vm_page_valid() to validate pages..
Thu, Jan 23, 4:55 AM
jeff committed rS357015: Some architectures with DMAP still consume boot kva. Simplify the test for.
Some architectures with DMAP still consume boot kva. Simplify the test for
Thu, Jan 23, 3:38 AM
jeff committed rS357014: Block the thread lock in sched_throw() and use cpu_switch() to unblock.
Block the thread lock in sched_throw() and use cpu_switch() to unblock
Thu, Jan 23, 3:37 AM

Wed, Jan 22

jeff updated the summary of D23326: Move zero fill into its own function so that the object locking is more clear..
Wed, Jan 22, 9:10 PM
jeff created D23326: Move zero fill into its own function so that the object locking is more clear..
Wed, Jan 22, 9:03 PM
jeff updated the diff for D23311: Move the fault getpages code into its own function..

Correct return values. Don't send pager errors back to vm_fault().

Wed, Jan 22, 9:03 PM
jeff updated the summary of D23321: Restructure fault to eliminate a goto and label..
Wed, Jan 22, 7:25 PM
jeff created D23321: Restructure fault to eliminate a goto and label..
Wed, Jan 22, 7:23 PM
jeff updated the summary of D23320: Move fault page allocation into its own routine..
Wed, Jan 22, 7:22 PM
jeff created D23320: Move fault page allocation into its own routine..
Wed, Jan 22, 7:17 PM
jeff abandoned D23309: Move cow into its own function..
Wed, Jan 22, 7:17 PM
jeff added inline comments to D23311: Move the fault getpages code into its own function..
Wed, Jan 22, 6:43 PM
jeff accepted D23318: uma: fix zone domain overlaying pcpu cache with disabled cpus.

mea culpa. Can you commit to 12.x as well?

Wed, Jan 22, 6:39 PM
jeff added inline comments to D23310: Move the backing_object chain traversal into its own function..
Wed, Jan 22, 5:02 AM
jeff added inline comments to D23310: Move the backing_object chain traversal into its own function..
Wed, Jan 22, 3:11 AM
jeff updated the summary of D23311: Move the fault getpages code into its own function..
Wed, Jan 22, 3:10 AM
jeff updated the diff for D23311: Move the fault getpages code into its own function..

Fix a merge issue.

Wed, Jan 22, 3:08 AM
jeff created D23311: Move the fault getpages code into its own function..
Wed, Jan 22, 3:03 AM
jeff updated the summary of D23310: Move the backing_object chain traversal into its own function..
Wed, Jan 22, 3:02 AM
jeff created D23310: Move the backing_object chain traversal into its own function..
Wed, Jan 22, 2:59 AM
jeff created D23309: Move cow into its own function..
Wed, Jan 22, 2:59 AM
jeff updated the diff for D23303: Move map relookup into its own function..

Decrease indent. Remove dead comment. Add missing KERN_RESTART define.

Wed, Jan 22, 2:57 AM

Tue, Jan 21

jeff added inline comments to D23304: Move cow into its own function..
Tue, Jan 21, 9:09 PM
jeff added inline comments to D23303: Move map relookup into its own function..
Tue, Jan 21, 9:06 PM
jeff added inline comments to D23304: Move cow into its own function..
Tue, Jan 21, 7:58 PM
jeff updated the summary of D23304: Move cow into its own function..
Tue, Jan 21, 7:57 PM
jeff created D23304: Move cow into its own function..
Tue, Jan 21, 7:55 PM
jeff updated the summary of D23303: Move map relookup into its own function..
Tue, Jan 21, 7:53 PM
jeff updated the summary of D23302: Move map lookup into a separate function..
Tue, Jan 21, 7:51 PM
jeff updated the summary of D23301: Move a handful of stack variables into the faultstate..
Tue, Jan 21, 7:48 PM
jeff created D23303: Move map relookup into its own function..
Tue, Jan 21, 7:42 PM
jeff created D23302: Move map lookup into a separate function..
Tue, Jan 21, 7:42 PM
jeff created D23301: Move a handful of stack variables into the faultstate..
Tue, Jan 21, 7:41 PM
jeff accepted D23279: Remove some lingering page lock usages..
Tue, Jan 21, 6:28 PM
jeff accepted D23275: uma: report leaks more accurately.
Tue, Jan 21, 6:26 PM
jeff added inline comments to D23270: ULE: set td_oncpu before switching..
Tue, Jan 21, 6:25 PM
jeff committed rS356936: Move readahead and dropbehind fault functionality into a helper routine for.
Move readahead and dropbehind fault functionality into a helper routine for
Tue, Jan 21, 12:13 AM
jeff closed D23282: Move readahead into its own function..
Tue, Jan 21, 12:13 AM

Mon, Jan 20

jeff committed rS356933: Reduce object locking in vm_fault. Once we have an exclusively busied page we.
Reduce object locking in vm_fault. Once we have an exclusively busied page we
Mon, Jan 20, 10:50 PM
jeff closed D23034: Reduce object locking in vm_fault. The object is only needed until we have an exclusive busy..
Mon, Jan 20, 10:50 PM
jeff added a comment to D23184: 1/3 vfs: stop handling VI_OWEINACT in vget.

The mode == 0 issue is orthogonal. This guarantee was already broken for any filesystem that supported shared locks.

Mon, Jan 20, 9:53 PM
jeff accepted D23184: 1/3 vfs: stop handling VI_OWEINACT in vget.

I agree with mjg. Inactive has been a half promise since shared locking went in. This is really my mess originally. Better to consistently not make the promise and clean up the interface.

Mon, Jan 20, 9:40 PM
jeff updated the summary of D23283: Consistently use vm_page_valid() to validate pages..
Mon, Jan 20, 6:50 PM
jeff created D23283: Consistently use vm_page_valid() to validate pages..
Mon, Jan 20, 6:43 PM
jeff updated the summary of D23282: Move readahead into its own function..
Mon, Jan 20, 6:39 PM
jeff created D23282: Move readahead into its own function..
Mon, Jan 20, 6:36 PM

Sun, Jan 19

jeff committed rS356902: Don't hold the object lock while calling getpages..
Don't hold the object lock while calling getpages.
Sun, Jan 19, 11:47 PM
jeff closed D23033: Don't hold the object lock across getpages..
Sun, Jan 19, 11:47 PM
jeff committed rS356887: It has not been possible to recursively terminate a vnode object for some time.
It has not been possible to recursively terminate a vnode object for some time
Sun, Jan 19, 6:36 PM
jeff committed rS356886: Make collapse synchronization more explicit and allow it to complete during.
Make collapse synchronization more explicit and allow it to complete during
Sun, Jan 19, 6:30 PM
jeff committed rS356885: Provide an API for interlocked refcount sleeps..
Provide an API for interlocked refcount sleeps.
Sun, Jan 19, 6:18 PM
jeff closed D22908: Allow collapse to operate to completion during paging..
Sun, Jan 19, 6:18 PM

Sat, Jan 18

jeff added inline comments to D23186: 3/3 vfs: allow v_holdcnt to transition 0->1 without the interlock.
Sat, Jan 18, 12:19 AM
jeff added inline comments to D23185: 2/3 vfs: allow v_usecount to transition 0->1 without the interlock.
Sat, Jan 18, 12:03 AM

Fri, Jan 17

jeff added inline comments to D23186: 3/3 vfs: allow v_holdcnt to transition 0->1 without the interlock.
Fri, Jan 17, 11:58 PM
jeff accepted D23185: 2/3 vfs: allow v_usecount to transition 0->1 without the interlock.
Fri, Jan 17, 11:55 PM
jeff added a comment to D23184: 1/3 vfs: stop handling VI_OWEINACT in vget.

This is a nice simplification

Fri, Jan 17, 11:50 PM
jeff accepted D23235: vfs: distribute freevnodes counter per-cpu.
Fri, Jan 17, 11:29 PM
jeff added inline comments to D23235: vfs: distribute freevnodes counter per-cpu.
Fri, Jan 17, 9:28 PM
jeff accepted D23237: [uma-multipage 1/3] uma: add UMA_ZONE_CONTIG, and a default contig_alloc.
Fri, Jan 17, 7:55 PM
jeff added a comment to D23239: [uma-multipage 3/3] uma: grow slabs to enforce minimum memory efficiency.

For the benefit of other readers; Ryan and I have discussed attempting a contig allocation with DMAP KVA first and then falling back to regular kva allocated sparse allocation. We could do this in the UMA multi-page allocator or natively in kmem_*. This would have the advantage that pmap_kextract() is very cheap and we use it to find the slab and also the domain for NUMA. It would have a disadvantage that it may increase memory fragmentation. If we take this approach we may want to only use power of two allocation sizes 'ppera' so that we don't negatively impact phys fragmentation.

Fri, Jan 17, 7:52 PM
jeff updated subscribers of D23239: [uma-multipage 3/3] uma: grow slabs to enforce minimum memory efficiency.
Fri, Jan 17, 7:46 PM
jeff added a comment to D23238: [uma-multipage 2/3] uma: convert mbuf_jumbo_alloc & pmap_pdpt_alloc to UMA_ZONE_CONTIG.

else if ((keg->uk_flags & UMA_ZONE_CONTIG) != 0 && keg->uk_ppera > 1)

		keg->uk_allocf = contig_alloc;
Fri, Jan 17, 7:11 PM
jeff accepted D23238: [uma-multipage 2/3] uma: convert mbuf_jumbo_alloc & pmap_pdpt_alloc to UMA_ZONE_CONTIG.
Fri, Jan 17, 5:53 PM
jeff added inline comments to D23237: [uma-multipage 1/3] uma: add UMA_ZONE_CONTIG, and a default contig_alloc.
Fri, Jan 17, 5:52 PM
jeff committed rS356822: Fix a long standing bug that was made worse in r355765. When we are cowing a.
Fix a long standing bug that was made worse in r355765. When we are cowing a
Fri, Jan 17, 3:44 AM
jeff closed D23155: Fix bugs related to recent fault changes.
Fri, Jan 17, 3:44 AM

Thu, Jan 16

jeff added a comment to D23215: [wip] ufs: add missing vgone calls to accomodate unlocked vnode with i_mode == 0.

Should we make something specific to this pattern? vcancel()? vabandon()? vabort()

Thu, Jan 16, 8:50 PM
jeff committed rS356776: Simplify VM and UMA startup by eliminating boot pages. Instead use careful.
Simplify VM and UMA startup by eliminating boot pages. Instead use careful
Thu, Jan 16, 5:01 AM
jeff closed D23102: Don't preallocate boot pages for UMA..
Thu, Jan 16, 5:01 AM

Wed, Jan 15

jeff added a comment to D23140: vfs: increment numvnodes without the vnode list lock unless under pressure.

I agree that this whole thing needs to be holistically reworked. I do not object to this patch but I would like kib to review.

Wed, Jan 15, 11:46 PM
jeff accepted D23158: vfs: refactor vnode allocation.

I do not object to this patch but I would be more comfortable with kib reviewing.

Wed, Jan 15, 11:45 PM

Tue, Jan 14

jeff committed rS356714: Fix a long standing bug in journaled soft-updates. The dirrem structure.
Fix a long standing bug in journaled soft-updates. The dirrem structure
Tue, Jan 14, 2:00 AM

Mon, Jan 13

jeff accepted D23149: uma: split slabzone into two sizes.

I am happy to tweak parameters and possibly function names in a follow up patch.

Mon, Jan 13, 8:32 PM
jeff added inline comments to D23033: Don't hold the object lock across getpages..
Mon, Jan 13, 8:15 PM