Messages in this thread |  | | Date | Mon, 28 Aug 2000 19:42:44 -0700 | From | George Anzinger <> | Subject | Re: [patch] scheduler bugfix, SMP, 2.4.0-test7 |
| |
George Anzinger wrote: > > Linus Torvalds wrote: > > > > On Mon, 28 Aug 2000, Dimitris Michailidis wrote: > > > > > > On 28-Aug-2000 Linus Torvalds wrote: > > > > I think the right solution is to completely split up "schedule()" into two > > > > different functions (which just share 99% of the code), and basically have > > > > the idle thread call the _other_ schedule. The one that never does the > > > > test at all. > > > > > > Just to clarify, you're suggesting having a schedule_and_btw_current_is_idle > > > and calling this from cpu_idle(), right? > > > > Right. > > > > > In this case the two schedules > > > would share quite a bit less than 99% of the code. Idle tasks don't have to > > > deal with kernel lock, ->state, SCHED_YIELD and RT exhaustion, to name a few. > > > > Good point. Although it might be hard to sanely still share the actual > > code (I'd hate to get a bigger icache footprint, so I'd like the common > > code to be _truly_ common, not just on a source level). > > > > But it looks like the thing would work. > > But what happens if schedule is called from entry.S? Or do we depend on > "returning to kernel" to prevent this? > > Or, what if the idle code is actually _in_ schedule()? This should go a > ways toward sharing code. > Accounting issues aside, there is no real reason to even change stacks. But then, I suppose accounting is important. Need those direct deposits :)
George - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |