This adds a new "persistent" property that describes resources which can drop in usage but do not automatically get reclaimed when a process dies. They must instead be manually dropped. This correctly handles shared resources such as shared memory. Previously, shared memory resources would be automatically dropped when a process died and then dropped again whenever the shared memory object was closed, leading to incorrect accounting.
The main difference is that RACCT_IS_SLOPPY is not in RACCT_CAN_DROP. An alternate solution could be to add RACCT_SLOPPY to RACCT_CAN_DROP and remove RACCT_RECLAIMABLE from RACCT_NSHM and RACCT_SHMSIZE.