diff options
author | Brian Atkinson <[email protected]> | 2021-01-28 10:15:17 -0700 |
---|---|---|
committer | GitHub <[email protected]> | 2021-01-28 09:15:17 -0800 |
commit | 416015ef544183aa1310d7353f28b369f8b89928 (patch) | |
tree | c7a487bcb648f25dc377d1cebfc34271a9c119fa /module/zfs/arc.c | |
parent | 393e69241eea8b5f7f817200ad283b7d5b5ceb70 (diff) |
Removing ABD Parent Child Reference Before Freeing ABD
Moving the call to zfs_refcount_remove_many() in abd_free() to be called
before any of the ABD free variants are called. This is necessary
because abd_free_gang() adjusts the abd_size for the gang ABD. If the
parent's child references are removed after free'ing the gang ABD the
refcount is not adjusted correctly for the parent's children.
I also removed some stray abd_put() in comments and changed
abd_free_gang_abd() -> abd_free_gang().
Reviewed-by: Mark Maybee <[email protected]>
Reviewed-by: Matthew Ahrens <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: Brian Atkinson <[email protected]>
Closes #11539
Diffstat (limited to 'module/zfs/arc.c')
0 files changed, 0 insertions, 0 deletions