On Thu, Aug 10, 2006 at 11:25:05PM -0700, Ulrich Drepper ([EMAIL PROTECTED]) wrote: > Evgeniy Polyakov wrote: > > The main disadvantage is that all memory is allocated on the start even > > if it will not be used later. I think dynamic grow is appropriate > > solution, since user will have that memory used anyway, since kevents > > are allocated, > > If you _allocate_ memory at startup you're doing something wrong. All > you should do is allocate address space. Memory should be allocated > when it is needed. > > Growing a memory region is always hard because it means you cannot keep > any addresses around and always have to reload a base pointer. That's > not ideal. > > Especially on 64-bit machines address space really is no limitation > anymore. So, allocate as much as needed, allocate memory when it's > needed, and don't resize.
That requires mmap hacks to substitute pages in run-time without user notifications. I do not expect it is a good solution, since on x86 it requires full TLB flush (at least when I did it there were no exported methods to flush separate addresses). > -- > ➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖ > -- Evgeniy Polyakov - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html