Message ID | 20231219233757.693106-1-haokexin@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 3fb65f6bc7dc19ce32efd4ea26cd0f59ac328ad5 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [v2,net-next] net: pktgen: Use wait_event_freezable_timeout() for freezable kthread | expand |
Hello: This patch was applied to netdev/net-next.git (main) by David S. Miller <davem@davemloft.net>: On Wed, 20 Dec 2023 07:37:57 +0800 you wrote: > A freezable kernel thread can enter frozen state during freezing by > either calling try_to_freeze() or using wait_event_freezable() and its > variants. So for the following snippet of code in a kernel thread loop: > wait_event_interruptible_timeout(); > try_to_freeze(); > > We can change it to a simple wait_event_freezable_timeout() and then > eliminate a function call. > > [...] Here is the summary with links: - [v2,net-next] net: pktgen: Use wait_event_freezable_timeout() for freezable kthread https://git.kernel.org/netdev/net-next/c/3fb65f6bc7dc You are awesome, thank you!
diff --git a/net/core/pktgen.c b/net/core/pktgen.c index 57cea67b7562..ea55a758a475 100644 --- a/net/core/pktgen.c +++ b/net/core/pktgen.c @@ -3669,10 +3669,8 @@ static int pktgen_thread_worker(void *arg) if (unlikely(!pkt_dev && t->control == 0)) { if (t->net->pktgen_exiting) break; - wait_event_interruptible_timeout(t->queue, - t->control != 0, - HZ/10); - try_to_freeze(); + wait_event_freezable_timeout(t->queue, + t->control != 0, HZ / 10); continue; }
A freezable kernel thread can enter frozen state during freezing by either calling try_to_freeze() or using wait_event_freezable() and its variants. So for the following snippet of code in a kernel thread loop: wait_event_interruptible_timeout(); try_to_freeze(); We can change it to a simple wait_event_freezable_timeout() and then eliminate a function call. Signed-off-by: Kevin Hao <haokexin@gmail.com> --- v2: Replace 'HZ/10' with 'HZ / 10' to fix the complaint from checkpatch. net/core/pktgen.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)