Changeset d507c037 in rtems for cpukit/sapi


Ignore:
Timestamp:
Apr 3, 2014, 5:55:43 PM (5 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.11, master
Children:
57740ce8
Parents:
cae120e2
git-author:
Joel Sherrill <joel.sherrill@…> (04/03/14 17:55:43)
git-committer:
Joel Sherrill <joel.sherrill@…> (04/04/14 19:27:27)
Message:

Disable per task variables when SMP is enabled

Per task variables are inherently unsafe in SMP systems. This
patch disables them from the build and adds warnings in the
appropriate documentation and configuration sections.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • cpukit/sapi/include/confdefs.h

    rcae120e2 rd507c037  
    15921592  #endif
    15931593
    1594   /**
    1595    * This macro calculates the memory required for task variables.
    1596    *
    1597    * NOTE: Each task variable is individually allocated from the Workspace.
    1598    *       Hence, we do the multiplication on the configured size.
    1599    */
     1594/**
     1595 * This macro calculates the memory required for task variables.
     1596 *
     1597 * Each task variable is individually allocated from the Workspace.
     1598 * Hence, we do the multiplication on the configured size.
     1599 *
     1600 * @note Per-task variables are disabled for SMP configurations.
     1601 */
     1602#if defined(RTEMS_SMP)
     1603  #ifdef CONFIGURE_MAXIMUM_TASK_VARIABLES
     1604    #error "Per-Task Variables are not safe for SMP systems and disabled"
     1605  #endif
     1606  #define CONFIGURE_MAXIMUM_TASK_VARIABLES                     0
     1607  #define CONFIGURE_MEMORY_FOR_TASK_VARIABLES(_task_variables) 0
     1608#else
    16001609  #ifndef CONFIGURE_MAXIMUM_TASK_VARIABLES
    16011610    #define CONFIGURE_MAXIMUM_TASK_VARIABLES                     0
     
    16061615         _Configure_From_workspace(sizeof(rtems_task_variable_t))
    16071616  #endif
     1617#endif
    16081618
    16091619  #ifndef CONFIGURE_MAXIMUM_TIMERS
Note: See TracChangeset for help on using the changeset viewer.