HomeFreeBSD

Stack overflow in recursive bpobj_iterate_impl

Description

Stack overflow in recursive bpobj_iterate_impl

The function bpobj_iterate_impl overflows the stack when bpobjs
are deeply nested. Rewrite the function to eliminate the recursion.

Reviewed-by: Serapheim Dimitropoulos <serapheim@delphix.com>
Reviewed-by: Matt Ahrens <mahrens@delphix.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Paul Zuchowski <pzuchowski@datto.com>
Closes #7674
Closes #7675
Closes #7908

Details

Provenance
Paul Zuchowski <31706010+PaulZ-98@users.noreply.github.com>Authored on Mar 6 2019, 5:50 PM
Brian Behlendorf <behlendorf1@llnl.gov>Committed on Mar 6 2019, 5:50 PM
Parents
rG96ebc5a1a4cc: Fix race in vdev_initialize_thread
Branches
Unknown
Tags
Unknown

Event Timeline

Brian Behlendorf <behlendorf1@llnl.gov> committed rGa73e8fdb93d2: Stack overflow in recursive bpobj_iterate_impl (authored by Paul Zuchowski <31706010+PaulZ-98@users.noreply.github.com>).Mar 6 2019, 5:50 PM