If MCL_FUTURE has been specified and the number of locked pages exceeds the upper limit of allowed locked pages, then the system call which caused the new mapping will fail with ENOMEM. If these new pages have been mapped by the the growing stack, then the kernel will deny stack expansion and send a SIGSEGV.
to me this seems to be the reason for the soundfiler problems, but it can reduce the stability of a working patch, so i'd suggest to find ways to solve this problem ...
what sets the upper limit actually?