Page MenuHomeFreeBSD

jtl (Jonathan T. Looney)
UserAdministrator

Projects

User Details

User Since
Oct 29 2015, 5:25 PM (534 w, 4 d)
Roles
Administrator

Recent Activity

Today

jtl requested review of D54903: witness: mark relationships defined in order_lists[].
Tue, Jan 27, 2:21 AM

Yesterday

jtl closed D54785: witness: Provide facility to print detailed lock tree.
Mon, Jan 26, 8:28 PM
jtl committed rGfb4b0c911951: witness: Provide facility to print detailed lock tree (authored by jtl).
witness: Provide facility to print detailed lock tree
Mon, Jan 26, 8:28 PM
jtl added a comment to D54785: witness: Provide facility to print detailed lock tree.
In D54785#1254929, @jtl wrote:

@markj Thanks for the review! Do you have any thoughts on enabling this by default right away vs. waiting a month or so?

I think you should just go for it, maybe with a long MFC period.

Mon, Jan 26, 8:17 PM
jtl updated the diff for D54785: witness: Provide facility to print detailed lock tree.

Addressed @markj's review feedback. Also, fixed the check for witness_trace > 1 which had gotten lost somewhere along the way.

Mon, Jan 26, 3:57 PM
jtl added a comment to D54785: witness: Provide facility to print detailed lock tree.

@markj Thanks for the review! Do you have any thoughts on enabling this by default right away vs. waiting a month or so?

Mon, Jan 26, 3:44 PM

Sat, Jan 24

jtl updated the diff for D54785: witness: Provide facility to print detailed lock tree.

Addressed review feedback from @glebius.

Sat, Jan 24, 6:17 PM
jtl added inline comments to D54785: witness: Provide facility to print detailed lock tree.
Sat, Jan 24, 6:07 PM

Thu, Jan 22

jtl added a comment to D54785: witness: Provide facility to print detailed lock tree.

Other than updating the manpage date, I *think* this patch is now in its final form and ready to land. I am happy to wait for more reviews if anyone wants to review it. If I don't hear otherwise, I'll probably commit this late tomorrow.

Thu, Jan 22, 3:37 PM
jtl updated the diff for D54785: witness: Provide facility to print detailed lock tree.

Updated the DDB "show badstacks" code to not check for generation changes while printing. We shouldn't generally see generation changes when running DDB commands. Even if we do (for example, because of the DDB code itself acquiring locks), we should be able to safely ignore the changes.

Thu, Jan 22, 3:33 PM

Wed, Jan 21

jtl added inline comments to D54785: witness: Provide facility to print detailed lock tree.
Wed, Jan 21, 6:45 PM
jtl updated the summary of D54785: witness: Provide facility to print detailed lock tree.
Wed, Jan 21, 3:16 PM
jtl updated the diff for D54785: witness: Provide facility to print detailed lock tree.

Updates:

  • Switched the recursion into a loop
  • Added the ability to execute the new functionality when a run-time check fails
  • Merged the functionality into the existing debug.witness.badstacks sysctl (and identical show badstacks DDB command), removing the separate "verbose" functionality I had previously proposed adding
  • Updated the man page
Wed, Jan 21, 3:07 PM

Tue, Jan 20

jtl added a comment to D54785: witness: Provide facility to print detailed lock tree.
In D54785#1252666, @kib wrote:

I do not think that trying to schedule a task is very robust with a LOR detected. We are already in the situation risking the deadlock.

Tue, Jan 20, 8:42 PM
jtl added a comment to D54785: witness: Provide facility to print detailed lock tree.
In D54785#1252125, @kib wrote:

This should be extremely useful, I already anticipate it.

Tue, Jan 20, 12:38 PM

Mon, Jan 19

jtl updated subscribers of D54785: witness: Provide facility to print detailed lock tree.
Mon, Jan 19, 7:43 PM
jtl requested review of D54785: witness: Provide facility to print detailed lock tree.
Mon, Jan 19, 7:42 PM

Wed, Jan 14

jtl committed rG9c4a41d33b46: mca(4): Add man page (authored by jtl).
mca(4): Add man page
Wed, Jan 14, 4:28 PM
jtl closed D54115: x86: Create manpage for mca subsystem.
Wed, Jan 14, 4:28 PM
jtl updated the diff for D54115: x86: Create manpage for mca subsystem.

Updated to incorporate review feedback.

Wed, Jan 14, 12:49 AM
jtl added inline comments to D54115: x86: Create manpage for mca subsystem.
Wed, Jan 14, 12:49 AM

Dec 8 2025

jtl added inline comments to D54115: x86: Create manpage for mca subsystem.
Dec 8 2025, 3:49 PM
jtl updated the diff for D54115: x86: Create manpage for mca subsystem.

Updated license and clarified this is only applicable to amd64 in main.

Dec 8 2025, 3:47 PM

Dec 7 2025

jtl requested review of D54115: x86: Create manpage for mca subsystem.
Dec 7 2025, 10:43 PM

Dec 6 2025

jtl closed D54088: ip6: Add explicit lock order information to catch boot-time LOR.
Dec 6 2025, 8:00 PM
jtl committed rG3f10e5985044: ip6: Add explicit lock order information to catch LOR (authored by jtl).
ip6: Add explicit lock order information to catch LOR
Dec 6 2025, 7:59 PM

Dec 5 2025

jtl requested review of D54088: ip6: Add explicit lock order information to catch boot-time LOR.
Dec 5 2025, 5:30 PM

Oct 28 2025

jtl committed rG4b69237639bf: x86: support sending non-fatal MCA messages to syslog (authored by jtl).
x86: support sending non-fatal MCA messages to syslog
Oct 28 2025, 7:26 PM
jtl committed rG40b2111cfaa1: x86: Add a way to inject artificial MCA events for testing (authored by lprylli_netflix.com).
x86: Add a way to inject artificial MCA events for testing
Oct 28 2025, 7:26 PM
jtl committed rGfda981d41491: x86: Allow MCA messages to be rate-limited (authored by jtl).
x86: Allow MCA messages to be rate-limited
Oct 28 2025, 7:24 PM
jtl committed rGf5d3c2c7d9db: x86: Reduce amount of time the MCA lock is held while emitting records (authored by jtl).
x86: Reduce amount of time the MCA lock is held while emitting records
Oct 28 2025, 7:24 PM
jtl committed rGfc13cf3c5bd4: x86: Add a way to inject artificial MCA events for testing (authored by lprylli_netflix.com).
x86: Add a way to inject artificial MCA events for testing
Oct 28 2025, 7:21 PM
jtl committed rG34106dd11966: x86: support sending non-fatal MCA messages to syslog (authored by jtl).
x86: support sending non-fatal MCA messages to syslog
Oct 28 2025, 7:21 PM
jtl committed rG12a5143cfc26: x86: Allow MCA messages to be rate-limited (authored by jtl).
x86: Allow MCA messages to be rate-limited
Oct 28 2025, 7:19 PM
jtl committed rGd83dee356dce: x86: Reduce amount of time the MCA lock is held while emitting records (authored by jtl).
x86: Reduce amount of time the MCA lock is held while emitting records
Oct 28 2025, 7:16 PM

Oct 9 2025

jtl committed rG049010b03a98: x86: Defer non-fatal MCA message output from the HW interrupt context (authored by jtl).
x86: Defer non-fatal MCA message output from the HW interrupt context
Oct 9 2025, 5:21 PM
jtl committed rG8b6bbdb80fc0: x86: Close race condition on MCA task queues at startup (authored by jtl).
x86: Close race condition on MCA task queues at startup
Oct 9 2025, 5:21 PM
jtl committed rG1b00e2ad86b3: x86: Keep cumulative MCA statistics in the kernel (authored by jtl).
x86: Keep cumulative MCA statistics in the kernel
Oct 9 2025, 5:20 PM
jtl committed rG3f0df559cbe4: x86: Defer non-fatal MCA message output from the HW interrupt context (authored by jtl).
x86: Defer non-fatal MCA message output from the HW interrupt context
Oct 9 2025, 5:17 PM
jtl committed rG8d0f269989d8: x86: Close race condition on MCA task queues at startup (authored by jtl).
x86: Close race condition on MCA task queues at startup
Oct 9 2025, 5:16 PM
jtl committed rGbe85c5d65750: x86: Keep cumulative MCA statistics in the kernel (authored by jtl).
x86: Keep cumulative MCA statistics in the kernel
Oct 9 2025, 5:15 PM

Oct 8 2025

jtl committed rG55c28005f544: x86: support sending non-fatal MCA messages to syslog (authored by jtl).
x86: support sending non-fatal MCA messages to syslog
Oct 8 2025, 7:14 PM
jtl closed D12278: x86: support sending non-fatal MCA messages to syslog.
Oct 8 2025, 7:14 PM
jtl committed rG0d14826de7d9: x86: Allow MCA messages to be rate-limited (authored by jtl).
x86: Allow MCA messages to be rate-limited
Oct 8 2025, 7:13 PM
jtl closed D52946: x86: Allow MCA messages to be rate-limited.
Oct 8 2025, 7:12 PM
jtl added inline comments to D52946: x86: Allow MCA messages to be rate-limited.
Oct 8 2025, 3:58 PM
jtl updated the diff for D52946: x86: Allow MCA messages to be rate-limited.

updates to incorporate review feedback

Oct 8 2025, 3:35 PM
jtl added inline comments to D52946: x86: Allow MCA messages to be rate-limited.
Oct 8 2025, 3:30 PM
jtl added inline comments to D52946: x86: Allow MCA messages to be rate-limited.
Oct 8 2025, 3:15 PM
jtl updated the diff for D12278: x86: support sending non-fatal MCA messages to syslog.

incorporate review feedback; rebase on top of changes to D52946

Oct 8 2025, 12:39 PM
jtl updated the diff for D52946: x86: Allow MCA messages to be rate-limited.

Reworked patch to use a large-ish buffer allocated from BSS and protected by a lock if called from an interrupt context. As noted in the commit message, this will result in increased lock contention during an interrupt storm which exceeds the capacity of the free list; however, overall lock contention should still be lower than it was when mca_log() was called with the mca_lock held.

Oct 8 2025, 11:52 AM

Oct 7 2025

jtl added a comment to D52946: x86: Allow MCA messages to be rate-limited.

Not sure whether it needs to be addressed or not, but for completeness there is the possibility of some sequence of events occasionally emptying the mca_freelist, and then my understanding is that mca_record_entry() will work in "degraded mode" directly call mca_log() in an interrupt context (next to "MCA: Unable to allocate space for an event.\n"), and as long as that situation persists, the corresponding MCA printf() won't be ratechecked any more.

It could be a very unlikely theoretical case with the mca_postscan() changes, but with previous version of code, a couple of machines were able to trigger the "MCA: Unable to allocate space for an event" situation in netflix fleet.

Oct 7 2025, 6:52 PM
jtl closed D52942: x86: Add a way to inject artificial MCA events for testing.
Oct 7 2025, 4:43 PM
jtl committed rG1c2fc62e4a96: x86: Add a way to inject artificial MCA events for testing (authored by lprylli_netflix.com).
x86: Add a way to inject artificial MCA events for testing
Oct 7 2025, 4:43 PM
jtl updated the diff for D12278: x86: support sending non-fatal MCA messages to syslog.

Updating to apply cleanly on top of D52946, which introduces the use of sbuf to gather the log message.

Oct 7 2025, 2:38 PM
jtl committed rGe770e32aa3a0: x86: Reduce amount of time the MCA lock is held while emitting records (authored by jtl).
x86: Reduce amount of time the MCA lock is held while emitting records
Oct 7 2025, 2:27 PM
jtl closed D52938: x86: Reduce amount of time the MCA lock is held while emitting records.
Oct 7 2025, 2:27 PM
jtl updated the diff for D52946: x86: Allow MCA messages to be rate-limited.

Remove unneeded check for mca_startup_done

Oct 7 2025, 2:16 PM
jtl abandoned D52943: x86: print MCAs to the console before MCA initialization.

Note that I am not 100% sure this can actually happen, since I am not 100% sure we will ever enable interrupts before we run mca_setup().

I don't quite follow, MCEs will be delivered even if interrupts are disabled. _mca_init() enables delivery of MCEs at SI_SUB_CPU time; what's wrong with calling mca_record_entry() after that point?

Oct 7 2025, 2:13 PM
jtl accepted D52944: sockstat: support reporting of BBLog state.
Oct 7 2025, 1:14 PM
jtl updated the diff for D52946: x86: Allow MCA messages to be rate-limited.

Fix logic in case (mode != polled && (mca_startup_done || (rec->mr_status & MC_STATUS_UC)))

Oct 7 2025, 12:56 PM

Oct 6 2025

jtl requested review of D52946: x86: Allow MCA messages to be rate-limited.
Oct 6 2025, 9:30 PM
jtl added a comment to D52942: x86: Add a way to inject artificial MCA events for testing.
In D52942#1209601, @jtl wrote:

Updated to hide this code under the DIAGNOSTIC kernel config option.

Oct 6 2025, 6:49 PM
jtl updated the diff for D52942: x86: Add a way to inject artificial MCA events for testing.

Updated to hide this code under the DIAGNOSTIC kernel config option.

Oct 6 2025, 6:48 PM
jtl requested review of D52943: x86: print MCAs to the console before MCA initialization.
Oct 6 2025, 6:40 PM
jtl requested review of D52942: x86: Add a way to inject artificial MCA events for testing.
Oct 6 2025, 6:13 PM
jtl committed rG1cc96642675b: tcp: close two minor races with debug messages (authored by jtl).
tcp: close two minor races with debug messages
Oct 6 2025, 4:24 PM
jtl committed rGa1f20ce89403: tcp: close two minor races with debug messages (authored by jtl).
tcp: close two minor races with debug messages
Oct 6 2025, 4:23 PM
jtl requested review of D52938: x86: Reduce amount of time the MCA lock is held while emitting records.
Oct 6 2025, 4:07 PM
jtl committed rG5e1611a37a02: x86: Defer non-fatal MCA message output from the HW interrupt context (authored by jtl).
x86: Defer non-fatal MCA message output from the HW interrupt context
Oct 6 2025, 4:04 PM
jtl closed D12275: x86: Defer non-fatal MCA message output from the hardware interrupt context.
Oct 6 2025, 4:03 PM
jtl added inline comments to D12275: x86: Defer non-fatal MCA message output from the hardware interrupt context.
Oct 6 2025, 4:02 PM
jtl committed rG4a5d8670a7d5: x86: Close race condition on MCA task queues at startup (authored by jtl).
x86: Close race condition on MCA task queues at startup
Oct 6 2025, 4:00 PM
jtl closed D12276: x86: Close race condition on MCA task queues at startup.
Oct 6 2025, 4:00 PM
jtl accepted D52934: tcp: improve SEG.ACK validation in SYN-RECEIVED.
Oct 6 2025, 3:25 PM

Oct 3 2025

jtl abandoned D16471: Some TCP reassembly improvements.
Oct 3 2025, 6:29 PM
jtl updated the diff for D12275: x86: Defer non-fatal MCA message output from the hardware interrupt context.

update diff to account for 8 years of bitrot

Oct 3 2025, 6:25 PM
jtl abandoned D12277: Allow the user more control over MCA throttling.

AFAIK, no one has bemoaned the lack of this feature in the 8 years this has been sitting here. I think it is safe to abandon this.

Oct 3 2025, 4:38 PM
jtl updated the diff for D12276: x86: Close race condition on MCA task queues at startup.

Updating the diff to account for 8 years of bit rot.

Oct 3 2025, 4:32 PM
jtl committed rG5f1f7d8457d4: x86: Keep cumulative MCA statistics in the kernel (authored by jtl).
x86: Keep cumulative MCA statistics in the kernel
Oct 3 2025, 4:04 PM
jtl closed D52709: x86: Keep cumulative MCA statistics in the kernel.
Oct 3 2025, 4:04 PM
jtl updated the diff for D52709: x86: Keep cumulative MCA statistics in the kernel.

incorporating review feedback

Oct 3 2025, 2:20 PM
jtl added a comment to D52709: x86: Keep cumulative MCA statistics in the kernel.

Thanks for the review! I agree on the documentation comment.

Oct 3 2025, 1:52 PM

Oct 2 2025

jtl added a comment to D52872: tcp: bump max snd buffer size for autoscaling.
In D52872#1207881, @jtl wrote:

Is this worthy of a release note?

Yes, the combination of D52871, D52872, and D52873.

Oct 2 2025, 9:20 PM
jtl accepted D52873: sockets: bump socket buffer limit.

My main concern about these three revisions is that they are somewhat susceptible of remote manipulation, and that could make it easier to DoS a server. However, I view that as a tradeoff that the user needs to make, and think an appropriate release note should suffice to warn about these issues.

Oct 2 2025, 9:19 PM
jtl accepted D52871: tcp: bump max rcv buffer size for autoscaling.

My main concern about these three revisions is that they are somewhat susceptible of remote manipulation, and that could make it easier to DoS a server. However, I view that as a tradeoff that the user needs to make, and think an appropriate release note should suffice to warn about these issues.

Oct 2 2025, 9:18 PM
jtl accepted D52872: tcp: bump max snd buffer size for autoscaling.

Is this worthy of a release note?

Oct 2 2025, 8:31 PM
jtl added a comment to D52709: x86: Keep cumulative MCA statistics in the kernel.

If anyone is planning to review this (or if I should ask more people), let me know. Otherwise, I will probably just commit this soon. AFAICT, this is fairly innocuous (new feature with low risk of breaking existing things). But, there is a reason we get these things reviewed...

Oct 2 2025, 8:23 PM
jtl committed rGad38f6a0b466: tcp: close two minor races with debug messages (authored by jtl).
tcp: close two minor races with debug messages
Oct 2 2025, 8:10 PM
jtl closed D52868: tcp: close two minor races with debug messages.
Oct 2 2025, 8:10 PM
jtl added inline comments to D52849: tcp: improve segment validation in SYN-RECEIVED.
Oct 2 2025, 5:34 PM
jtl requested review of D52868: tcp: close two minor races with debug messages.
Oct 2 2025, 5:33 PM
jtl accepted D52731: sys/netinet6: Use atomic(9) for dad_failures counter.

Thanks for doing this! LGTM other than one nit.

Oct 2 2025, 5:07 PM
jtl added inline comments to D52849: tcp: improve segment validation in SYN-RECEIVED.
Oct 2 2025, 4:33 PM

Oct 1 2025

jtl accepted D52840: tcp: keep SYN-cache entry when sending of challenge ACK fails.
Oct 1 2025, 9:00 PM

Sep 29 2025

jtl committed rGf801346706ea: ip6: add SO_BINTIME support (authored by jtl).
ip6: add SO_BINTIME support
Sep 29 2025, 3:14 PM
jtl committed rG5b59ff1e1607: ip6: add SO_BINTIME support (authored by jtl).
ip6: add SO_BINTIME support
Sep 29 2025, 3:08 PM

Sep 24 2025

jtl requested review of D52709: x86: Keep cumulative MCA statistics in the kernel.
Sep 24 2025, 2:47 PM

Sep 15 2025

jtl committed rGcd02a8a9f8be: ip6: add SO_BINTIME support (authored by jtl).
ip6: add SO_BINTIME support
Sep 15 2025, 4:50 PM
jtl closed D52504: ip6: add SO_BINTIME support.
Sep 15 2025, 4:50 PM