On Thu, 2022-04-14 at 14:58 +0200, Richard Weinberger via Xenomai
wrote:
> ----- Ursprüngliche Mail -----
> > Von: "Jan Kiszka" <[email protected]>
> > An: "richard" <[email protected]>, "xenomai" <[email protected]>
> > Gesendet: Donnerstag, 14. April 2022 13:18:59
> > Betreff: Re: [PATCH v2 0/9] Revive alchemy, pSOS and VxWorks tests
> 
> > On 13.04.22 23:58, Richard Weinberger via Xenomai wrote:
> > > This patch series is a first attempt to integrate the currently abandoned
> > > alchemy, pSOS and VxWorks tests into Xenomai's test suite.
> > > Since each test assumes running as own process a test driver is needed
> > > which executes each tests separately.
> > > The driver makes use of the smokey framework.
> > > 
> > > Test results on a x86 VM (5.15.19, Xenomai master as of today):
> > > - Alchemy:
> > >   test2 fails:
> > >   [8] at task-2.c:71
> > >   [1] at task-2.c:24
> > >   [9] at task-2.c:79
> > >   [4] at task-2.c:43
> > >   [10] at task-2.c:87
> > >   [5] at task-2.c:48
> > >   [11] at task-2.c:92
> > >   [2] at task-2.c:29
> > >   [6] at task-2.c:52
> > >      0"022.972| BUG in __traceobj_check_abort(): [FGND] wrong return 
> > > status:
> > >                 task-2.c:55 => EINVAL (want OK)
> 
> task-2 seems suffers from modern gcc, changes to safety and count are dead 
> stores.
> 
> This makes the test pass here:
> 
> diff --git a/testsuite/alchemytests/task-2.c b/testsuite/alchemytests/task-2.c
> index e751ddd34..9d5281c75 100644
> --- a/testsuite/alchemytests/task-2.c
> +++ b/testsuite/alchemytests/task-2.c
> @@ -28,8 +28,10 @@ static void background_task(void *arg)
>  
>         traceobj_mark(&trobj, 2);
>  
> -       while (--safety > 0)
> +       while (--safety > 0) {
> +               compiler_barrier();
>                 count++;
> +       }
>  
>         traceobj_exit(&trobj);
>  }
> 
> ...same does marking both variables as volatile.

I don't have much context here, but volatile sounds like a valid
solution (assuming that safety is written by a different thread)

> 
> Thanks,
> //richard
> 

Reply via email to