Re: [PATCH 08/17] sched/fair: Implement an EEVDF like policy

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 28 Mar 2023 11:26:30 +0200 Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> 
>  check_preempt_tick(struct cfs_rq *cfs_rq, struct sched_entity *curr)
>  {
> -	unsigned long ideal_runtime, delta_exec;
> +	unsigned long delta_exec;
>  	struct sched_entity *se;
>  	s64 delta;
>  
> -	/*
> -	 * When many tasks blow up the sched_period; it is possible that
> -	 * sched_slice() reports unusually large results (when many tasks are
> -	 * very light for example). Therefore impose a maximum.
> -	 */
> -	ideal_runtime = min_t(u64, sched_slice(cfs_rq, curr), sysctl_sched_latency);
> +	if (sched_feat(EEVDF)) {
> +		if (pick_eevdf(cfs_rq) != curr)
> +			goto preempt;
> +
> +		return;
> +	}

Given deadline, the tick preempt can be replaced with a timer expiring at the EDL.




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux