On Thu, 6 Dec 2007 03:55:11 -0800 Andrew Morton <[EMAIL PROTECTED]> wrote:
> - We a-priori decide to limit a particular stack's peak memory usage to > 1MB > > - We empirically discover that the maximum amount of memory which is > allocated by that stack on behalf of a single BIO is 16kb. (ie: that's > the most it has ever used for a single BIO). > > - Now, we refuse to feed any more BIOs into the stack when its > instantaneous memory usage exceeds (1MB - 16kb). > > Of course, the _average_ memory-per-BIO is much less than 16kb. So there > are a lot of BIOs in flight - probably hundreds, but a minimum of 63. There is only one problem I can see with this. With network block IO, some memory will be consumed upon IO completion. We need to make sure we reserve (number of in flight BIOs * maximum amount of memory consumed upon IO completion) memory, in addition to the memory you're accounting in your example above. -- All Rights Reversed -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/