mirror_zfs/module
Brian Behlendorf efcd0ca32d Enhance SPLAT kmem:slab_overcommit test
After the emergency slab objects were merged I started observing
timeout failures in the kmem:slab_overcommit test.  These were
due to the ineffecient way the slab_overcommit reclaim function
was implemented.  And due to the additional cost of potentially
allocating ten of thousands of emergency objects and tracking
them on a single list.

This patch addresses the first concern by enhansing the test
case to trace all of the allocations objects as a linked list.
This allows for a cleaner version of the reclaim function to
simply release SPLAT_KMEM_OBJ_RECLAIM objects.

Since this touches some common code all the tests which share
these data structions were also updated.  After making these
changes slab_overcommit is reliably passing.  However, there
is certainly additional cleanup which could be done here.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2012-08-30 15:49:00 -07:00
..
spl Switch KM_SLEEP to KM_PUSHPAGE 2012-08-27 12:00:55 -07:00
splat Enhance SPLAT kmem:slab_overcommit test 2012-08-30 15:49:00 -07:00
.gitignore Remove Makefile from non-toplevel .gitignore files 2012-08-23 12:49:04 -07:00
Makefile.in Add script for builtin module building. 2012-07-26 15:13:09 -07:00