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, Mar 25, 12:40 PM
Unknown Object (File)
Sun, Mar 22, 8:44 PM
Unknown Object (File)
Sun, Mar 22, 2:32 AM
Unknown Object (File)
Sat, Mar 21, 1:22 PM
Unknown Object (File)
Tue, Mar 17, 3:44 AM
Unknown Object (File)
Wed, Mar 11, 2:59 PM
Unknown Object (File)
Wed, Mar 11, 7:01 AM
Unknown Object (File)
Tue, Mar 3, 7:16 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.