On 15/06/2020 20:23, Joel Sherrill wrote:



On Mon, Jun 15, 2020 at 11:28 AM Sebastian Huber <sebastian.hu...@embedded-brains.de <mailto:sebastian.hu...@embedded-brains.de>> wrote:

    On 15/06/2020 18:24, Sebastian Huber wrote:

    > On 15/06/2020 18:13, Joel Sherrill wrote:
    >
    >> On Mon, Jun 15, 2020 at 10:52 AM Sebastian Huber
    >> <sebastian.hu...@embedded-brains.de
    <mailto:sebastian.hu...@embedded-brains.de>
    >> <mailto:sebastian.hu...@embedded-brains.de
    <mailto:sebastian.hu...@embedded-brains.de>>> wrote:
    >>
    >>     Hello,
    >>
    >>     should the use of RTEMS_GLOBAL be an error in
    >>     rtems_semaphore_create(),
    >>     rtems_task_create(), rtems_message_queue_create(), and
    >>     rtems_partition_create() if RTEMS was configured without
    >>     multiprocessing
    >>     enabled?
    >>
    >>
    >> Based on the original use cases, I would say no. The idea was that
    >> you could create
    >> objects and attach to them to limit cohesion. The intention was to
    >> avoid the use of
    >> global variables for sharing object Ids.  If I offer a service
    via a
    >> message queue
    >> globally and my library/service is deployed in a non-MP
    >> configuration, it should still
    >> work. For tasks, that would imply events. For partitions, it just
    >> means the memory is
    >> available to "the system" which is a single processor.
    >
    > Ok, but I think this is a bit inconsistent to the
    >
    > #if defined(RTEMS_MULTIPROCESSING)
    >   if (
    >     _Attributes_Is_global( attribute_set )
    >       && !_System_state_Is_multiprocessing
    >   ) {
    >     return RTEMS_MP_NOT_CONFIGURED;
    >   }
    > #endif
    >
    > error case. If your system has only one node and is configured for
    > multiprocessing shouldn't this behave exactly as an uniprocessor
    > system with multiprocessing disabled?


Agreed. With 30 years of hindsight, we should ensure that affinity and
this setting follow the same behavior rule.

I added a ticket for this:

https://devel.rtems.org/ticket/4005

_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to