/* The enqueue_task method is called before nr_running is increased. Here we update the fair scheduling stats and then put the task into the rbtree:  */
static void enqueue_task_fair(struct rq *rq, struct task_struct *p, int wakeup)
/* The enqueue_task method is called before nr_running is increased. Here we update the fair scheduling stats and then put the task into the rbtree:  */
static void enqueue_task_fair(struct rq *rq, struct task_struct *p, int wakeup)
{
	struct cfs_rq *cfs_rq;
	struct sched_entity *se = &p->se;
	int flags = 0;
	if (wakeup)
		flags |= ENQUEUE_WAKEUP;
	if (p->state == TASK_WAKING)
		flags |= ENQUEUE_MIGRATE;
	for_each_sched_entity(se) {
		if (se->on_rq)
			break;
		cfs_rq = cfs_rq_of(se);
		enqueue_entity(cfs_rq, se, flags);
		flags = ENQUEUE_WAKEUP;
	}
	hrtick_update(rq);
}