Ethernet dead when I use vTaskList

yuhleon wrote on Friday, July 13, 2007:

Hi all,

When I use vTaskList(); in one task , my lwip task will not work .
I just wrote the following :

signed char taskbuffer[1024]   
vTaskList(taskbuffer);

and in FreeRTOSConfig.h :

#define INCLUDE_vTaskPrioritySet        1
#define INCLUDE_uxTaskPriorityGet        1
#define INCLUDE_vTaskDelete            1
#define INCLUDE_vTaskCleanUpResources        0
#define INCLUDE_vTaskSuspend            1
#define INCLUDE_vTaskDelayUntil            1
#define INCLUDE_vTaskDelay            1

I just want to see all tasks status .
Does anyone can tell me how to use vTaskList in application ?

jorick23 wrote on Friday, July 13, 2007:

This works for me:

char taskbuffer[1024];

void DisplayTaskInfo (void) {
___vTaskList (taskbuffer);
___printf (
_________"______________Task_____Run_____Stack___TCB\r\n"
_________"Task Name_____State__Priority__Free___Number\r\n"
_________"------------__-----__--------__-----__------");
___printf (taskbuffer);
}

davedoors wrote on Friday, July 13, 2007:

If you are having problems with just this function then most likely it is a stack overflow as this is the one place where sprintf() is used which can use a lot of stack depending on the implementation.  Check the amount of free stack and increase the stack allocated to the task calling vTaskList if needed.