Messages in this thread | | | Date | Thu, 24 Jun 2004 20:07:56 +0200 | From | Andrea Arcangeli <> | Subject | Re: [discuss] Re: 32-bit dma allocations on 64-bit platforms |
| |
On Thu, Jun 24, 2004 at 10:53:31AM -0700, William Lee Irwin III wrote: > On Thu, Jun 24, 2004 at 07:39:27PM +0200, Andrea Arcangeli wrote: > > I looked more into it and you can leave it turned off since it's not > > going to work. > > it's all in functions of z->pages_* and those are _global_ for all the > > zones, and in turn they're absolutely meaningless. > > the algorithm has nothing in common with lowmem_reverse_ratio, the > > effect has a tinybit of similarity but the incremntal min thing is so > > weak and so bad that it will either not help or it'll waste tons of > > memory. Furthemore you cannot set a sysctl value that works for all > > machines. The whole thing should be dropped and replaced with the fine > > production quality lowmem_reserve_ratio in 2.4.26+ > > (the only broken thing of lowmem_reserve_ratio is that it cannot be > > tuned, not even at boottime, a recompile is needed, but that's fixable > > to tune it at boot time, and in theory at runtime too, but the point is > > that no dyanmic tuning is required with it) > > Please focus on this code of 2.4: > > There is mention of discrimination between pinned and unpinned > allocations not being possible; I can arrange this for more > comprehensive coverage if desired. Would you like this to be arranged, > and if so, how would you like that to interact with the fallback > heuristics?
how do you handle swapoff and mlock then? anonymous memory is pinned w/o swap. You've relocate the stuff during the mlock or swapoff to obey to the pin limits to make this work right, and it sounds quite complicated and it would hurt mlock performance a lot too (some big app uses mlock to pagein w/o page faults tons of stuff).
Note that the "pinned" thing in theory makes *perfect* sense, but it only makes sense on _top_ of lowmem_zone_reserve_ratio, it's not an alternative.
When the page is pinned you obey to the "lowmem_zone_reserve_ratio" when it's _not_ pinned then you absolutely ignore the lowmem_zone_reseve_ratio and you go with the watermarks[curr_zone_idx] instead of the class_idx.
But in practice I doubt it worth it since I doubt you want to relocate pagecache and anonymous memory during swapoff/mlock. - 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/
| |