MCPcopy Create free account
hub / github.com/FreeRTOS/FreeRTOS-Kernel / prvCreateIdleTasks

Function prvCreateIdleTasks

tasks.c:2619–2750  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2617/*-----------------------------------------------------------*/
2618
2619static BaseType_t prvCreateIdleTasks( void )
2620{
2621 BaseType_t xReturn = pdPASS;
2622 BaseType_t xCoreID;
2623 char cIdleName[ configMAX_TASK_NAME_LEN ];
2624
2625 /* Add each idle task at the lowest priority. */
2626 for( xCoreID = ( BaseType_t ) 0; xCoreID < ( BaseType_t ) configNUM_CORES; xCoreID++ )
2627 {
2628 BaseType_t x;
2629
2630 if( xReturn == pdFAIL )
2631 {
2632 break;
2633 }
2634 else
2635 {
2636 mtCOVERAGE_TEST_MARKER();
2637 }
2638
2639 for( x = ( BaseType_t ) 0; x < ( BaseType_t ) configMAX_TASK_NAME_LEN; x++ )
2640 {
2641 cIdleName[ x ] = configIDLE_TASK_NAME[ x ];
2642
2643 /* Don't copy all configMAX_TASK_NAME_LEN if the string is shorter than
2644 * configMAX_TASK_NAME_LEN characters just in case the memory after the
2645 * string is not accessible (extremely unlikely). */
2646 if( cIdleName[ x ] == ( char ) 0x00 )
2647 {
2648 break;
2649 }
2650 else
2651 {
2652 mtCOVERAGE_TEST_MARKER();
2653 }
2654 }
2655
2656 /* Append the idle task number to the end of the name if there is space */
2657 if( x < configMAX_TASK_NAME_LEN )
2658 {
2659 cIdleName[ x++ ] = xCoreID + '0';
2660
2661 /* And append a null character if there is space */
2662 if( x < configMAX_TASK_NAME_LEN )
2663 {
2664 cIdleName[ x ] = '\0';
2665 }
2666 else
2667 {
2668 mtCOVERAGE_TEST_MARKER();
2669 }
2670 }
2671 else
2672 {
2673 mtCOVERAGE_TEST_MARKER();
2674 }
2675
2676 #if ( configSUPPORT_STATIC_ALLOCATION == 1 )

Callers 1

vTaskStartSchedulerFunction · 0.85

Calls 3

xTaskCreateStaticFunction · 0.85
xTaskCreateFunction · 0.85

Tested by

no test coverage detected