problem with net interface card interrupt

Hi,I write a filter module and mount io-net process.The function of filter module is that it will mask net card interrupt when data stream is too much ,after a while ,it unamsk net card interrupt. the problem is that when I send a lot of packets to target machine, the message printed is “close net success”,but target machine is like locked.I can’t strike a key with keyboard. likely cpu is running crazily.that is to say,to mask net card interrupt is invalid. my code is as follow.
/*mask interrupt */
ThreadCtl(_NTO_TCTL_IO,0);
InterruptMask(IntNum,-1);
printf(“close net success level”);
fflush(stdout);
/delay a time/
mytimer.tv_sec = DELAY_SEC;
mytimer.tv_nsec = DELAY_NSEC;
nanosleep(&mytimer,NULL);
/unmask interrupt/
InterruptUnmask(IntNum,-1);
printf(“open net success”);

what’s the matter ? :frowning: thanks for any idea :wink: