Fix two A-list corruption cases.
authorMatthew Dillon <dillon@dragonflybsd.org>
Wed, 23 Apr 2008 17:21:08 +0000 (17:21 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Wed, 23 Apr 2008 17:21:08 +0000 (17:21 +0000)
commit4b25f87028d10348fe2700fe7b1b700715d758d7
tree7a7310d4eb46937f732cb900854f0e93b4fe55f1
parent1038677d4c763d0327b373722c756e0dfff315a7
Fix two A-list corruption cases.

When a meta-element indicates the next layer is all-allocated or all-free,
the next layer is allowed to contain garbage.  The allocator must skip an
all-allocated layer.

Similarly when a free recurses through an all-allocated layer the next layer
must be initialized so we can recurse down into it.

Reported-by: Jonathan Lemon <jlemon@cisco.com>
sys/kern/subr_alist.c