This gets triggered repeatedly. It turns out that when this
happens, memory starvation has kicked in, and the kernel is
trying to handle a page fault -- however the current->mm
pointer is not pointing at anything useful -- hence the
'down' operation is doomed.
My environment uses clone calls -- so there is no real reason
why this process shouldn't have a valid mm structure. It is
noticeable that the reference count increment doesn't happen
until quite late on in the cloning operation. In particular,
it looks as though the kernel stack page pointer (which
is allocated in the cloning process) overlaps with what (used to be)
the parents mm pointer. I suspect that some of the cloning
memory allocations are blocking, but I don't know.
Something bad is going on.... Does anybody have any ideas?
Philip
The parent clones the child.
-- Philip Gladstone +1 617 487 7700 Raptor Systems, Waltham, MA http://www.raptor.com/