Module Name: src Committed By: thorpej Date: Wed Dec 22 16:57:29 UTC 2021
Modified Files: src/sys/external/bsd/common/include/linux: slab.h src/sys/kern: kern_lwp.c subr_pool.c src/sys/sys: pool.h Log Message: Do the last change differently: Instead of having a pre-destruct hook, put knowledge of passive serialization into the pool allocator directly, enabled by PR_PSERIALIZE when the pool / pool_cache is initialized. This will guarantee that a passive serialization barrier will be performed before the object's destructor is called, or before the page containing the object is freed back to the system (in the case of no destructor). Note that the internal allocator overhead is different when PR_PSERIALIZE is used (it implies PR_NOTOUCH, because the objects must remain in a valid state). In the DRM Linux API shim, this allows us to remove the custom page allocator for SLAB_TYPESAFE_BY_RCU. To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/sys/external/bsd/common/include/linux/slab.h cvs rdiff -u -r1.245 -r1.246 src/sys/kern/kern_lwp.c cvs rdiff -u -r1.278 -r1.279 src/sys/kern/subr_pool.c cvs rdiff -u -r1.95 -r1.96 src/sys/sys/pool.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.