Page MenuHomeFreeBSD

Fix "smp_targeted_tlb_shootdown: interrupts disabled" panics
ClosedPublic

Authored by jtl on Feb 24 2017, 5:25 PM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Jan 29, 9:21 AM
Unknown Object (File)
Tue, Jan 28, 5:30 AM
Unknown Object (File)
Jan 7 2025, 9:28 AM
Unknown Object (File)
Jan 4 2025, 3:12 PM
Unknown Object (File)
Jan 2 2025, 8:54 PM
Unknown Object (File)
Dec 5 2024, 10:01 AM
Unknown Object (File)
Dec 5 2024, 7:46 AM
Unknown Object (File)
Nov 30 2024, 3:29 PM
Subscribers

Details

Summary

We have seen several cases recently where we appear to get a double-fault: we have an original panic. Then, instead of writing the core to the dump device, the kernel has a second panic: "smp_targeted_tlb_shootdown: interrupts disabled".

This is an attempt to fix that second panic.

This should be safe since we can't notify other CPUs of the TLB shootdown when they're stopped anyway.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 7718
Build 7865: arc lint + arc unit

Event Timeline

jtl retitled this revision from to Fix "smp_targeted_tlb_shootdown: interrupts disabled" panics.
jtl updated this object.
jtl edited the test plan for this revision. (Show Details)
jtl added reviewers: kib, jhb.

I think that it might be unsafe to return from ddb into normal operations with this patch, if ddb activity caused any change in the mappings. Some ddb commands might allocate memory, e.g. coredumping.

You need to flush TLB somewhere in cpustop_handler_post(), most likely, to fix this.

jtl edited edge metadata.

Invalidate TLB when restarting other CPUs.

In D9786#201995, @kib wrote:

I think that it might be unsafe to return from ddb into normal operations with this patch, if ddb activity caused any change in the mappings. Some ddb commands might allocate memory, e.g. coredumping.

You need to flush TLB somewhere in cpustop_handler_post(), most likely, to fix this.

Ugh. You're right.

I should have known better. :-)

I think it should be fixed now...

kib edited edge metadata.
This revision is now accepted and ready to land.Feb 24 2017, 6:36 PM
This revision was automatically updated to reflect the committed changes.