Messages in this thread | | | Date | Tue, 20 May 2008 15:12:57 -0700 (PDT) | Subject | Re: [PATCH 2/4] pktgen: make sure that pktgen_thread_worker has been executed | From | David Miller <> |
| |
From: "Denis V. Lunev" <den@openvz.org> 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@openvz.org> > Cc: Patrick McHardy <kaber@trash.net> > Cc: Robert Olsson <robert.olsson@its.uu.se> > Cc: Ben Greear <greearb@candelatech.com> > Acked-by: Alexey Dobriyan <adobriyan@openvz.org>
Patch applied, thanks a lot Denis!
| |