From: John L. Hammond Date: Wed, 6 Apr 2022 16:51:47 +0000 (-0500) Subject: LU-15308 lod: set ldo_mirrors to NULL on error X-Git-Tag: 2.15.51~140 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=refs%2Fchanges%2F08%2F47008%2F2;p=fs%2Flustre-release.git LU-15308 lod: set ldo_mirrors to NULL on error In lod_alloc_comp_entries() if OBD_ALLOC_LARGE fails and we free ldo_mirrors then we set it to NULL to avoid a double free later. Test-Parameters: trivial Signed-off-by: John L. Hammond Change-Id: I27552d1eaecc06720190db9cfe89ded71b9fef53 Reviewed-on: https://review.whamcloud.com/47008 Reviewed-by: Andreas Dilger Tested-by: jenkins Tested-by: Maloo Reviewed-by: Alex Zhuravlev --- diff --git a/lustre/lod/lod_lov.c b/lustre/lod/lod_lov.c index d2636c0..8d87e4d 100644 --- a/lustre/lod/lod_lov.c +++ b/lustre/lod/lod_lov.c @@ -580,6 +580,7 @@ int lod_alloc_comp_entries(struct lod_object *lo, sizeof(*lo->ldo_comp_entries) * comp_count); if (lo->ldo_comp_entries == NULL) { OBD_FREE_PTR_ARRAY(lo->ldo_mirrors, mirror_count); + lo->ldo_mirrors = NULL; lo->ldo_mirror_count = 0; return -ENOMEM; }