free_pathgroup() is always called with free_paths=KEEP_PATHS, except from free_pgvec(). Remove the argument.
Signed-off-by: Martin Wilck <[email protected]> --- libmultipath/configure.c | 2 +- libmultipath/dmparser.c | 2 +- libmultipath/pgpolicies.c | 6 +++--- libmultipath/structs.c | 8 ++++---- libmultipath/structs.h | 2 +- libmultipath/structs_vec.c | 2 +- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/libmultipath/configure.c b/libmultipath/configure.c index 2d324ad..a8e18a2 100644 --- a/libmultipath/configure.c +++ b/libmultipath/configure.c @@ -375,7 +375,7 @@ int setup_map(struct multipath *mpp, char **params, struct vectors *vecs) */ if (mpp->pg) { vector_foreach_slot (mpp->pg, pgp, i) - free_pathgroup(pgp, KEEP_PATHS); + free_pathgroup(pgp); vector_free(mpp->pg); mpp->pg = NULL; diff --git a/libmultipath/dmparser.c b/libmultipath/dmparser.c index c8c47e0..e0151ed 100644 --- a/libmultipath/dmparser.c +++ b/libmultipath/dmparser.c @@ -261,7 +261,7 @@ int disassemble_map(const struct vector_s *pathvec, goto out; if (add_pathgroup(mpp, pgp)) { - free_pathgroup(pgp, KEEP_PATHS); + free_pathgroup(pgp); goto out; } diff --git a/libmultipath/pgpolicies.c b/libmultipath/pgpolicies.c index 23ef2bd..d7302a9 100644 --- a/libmultipath/pgpolicies.c +++ b/libmultipath/pgpolicies.c @@ -252,7 +252,7 @@ int group_by_match(struct multipath * mp, vector paths, free(bitmap); return 0; out2: - free_pathgroup(pgp, KEEP_PATHS); + free_pathgroup(pgp); out1: free(bitmap); out: @@ -314,7 +314,7 @@ int one_path_per_group(struct multipath *mp, vector paths) } return 0; out1: - free_pathgroup(pgp, KEEP_PATHS); + free_pathgroup(pgp); out: free_pgvec(mp->pg, KEEP_PATHS); mp->pg = NULL; @@ -343,7 +343,7 @@ int one_group(struct multipath *mp, vector paths) /* aka multibus */ } return 0; out1: - free_pathgroup(pgp, KEEP_PATHS); + free_pathgroup(pgp); out: free_pgvec(mp->pg, KEEP_PATHS); mp->pg = NULL; diff --git a/libmultipath/structs.c b/libmultipath/structs.c index 7df5562..aaa7e50 100644 --- a/libmultipath/structs.c +++ b/libmultipath/structs.c @@ -225,17 +225,17 @@ alloc_pathgroup (void) } void -free_pathgroup (struct pathgroup * pgp, enum free_path_mode free_paths) +free_pathgroup (struct pathgroup *pgp) { if (!pgp) return; - free_pathvec(pgp->paths, free_paths); + free_pathvec(pgp->paths, KEEP_PATHS); free(pgp); } void -free_pgvec (vector pgvec, enum free_path_mode free_paths) +free_pgvec (vector pgvec, enum free_path_mode free_paths __attribute__((unused))) { int i; struct pathgroup * pgp; @@ -244,7 +244,7 @@ free_pgvec (vector pgvec, enum free_path_mode free_paths) return; vector_foreach_slot(pgvec, pgp, i) - free_pathgroup(pgp, free_paths); + free_pathgroup(pgp); vector_free(pgvec); } diff --git a/libmultipath/structs.h b/libmultipath/structs.h index 81c69b4..8fe74c2 100644 --- a/libmultipath/structs.h +++ b/libmultipath/structs.h @@ -577,8 +577,8 @@ void *set_mpp_hwe(struct multipath *mpp, const struct path *pp); void uninitialize_path(struct path *pp); void free_path (struct path *); void free_pathvec (vector vec, enum free_path_mode free_paths); -void free_pathgroup (struct pathgroup * pgp, enum free_path_mode free_paths); void free_pgvec (vector pgvec, enum free_path_mode free_paths); +void free_pathgroup(struct pathgroup *pgp); void free_multipath (struct multipath *, enum free_path_mode free_paths); void cleanup_multipath(struct multipath **pmpp); void cleanup_multipath_and_paths(struct multipath **pmpp); diff --git a/libmultipath/structs_vec.c b/libmultipath/structs_vec.c index 58c785e..f3f47d4 100644 --- a/libmultipath/structs_vec.c +++ b/libmultipath/structs_vec.c @@ -254,7 +254,7 @@ static void update_pathvec_from_dm(vector pathvec, struct multipath *mpp, delete_pg: condlog(2, "%s: removing empty pathgroup %d", mpp->alias, i); vector_del_slot(mpp->pg, i--); - free_pathgroup(pgp, KEEP_PATHS); + free_pathgroup(pgp); must_reload = true; /* Invalidate pgindex for all other pathgroups */ pg_deleted = true; -- 2.52.0
