HomeFreeBSD

Optimize check_filesystem() and process_error_log()

Description

Optimize check_filesystem() and process_error_log()

Integrate check_clones() into check_filesystem() and implement a list
instead of iterating recursively over the clones, thus eliminating the
risk of a stack overflow.

Also use kmem_zalloc() to allocate large structures in
process_error_log() reducing its stack size from ~700 to ~128 bytes.

Reviewed-by: Tino Reichardt <milky-zfs@mcmilk.de>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: George Amanakis <gamanakis@gmail.com>
Closes #14744

Details

Provenance
g_amanakis_yahoo.comAuthored on May 3 2023, 4:00 PM
GitHub <noreply@github.com>Committed on May 3 2023, 4:00 PM
Parents
rGd96e29576c89: Use correct block pointer in block cloning case.
Branches
Unknown
Tags
Unknown