summaryrefslogtreecommitdiffstats
path: root/module/zfs/arc.c
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2016-09-23 10:55:10 -0700
committerGitHub <[email protected]>2016-09-23 10:55:10 -0700
commit7571033285e2f83bf163e0cec31fd2b352beed30 (patch)
tree0a86298c856be3cf37c584081e311f413b4ad367 /module/zfs/arc.c
parentd0662a1beb03033480dc0ac36e905b607e1e8eb8 (diff)
Fix multilist_create() memory leak
In arc_state_fini() the `arc_l2c_only->arcs_list[*]` multilists must be destroyed. This accidentally regressed in d3c2ae1c. Reviewed by: Tom Caputi <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Issue #5151 Closes #5152
Diffstat (limited to 'module/zfs/arc.c')
-rwxr-xr-xmodule/zfs/arc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/module/zfs/arc.c b/module/zfs/arc.c
index f848c4c09..f1f61291c 100755
--- a/module/zfs/arc.c
+++ b/module/zfs/arc.c
@@ -6265,6 +6265,8 @@ arc_state_fini(void)
multilist_destroy(&arc_mru_ghost->arcs_list[ARC_BUFC_DATA]);
multilist_destroy(&arc_mfu->arcs_list[ARC_BUFC_DATA]);
multilist_destroy(&arc_mfu_ghost->arcs_list[ARC_BUFC_DATA]);
+ multilist_destroy(&arc_l2c_only->arcs_list[ARC_BUFC_METADATA]);
+ multilist_destroy(&arc_l2c_only->arcs_list[ARC_BUFC_DATA]);
}
uint64_t