Module Name: src Committed By: martin Date: Sun Aug 18 09:52:12 UTC 2019
Modified Files: src/sys/kern [netbsd-9]: subr_pool.c Log Message: Pull up following revision(s) (requested by maxv in ticket #81): sys/kern/subr_pool.c: revision 1.253 sys/kern/subr_pool.c: revision 1.254 sys/kern/subr_pool.c: revision 1.255 Kernel Heap Hardening: perform certain sanity checks on the pool caches directly, to immediately detect certain bugs that would otherwise have been detected only later on the pool layer, if the buffer ever reached the pool layer. - Replace || by && in KASAN, to increase the pool coverage. Strictly speaking, what we want to avoid is poisoning buffers that were referenced in a global list as part of the ctor. But, if a buffer indeed got referenced as part of the ctor, it necessarily has to be unreferenced in the dtor; which implies it has to have a dtor. So we want both a ctor and a dtor, and not just one of them. Note that POOL_QUARANTINE already implicitly provides this increased coverage. - Initialize pp->pr_redzone to false. For some reason with KUBSAN GCC does not eliminate the unused branch in pr_item_linkedlist_put(), and this leads to a unused uninitialized access which triggers KUBSAN messages. To generate a diff of this commit: cvs rdiff -u -r1.252 -r1.252.2.1 src/sys/kern/subr_pool.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.