Changeset e4e7f14 in rtems


Ignore:
Timestamp:
Dec 14, 2015, 3:37:34 PM (4 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
master
Children:
76a8328
Parents:
6c678557
git-author:
Sebastian Huber <sebastian.huber@…> (12/14/15 15:37:34)
git-committer:
Sebastian Huber <sebastian.huber@…> (02/03/16 09:00:56)
Message:

Optional POSIX Barrier initialization

Update #2408.

Files:
5 edited

Legend:

Unmodified
Added
Removed
  • cpukit/posix/include/rtems/posix/barrierimpl.h

    r6c678557 re4e7f14  
    3535 */
    3636
    37 POSIX_EXTERN Objects_Information  _POSIX_Barrier_Information;
    38 
    39 /**
    40  * @brief POSIX barrier manager initialization.
    41  *
    42  * This routine performs the initialization necessary for this manager.
    43  */
    44 
    45 void _POSIX_Barrier_Manager_initialization(void);
     37extern Objects_Information _POSIX_Barrier_Information;
    4638
    4739/**
  • cpukit/posix/src/pbarrier.c

    r6c678557 re4e7f14  
    2222#include <rtems/system.h>
    2323#include <rtems/config.h>
     24#include <rtems/sysinit.h>
    2425#include <rtems/posix/barrierimpl.h>
     26
     27Objects_Information _POSIX_Barrier_Information;
    2528
    2629/**
    2730 *  @brief _POSIX_Barrier_Manager_initialization
    2831 */
    29 void _POSIX_Barrier_Manager_initialization(void)
     32static void _POSIX_Barrier_Manager_initialization(void)
    3033{
    3134  _Objects_Initialize_information(
     
    4548  );
    4649}
     50
     51RTEMS_SYSINIT_ITEM(
     52  _POSIX_Barrier_Manager_initialization,
     53  RTEMS_SYSINIT_POSIX_BARRIER,
     54  RTEMS_SYSINIT_ORDER_MIDDLE
     55);
  • cpukit/sapi/src/posixapi.c

    r6c678557 re4e7f14  
    3232#include <mqueue.h>
    3333#include <rtems/config.h>
    34 #include <rtems/posix/barrierimpl.h>
    3534#include <rtems/posix/config.h>
    3635#include <rtems/posix/priorityimpl.h>
     
    5958
    6059  #ifdef RTEMS_POSIX_API
    61     _POSIX_Barrier_Manager_initialization();
    6260    _POSIX_RWLock_Manager_initialization();
    6361    _POSIX_Spinlock_Manager_initialization();
  • cpukit/score/include/rtems/sysinit.h

    r6c678557 re4e7f14  
    5050#define RTEMS_SYSINIT_POSIX_SEMAPHORE            000365
    5151#define RTEMS_SYSINIT_POSIX_TIMER                000366
     52#define RTEMS_SYSINIT_POSIX_BARRIER              000367
    5253#define RTEMS_SYSINIT_POSIX_CLEANUP              00036a
    5354#define RTEMS_SYSINIT_IDLE_THREADS               000380
  • testsuites/sptests/spsysinit01/init.c

    r6c678557 re4e7f14  
    2929#include <rtems/extensionimpl.h>
    3030#ifdef RTEMS_POSIX_API
     31#include <rtems/posix/barrierimpl.h>
    3132#include <rtems/posix/condimpl.h>
    3233#include <rtems/posix/mqueueimpl.h>
     
    102103  POSIX_TIMER_PRE,
    103104  POSIX_TIMER_POST,
     105  POSIX_BARRIER_PRE,
     106  POSIX_BARRIER_POST,
    104107  POSIX_CLEANUP_PRE,
    105108  POSIX_CLEANUP_POST,
     
    438441}
    439442
     443FIRST(RTEMS_SYSINIT_POSIX_BARRIER)
     444{
     445  assert(_POSIX_Barrier_Information.maximum == 0);
     446  next_step(POSIX_BARRIER_PRE);
     447}
     448
     449LAST(RTEMS_SYSINIT_POSIX_BARRIER)
     450{
     451  assert(_POSIX_Barrier_Information.maximum != 0);
     452  next_step(POSIX_BARRIER_POST);
     453}
     454
    440455static size_t user_extensions_pre_posix_cleanup;
    441456
     
    567582#ifdef RTEMS_POSIX_API
    568583
     584#define CONFIGURE_MAXIMUM_POSIX_BARRIERS 1
     585
    569586#define CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES 1
    570587
Note: See TracChangeset for help on using the changeset viewer.