Re: RTAI in debian9
Paul Pfeiffer <[email protected]> Thu, 1 Mar 2018 16:57:46 +0100
| Newsgroups | gmane.linux.real-time.rtai |
|---|---|
| Message-ID | <[email protected]> |
Thanks Paolo. You are right about the time area, I am sitting in Berlin = at the Humboldt University. Thanks for the offer of hands-on help, but I would not like to bother = you at this state. By your help, we have a possibility to run the rtai = modules, so we will concentrate on our application first. I am sure that = on the way, we find some further hints and obstacles. Then, I will be = happy about further input from=A0 you and the mailing list. On 03/01/2018 04:11 PM, Paolo Mantegazza wrote: > My last answer is the one I often use ... let me access your system as = > root but, if troubles happens to me too, to push the reset button, we = > must be within the same time standard area. To me, your surname = > suggests it to be so. > > Paolo > > On 03/01/2018 02:09 PM, Paul Pfeiffer wrote: >> Yes, all tests are run as root. >> >> >> On 03/01/2018 12:55 PM, Paolo Mantegazza wrote: >>> The failing kern latency test does not tell me anything. Are you = >>> making it all as root? >>> >>> Paolo. >>> >>> On 03/01/2018 11:23 AM, Paul Pfeiffer wrote: >>>> Thanks for the explanation. >>>> >>>> I cannot run the test from the root directory of the RTAI = >>>> installation, because the run script has relative references to = >>>> executables. But I could run the preempt test directly in the = >>>> preempt directory, because there was already a .runinfo file. The = >>>> results are attached. >>>> >>>> However, starting the Kernel latency test, crashed the machine... = >>>> maybe this is a hint towards the problem? >>>> >>>> I digged a little bit into the source code and found the = >>>> call_usermodehelper function in base/sched/sched.c in the calibrate = >>>> function. Am I right that this is a call to the executable defined = >>>> in /base/arch/x86/calibration/calibrate.c? Then, it seems that the = >>>> crash happens in the else branch of the main function, where no = >>>> latencies file is present. Important calls seem to be = >>>> rt_thread_init, rt_make_hard_real_time and rt_make_soft_real_time. = >>>> Any idea what could go wrong? >>>> >>>> Thank you, Paul >>>> >>>> ___ >>>> >>>> # Running tests >>>> >>>> dynclamp@abbott:~/Documents$ cd /usr/realtime/testsuite/ >>>> >>>> ## User test >>>> >>>> dynclamp@abbott:/usr/realtime/testsuite$ cd user/latency >>>> dynclamp@abbott:/usr/realtime/testsuite/user/latency$ sudo ./run >>>> [sudo] password for dynclamp: >>>> >>>> RTAI Testsuite - USER space latency test (output data in nanoseconds) >>>> >>>> *** latency verification tool with real time hardened user space = >>>> processes/threads *** >>>> ***=A0=A0=A0 period =3D 100000 (ns),=A0 avrgtime =3D 1 (s)=A0=A0=A0 *** >>>> >>>> RTAI Testsuite - USER latency (all data in nanoseconds) >>>> 2018/03/1 10:33:45 >>>> RTH|=A0=A0=A0 lat min|=A0=A0=A0 ovl min|=A0=A0=A0 lat avg|=A0=A0=A0 la= t max|=A0=A0=A0 ovl max| = >>>> overruns >>>> RTD|=A0=A0=A0=A0=A0=A0 -230|=A0=A0=A0=A0=A0=A0 -230|=A0=A0=A0=A0=A0=A0= =A0=A0 19|=A0=A0=A0=A0=A0 12676| 12676|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -168|=A0=A0=A0=A0=A0=A0 -230|=A0=A0=A0=A0=A0=A0= =A0=A0 35|=A0=A0=A0=A0=A0 14333| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -169|=A0=A0=A0=A0=A0=A0 -230|=A0=A0=A0=A0=A0=A0= =A0=A0 14|=A0=A0=A0=A0=A0=A0 5108| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -180|=A0=A0=A0=A0=A0=A0 -230|=A0=A0=A0=A0=A0=A0= =A0=A0 16|=A0=A0=A0=A0=A0=A0 7970| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 14|=A0=A0=A0=A0=A0=A0 4522| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -141|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 20|=A0=A0=A0=A0=A0=A0 4838| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -161|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 16|=A0=A0=A0=A0=A0=A0 3436| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -144|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 19|=A0=A0=A0=A0=A0=A0 2030| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -70|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0= =A0=A0=A0 17|=A0=A0=A0=A0=A0=A0 2639| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -73|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0= =A0=A0=A0 41|=A0=A0=A0=A0=A0=A0 2836| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -136|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 34|=A0=A0=A0=A0=A0=A0 3806| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -161|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 29|=A0=A0=A0=A0=A0=A0 5334| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -142|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 41|=A0=A0=A0=A0=A0=A0 4396| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -38|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0= =A0=A0=A0 59|=A0=A0=A0=A0=A0=A0 4724| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -222|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 42|=A0=A0=A0=A0=A0=A0 3530| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -162|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 30|=A0=A0=A0=A0=A0=A0 3017| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -170|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 18|=A0=A0=A0=A0=A0=A0 2422| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -133|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 18|=A0=A0=A0=A0=A0=A0 3717| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -240|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 28|=A0=A0=A0=A0=A0=A0 5888| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -102|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 41|=A0=A0=A0=A0=A0=A0 4356| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> RTD|=A0=A0=A0=A0=A0=A0 -102|=A0=A0=A0=A0=A0=A0 -263|=A0=A0=A0=A0=A0=A0= =A0=A0 41|=A0=A0=A0=A0=A0=A0 4356| 14333|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>> ^C >>>> >>> S =3D 98.696, EXECTIME =3D 0.0107068 >>>> rmmod: ERROR: Module rtai_msg is not currently loaded >>>> rmmod: ERROR: Module rtai_mbx is not currently loaded >>>> rmmod: ERROR: Module rtai_sem is not currently loaded >>>> rmmod: ERROR: Module rtai_sched is not currently loaded >>>> rmmod: ERROR: Module rtai_hal is not currently loaded >>>> dynclamp@abbott:/usr/realtime/testsuite/user/latency$ cd ../preempt/ >>>> dynclamp@abbott:/usr/realtime/testsuite/user/preempt$ sudo ./run >>>> * >>>> * >>>> * Type ^C to stop this application. >>>> * >>>> * >>>> RTAI Testsuite - LXRT preempt (all data in nanoseconds) >>>> RTH|=A0=A0=A0=A0 lat min|=A0=A0=A0=A0 lat avg|=A0=A0=A0=A0 lat max|=A0= =A0=A0 jit fast| jit slow >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -401|=A0=A0=A0=A0=A0=A0=A0 -127|=A0=A0=A0=A0= =A0=A0=A0 2382|=A0=A0=A0=A0=A0=A0=A0 5393| 1792 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -133|=A0=A0=A0=A0= =A0=A0=A0 2382|=A0=A0=A0=A0=A0=A0=A0 5393| 1792 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -131|=A0=A0=A0=A0= =A0=A0=A0 2382|=A0=A0=A0=A0=A0=A0=A0 5393| 2016 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -129|=A0=A0=A0=A0= =A0=A0=A0 3134|=A0=A0=A0=A0=A0=A0=A0 5393| 3302 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -127|=A0=A0=A0=A0= =A0=A0=A0 3623|=A0=A0=A0=A0=A0=A0=A0 5393| 3302 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -133|=A0=A0=A0=A0= =A0=A0=A0 3623|=A0=A0=A0=A0=A0=A0=A0 5393| 3302 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -132|=A0=A0=A0=A0= =A0=A0=A0 3623|=A0=A0=A0=A0=A0=A0=A0 5393| 3302 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -134|=A0=A0=A0=A0= =A0=A0=A0 3623|=A0=A0=A0=A0=A0=A0=A0 5393| 4961 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -134|=A0=A0=A0=A0= =A0=A0=A0 5743|=A0=A0=A0=A0=A0=A0=A0 5393| 4961 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -132|=A0=A0=A0=A0= =A0=A0=A0 5743|=A0=A0=A0=A0=A0=A0=A0 5393| 4961 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -136|=A0=A0=A0=A0= =A0=A0=A0 5743|=A0=A0=A0=A0=A0=A0=A0 5393| 4961 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -406|=A0=A0=A0=A0=A0=A0=A0 -134|=A0=A0=A0=A0= =A0=A0=A0 5743|=A0=A0=A0=A0=A0=A0=A0 5393| 4961 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -408|=A0=A0=A0=A0=A0=A0=A0 -126|=A0=A0=A0=A0= =A0=A0=A0 5743|=A0=A0=A0=A0=A0=A0=A0 5393| 4961 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -408|=A0=A0=A0=A0=A0=A0=A0 -133|=A0=A0=A0=A0= =A0=A0=A0 5743|=A0=A0=A0=A0=A0=A0=A0 5393| 4961 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -408|=A0=A0=A0=A0=A0=A0=A0 -131|=A0=A0=A0=A0= =A0=A0=A0 6401|=A0=A0=A0=A0=A0=A0=A0 6292| 4961 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -408|=A0=A0=A0=A0=A0=A0=A0 -127|=A0=A0=A0=A0= =A0=A0=A0 6701|=A0=A0=A0=A0=A0=A0=A0 8385| 4961 >>>> RTD|=A0=A0=A0=A0=A0=A0=A0 -408|=A0=A0=A0=A0=A0=A0=A0 -121|=A0=A0=A0=A0= =A0=A0=A0 6701|=A0=A0=A0=A0=A0=A0=A0 8385| 4961 >>>> ^CRTD|=A0=A0=A0=A0=A0=A0=A0 -408|=A0=A0=A0=A0=A0=A0=A0 -121|=A0=A0=A0= =A0=A0=A0=A0 6701|=A0=A0=A0=A0=A0=A0=A0 8385| 4961 >>>> >>>> ## Kernel tests >>>> >>>> cd ../../kern/latency >>>> >>>> sudo ./run >>>> >>>> CRASH >>>> >>>> >>>> On 02/28/2018 09:46 PM, Paolo Mantegazza wrote: >>>>> The third number is the assumed default period used for the = >>>>> calibration, if it succeeded and you did not set it to a different = >>>>> one when configuring RTAI. >>>>> Clearly, when set by hands, it has little meaning, albeit being = >>>>> needed when rtai_sched is insmoded. >>>>> >>>>> It is strange that, once you ran latency, the preempt test do not = >>>>> run. Recall that you are assumed to run those tests from the RTAI = >>>>> install dir. Be sure of doing it in such a way and let me know. >>>>> >>>>> Now that you ran rtai_sched using the latencies file, the = >>>>> call_userhelper support seems to be working also on your system. = >>>>> So I've even less clues than before on the why it did not = >>>>> calibrate. In fact the automatic calibration is nothing but the = >>>>> latency test in disguise, coupled to a trivial Kalman filter to = >>>>> estimate the expected latency on the fly. >>>>> >>>>> Thanks for your feedback, Paolo. >>>>> >>>>> _______________________________________ >>>>> From: Paul Pfeiffer [[email protected]] >>>>> Sent: Wednesday, February 28, 2018 7:14 PM >>>>> To: Paolo Mantegazza; [email protected] >>>>> Subject: Re: [Rtai] RTAI in debian9 >>>>> >>>>> Thanks for the feedback. >>>>> >>>>> I added the latencies file and now the rtai_sched module can be = >>>>> loaded >>>>> without specifiying user or kernel latency. In the kernel output, = >>>>> I see >>>>> that the kernel latency is now 440ns and the user latency 880ns. = >>>>> What is >>>>> the meaning of the third number? >>>>> >>>>> I tried running the other tests, but they do not work, because of a >>>>> missing .runinfo file. Do I have to create this? What should be in = >>>>> this >>>>> file? >>>>> >>>>> We will use the RTAI patched kernel to perform recordings from = >>>>> neurons >>>>> with real time feedback loops. I will update you, when we have = >>>>> tried the >>>>> new RTAI patch within this application. >>>>> >>>>> Best, Paul >>>>> >>>>> >>>>> On 02/27/2018 10:59 PM, Paolo Mantegazza wrote: >>>>>> Your system seems OK. If you edit a file, named "latencies", with = >>>>>> a single line containing: >>>>>> 440 880 10000 >>>>>> and copy it into "rtai_installdir/calibration/latencies. >>>>>> you'll have what the calibration should have done and there will = >>>>>> be non need to set those latencies at rtai_sched.ko insmod. >>>>>> In any case, once you have done what above, may test both latency = >>>>>> and preempt, in user, kern and kthread directories of yout = >>>>>> rtai_installdir and then report what happened? >>>>>> Do not test switches, It locks the cpu for a bit of time and may = >>>>>> be risky. I'll not be surprised of a muted system. >>>>>> As for why it does not work on your system, without a diagnose = >>>>>> hands on, I've no clue. >>>>>> Moreover I'll be glad to hear of some further checks with a = >>>>>> production code of yours, if any. >>>>>> >>>>>> Thanks, Paolo >>>>>> >>>>>> ________________________________________the >>>>>> From: Rtai [[email protected]] on behalf of Paul Pfeiffer = >>>>>> [[email protected]] >>>>>> Sent: Tuesday, February 27, 2018 4:41 PM >>>>>> To: [email protected] >>>>>> Subject: Re: [Rtai] RTAI in debian9 >>>>>> >>>>>> Hi, >>>>>> >>>>>> thanks for the nice discussion in this thread. I have a similar = >>>>>> issue to >>>>>> the one described by josu, but on a real machine. >>>>>> >>>>>> Setup: Linux kernel 4.9.76 and RTAI 5.1 >>>>>> >>>>>> For patching the kernel and compilation of the kernel modules, I >>>>>> followed the instructions from Jan Benda, here >>>>>> http://relacs.sourceforge.net/plugins/rtaicomedi/ >>>>>> >>>>>> Insertion of the rtai_hal module works, but insertion of rtai_sched >>>>>> kills the system. >>>>>> >>>>>> Like Paolo suggested, I also tried loading the rtai_sched with >>>>>> kernel_latency and user_latency set to 1000. This works. Does = >>>>>> this mean >>>>>> that the calibration is the problem? How could I solve this for = >>>>>> my setup? >>>>>> >>>>>> Also, I ran the suggested modified latency test. However, like = >>>>>> josu, I >>>>>> had to change the insertion of the rtai_sched module to >>>>>> >>>>>> ``` >>>>>> >>>>>> insmod $MODULES/rtai_sched.ko kernel_latency=3D1 user_latency=3D1 >>>>>> >>>>>> ``` >>>>>> >>>>>> otherwise the system would stop responding. >>>>>> >>>>>> Please find below the output of the test and the corresponding = >>>>>> kernel >>>>>> messages. >>>>>> >>>>>> Thank you, Paul >>>>>> >>>>>> ________________ >>>>>> >>>>>> $ sudo ./testsuite/user/latency/run >>>>>> >>>>>> RTAI Testsuite - USER space latency test (output data in = >>>>>> nanoseconds) >>>>>> >>>>>> *** latency verification tool with real time hardened user space >>>>>> processes/threads *** >>>>>> ***=A0=A0=A0 period =3D 100000 (ns),=A0 avrgtime =3D 1 (s)=A0=A0=A0 = *** >>>>>> >>>>>> RTAI Testsuite - USER latency (all data in nanoseconds) >>>>>> 2018/02/27 16:18:13 >>>>>> RTH|=A0=A0=A0 lat min|=A0=A0=A0 ovl min|=A0=A0=A0 lat avg|=A0=A0=A0 = lat max| ovl max| = >>>>>> overruns >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 726|=A0=A0=A0=A0=A0=A0=A0 726|=A0=A0=A0=A0= =A0=A0=A0 887|=A0=A0=A0=A0=A0=A0 5216| = >>>>>> 5216|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 705|=A0=A0=A0=A0=A0=A0=A0 705|=A0=A0=A0=A0= =A0=A0=A0 884|=A0=A0=A0=A0=A0=A0 2667| = >>>>>> 5216|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 884|=A0=A0=A0=A0=A0=A0 3267| = >>>>>> 5216|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 599|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 890|=A0=A0=A0=A0=A0=A0 8122| = >>>>>> 8122|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 711|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 884|=A0=A0=A0=A0=A0 15637| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 638|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 882|=A0=A0=A0=A0=A0=A0 6058| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 722|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 877|=A0=A0=A0=A0=A0=A0 3233| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 741|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 881|=A0=A0=A0=A0=A0=A0 2186| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 733|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 874|=A0=A0=A0=A0=A0=A0 3213| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 734|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 874|=A0=A0=A0=A0=A0=A0 2666| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 718|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 874|=A0=A0=A0=A0=A0=A0 1823| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 729|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 874|=A0=A0=A0=A0=A0=A0 2813| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 709|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 883|=A0=A0=A0=A0=A0=A0 5861| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 722|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 897|=A0=A0=A0=A0=A0 12125| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 721|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 895|=A0=A0=A0=A0=A0=A0 3858| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 598|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 891|=A0=A0=A0=A0=A0=A0 2384| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 701|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 877|=A0=A0=A0=A0=A0=A0 2205| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 642|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 878|=A0=A0=A0=A0=A0=A0 3895| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 590|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 880|=A0=A0=A0=A0=A0=A0 1844| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 725|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 877|=A0=A0=A0=A0=A0=A0 3841| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 549|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 884|=A0=A0=A0=A0=A0=A0 2105| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> 2018/02/27 16:18:35 >>>>>> RTH|=A0=A0=A0 lat min|=A0=A0=A0 ovl min|=A0=A0=A0 lat avg|=A0=A0=A0 = lat max| ovl max| = >>>>>> overruns >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 708|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 880|=A0=A0=A0=A0=A0=A0 3730| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 717|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 875|=A0=A0=A0=A0=A0=A0 3596| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0 721|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0=A0= =A0=A0=A0 878|=A0=A0=A0=A0=A0=A0 1470| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> ^CRTD|=A0=A0=A0=A0=A0=A0=A0 721|=A0=A0=A0=A0=A0=A0=A0 545|=A0=A0=A0= =A0=A0=A0=A0 878|=A0=A0=A0=A0=A0=A0 1470| = >>>>>> 15637|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0 >>>>>> >>>>>> =A0=A0 >>> S =3D 98.696, EXECTIME =3D 0.0105475 >>>>>> >>>>>> >>>>>> $sudo dmesg -T -w >>>>>> >>>>>> [Tue Feb 27 16:18:12 2018] I-pipe: head domain RTAI registered. >>>>>> [Tue Feb 27 16:18:12 2018] RTAI[hal]: mounted. ISOL_CPUS_MASK: 0. >>>>>> [Tue Feb 27 16:18:12 2018] SYSINFO - # CPUs: 4, TIMER NAME: 'lapic', >>>>>> TIMER IRQ: 4354, TIMER FREQ: 437999993, CLOCK NAME: 'tsc', CLOCK = >>>>>> FREQ: >>>>>> 3500000000, CPU FREQ: 3500000000, LINUX TIMER IRQ: 4354. >>>>>> [Tue Feb 27 16:18:12 2018] >>>>>> =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0 REMARK: RTAI WILL NOT ACCESS USER = >>>>>> SPACE ON >>>>>> STACKS ARGS ITS WAY. >>>>>> >>>>>> [Tue Feb 27 16:18:12 2018] RTAI[malloc]: global heap size =3D 2097152 >>>>>> bytes, <BSD>. >>>>>> [Tue Feb 27 16:18:12 2018] , kstacks pool size =3D 524288 bytes >>>>>> [Tue Feb 27 16:18:12 2018] . >>>>>> [Tue Feb 27 16:18:12 2018] RTAI[sched]: hard timer type/freq =3D >>>>>> lapic/437999993(Hz); timing: ONESHOT; >>>>>> [Tue Feb 27 16:18:12 2018] linear timed lists. >>>>>> [Tue Feb 27 16:18:12 2018] RTAI[sched]: Linux timer freq =3D 250 (Hz= ), >>>>>> TimeBase freq =3D 3500000000 hz. >>>>>> [Tue Feb 27 16:18:12 2018] RTAI[sched]: timer setup =3D 66 ns, resch= ed >>>>>> latency =3D 0 ns. >>>>>> [Tue Feb 27 16:18:12 2018] FINAL CALIBRATION SUMMARY (ns): = >>>>>> KernelLatency >>>>>> 0, UserLatency 0. >>>>>> [Tue Feb 27 16:18:39 2018] RTAI[malloc]: unloaded. >>>>>> [Tue Feb 27 16:18:39 2018] RTAI[sched]: unloaded (forced = >>>>>> hard/soft/hard >>>>>> transitions: traps 0, syscalls 0). >>>>>> [Tue Feb 27 16:18:39 2018] I-pipe: head domain RTAI unregistered. >>>>>> [Tue Feb 27 16:18:39 2018] RTAI[hal]: unmounted. >>>>>> >>>>>> >>>>>> On 02/24/2018 12:20 AM, josu wrote: >>>>>>> Yes, of course, I can=92t get real time (much less, 100 us = >>>>>>> period), only test the procedure. However, setting deadline to 1 = >>>>>>> (and not 0), the programs run, without hanging the VM. >>>>>>> >>>>>>> Although the meaning is not at all the same that in a real = >>>>>>> system, the latency test are able to run with your run script=A0 = >>>>>>> (setting a number greater than 0). This is the result: >>>>>>> >>>>>>> root@debianRB:/usr/realtime/testsuite/user/latency# ./run >>>>>>> RTAI Testsuite - USER space latency test (output data in = >>>>>>> nanoseconds) >>>>>>> >>>>>>> *** latency verification tool with real time hardened user space = >>>>>>> processes/threads *** >>>>>>> ***=A0=A0=A0 period =3D 100000 (ns),=A0 avrgtime =3D 1 (s)=A0=A0=A0= *** >>>>>>> >>>>>>> RTAI Testsuite - USER latency (all data in nanoseconds) >>>>>>> 2018/02/23 22:47:06 >>>>>>> RTH|=A0=A0=A0 lat min|=A0=A0=A0 ovl min|=A0=A0=A0 lat avg|=A0=A0=A0= lat max| ovl max|=A0=A0 = >>>>>>> overruns >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25068|=A0=A0=A0=A0 870103| = >>>>>>> 870103|=A0=A0=A0=A0=A0=A0=A0=A0 67 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25608|=A0=A0=A0 1007163| = >>>>>>> 1007163|=A0=A0=A0=A0=A0=A0=A0=A0 95 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25288|=A0=A0=A0=A0 886190| = >>>>>>> 1007163|=A0=A0=A0=A0=A0=A0=A0 124 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25275|=A0=A0=A0=A0 985017| = >>>>>>> 1007163|=A0=A0=A0=A0=A0=A0=A0 155 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 24564|=A0=A0=A0=A0 832423| = >>>>>>> 1007163|=A0=A0=A0=A0=A0=A0=A0 179 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25620|=A0=A0=A0=A0 199742| = >>>>>>> 1007163|=A0=A0=A0=A0=A0=A0=A0 194 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25393|=A0=A0=A0=A0 881237| = >>>>>>> 1007163|=A0=A0=A0=A0=A0=A0=A0 226 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25067|=A0=A0=A0=A0 874862| = >>>>>>> 1007163|=A0=A0=A0=A0=A0=A0=A0 253 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25247|=A0=A0=A0=A0 827829| = >>>>>>> 1007163|=A0=A0=A0=A0=A0=A0=A0 274 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25566|=A0=A0=A0=A0 855516| = >>>>>>> 1007163|=A0=A0=A0=A0=A0=A0=A0 310 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 24899|=A0=A0=A0 1035597| = >>>>>>> 1035597|=A0=A0=A0=A0=A0=A0=A0 360 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25403|=A0=A0=A0=A0 202992| = >>>>>>> 1035597|=A0=A0=A0=A0=A0=A0=A0 376 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25288|=A0=A0=A0=A0 771628| = >>>>>>> 1035597|=A0=A0=A0=A0=A0=A0=A0 398 >>>>>>> RTD|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0=A0=A0=A0=A0=A0=A0=A0=A0 0|=A0= =A0=A0=A0=A0 25288|=A0=A0=A0=A0 771628| = >>>>>>> 1035597|=A0=A0=A0=A0=A0=A0=A0 398 >>>>>>> ^C >>>>>>>>>> S =3D 98.696, EXECTIME =3D 0.0663255 >>>>>>>> On 24 Feb 2018, at 00:11, Paolo Mantegazza = >>>>>>>> <[email protected]> wrote: >>>>>>>> >>>>>>>> VM changes the matter a lot.=A0 Anticipating the scheduling = >>>>>>>> deadline by 1 ns does not change anything with respect to 0. >>>>>>>> In any case it served to indicate that you cannot run the RTAI = >>>>>>>> tests, simply because VM cannot provide true real time. In = >>>>>>>> particular it cannot support a 100 us period. >>>>>>>> I dare saying that if you configure RTAI to use a lower = >>>>>>>> calibrating frequency, say 2000 Hz , in place of the default = >>>>>>>> 10000 Hz, you might succeed in trying the RTAI latency tests, = >>>>>>>> along with the hidden latency calibration. >>>>>>>> In any case hard real time will likely be a no hope matter. >>>>>>>> >>>>>>>> Paolo >>>>>>>> >>>>>>>> ________________________________________ >>>>>>>> From: josu [[email protected]] >>>>>>>> Sent: Friday, February 23, 2018 10:57 PM >>>>>>>> To: Paolo Mantegazza >>>>>>>> Cc: RTAI RTAI >>>>>>>> Subject: Re: [Rtai] RTAI in debian9 >>>>>>>> >>>>>>>> Hi again: >>>>>>>> >>>>>>>> First, I want to clarify than I am testing with a VM. Sorry for = >>>>>>>> the possible misunderstanding. I have been very busy and I have = >>>>>>>> forgot to say this important point. >>>>>>>> >>>>>>>> In any case, I have test your script and the system hangs. = >>>>>>>> However, making the next change: >>>>>>>> >>>>>>>> insmod $MODULES/rtai_sched.ko kernel_latency=3D1 user_latency=3D1 >>>>>>>> >>>>>>>> I have obtained the result attached below. >>>>>>>> >>>>>>>> josu >>>>>>>> >>>>>>>> [cid:[email protected]] >>>>>>>> >>>>>>>> On 23 Feb 2018, at 18:56, Paolo Mantegazza = >>>>>>>> <[email protected]<mailto:[email protected]>> = >>>>>>>> wrote: >>>>>>>> >>>>>>>> May you try the "testsuite/user/latency" test, in your RTAI = >>>>>>>> install dir, after saving and substituting the existing "run" = >>>>>>>> script with the one below and then let me know what happened? >>>>>>>> Do it on an unloaded machined and, if possible, after seeing a = >>>>>>>> stabilized average latency, attach to your answer also a short = >>>>>>>> snapshot of what appears on the screen. >>>>>>>> Thanks, Paolo >>>>>>>> ------------------------------------------------------------------= ----------------------------------------- = >>>>>>>> >>>>>>>> #!/bin/sh >>>>>>>> >>>>>>>> prefix=3D`rtai-config --prefix` >>>>>>>> >>>>>>>> if test "$prefix" =3D ""; then >>>>>>>> echo "ERROR: please set your PATH variable to <rtai-install>/bin" >>>>>>>> exit >>>>>>>> fi >>>>>>>> >>>>>>>> MODULES=3D$prefix/modules >>>>>>>> >>>>>>>> libpath=3D`rtai-config --library-dir` >>>>>>>> >>>>>>>> if test "$libpath" =3D ""; then >>>>>>>> echo "ERROR: please set your PATH variable to <rtai-install>/bin" >>>>>>>> exit >>>>>>>> fi >>>>>>>> >>>>>>>> export LD_LIBRARY_PATH=3D$libpath:$LD_LIBRARY_PATH >>>>>>>> >>>>>>>> cleanup () { >>>>>>>> rmmod rtai_msg >>>>>>>> rmmod rtai_mbx >>>>>>>> rmmod rtai_sem >>>>>>>> rmmod rtai_sched >>>>>>>> rmmod rtai_hal >>>>>>>> } >>>>>>>> >>>>>>>> trap cleanup INT ALRM TERM HUP KILL >>>>>>>> >>>>>>>> insmod $MODULES/rtai_hal.ko >>>>>>>> insmod $MODULES/rtai_sched.ko kernel_latency=3D0 user_latency=3D0 >>>>>>>> insmod $MODULES/rtai_sem.ko; >>>>>>>> insmod $MODULES/rtai_mbx.ko; >>>>>>>> insmod $MODULES/rtai_msg.ko; >>>>>>>> >>>>>>>> ./latency & >>>>>>>> until(`ps -a | grep -q latency`); do sleep 1; done >>>>>>>> ./display >>>>>>>> >>>>>>>> cleanup >>>>>>>> ------------------------------------------------------------------= ----------------------------- = >>>>>>>> >>>>>>>> >>>>>>>> ________________________________________ >>>>>>>> From: josu jugo [[email protected]<mailto:[email protected]>] >>>>>>>> Sent: Friday, February 23, 2018 5:37 PM >>>>>>>> To: Paolo Mantegazza >>>>>>>> Cc: RTAI RTAI >>>>>>>> Subject: Re: [Rtai] RTAI in debian9 >>>>>>>> >>>>>>>> Hi again: >>>>>>>> >>>>>>>> I have test a simple program obtained with rtai-lab (scicoslab = >>>>>>>> version), monitoring with qrtailab and the system is working. >>>>>>>> >>>>>>>> I have load rtai_sched with kernel_latency=3D1000 and = >>>>>>>> user_latency=3D1000 >>>>>>>> >>>>>>>> josu >>>>>>>> >>>>>>>> On 23 Feb 2018, at 12:51, josu jugo = >>>>>>>> <[email protected]<mailto:[email protected]><mailto:josu.jugo@ehu.= eus>> = >>>>>>>> wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> <Screen Shot 2018-02-23 at 22.47.37.png> >>>>>>> _______________________________________________ >>>>>>> Rtai mailing list >>>>>>> [email protected] >>>>>>> https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai >>>>>> _______________________________________________ >>>>>> Rtai mailing list >>>>>> [email protected] >>>>>> https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai >>>> >>> >> > _______________________________________________ Rtai mailing list [email protected] https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai