Changeset 04436ae in rtems


Ignore:
Timestamp:
Dec 10, 2015, 12:46:07 PM (4 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
master
Children:
ef1a985
Parents:
58089ff
git-author:
Sebastian Huber <sebastian.huber@…> (12/10/15 12:46:07)
git-committer:
Sebastian Huber <sebastian.huber@…> (02/03/16 09:00:54)
Message:

Optional POSIX Signals initialization

Update #2408.

Files:
5 edited

Legend:

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

    r58089ff r04436ae  
    7373 */
    7474
    75 /**
    76  * @brief POSIX signals manager initialization.
    77  */
    78 void _POSIX_signals_Manager_Initialization(void);
    79 
    8075#define _POSIX_signals_Acquire( lock_context ) \
    8176  _Thread_queue_Acquire( &_POSIX_signals_Wait_queue, lock_context )
  • cpukit/posix/src/psignal.c

    r58089ff r04436ae  
    3434#include <rtems/config.h>
    3535#include <rtems/seterr.h>
     36#include <rtems/sysinit.h>
    3637
    3738/*
     
    167168}
    168169
    169 void _POSIX_signals_Manager_Initialization(void)
     170static void _POSIX_signals_Manager_Initialization(void)
    170171{
    171172  uint32_t   signo;
     
    214215  }
    215216}
     217
     218RTEMS_SYSINIT_ITEM(
     219  _POSIX_signals_Manager_Initialization,
     220  RTEMS_SYSINIT_POSIX_SIGNALS,
     221  RTEMS_SYSINIT_ORDER_MIDDLE
     222);
  • cpukit/sapi/src/posixapi.c

    r58089ff r04436ae  
    6565
    6666  #ifdef RTEMS_POSIX_API
    67     _POSIX_signals_Manager_Initialization();
    6867    _POSIX_Threads_Manager_initialization();
    6968    _POSIX_Condition_variables_Manager_initialization();
  • cpukit/score/include/rtems/sysinit.h

    r58089ff r04436ae  
    4343#define RTEMS_SYSINIT_CLASSIC_RATE_MONOTONIC     000349
    4444#define RTEMS_SYSINIT_CLASSIC_BARRIER            00034a
     45#define RTEMS_SYSINIT_POSIX_SIGNALS              000360
    4546#define RTEMS_SYSINIT_IDLE_THREADS               000380
    4647#define RTEMS_SYSINIT_BSP_LIBC                   000400
  • testsuites/sptests/spsysinit01/init.c

    r58089ff r04436ae  
    1818
    1919#include <assert.h>
     20#include <string.h>
    2021#include <stdlib.h>
    2122
     
    2627
    2728#include <rtems/extensionimpl.h>
     29#ifdef RTEMS_POSIX_API
     30#include <rtems/posix/psignalimpl.h>
     31#endif /* RTEMS_POSIX_API */
    2832#include <rtems/rtems/barrierimpl.h>
    2933#include <rtems/rtems/dpmemimpl.h>
     
    7579  CLASSIC_BARRIER_PRE,
    7680  CLASSIC_BARRIER_POST,
     81#ifdef RTEMS_POSIX_API
     82  POSIX_SIGNALS_PRE,
     83  POSIX_SIGNALS_POST,
     84#endif /* RTEMS_POSIX_API */
    7785  IDLE_THREADS_PRE,
    7886  IDLE_THREADS_POST,
     
    310318}
    311319
     320#ifdef RTEMS_POSIX_API
     321
     322FIRST(RTEMS_SYSINIT_POSIX_SIGNALS)
     323{
     324  assert(
     325    memcmp(
     326      &_POSIX_signals_Vectors,
     327      _POSIX_signals_Default_vectors,
     328      sizeof(_POSIX_signals_Vectors)
     329    ) != 0
     330  );
     331  next_step(POSIX_SIGNALS_PRE);
     332}
     333
     334LAST(RTEMS_SYSINIT_POSIX_SIGNALS)
     335{
     336  assert(
     337    memcmp(
     338      &_POSIX_signals_Vectors,
     339      _POSIX_signals_Default_vectors,
     340      sizeof(_POSIX_signals_Vectors)
     341    ) == 0
     342  );
     343  next_step(POSIX_SIGNALS_POST);
     344}
     345
     346#endif /* RTEMS_POSIX_API */
     347
    312348FIRST(RTEMS_SYSINIT_IDLE_THREADS)
    313349{
Note: See TracChangeset for help on using the changeset viewer.