Consider that an SMI is triggered immediately after the entry of the NMI. According to the Intel manual the SMM is free to enable NMIs with the IRET instruction. Now consider the SMM returns with NMI enabled and a second NMI is triggered. If I'm correct this would mess up the stack anyway. I can't see a solution to this problem.