Sorry,but __disable_irq() does nothing?

In the FreeRTOS ARM7_LPC2129_Keil_RVDS port, we use #define portDISABLE_INTERRUPTS()    __disable_irq()                    #define portENABLE_INTERRUPTS()    __enable_irq() but a fact is that __disable_irq() and __enable_irq() can not be called from the user mode.It seems they dont function correctly, the irq is not disabled after call to portDISABLE_INTERRUPTS() or portENABLE_INTERRUPTS(). plz help me about this.. Regards. wFrancis

Sorry,but __disable_irq() does nothing?

Tasks run in System mode, so the interrupt masks can be accessed. Regards.

Sorry,but __disable_irq() does nothing?

Thanks for your kindly reply! However , I found that the watchdog timer not work well with the __disable_irq().It seems that the wdt resets the whole system even if I feed it in the task using __disable_irq() and __enable_irq() to ensure the feed is successful. void wdtFeed(void) {     __disable_irq();     WDFEED = 0xAA;     WDFEED = 0x55;     __enable_irq(); } void wdtInit(uint tms) {     __disable_irq();     WDTC = (ulong)(tms * configCPU_CLOCK_HZ / 4 / 1000);     WDMOD = 0x03;     WDFEED = 0xAA;     WDFEED = 0x55;     __enable_irq(); } What ‘s up?Can you guide me? Regards! wFrancis