Re: [PATCH 2/4] pktgen: make sure that pktgen_thread_worker hasbeen executed

From: David Miller
Date: Tue May 20 2008 - 18:13:42 EST


From: "Denis V. Lunev" <den@xxxxxxxxxx>
Date: Tue, 20 May 2008 13:59:47 +0400

> The following courruption can happen during pktgen stop:
> list_del corruption. prev->next should be ffff81007e8a5e70, but was 6b6b6b6b6b6b6b6b
> kernel BUG at lib/list_debug.c:67!
> :pktgen:pktgen_thread_worker+0x374/0x10b0
> ? autoremove_wake_function+0x0/0x40
> ? _spin_unlock_irqrestore+0x42/0x80
> ? :pktgen:pktgen_thread_worker+0x0/0x10b0
> kthread+0x4d/0x80
> child_rip+0xa/0x12
> ? restore_args+0x0/0x30
> ? kthread+0x0/0x80
> ? child_rip+0x0/0x12
> RIP list_del+0x48/0x70
>
> The problem is that pktgen_thread_worker can not be executed if kthread_stop
> has been called too early. Insert a completion on the normal initialization
> path to make sure that pktgen_thread_worker will gain the control for sure.
>
> Signed-off-by: Denis V. Lunev <den@xxxxxxxxxx>
> Cc: Patrick McHardy <kaber@xxxxxxxxx>
> Cc: Robert Olsson <robert.olsson@xxxxxxxxx>
> Cc: Ben Greear <greearb@xxxxxxxxxxxxxxx>
> Acked-by: Alexey Dobriyan <adobriyan@xxxxxxxxxx>

Patch applied, thanks a lot Denis!
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/