Thank you for being so responsive. I suspected a missing flush but had no idea where to look. I hopedyou would spot the missing line of code quickly and was right. :)
--joel On Thu, Feb 28, 2019 at 1:01 PM Jiri Gaisler <j...@gaisler.se> wrote: > I have found the problem, stdout is not flushed when the simulator stops > and it has been invoked by gdb. The run command uses the gdb interface to > call sis, so this is why it happens there too. I will make a new sis patch > (2.13) with some additional (speed) improvements... > > Jiri. > > > On 2/27/19 9:34 AM, Jiri Gaisler wrote: > > > On 2/26/19 11:04 PM, Joel Sherrill wrote: > > > > On Tue, Feb 26, 2019 at 2:06 PM Jiri Gaisler <j...@gaisler.se> wrote: > >> >> On 2/26/19 8:49 PM, Joel Sherrill wrote: >> >> >> >> On Tue, Feb 26, 2019 at 1:28 PM Jiri Gaisler <j...@gaisler.se> wrote: >> >>> >>> On 2/26/19 8:08 PM, Joel Sherrill wrote: >>> > Hi >>> > >>> > I think something is wrong with sis on the leon3 which is impacting >>> rtems-tester. >>> > ticker ends like this: >>> > >>> > TA1 - rtems_clock_get_tod - 09:00:34 12/31/1988 >>> > >>> > *** END OF TEST CLOCK TICK ***[joel@ >>> > >>> > Notice that there is no carriage return at the end. Hello ends with a >>> CR and an >>> > blank line and it passes. Similar issue on the tests I picked which >>> passed or failed. >>> > >>> > Any idea what's up? I assume something isn't quite right after all the >>> sis work >>> > since it is reproducible. >>> >>> >>> Works OK here on Ubuntu 18.04.2 x64. Which host O/S are you on? >>> >> >> Interesting. OS is: >> >> CentOS Linux release 7.5.1804 (Core) >> >> Here is the output of my last run by hand with a subsequent comment. >> Notice that >> >> =================================== >> [joel@rtbf64c b-leon3]$ sparc-rtems5-run -a -leon3 >> ./sparc-rtems5/c/leon3/testsuites/sptests/sp05.exe >> >> The run program has some issues, I think we should sis with -r instead: >> >> $ sparc-rtems5-sis -r -leon3 >> ./sparc-rtems5/c/leon3/testsuites/sptests/sp05.exe >> >> . >> >> . >> >> >> *** END OF TEST SP 5 *** >> > > Thanks. Then do you agree that this patch is needed for rtems-tools to > invoke sis correctly: > > diff --git a/tester/rtems/testing/bsps/leon3-sis.ini > b/tester/rtems/testing/bsps > index 2f933a7..9e8111f 100644 > --- a/tester/rtems/testing/bsps/leon3-sis.ini > +++ b/tester/rtems/testing/bsps/leon3-sis.ini > @@ -36,4 +36,4 @@ bsp = leon3 > arch = sparc > tester = %{_rtscripts}/run.cfg > bsp_run_cmd = %{rtems_tools}/%{bsp_arch}-rtems%{rtems_version}-sis > -bsp_run_opts = -leon3 -nouartrx -r -tlim 200 s -m 4 > +bsp_run_opts = -r -leon3 -nouartrx -r -tlim 200 s -m 4 > > Hmm, bsp_run_opts already has -r, I don't think you need a second copy ...? > > > And the cut-off output also occurs when running it from inside gdb so > using leon3 > (leon3.ini) configuration with rtems-test is broken. Not sure how to fix > that. > > I will look into this. > > Jiri. > > > The tests pass with leon3-sis with my above patch but fail with simple > leon3 > passed to tester. > > --joel > >> >> Jiri. >> >> >> >> >> >> *** BEGIN OF TEST SP 5 *** >> *** TEST VERSION: 5.0.0.7abc497b6c763ccdc090014f310951b17c742ae9 >> *** TEST STATE: EXPECTED-PASS >> *** TEST BUILD: RTEMS_NETWORKING >> *** TEST TOOLS: 7.4.0 20181206 (RTEMS 5, RSB >> 38241392a4f96dabf2d1aba51a43dcb623db4dfb, Newlib 1d35a003f) >> TA1 - rtems_task_wake_after - sleep 5 seconds >> TA2 - rtems_task_suspend - suspend self >> TA3 - rtems_task_suspend - suspend self >> ...... >> TA1 - rtems_task_resume - resume TA3 >> >> *** END OF TEST [joel@rtbf64c b-leon3]$ cat /etc/redhat-release >> CentOS Linux release 7.5.1804 (Core) >> =================================== >> >> And this is the end of the erc32 output from the same test and same sis >> on the same computer: >> >> =================================== >> TA1 - rtems_task_resume - resume TA3 >> >> *** END OF TEST SP 5 *** >> >> >> *** FATAL *** >> fatal source: 5 (RTEMS_FATAL_SOURCE_EXIT) >> fatal code: 0 (0x00000000) >> RTEMS version: 5.0.0.7abc497b6c763ccdc090014f310951b17c742ae9 >> RTEMS tools: 7.4.0 20181206 (RTEMS 5, RSB >> 38241392a4f96dabf2d1aba51a43dcb623db4dfb, Newlib 1d35a003f) >> >> =================================== >> >> Looks like a lot of output got chopped or not flushed or something. >> >> If the final output makes it out on your system, then rtems-test will be >> happy and pass them. >> In my case, it ends most of the time just a little too early to make that >> happen. >> >> >>> >>> jiri@office:~/src/rtems/sparc$ rtems-test --rtems-bsp=leon3-sis >>> sparc-rtems5/c/leon3/testsuites/samples >>> RTEMS Testing - Tester, 5.0.not_released >>> Command Line: /opt/rtems/5/bin/rtems-test --rtems-bsp=leon3-sis >>> sparc-rtems5/c/leon3/testsuites/samples >>> Python: 3.6.7 (default, Oct 22 2018, 11:32:17) [GCC 8.2.0] >>> Host: Linux-4.18.0-15-generic-x86_64-with-Ubuntu-18.04-bionic (Linux >>> office 4.18.0-15-generic #16~18.04.1-Ubuntu SMP Thu Feb 7 14:06:04 UTC 2019 >>> x86_64 x86_64) >>> [ 8/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> minimum.exe >>> [ 6/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> hello.exe >>> [ 4/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> cxx_iostream.exe >>> [ 2/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> capture.exe >>> [ 3/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> cdtest.exe >>> [ 1/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> base_sp.exe >>> [ 5/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> fileio.exe >>> [ 7/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> loopback.exe >>> [ 1/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> base_sp.exe >>> [ 2/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> capture.exe >>> [ 3/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> cdtest.exe >>> [ 4/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> cxx_iostream.exe >>> [ 5/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> fileio.exe >>> [ 6/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> hello.exe >>> [ 7/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> loopback.exe >>> [ 8/13] p:0 f:0 u:0 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> minimum.exe >>> [10/13] p:6 f:0 u:2 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> paranoia.exe >>> [11/13] p:6 f:0 u:2 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> pppd.exe >>> [13/13] p:6 f:0 u:2 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> unlimited.exe >>> [ 9/13] p:6 f:0 u:2 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> nsecs.exe >>> [12/13] p:6 f:0 u:2 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> ticker.exe >>> [ 9/13] p:6 f:0 u:2 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> nsecs.exe >>> [10/13] p:6 f:0 u:2 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> paranoia.exe >>> [11/13] p:6 f:0 u:2 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> pppd.exe >>> [12/13] p:6 f:0 u:2 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> ticker.exe >>> [13/13] p:6 f:0 u:2 e:0 I:0 B:0 t:0 i:0 W:0 | sparc/leon3: >>> unlimited.exe >>> >>> Passed: 11 >>> Failed: 0 >>> User Input: 2 >>> Expected Fail: 0 >>> Indeterminate: 0 >>> Benchmark: 0 >>> Timeout: 0 >>> Invalid: 0 >>> Wrong Version: 0 >>> Wrong Build: 0 >>> Wrong Tools: 0 >>> ----------------- >>> Total: 13 >>> User Input: >>> capture.exe >>> fileio.exe >>> Average test time: 0:00:00.212905 >>> Testing time : 0:00:02.767759 >>> jiri@office:~/src/rtems/sparc$ sparc-rtems5-sis >>> >>> SIS - SPARC/RISCV instruction simulator 2.12, copyright Jiri Gaisler >>> 2019 >>> Bug-reports to j...@gaisler.se >>> >>> ERC32 emulation enabled >>> >>> sis> q >>> >>> Jiri. >>> >> > _______________________________________________ > devel mailing listdevel@rtems.orghttp://lists.rtems.org/mailman/listinfo/devel > > _______________________________________________ > devel mailing list > devel@rtems.org > http://lists.rtems.org/mailman/listinfo/devel
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel