diff mbox series

[4/6] libmultipath: io_err_stat: call io_destroy() before free_io_err_pathvec()

Message ID 20231024164937.14684-5-mwilck@suse.com (mailing list archive)
State Not Applicable, archived
Delegated to: christophe varoqui
Headers show
Series multipath: aio and systemd service improvements | expand

Commit Message

Martin Wilck Oct. 24, 2023, 4:49 p.m. UTC
From: Martin Wilck <mwilck@suse.com>

Signed-off-by: Martin Wilck <mwilck@suse.com>
---
 libmultipath/io_err_stat.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Benjamin Marzinski Oct. 25, 2023, 11:40 p.m. UTC | #1
On Tue, Oct 24, 2023 at 06:49:35PM +0200, mwilck@suse.com wrote:
> From: Martin Wilck <mwilck@suse.com>
> 
> Signed-off-by: Martin Wilck <mwilck@suse.com>
> ---
>  libmultipath/io_err_stat.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libmultipath/io_err_stat.c b/libmultipath/io_err_stat.c
> index c474c34..1982915 100644
> --- a/libmultipath/io_err_stat.c
> +++ b/libmultipath/io_err_stat.c
> @@ -751,6 +751,6 @@ void stop_io_err_stat_thread(void)
>  		pthread_cancel(io_err_stat_thr);
>  
>  	pthread_join(io_err_stat_thr, NULL);
> -	free_io_err_pathvec();
>  	io_destroy(ioctx);
> +	free_io_err_pathvec();

This looks to me like another reason why we don't want the
cancel_inflight_io() function in free_io_err_stat_path(). I don't think
it's valid to call io_cancel(), which cancel_inflight_io() does, after
you call io_destroy().

-Ben

>  }
> -- 
> 2.42.0
diff mbox series

Patch

diff --git a/libmultipath/io_err_stat.c b/libmultipath/io_err_stat.c
index c474c34..1982915 100644
--- a/libmultipath/io_err_stat.c
+++ b/libmultipath/io_err_stat.c
@@ -751,6 +751,6 @@  void stop_io_err_stat_thread(void)
 		pthread_cancel(io_err_stat_thr);
 
 	pthread_join(io_err_stat_thr, NULL);
-	free_io_err_pathvec();
 	io_destroy(ioctx);
+	free_io_err_pathvec();
 }