> After enabling interrupts, the application should do one more call to rx_burst > which will see if there any packets that raced in. > If it does get some packets, chances are you want to disable interrupts > and go back to polling mode.
As I'm sure you are aware, polling one more time would not change the likelihood that additional packets arrive and disarm the interrupt before the thread suspends. A packet could still arrive between that polling round and the call to rte_epoll_wait(). Is there really no way to atomically arm the interrupt and suspend, guaranteeing that my thread will never suspend if packets have arrived prior to suspending?