This was a problem encountered when taking a libpthread-based
application from 2.4.7 to 2.4.15. It ran fine with mlockall
under 2.4.7, but under 2.4.15 everything wedged up. This was, I assume,
because under 2.4.15, the many pthread stacks were fully faulted in and
locked at mlockall() time. We ended up just not using mlockall
at all.
Really the 2.4.15 behaviour is correct, but undesirable. It requires
each thread to know apriori what its maximum stack use will be.
(I'm assuming that there's a way of setting a thread's stack size
in libpthread).
So in this case, the behaviour I would prefer is MCL_FUTURE for
all vma's *except* the stack. Stack pages should be locked
only when they are faulted in. Hard call.
-
-
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/