The old one was not getting freed, creating a memory leak every exec(), which can get huge over time. Plus, there was no need for a new stack. And we couldn't just free the old one, since sys_execve() runs on the old stack...