On 23.09.22 13:19, Luis Alves wrote:
Dear RTEMS community,

I’m part of the team performing the Independent Software Verification and Validation (ISVV) of the RTEMS SMP Qualification Data Pack (which is being provided through https://rtems-qual.io.esa.int/ <https://rtems-qual.io.esa.int/>).

While trying to setup tests to assert the overall “Timer Server” feature, one has realized that:

  * Although rtems_timer_initiate_server() is mentioned within section
    4.10 of the SW Configuration File (SCF) as a pre-qualified item
    (“/which may be directly used by applications/”), one gets build
    issues while trying to use it, as it depends on rtems_timer_create().

Yes.

  * The same SCF (within section 4.9.3) also says: “/The
    rtems_task_create() directive is pre-qualified, however, it is only
    available if a custom stack allocator is configured. It is
    recommended to use rtems_task_construct() instead/”:
      o Isn’t this contradictory, as:
          + Both rtems_timer_initiate_server() and tems_task_create()
            are listed within SCF section 4.10 and
          + at the start of section 4.10, it is said that listed items
            are “/pre-qualified items .. which may be directly used by
applications/”?

For the current pre-qualified feature set of RTEMS, if you want to use rtems_timer_initiate_server(), then you have to provide a custom stack allocator.

  * Given this, shouldn’t rtems_timer_initiate_server() natively use of
    rtems_task_construct() rather than rtems_timer_create() as advised?

If you don't want to change the API of rtems_timer_initiate_server(), how can you do this?

  * This makes other two functions listed within SCF section 4.10 as not
    directly usable, namely rtems_timer_server_fire_after() and
    rtems_timer_server_fire_when() as those are to be used in
    conjunction with rtems_timer_initiate_server().

You can use them, if you provide a custom stack allocator.

  * In a nutshell, this compromises the overall “Timer Server” feature
    in the qual-only setup of the QDP.

I just makes it a bit inconvenient to use. One option would be to provide a new directive to construct the timer server, for example rtems_timer_server_construct().

--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hu...@embedded-brains.de
phone: +49-89-18 94 741 - 16
fax:   +49-89-18 94 741 - 08

Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to