Prev: splice fixes
Next: [PATCH 09/14] vmscan: Setup pagevec as late as possible in shrink_inactive_list()
From: shenghui on 29 Jun 2010 07:30 2010/6/29 Peter Zijlstra <peterz(a)infradead.org>: > On Tue, 2010-06-29 at 15:10 +0800, shenghui wrote: >> I think some lock on the metadata can fix this issue, but we may >> change plenty of code to add support for lock. I think the easist >> way is just substacting nr_running before dequing tasks. > > But all that is fully serialized by the rq->lock.. so I'm really not > seeing how this can happen. > > > I wonder is there any chance set_next_entity() can get NULL for parameter se if so? And will you please give me some instructions on where rq->lock is required? -- Thanks and Best Regards, shenghui -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: shenghui on 29 Jun 2010 08:50
2010/6/29 Peter Zijlstra <peterz(a)infradead.org>: > Pretty much everywhere, if you look at sched.c the only sched_class > method not called with rq->lock held is ::task_fork(). > > The interesting bits are that schedule()->pre_schedule()/idle_balance() > can drop rq->lock as well as ->select_task_rq(). > > > > Thanks for your instructions! -- Thanks and Best Regards, shenghui -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |