HomeFreeBSD

Remove recursion from dsl_dir_willuse_space()

Description

Remove recursion from dsl_dir_willuse_space()

Remove recursion from dsl_dir_willuse_space() to reduce stack usage.
Issues with stack overflow were observed in zfs recv of zvols,
likelihood of an overflow is proportional to the depth of the dataset
as dsl_dir_willuse_space() recurses to parent datasets.

Signed-off-by: Andrew Barnes <barnes333@gmail.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #2069

Details

Provenance
Andrew Barnes <barnes333@gmail.com>Authored on Jan 20 2014, 4:39 AM
Brian Behlendorf <behlendorf1@llnl.gov>Committed on Mar 4 2014, 7:22 PM
Parents
rG0ad85ed91e2e: Merge branch 'arc-changes'
Branches
Unknown
Tags
Unknown

Event Timeline

Brian Behlendorf <behlendorf1@llnl.gov> committed rG1ba161592589: Remove recursion from dsl_dir_willuse_space() (authored by Andrew Barnes <barnes333@gmail.com>).Mar 4 2014, 7:22 PM