Page MenuHomeFreeBSD
Feed Advanced Search

Feb 19 2020

jeff committed rS358133: Silence a gcc warning about no return from a function that handles every.
Silence a gcc warning about no return from a function that handles every
Feb 19 2020, 10:34 PM
jeff added inline comments to D23449: Add unlocked variants of grab functions..
Feb 19 2020, 8:06 PM
jeff committed rS358130: Use SMR to provide a safe unlocked lookup for vm_radix..
Use SMR to provide a safe unlocked lookup for vm_radix.
Feb 19 2020, 7:58 PM
jeff closed D23446: Add a lockless lookup mechanism that uses a SMR zone..
Feb 19 2020, 7:58 PM
jeff committed rS358129: Since r357940 it is no longer possible to use a single type cast for all.
Since r357940 it is no longer possible to use a single type cast for all
Feb 19 2020, 7:51 PM
jeff committed rS358128: Use per-domain locks for the bucket cache..
Use per-domain locks for the bucket cache.
Feb 19 2020, 6:49 PM
jeff closed D23673: Use per-domain locks for the zone layer..
Feb 19 2020, 6:49 PM
jeff accepted D23723: Add a blocking counter KPI, blockcount(9)..
Feb 19 2020, 6:03 PM
jeff committed rS358098: Don't release xbusy on kmem pages. After lockless page lookup we will not.
Don't release xbusy on kmem pages. After lockless page lookup we will not
Feb 19 2020, 9:10 AM
jeff closed D23506: Don't drop xbusy on kmem pages..
Feb 19 2020, 9:10 AM
jeff committed rS358097: Eliminate some unnecessary uses of UMA_ZONE_VM. Only zones involved in.
Eliminate some unnecessary uses of UMA_ZONE_VM. Only zones involved in
Feb 19 2020, 8:17 AM
jeff closed D23712: Correct use of UMA_ZONE_VM.
Feb 19 2020, 8:17 AM
jeff committed rS358096: Type validating smr protected pointer accessors..
Type validating smr protected pointer accessors.
Feb 19 2020, 8:15 AM
jeff closed D23711: Type validating smr protected pointer accessors..
Feb 19 2020, 8:15 AM
jeff updated the diff for D23738: Experimental ticks based SMR..

I rewrote lazy smr to lazily update s_wr_seq but otherwise use the rest
of the machinery for normal smr. The read side lost a branch and the
code is better contained. ticks now gates s_wr_seq updates similar
to deferred mode. There are some annoying conditions around 0 and
very stale state. In the process I refactored some code because poll()
is getting very long due to comments.

Feb 19 2020, 2:00 AM

Feb 18 2020

jeff updated the diff for D23738: Experimental ticks based SMR..

Simplify by storing 0 corrected ticks in td_wr_seq. This gives no branches
in the enter section and simpler code elsewhere.

Feb 18 2020, 7:14 PM

Feb 17 2020

jeff added a reviewer for D23738: Experimental ticks based SMR.: kib.
Feb 17 2020, 10:07 PM
jeff updated the summary of D23738: Experimental ticks based SMR..
Feb 17 2020, 10:03 PM
jeff created D23738: Experimental ticks based SMR..
Feb 17 2020, 9:58 PM
jeff added inline comments to D23711: Type validating smr protected pointer accessors..
Feb 17 2020, 8:52 PM
jeff updated the diff for D23711: Type validating smr protected pointer accessors..

Use temporary assignments to enforce types instead of asserts.

Feb 17 2020, 8:25 PM
jeff added inline comments to D23673: Use per-domain locks for the zone layer..
Feb 17 2020, 7:56 PM
jeff added a comment to D23712: Correct use of UMA_ZONE_VM.

I have tested this off and on for several days without issue.

Feb 17 2020, 2:28 PM
jeff committed rS358012: Add a simple accessor that returns the bytes of memory consumed by a zone..
Add a simple accessor that returns the bytes of memory consumed by a zone.
Feb 17 2020, 2:00 AM
jeff added a comment to D23723: Add a blocking counter KPI, blockcount(9)..

I don't mind this in principal but I would rather it was a new api entirely. We need relatively few of the refcount features. Just acquiren/releasen/wait. So I'd rather have it named as some kind of barrier or semaphore.

Feb 17 2020, 1:41 AM
jeff committed rS358011: Refactor _vm_page_busy_sleep to reduce the delta between the various.
Refactor _vm_page_busy_sleep to reduce the delta between the various
Feb 17 2020, 1:08 AM
jeff closed D23612: Allow safe unlocked busy sleeps..
Feb 17 2020, 1:08 AM
jeff committed rS358010: UMA has become more particular about zone types. Use the right allocator.
UMA has become more particular about zone types. Use the right allocator
Feb 17 2020, 1:06 AM

Feb 16 2020

jeff added a comment to D23659: x86: Fix scheduler topology assumptions about uniformity.

Ok, yes, the issue is we never created a leaf for this lone cpu.

Feb 16 2020, 9:00 PM
jeff accepted D23622: Do not read sigfastblock word on syscall entry..

I would like to point out that to see the EINTR race the user would have to register a callback for rtld to call while not blocking signals itself and having registered a handler that then communicates information with the EINTR return case in the callback. I doubt this is even spec defined behavior and if linux is even weaker than we are they are more likely to just crash there.

Feb 16 2020, 8:53 PM
jeff added inline comments to D23684: 2/2 lockmgr: provide routines usable as direct vfs calls.
Feb 16 2020, 7:28 PM
jeff added a comment to D23587: Stop counting threads executing dynamic syscalls.

This would be a good use for tick based (non-atomic) smr. It would have a cheaper simpler write path. I don't object to this patch but it might get replaced again.

Feb 16 2020, 10:18 AM
jeff added inline comments to D23533: Plumb a domain parameter through uma_reclaim() and callees..
Feb 16 2020, 10:09 AM
jeff added inline comments to D23622: Do not read sigfastblock word on syscall entry..
Feb 16 2020, 10:03 AM
jeff added a comment to D23659: x86: Fix scheduler topology assumptions about uniformity.

So this looks to me like we made a bad topology and then worked around it by weakening the search. This should still make the leaf topology node for the lone cpu. Otherwise ULE will make bad decisions.

Feb 16 2020, 9:59 AM
jeff added a comment to D23684: 2/2 lockmgr: provide routines usable as direct vfs calls.

lockstatus should also be an inline in the header.

Feb 16 2020, 9:54 AM
jeff added a comment to D23683: 1/2 vfs: inline VOP calls if possible.

It seems non-debug has only post handlers for knote etc.

Feb 16 2020, 9:45 AM
jeff added a comment to D23685: Remove long broken procfs-based process tracing..

It may be minorly useful to keep the ioctl definitions so that they are not-reused but I'm not sure what value we get necessarily from the switch statements. If there is some I'd prefer to group them and fallthrough to ENOTSUPP.

Feb 16 2020, 9:42 AM
jeff added inline comments to D23712: Correct use of UMA_ZONE_VM.
Feb 16 2020, 9:36 AM
jeff updated the diff for D23446: Add a lockless lookup mechanism that uses a SMR zone..

This makes two major changes:

Feb 16 2020, 9:32 AM
jeff updated the summary of D23712: Correct use of UMA_ZONE_VM.
Feb 16 2020, 9:30 AM
jeff created D23712: Correct use of UMA_ZONE_VM.
Feb 16 2020, 9:26 AM
jeff updated the diff for D23612: Allow safe unlocked busy sleeps..

Use atomic_load()

Feb 16 2020, 9:20 AM
jeff updated the diff for D23449: Add unlocked variants of grab functions..

Use atomic_load. Add an assert.

Feb 16 2020, 9:16 AM
jeff added a comment to D23673: Use per-domain locks for the zone layer..

I am mostly happy with this now and it is doing well on stress after a few small errors.

Feb 16 2020, 8:59 AM
jeff updated the diff for D23673: Use per-domain locks for the zone layer..

Fix some imax bugs and address my own feedback.

Feb 16 2020, 7:41 AM
jeff updated the diff for D23711: Type validating smr protected pointer accessors..

Implement mjg's suggestion

Feb 16 2020, 5:10 AM
jeff added a comment to D23711: Type validating smr protected pointer accessors..

I like the suggestion but I'm not sure how I feel about declaring everywhere. Hopefully others will chime in.

Feb 16 2020, 3:31 AM
jeff added inline comments to D23711: Type validating smr protected pointer accessors..
Feb 16 2020, 2:49 AM
jeff updated the summary of D23711: Type validating smr protected pointer accessors..
Feb 16 2020, 2:48 AM
jeff created D23711: Type validating smr protected pointer accessors..
Feb 16 2020, 2:33 AM
jeff committed rS357988: Slightly restructure uma_zalloc* to generate better code from clang and.
Slightly restructure uma_zalloc* to generate better code from clang and
Feb 16 2020, 1:07 AM
jeff closed D23672: Restructure zalloc for better code generation..
Feb 16 2020, 1:07 AM

Feb 14 2020

jeff accepted D23664: Fix object locking races in swapoff..
Feb 14 2020, 9:29 PM
jeff accepted D23674: Change smarter epoch support for NIC drivers to opt-in..
Feb 14 2020, 8:53 AM
jeff added a comment to D23674: Change smarter epoch support for NIC drivers to opt-in..

What about the interrupt changes?

Feb 14 2020, 8:52 AM
jeff added inline comments to D23672: Restructure zalloc for better code generation..
Feb 14 2020, 7:48 AM

Feb 13 2020

jeff accepted D23666: Remove swblk_t..
Feb 13 2020, 11:04 PM
jeff accepted D23665: Fix a swap block allocation race..
Feb 13 2020, 11:03 PM
jeff added inline comments to D23664: Fix object locking races in swapoff..
Feb 13 2020, 10:56 PM
jeff added inline comments to D23673: Use per-domain locks for the zone layer..
Feb 13 2020, 10:32 PM
jeff added a reviewer for D23673: Use per-domain locks for the zone layer.: mjg.
Feb 13 2020, 9:56 PM
jeff added a comment to D23673: Use per-domain locks for the zone layer..

One more things, round-robin domains use all zone domains now but load balance them. This is for lock contention reasons on large machines.

Feb 13 2020, 9:42 PM
jeff updated the summary of D23673: Use per-domain locks for the zone layer..
Feb 13 2020, 9:41 PM
jeff created D23673: Use per-domain locks for the zone layer..
Feb 13 2020, 9:34 PM
jeff added inline comments to D23672: Restructure zalloc for better code generation..
Feb 13 2020, 9:19 PM
jeff updated the summary of D23672: Restructure zalloc for better code generation..
Feb 13 2020, 9:17 PM
jeff created D23672: Restructure zalloc for better code generation..
Feb 13 2020, 9:15 PM
jeff committed rS357884: Since r357804 pcpu zones are required to use zalloc_pcpu(). Prior to this.
Since r357804 pcpu zones are required to use zalloc_pcpu(). Prior to this
Feb 13 2020, 9:10 PM
jeff committed rS357883: Fix a case where ub_seq would fail to be set if the cross bucket was.
Fix a case where ub_seq would fail to be set if the cross bucket was
Feb 13 2020, 8:59 PM
jeff closed D23614: Fix a case where we did not properly track the ub_seq..
Feb 13 2020, 8:59 PM
jeff committed rS357882: Add more precise SMR entry asserts..
Add more precise SMR entry asserts.
Feb 13 2020, 8:50 PM
jeff added a comment to D23654: Add support for more interrupt types.

I've seen this change. Was it benchmarked? I'm afraid result might be different to what was before, cause batching inside single call into interrupt handler be definition is a smaller batching than on top of it.

Feb 13 2020, 10:24 AM
jeff added inline comments to D23506: Don't drop xbusy on kmem pages..
Feb 13 2020, 9:42 AM
jeff added inline comments to D23449: Add unlocked variants of grab functions..
Feb 13 2020, 9:38 AM

Feb 12 2020

jeff accepted D23530: 3/3 vfs: refactor vputx and add more comments.
Feb 12 2020, 4:16 AM
jeff added inline comments to D23446: Add a lockless lookup mechanism that uses a SMR zone..
Feb 12 2020, 4:08 AM
jeff added inline comments to D23530: 3/3 vfs: refactor vputx and add more comments.
Feb 12 2020, 3:52 AM
jeff added inline comments to D23530: 3/3 vfs: refactor vputx and add more comments.
Feb 12 2020, 3:32 AM
jeff added a comment to D23582: Provide a generalized way to retry IPIs with allowing CPUs to mark completion.

I don't object but I haven't entirely understood it.

Feb 12 2020, 3:26 AM
jeff accepted D23570: Optimize zpcpu macros a little bit..
Feb 12 2020, 3:16 AM

Feb 11 2020

jeff added inline comments to D23582: Provide a generalized way to retry IPIs with allowing CPUs to mark completion.
Feb 11 2020, 8:00 AM
jeff added inline comments to D23582: Provide a generalized way to retry IPIs with allowing CPUs to mark completion.
Feb 11 2020, 7:53 AM
jeff accepted D23518: epoch support for taskqueues [2].
Feb 11 2020, 2:11 AM

Feb 10 2020

jeff added inline comments to D23614: Fix a case where we did not properly track the ub_seq..
Feb 10 2020, 9:40 PM
jeff updated the diff for D23449: Add unlocked variants of grab functions..

Try to name more consistently. Minor refactoring. Use the unlocked sleep.

Feb 10 2020, 9:10 PM
jeff added a comment to D23570: Optimize zpcpu macros a little bit..

My point is different.

Feb 10 2020, 9:03 PM
jeff updated the summary of D23614: Fix a case where we did not properly track the ub_seq..
Feb 10 2020, 8:59 PM
jeff created D23614: Fix a case where we did not properly track the ub_seq..
Feb 10 2020, 8:28 PM
jeff updated the summary of D23612: Allow safe unlocked busy sleeps..
Feb 10 2020, 8:23 PM
jeff added inline comments to D23570: Optimize zpcpu macros a little bit..
Feb 10 2020, 8:15 PM
jeff created D23612: Allow safe unlocked busy sleeps..
Feb 10 2020, 8:11 PM
jeff updated the diff for D23446: Add a lockless lookup mechanism that uses a SMR zone..

Fix a copy & paste comment error. Clean up some wording.

Feb 10 2020, 8:09 PM
jeff updated the diff for D23506: Don't drop xbusy on kmem pages..

One final bug to pass stress; when we fault out and back in we may have
valid swap backing for busy pages. This can deadlock with swapoff. This
also means we're not freeing swap space that had been used by kernel
stacks.

Feb 10 2020, 8:05 PM
jeff added a comment to D23570: Optimize zpcpu macros a little bit..

In generally I also don't think it's valuable to fuss around a lot to save an instruction, however, in this case I agree with mjg. If we can eliminate a memory reference and indirection that has value.

Feb 10 2020, 7:57 PM
jeff accepted D23483: Fix for unbalanced EPOCH(9) usage in kernel interrupt handler.

We should go ahead and fix the bug but I would like to revisit the design.

Feb 10 2020, 7:26 PM
jeff added a comment to D23517: Align the laundry and page out worker shortfall calculations.

I am researching and typing a larger note regarding this but I wanted to make these comments first.

Feb 10 2020, 4:33 AM

Feb 9 2020

jeff updated the diff for D23506: Don't drop xbusy on kmem pages..

Resolve two swapin/swapout issues. This now passes stress2.

Feb 9 2020, 6:56 PM
jeff added a comment to D23446: Add a lockless lookup mechanism that uses a SMR zone..

I have some comment cleanup to commit and one uma/smr fix to commit and then I feel comfortable going forward with this.

Feb 9 2020, 10:51 AM
jeff added inline comments to D23446: Add a lockless lookup mechanism that uses a SMR zone..
Feb 9 2020, 10:51 AM