Page MenuHomeFreeBSD

Invalidate reply descriptors earlier
AcceptedPublic

Authored by scottl on Apr 15 2018, 2:34 PM.
Tags
None
Referenced Files
Unknown Object (File)
Jan 20 2024, 8:06 AM
Unknown Object (File)
Jan 9 2024, 1:18 AM
Unknown Object (File)
Dec 20 2023, 1:09 AM
Unknown Object (File)
Nov 29 2023, 5:22 PM
Unknown Object (File)
Nov 19 2023, 5:49 AM
Unknown Object (File)
Oct 22 2023, 4:23 PM
Unknown Object (File)
Oct 13 2023, 8:17 PM
Unknown Object (File)
Oct 13 2023, 6:41 AM
Subscribers

Details

Summary

Invalidate reply descriptors earlier in the interrupt processing so
that any reentrancy detects prior use. Re-entrancy may or may not
be intentional or useful, but this will help with needless foot
shooting.

Diff Detail

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

Event Timeline

This revision is now accepted and ready to land.Apr 16 2018, 4:36 PM

Looks good. Are you going to do the same thing in the mps(4) driver?

Switch to using an atomic swap for grabbing and clearing the reply
descriptor. This also undoes the unneeded churn from the last
revision. It makes the driver reliant on there being 64bit atomics,
which means that it won't work on powerpc anymore. C'est la vie!

This revision now requires review to proceed.Dec 9 2018, 3:16 AM

You have my blessing to remove mps from powerpc GENERIC. Keep it in GENERIC64, though. I've heard of people using mps and mpr devices in TALOS machines (mostly with Linux).

At some point in the near future I should write the atomic64's for 32-bit powerpc. It's been on my TODO list for about 4 years now.

This revision is now accepted and ready to land.Jan 13 2019, 2:45 AM