Re: [PATCH] membench: Add memory benchmark programs

2023-07-21 Thread Chris Johns
On 21/7/2023 3:28 pm, Sebastian Huber wrote:
> On 21.07.23 03:27, Chris Johns wrote:
>> On 21/7/2023 3:51 am, Sebastian Huber wrote:
>>> On 20.07.23 18:58, Gedare Bloom wrote:
 On Thu, Jul 20, 2023 at 7:42 AM Sebastian Huber
   wrote:
> These memory benchmark programs are not supposed to run.  Instead, they
> can be analysed on the host system to measure the memory usage of
> features.  See the membench module of rtems-central.
>
 This needs some kind of documentation and probably a README inside of
 membench with that information.
>>>
>>> Ok, I can add a README.md.
>>>

 This appears to be about benchmarking the program size (static memory
 usage) only? If so, make that clear in the README / log note. I think
 it's in the doxygen already so that's helpful.
>>>
>>> Yes, it measures only the static memory size required for certain operating
>>> system services. See 4.7 Memory Usage Benchmarks in:
>>>
>>> https://ftp.rtems.org/pub/rtems/people/sebh/rtems-6-sparc-gr740-uni-6-scf.pdf
>>
>> Should `static` be part of naming?
> 
> Yes, good idea.
> 
>>
 What happens when the membench gets built, and then someone runs
 $> rtems-test build/${ARCH}/${BSP}/testsuites

 Because I don't see anything that is filtering these executables.
>>>
>>> They are filtered out due to the *.norun.* pattern:>
>>> target: testsuites/membench/mem-scheduler-add-cpu.norun.exe
>>>
>>
>> Currently tests with `norun` assume the build fails if there is an issue 
>> with a
>> test. This is why we allow these tests and they are tagged `norun`.
> 
> We already have a couple of norun tests in libtests. This filtering is simple
> and works fine why would you want to change it?

I am not asking for that to change. After a build we will have a set of norun
tests and in that set are some that are be used for other purposes, eg memory
analysis, but that information is not available in the project. The norun could
be extended to be .norun.memstatic.exe and so the executables that form a
specific subset can be found and analysed.

The tests have been self contained for a long time and I would like that to
continue. ELF notes has been discussed in the past however we do not yet support
that so we need to find other ways to handling things.

>> Are they suppose to be checked or are they informational? Is something going 
>> to
>> be added to the project, for example in rtems-tools.git, to allow these 
>> tests to
>> be checked?
> 
> Currently, they are just informational,

I do not understand. What information, for what purpose and for whom?

> All the stuff to analyze this and work with
> the specification is in rtems-central.git. If you think this needs to be
> changed, then I am happy to discuss this.

Lets first understand the role these tests have. Adding them slows the build
down but that is OK if there is value in them for everyone.

> My preference is still to get rid of
> all the separate repositories and move everything back to rtems.git.

The qual work was separated for specific reasons. Those reasons are still valid.

> What is the plan for the CI flows?

I believe it is with Joel and Amar. I am waiting like everyone else.

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

[PATCH series for review] STM32 H7 HAL update.

2023-07-21 Thread Karel Gardas



  Folks,

I'd like to propose and perform STM32 H7 HAL code update. Currently this 
HAL code is part of RTEMS source tree located inside bsps/arm/stm32h7 
subdirectory.


As the patches are too big to be sent to the mailing list, I'm providing 
them here for review:


https://github.com/karelfv/rtems/commits/stm32h7-hal-update-2023-07

Few notes:

- part of HAL files got relicensed by STMicro from BSD-3 to Apache-2.0. 
Fortunately the project does not contain NOTICE file so we do not need 
to organize anything about it.

https://github.com/karelfv/rtems/commit/ec59116a2e8c1b637cc59d2ef619880ce507816e

- I've tried to apply all Sebastian's and Christian's patches done to 
original HAL. All is done except doxygenization patch which I needed to 
do completely new due to a lot of hunks aborting and also a lot of new 
occurrences where it should be applied.

https://github.com/karelfv/rtems/commit/04936e21b0daeaa43082c73919fbf3274e9482ca

- new HAL code breaks compilation of libbsd (for this particular 
platform! Not in general). This is due to inclusion of math.h. I've 
solved that by crude hack.

https://github.com/karelfv/rtems/commit/a1035ba3cee4dc6967bb978aa04ef763c9d2fcfd


Otherwise I hope the patch set is tolerable for RTEMS-6 as for RTEM-7 we 
plan to remove that code completely to a separate module anyway...


Thanks for review!
Karel
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


[PATCH] bsps/arm: fix nested extern decl. warnings brought by CMSIS files update

2023-07-21 Thread Karel Gardas
---
 bsps/arm/include/cmsis_gcc.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/bsps/arm/include/cmsis_gcc.h b/bsps/arm/include/cmsis_gcc.h
index 4f0762d6dc..9e867348d2 100644
--- a/bsps/arm/include/cmsis_gcc.h
+++ b/bsps/arm/include/cmsis_gcc.h
@@ -30,7 +30,9 @@
 #pragma GCC diagnostic ignored "-Wsign-conversion"
 #pragma GCC diagnostic ignored "-Wconversion"
 #pragma GCC diagnostic ignored "-Wunused-parameter"
-
+#ifdef __rtems__
+#pragma GCC diagnostic ignored "-Wnested-externs"
+#endif /* __rtems__ */
 /* Fallback for __has_builtin */
 #ifndef __has_builtin
   #define __has_builtin(x) (0)
-- 
2.25.1

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