Page MenuHomeFreeBSD

Fix the UMA reclaim worker
ClosedPublic

Authored by markj on Dec 7 2017, 6:53 PM.
Tags
None
Referenced Files
F81616873: D13412.diff
Fri, Apr 19, 1:03 AM
Unknown Object (File)
Tue, Apr 16, 9:24 PM
Unknown Object (File)
Fri, Apr 12, 4:41 AM
Unknown Object (File)
Jan 2 2024, 2:08 AM
Unknown Object (File)
Dec 30 2023, 6:41 AM
Unknown Object (File)
Dec 23 2023, 2:16 AM
Unknown Object (File)
Nov 22 2023, 1:19 PM
Unknown Object (File)
Nov 12 2023, 6:03 AM
Subscribers

Details

Summary

atomic_set_* ORs its arguments together, but the intention here was
obviously to clear the flag.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 13411
Build 13641: arc lint + arc unit

Event Timeline

Plain store is enough, _rel does not add any functionality there. Or the load in the while() loop above should become _acq(), but I do not see a need.

This revision is now accepted and ready to land.Dec 7 2017, 7:07 PM
In D13412#280192, @kib wrote:

Plain store is enough, _rel does not add any functionality there. Or the load in the while() loop above should become _acq(), but I do not see a need.

Indeed, but there is no plain atomic_store_int().

In D13412#280192, @kib wrote:

Plain store is enough, _rel does not add any functionality there. Or the load in the while() loop above should become _acq(), but I do not see a need.

Indeed, but there is no plain atomic_store_int().

Plain assignment to volatile does it. Explanation was added to atomic(9) not too long time ago.

  • Use a plain store to the volatile uma_reclaim_needed.
This revision now requires review to proceed.Dec 7 2017, 7:27 PM
This revision is now accepted and ready to land.Dec 7 2017, 7:31 PM
This revision was automatically updated to reflect the committed changes.