Add default stack checking
authorBrian Behlendorf <behlendorf1@llnl.gov>
Sun, 12 Jun 2011 05:48:49 +0000 (22:48 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Mon, 13 Jun 2011 20:50:21 +0000 (13:50 -0700)
commit10715a018760e1d862b8348e31dc505e832a0904
tree90bd62ef2e90baee121b556b0dad750aad080d77
parentda88a7fbe8876437c25f1006f91ca5595659b8d2
Add default stack checking

When your kernel is built with kernel stack tracing enabled and you
have the debugfs filesystem mounted.  Then the zfs.sh script will clear
the worst observed kernel stack depth on module load and check the worst
case usage on module removal.  If the stack depth ever exceeds 7000
bytes the full stack will be printed for debugging.  This is dangerously
close to overrunning the default 8k stack.

This additional advisory debugging is particularly valuable when running
the regression tests on a kernel built with 16k stacks.  In this case,
almost no matter how bad the stack overrun is you will see be able to
get a clean stack trace for debugging.  Since the worst case stack usage
can be highly variable it's helpful to always check the worst case usage.
scripts/common.sh.in
scripts/zfs.sh