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)
Wed, Apr 15, 4:15 AM
Unknown Object (File)
Sun, Apr 12, 7:12 PM
Unknown Object (File)
Sun, Apr 12, 5:00 PM
Unknown Object (File)
Sun, Apr 12, 10:32 AM
Unknown Object (File)
Sat, Apr 11, 10:35 PM
Unknown Object (File)
Thu, Apr 9, 2:13 AM
Unknown Object (File)
Sat, Apr 4, 8:24 PM
Unknown Object (File)
Fri, Apr 3, 11:42 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.