Hi!
--- Quote Start ---
My first ideas for your problem would be to set the non-interruptible IRQ to highest priority or to disable all other IRQ's while inside the ISR. But I guess you already thought about this :P
--- Quote End ---
Well, Yes and No;-) If you have more than one IRQ which should not be interrupted, the highest priority thing does not work acceptably.
But disabling all might me a solution .... Though I could imagine that the IRQ can be interrupted just the moment you are executing the disabling-all stuff.
But at the moment I am lucky. I do not need it yet:-)
Thanks for your suggestion!