Kirk McKusick b03587f06a Malloc buckets of size 128 have been having their 64-byte offset
trashed after being freed. This has caused several panics including
kern/42277 related to soft updates. Jim Kuhn tracked the problem
down to ipfw limit rule processing.  In the expiry of dynamic rules,
it is possible for an O_LIMIT_PARENT rule to be removed when it still
has live children.  When the children eventually do expire, a pointer
to the (long gone) parent is dereferenced and a count decremented.
Since this memory can, and is, allocated for other purposes (in the
case of kern/42277 an inodedep structure), chaos ensues. The offset
in question in inodedep is the offset of the 16 bit count field in
the ipfw2 ipfw_dyn_rule.

Submitted by:	Jim Kuhn <jkuhn@sandvine.com>
Reviewed by:	"Evgueni V. Gavrilov" <aquatique@rusunix.org>
Reviewed by:	Ben Pfountz <netprince@vt.edu>
MFC after:	1 week
2003-10-16 02:00:12 +00:00
..
2003-10-07 17:46:18 +00:00
2003-10-07 17:46:18 +00:00
2003-09-05 00:00:51 +00:00
2003-09-17 00:54:04 +00:00
2003-06-01 09:20:38 +00:00
2003-09-01 05:12:36 +00:00
2002-10-16 22:27:27 +00:00
2003-10-15 18:19:28 +00:00
2003-09-06 04:53:43 +00:00
2003-08-07 18:16:59 +00:00
2003-04-02 20:14:44 +00:00
2003-08-07 18:17:43 +00:00
2003-08-07 18:17:43 +00:00
2003-09-03 02:19:29 +00:00