Page MenuHomeFreeBSD

Always use atomic_fetchadd() when updating per-user accounting values.
ClosedPublic

Authored by jhb on Jan 4 2018, 7:30 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Jan 15, 8:35 PM
Unknown Object (File)
Thu, Jan 8, 5:33 AM
Unknown Object (File)
Mon, Jan 5, 7:07 PM
Unknown Object (File)
Thu, Jan 1, 2:07 AM
Unknown Object (File)
Dec 15 2025, 10:59 AM
Unknown Object (File)
Dec 2 2025, 3:59 AM
Unknown Object (File)
Nov 20 2025, 11:38 PM
Unknown Object (File)
Nov 20 2025, 11:35 PM
Subscribers

Details

Summary

This avoids re-reading a variable after it has been updated via an
atomic op. It is just a cosmetic cleanup as the read value was only
used to control a diagnostic printf that should rarely occur (if ever).

Test Plan
  • have had a variant of this patch around for several years and have booted amd64 and i386 VMs with it. OTOH, I have never seen this printf fire. It's been a low priority to ever get this reviewed but I noticed it today and figured might as well either get it in or discard it.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kib added inline comments.
sys/kern/kern_resource.c
1397 ↗(On Diff #37527)

You can write '} else if (new < 0) {' to reduce indent.

This revision is now accepted and ready to land.Jan 4 2018, 8:11 PM
This revision was automatically updated to reflect the committed changes.