1. A method of handling interrupts in a data processing system, the method comprising: maintaining, at an interrupt presentation controller (IPC), an interrupt acknowledge count (IAC), wherein the IAC provides an indication of a number of times a virtual processor thread implemented at a first software stack level has been interrupted in response to receipt of event notification messages (ENMs) from an interrupt source controller (ISC); and in response to the IAC reaching a threshold level, transmitting, by the IPC, an escalate message to the ISC, wherein the escalate message includes an escalate event number that is used by the ISC to generate a new ENM that targets a second software stack level that is different than the first software stack level and is associated with another virtual processor thread.