Messages in this thread | | | From | Rusty Russell <> | Subject | Re: Question about sched_yield() | Date | Wed, 19 Jun 2002 06:19:40 +1000 |
| |
In message <20020618191233.AAA27954@shell.webmaster.com@whenever> you write: > > On Wed, 19 Jun 2002 04:56:06 +1000, Rusty Russell wrote: > > >On Mon, 17 Jun 2002 17:46:29 -0700 > >David Schwartz <davids@webmaster.com> wrote: > > >>"The sched_yield() function shall force the running thread to relinquish > >>the processor until it again becomes the head of its thread list. > >> It takes no arguments." > > >Notice how incredibly useless this definition is. It's even defined in > >terms of UP. > > =09Huh?! This definition is beautiful in that it makes no such= > assumptions. How would you say this is invalid on an SMP machine? By > "the= processor", they mean "the process on which the thread is > running" (the only one= it could relinquish, after all).
Read again: they use "relinquish ... until", not "relinquish". Subtle difference.
I have 32 processors and 32 threads. One does a yield(). What happens? What should happen?
Given that yield is "sleep for some time but I won't tell you what I'm doing", I have no sympathy for yield users 8)
Rusty. -- Anyone who quotes me in their sig is an idiot. -- Rusty Russell. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |