Prev: n2-drv: remove casts from void*
Next: [PATCH 1/3] splice: direct_splice_actor() should not use pos in sd
From: Peter Zijlstra on 29 Jun 2010 06:50 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. -- 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: Peter Zijlstra on 29 Jun 2010 07:40
On Tue, 2010-06-29 at 19:24 +0800, shenghui wrote: > I wonder is there any chance set_next_entity() can get NULL for > parameter se if so? Well, if your machine crashes that way, maybe, but I haven't seen that happen in a long while. > And will you please give me some instructions on where rq->lock > is required? 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(). -- 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/ |