Changeset fe7aefd5 in rtems for cpukit


Ignore:
Timestamp:
Oct 25, 2018, 8:12:39 AM (10 months ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
master
Children:
033f31c8
Parents:
701057e0
git-author:
Sebastian Huber <sebastian.huber@…> (10/25/18 08:12:39)
git-committer:
Sebastian Huber <sebastian.huber@…> (10/29/18 09:33:37)
Message:

posix: Provide message queues by default

Update #2514.

Location:
cpukit
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • cpukit/Makefile.am

    r701057e0 rfe7aefd5  
    511511librtemscpu_a_SOURCES += posix/src/mmap.c
    512512librtemscpu_a_SOURCES += posix/src/mprotect.c
     513librtemscpu_a_SOURCES += posix/src/mqueue.c
     514librtemscpu_a_SOURCES += posix/src/mqueueclose.c
    513515librtemscpu_a_SOURCES += posix/src/mqueueconfig.c
     516librtemscpu_a_SOURCES += posix/src/mqueuedeletesupp.c
     517librtemscpu_a_SOURCES += posix/src/mqueuegetattr.c
     518librtemscpu_a_SOURCES += posix/src/mqueueopen.c
     519librtemscpu_a_SOURCES += posix/src/mqueuereceive.c
     520librtemscpu_a_SOURCES += posix/src/mqueuerecvsupp.c
     521librtemscpu_a_SOURCES += posix/src/mqueuesend.c
     522librtemscpu_a_SOURCES += posix/src/mqueuesendsupp.c
     523librtemscpu_a_SOURCES += posix/src/mqueuesetattr.c
     524librtemscpu_a_SOURCES += posix/src/mqueuetimedreceive.c
     525librtemscpu_a_SOURCES += posix/src/mqueuetimedsend.c
     526librtemscpu_a_SOURCES += posix/src/mqueueunlink.c
    514527librtemscpu_a_SOURCES += posix/src/msync.c
    515528librtemscpu_a_SOURCES += posix/src/munlockall.c
     
    10481061librtemscpu_a_SOURCES += posix/src/killinfo.c
    10491062librtemscpu_a_SOURCES += posix/src/kill_r.c
    1050 librtemscpu_a_SOURCES += posix/src/mqueue.c
    1051 librtemscpu_a_SOURCES += posix/src/mqueueclose.c
    1052 librtemscpu_a_SOURCES += posix/src/mqueuedeletesupp.c
    1053 librtemscpu_a_SOURCES += posix/src/mqueuegetattr.c
    10541063librtemscpu_a_SOURCES += posix/src/mqueuenotify.c
    1055 librtemscpu_a_SOURCES += posix/src/mqueueopen.c
    1056 librtemscpu_a_SOURCES += posix/src/mqueuereceive.c
    1057 librtemscpu_a_SOURCES += posix/src/mqueuerecvsupp.c
    1058 librtemscpu_a_SOURCES += posix/src/mqueuesend.c
    1059 librtemscpu_a_SOURCES += posix/src/mqueuesendsupp.c
    1060 librtemscpu_a_SOURCES += posix/src/mqueuesetattr.c
    1061 librtemscpu_a_SOURCES += posix/src/mqueuetimedreceive.c
    1062 librtemscpu_a_SOURCES += posix/src/mqueuetimedsend.c
    1063 librtemscpu_a_SOURCES += posix/src/mqueueunlink.c
    10641064librtemscpu_a_SOURCES += posix/src/pause.c
    10651065librtemscpu_a_SOURCES += posix/src/psignal.c
  • cpukit/include/rtems/confdefs.h

    r701057e0 rfe7aefd5  
    3434#include <rtems/score/wkspace.h>
    3535#include <rtems/posix/key.h>
     36#include <rtems/posix/mqueue.h>
    3637#include <rtems/posix/semaphore.h>
    3738#include <rtems/posix/shm.h>
     
    19381939      rtems_resource_unlimited(CONFIGURE_UNLIMITED_ALLOCATION_SIZE)
    19391940  #endif
     1941  #if !defined(CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES)
     1942    #define CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES \
     1943      rtems_resource_unlimited(CONFIGURE_UNLIMITED_ALLOCATION_SIZE)
     1944  #endif
    19401945  #if !defined(CONFIGURE_MAXIMUM_POSIX_SEMAPHORES)
    19411946    #define CONFIGURE_MAXIMUM_POSIX_SEMAPHORES \
     
    19621967    #endif
    19631968*/
    1964     #if !defined(CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES)
    1965       #define CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES \
    1966         rtems_resource_unlimited(CONFIGURE_UNLIMITED_ALLOCATION_SIZE)
    1967     #endif
    19681969  #endif /* RTEMS_POSIX_API */
    19691970#endif /* CONFIGURE_UNLIMITED_OBJECTS */
     
    23112312/**
    23122313 * This configuration parameter specifies the maximum number of
     2314 * POSIX API message queues.
     2315 */
     2316#ifndef CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES
     2317  #define CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES 0
     2318#endif
     2319
     2320/*
     2321 * This macro is calculated to specify the memory required for
     2322 * POSIX API message queues.
     2323 */
     2324#define _CONFIGURE_MEMORY_FOR_POSIX_MESSAGE_QUEUES(_message_queues) \
     2325  _Configure_POSIX_Named_Object_RAM( \
     2326     _message_queues, sizeof(POSIX_Message_queue_Control) )
     2327
     2328/**
     2329 * This configuration parameter specifies the maximum number of
    23132330 * POSIX API semaphores.
    23142331 */
     
    23462363  #include <sys/types.h>
    23472364  #include <signal.h>
    2348   #include <mqueue.h>
    2349   #include <rtems/posix/mqueue.h>
    23502365  #include <rtems/posix/psignal.h>
    23512366  #include <rtems/posix/pthread.h>
     
    23912406    _Configure_From_workspace( \
    23922407      (_queued_signals) * (sizeof(POSIX_signals_Siginfo_node)) )
    2393 
    2394   /**
    2395    * This configuration parameter specifies the maximum number of
    2396    * POSIX API message queues.
    2397    */
    2398   #ifndef CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES
    2399     #define CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES                     0
    2400   #endif
    2401 
    2402   /*
    2403    * This macro is calculated to specify the memory required for
    2404    * POSIX API message queues.
    2405    */
    2406   #define _CONFIGURE_MEMORY_FOR_POSIX_MESSAGE_QUEUES(_message_queues) \
    2407     _Configure_POSIX_Named_Object_RAM( \
    2408        _message_queues, sizeof(POSIX_Message_queue_Control) )
    24092408
    24102409  #ifdef CONFIGURE_POSIX_INIT_THREAD_TABLE
     
    25462545    (_CONFIGURE_MEMORY_FOR_POSIX_QUEUED_SIGNALS( \
    25472546        CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS) + \
    2548       _CONFIGURE_MEMORY_FOR_POSIX_MESSAGE_QUEUES( \
    2549         CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES) + \
    25502547      _CONFIGURE_MEMORY_FOR_POSIX_TIMERS(CONFIGURE_MAXIMUM_POSIX_TIMERS))
    25512548#else
     
    27062703      _CONFIGURE_POSIX_KEYS, \
    27072704      CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS ) + \
     2705   _CONFIGURE_MEMORY_FOR_POSIX_MESSAGE_QUEUES( \
     2706     CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES) + \
    27082707   _CONFIGURE_MEMORY_FOR_POSIX_SEMAPHORES( \
    27092708     CONFIGURE_MAXIMUM_POSIX_SEMAPHORES) + \
     
    32123211    uint32_t POSIX_TIMERS;
    32133212    uint32_t POSIX_QUEUED_SIGNALS;
     3213#endif
    32143214    uint32_t POSIX_MESSAGE_QUEUES;
    3215 #endif
    32163215    uint32_t POSIX_SEMAPHORES;
    32173216    uint32_t POSIX_SHMS;
     
    32603259    _CONFIGURE_MEMORY_FOR_POSIX_QUEUED_SIGNALS(
    32613260      CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS ),
     3261#endif
    32623262    _CONFIGURE_MEMORY_FOR_POSIX_MESSAGE_QUEUES(
    32633263      CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES ),
    3264 #endif
    32653264    _CONFIGURE_MEMORY_FOR_POSIX_SEMAPHORES( CONFIGURE_MAXIMUM_POSIX_SEMAPHORES ),
    32663265    _CONFIGURE_MEMORY_FOR_POSIX_SHMS( CONFIGURE_MAXIMUM_POSIX_SHMS ),
     
    33283327       (CONFIGURE_MAXIMUM_POSIX_TIMERS != 0) || \
    33293328       (CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS != 0) || \
    3330        (CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES != 0) || \
    33313329      defined(CONFIGURE_POSIX_INIT_THREAD_TABLE))
    33323330  #error "CONFIGURATION ERROR: POSIX API support not configured!!"
  • cpukit/include/rtems/score/coremsg.h

    r701057e0 rfe7aefd5  
    3939/**@{*/
    4040
    41 #if defined(RTEMS_POSIX_API)
    42   /**
    43    *  This macro is defined when an API is enabled that requires that the
    44    *  Message Queue Handler include support for priority based enqueuing
    45    *  of messages.
    46    */
    47   #define RTEMS_SCORE_COREMSG_ENABLE_MESSAGE_PRIORITY
    48 #endif
     41/**
     42 *  This macro is defined when an API is enabled that requires that the
     43 *  Message Queue Handler include support for priority based enqueuing
     44 *  of messages.
     45 */
     46#define RTEMS_SCORE_COREMSG_ENABLE_MESSAGE_PRIORITY
    4947
    5048#if defined(RTEMS_POSIX_API)
     
    5755#endif
    5856
    59 #if defined(RTEMS_POSIX_API)
    60   /**
    61    *  This macro is defined when an API is enabled that requires the
    62    *  Message Queue Handler include support for blocking send operations.
    63    */
    64   #define RTEMS_SCORE_COREMSG_ENABLE_BLOCKING_SEND
    65 #endif
     57/**
     58 *  This macro is defined when an API is enabled that requires the
     59 *  Message Queue Handler include support for blocking send operations.
     60 */
     61#define RTEMS_SCORE_COREMSG_ENABLE_BLOCKING_SEND
    6662
    6763typedef struct CORE_message_queue_Control CORE_message_queue_Control;
  • cpukit/rtems/src/rtemsobjectgetapiclassname.c

    r701057e0 rfe7aefd5  
    4848  { "Key",                     OBJECTS_POSIX_KEYS, 0},
    4949  { "Interrupt",               OBJECTS_POSIX_INTERRUPTS, 0},
     50#endif
    5051  { "Message Queue",           OBJECTS_POSIX_MESSAGE_QUEUES, 0},
    51 #endif
    5252  { "Semaphore",               OBJECTS_POSIX_SEMAPHORES, 0},
    5353#ifdef RTEMS_POSIX_API
Note: See TracChangeset for help on using the changeset viewer.