* [PATCH] pktgen: fix module unload for good
@ 2012-05-18 9:52 Eric Dumazet
2012-05-18 17:55 ` David Miller
0 siblings, 1 reply; 2+ messages in thread
From: Eric Dumazet @ 2012-05-18 9:52 UTC (permalink / raw)
To: David Miller; +Cc: netdev
From: Eric Dumazet <edumazet@google.com>
commit c57b5468406 (pktgen: fix crash at module unload) did a very poor
job with list primitives.
1) list_splice() arguments were in the wrong order
2) list_splice(list, head) has undefined behavior if head is not
initialized.
3) We should use the list_splice_init() variant to clear pktgen_threads
list.
Signed-off-by: Eric Dumazet <edumazet@google.com>
---
Sorry for the mess, I really dont understand how my machine did not
crash with c57b5468406 commit...
net/core/pktgen.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/net/core/pktgen.c b/net/core/pktgen.c
index 77a5998..b81369b 100644
--- a/net/core/pktgen.c
+++ b/net/core/pktgen.c
@@ -3755,13 +3755,13 @@ static void __exit pg_cleanup(void)
{
struct pktgen_thread *t;
struct list_head *q, *n;
- struct list_head list;
+ LIST_HEAD(list);
/* Stop all interfaces & threads */
pktgen_exiting = true;
mutex_lock(&pktgen_thread_lock);
- list_splice(&list, &pktgen_threads);
+ list_splice_init(&pktgen_threads, &list);
mutex_unlock(&pktgen_thread_lock);
list_for_each_safe(q, n, &list) {
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] pktgen: fix module unload for good
2012-05-18 9:52 [PATCH] pktgen: fix module unload for good Eric Dumazet
@ 2012-05-18 17:55 ` David Miller
0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2012-05-18 17:55 UTC (permalink / raw)
To: eric.dumazet; +Cc: netdev
From: Eric Dumazet <eric.dumazet@gmail.com>
Date: Fri, 18 May 2012 11:52:26 +0200
> From: Eric Dumazet <edumazet@google.com>
>
> commit c57b5468406 (pktgen: fix crash at module unload) did a very poor
> job with list primitives.
>
> 1) list_splice() arguments were in the wrong order
>
> 2) list_splice(list, head) has undefined behavior if head is not
> initialized.
>
> 3) We should use the list_splice_init() variant to clear pktgen_threads
> list.
>
> Signed-off-by: Eric Dumazet <edumazet@google.com>
Applied and queued up for -stable, thanks.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-05-18 17:55 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-18 9:52 [PATCH] pktgen: fix module unload for good Eric Dumazet
2012-05-18 17:55 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox