On Thu, 10 May 2007 15:00:05 -0700 Jeremy Fitzhardinge <jeremy@xxxxxxxx> wrote: > Herbert Xu wrote: > > [NET] link_watch: Move link watch list into net_device > > > > These days the link watch mechanism is an integral part of the > > network subsystem as it manages the carrier status. So it now > > makes sense to allocate some memory for it in net_device rather > > than allocating it on demand. > > I think there's a problem with one of these two patches. I've been > noticing that one of my events/X threads has been going into a spin for > about 5 mins after boot. I added some debugging to > kernel/workqueue.c:run_workqueue, since its that loop which seems to be > spinning due to list corruption. > > When I look to see if that loop has iterated for more than 100 times in > one go (which seems unlikely), I get this: > > BUG: cpu 3, count=101 list screwup on c04babe4, func c03217e8 > func=linkwatch_event+0x0/0x2a > [<c0109173>] show_trace_log_lvl+0x1a/0x30 > [<c0109c7f>] show_trace+0x12/0x14 > [<c0109d0c>] dump_stack+0x16/0x18 > [<c0137c25>] run_workqueue+0x97/0x18c > [<c01386a4>] worker_thread+0xe5/0xf5 > [<c013afe9>] kthread+0x3b/0x62 > [<c0108d47>] kernel_thread_helper+0x7/0x10 > ======================= > > > I wonder if the problem is that the linkwatch_work is being rescheduled > when its already been scheduled, or something like that? Five minutes after boot is when jiffies wraps. Are you sure it's a list-screwup rather than a jiffy-wrap screwup? _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization