Subject: Re: [Patch net] net_sched: replace yield() with cond_resched()

From: Mike Galbraith <[email-masked]>
Date: Wed, 05 Apr 2017 05:55:45 +0200

On Tue, 2017-04-04 at 18:52 -0700, Cong Wang wrote:

> diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c
> index 1a2f9e9..4725d2f 100644
> --- a/net/sched/sch_generic.c
> +++ b/net/sched/sch_generic.c
> @@ -925,7 +925,7 @@ void dev_deactivate_many(struct list_head *head)
>  	/* Wait for outstanding qdisc_run calls. */
>  	list_for_each_entry(dev, head, close_list)
>  		while (some_qdisc_is_busy(dev))
> -			yield();
> +			cond_resched();
>  }

That won't help, cond_resched() has the same impact upon a lone
SCHED_FIFO task as yield() does.. none.

	-Mike