Messages in this thread | | | Date | Sun, 26 Mar 2000 22:07:48 -0800 (PST) | From | Linus Torvalds <> | Subject | Re: [PATCH] Re: kswapd |
| |
On Sun, 26 Mar 2000, Kanoj Sarcar wrote: > > What is the problem that your patch is fixing?
I agree with Rik's patch - the old behaviour kicked us out of the regular loop whenever "need_resched" was set, and that is not necessarily a good idea at all.
From a conceptual standpoint, going to sleep when "need_resched" gets set is not the right thing at all - the flag doesn't really have any bearing on whether kswapd should sleep, it only has meaning from a scheduling latency standpoint (ie "need_resched" does not mean "go to sleep", it means "let somebody else run now" - different things).
On the other hand you're definitely right that this is not a new bug introduced by you, Kanoj - this seems to be just a thinko that has been there for a long long time. And I suspect I may have been the original perpetrator of the crime.
The new code looks much saner: it reschedules when asked to, and it stops looping when it makes sense (ie when there is no longer any reason to free pages). Instead of mixing the two up.
Linus
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |