2021-10-10 14:45:31

by Christophe JAILLET

[permalink] [raw]
Subject: [PATCH] ksmbd: Remove redundant 'flush_workqueue()' calls

'destroy_workqueue()' already drains the queue before destroying it, so
there is no need to flush it explicitly.

Remove the redundant 'flush_workqueue()' calls.

This was generated with coccinelle:

@@
expression E;
@@
- flush_workqueue(E);
destroy_workqueue(E);

Signed-off-by: Christophe JAILLET <[email protected]>
---
fs/ksmbd/ksmbd_work.c | 1 -
fs/ksmbd/transport_rdma.c | 1 -
2 files changed, 2 deletions(-)

diff --git a/fs/ksmbd/ksmbd_work.c b/fs/ksmbd/ksmbd_work.c
index fd58eb4809f6..14b9caebf7a4 100644
--- a/fs/ksmbd/ksmbd_work.c
+++ b/fs/ksmbd/ksmbd_work.c
@@ -69,7 +69,6 @@ int ksmbd_workqueue_init(void)

void ksmbd_workqueue_destroy(void)
{
- flush_workqueue(ksmbd_wq);
destroy_workqueue(ksmbd_wq);
ksmbd_wq = NULL;
}
diff --git a/fs/ksmbd/transport_rdma.c b/fs/ksmbd/transport_rdma.c
index 3a7fa23ba850..0fa7b9c17af3 100644
--- a/fs/ksmbd/transport_rdma.c
+++ b/fs/ksmbd/transport_rdma.c
@@ -2026,7 +2026,6 @@ int ksmbd_rdma_destroy(void)
smb_direct_listener.cm_id = NULL;

if (smb_direct_wq) {
- flush_workqueue(smb_direct_wq);
destroy_workqueue(smb_direct_wq);
smb_direct_wq = NULL;
}
--
2.30.2


2021-10-10 14:58:59

by Namjae Jeon

[permalink] [raw]
Subject: Re: [PATCH] ksmbd: Remove redundant 'flush_workqueue()' calls

2021-10-10 22:21 GMT+09:00, Christophe JAILLET <[email protected]>:
> 'destroy_workqueue()' already drains the queue before destroying it, so
> there is no need to flush it explicitly.
>
> Remove the redundant 'flush_workqueue()' calls.
>
> This was generated with coccinelle:
>
> @@
> expression E;
> @@
> - flush_workqueue(E);
> destroy_workqueue(E);
>
> Signed-off-by: Christophe JAILLET <[email protected]>
Acked-by: Namjae Jeon <[email protected]>

Thanks!

2021-10-11 16:26:01

by Hyunchul Lee

[permalink] [raw]
Subject: Re: [PATCH] ksmbd: Remove redundant 'flush_workqueue()' calls

Acked-by: Hyunchul Lee <[email protected]>

2021년 10월 10일 (일) 오후 10:29, Christophe JAILLET
<[email protected]>님이 작성:
>
> 'destroy_workqueue()' already drains the queue before destroying it, so
> there is no need to flush it explicitly.
>
> Remove the redundant 'flush_workqueue()' calls.
>
> This was generated with coccinelle:
>
> @@
> expression E;
> @@
> - flush_workqueue(E);
> destroy_workqueue(E);
>
> Signed-off-by: Christophe JAILLET <[email protected]>
> ---
> fs/ksmbd/ksmbd_work.c | 1 -
> fs/ksmbd/transport_rdma.c | 1 -
> 2 files changed, 2 deletions(-)
>
> diff --git a/fs/ksmbd/ksmbd_work.c b/fs/ksmbd/ksmbd_work.c
> index fd58eb4809f6..14b9caebf7a4 100644
> --- a/fs/ksmbd/ksmbd_work.c
> +++ b/fs/ksmbd/ksmbd_work.c
> @@ -69,7 +69,6 @@ int ksmbd_workqueue_init(void)
>
> void ksmbd_workqueue_destroy(void)
> {
> - flush_workqueue(ksmbd_wq);
> destroy_workqueue(ksmbd_wq);
> ksmbd_wq = NULL;
> }
> diff --git a/fs/ksmbd/transport_rdma.c b/fs/ksmbd/transport_rdma.c
> index 3a7fa23ba850..0fa7b9c17af3 100644
> --- a/fs/ksmbd/transport_rdma.c
> +++ b/fs/ksmbd/transport_rdma.c
> @@ -2026,7 +2026,6 @@ int ksmbd_rdma_destroy(void)
> smb_direct_listener.cm_id = NULL;
>
> if (smb_direct_wq) {
> - flush_workqueue(smb_direct_wq);
> destroy_workqueue(smb_direct_wq);
> smb_direct_wq = NULL;
> }
> --
> 2.30.2
>


--
Thanks,
Hyunchul