Hi Gilles, The problem was the second statement: the toolchain I was using is diferente from the used on root filesystem. My filesystem is a recent version from Linaro, but I was using an old Linaro toolchain version (4.7, I think), then I changed to the new version (4.8) and I can run now Xenomai commands. Thanks. I had to recompile the kernel too because I didn't disable CONFIG_CPU_FREQ and CONFIG_CPU_FREQ_IMX (I got unexpected values).
I have only one more question. I executed the latency command and, initially, I was getting latencies with negative numbers. But executing the command some times, it appear ok. Below a result with no load. linaro@linaro-alip:/usr/xenomai/bin$ sudo ./latency == Sampling period: 1000 us == Test mode: periodic user-mode task == All results in microseconds warming up... RTT| 00:00:01 (periodic user-mode task, 1000 us period, priority 99) RTH|----lat min|----lat avg|----lat max|-overrun|---msw|---lat best|--lat worst RTD| 1.255| 1.383| 4.184| 0| 0| 1.255| 4.184 RTD| 1.265| 1.656| 13.080| 0| 0| 1.255| 13.080 RTD| 1.260| 1.502| 17.409| 0| 0| 1.255| 17.409 RTD| 1.267| 1.499| 14.593| 0| 0| 1.255| 17.409 RTD| 1.260| 1.525| 12.126| 0| 0| 1.255| 17.409 RTD| 1.249| 1.709| 12.853| 0| 0| 1.249| 17.409 RTD| 1.260| 1.512| 18.265| 0| 0| 1.249| 18.265 RTD| 1.257| 1.522| 17.191| 0| 0| 1.249| 18.265 RTD| 1.260| 1.492| 14.492| 0| 0| 1.249| 18.265 RTD| 1.257| 1.671| 13.712| 0| 0| 1.249| 18.265 RTD| 1.244| 1.510| 14.555| 0| 0| 1.244| 18.265 RTD| 1.239| 1.484| 13.525| 0| 0| 1.239| 18.265 RTD| 1.272| 1.532| 17.608| 0| 0| 1.239| 18.265 RTD| 1.262| 1.661| 13.472| 0| 0| 1.239| 18.265 RTD| 1.270| 1.487| 16.542| 0| 0| 1.239| 18.265 RTD| 1.267| 1.717| 15.383| 0| 0| 1.239| 18.265 RTD| 1.249| 1.507| 16.411| 0| 0| 1.239| 18.265 RTD| 1.242| 1.661| 17.873| 0| 0| 1.239| 18.265 RTD| 1.234| 1.494| 12.537| 0| 0| 1.234| 18.265 RTD| 1.277| 1.699| 13.628| 0| 0| 1.234| 18.265 RTD| 1.262| 1.502| 16.914| 0| 0| 1.234| 18.265 RTT| 00:00:22 (periodic user-mode task, 1000 us period, priority 99) RTH|----lat min|----lat avg|----lat max|-overrun|---msw|---lat best|--lat worst RTD| 1.262| 1.661| 12.856| 0| 0| 1.234| 18.265 RTD| 1.270| 1.510| 12.661| 0| 0| 1.234| 18.265 RTD| 1.270| 1.492| 17.161| 0| 0| 1.234| 18.265 RTD| 1.227| 1.499| 15.984| 0| 0| 1.227| 18.265 RTD| 1.280| 1.712| 15.186| 0| 0| 1.227| 18.265 RTD| 1.249| 1.515| 16.888| 0| 0| 1.227| 18.265 RTD| 1.255| 1.593| 13.333| 0| 0| 1.227| 18.265 RTD| 1.267| 1.489| 16.810| 0| 0| 1.227| 18.265 RTD| 1.252| 1.664| 13.318| 0| 0| 1.227| 18.265 RTD| 1.267| 1.479| 11.202| 0| 0| 1.227| 18.265 RTD| 1.249| 1.497| 12.868| 0| 0| 1.227| 18.265 RTD| 1.265| 1.517| 16.853| 0| 0| 1.227| 18.265 ^C---|-----------|-----------|-----------|--------|------|------------------------- RTS| 1.227| 1.555| 18.265| 0| 0| 00:00:34/00:00:34 I was getting large values too (lat avg, lat max), sometimes more than 2000 us. But with a 'top' command I verified that there were processes using more than 80% of CPU, so I think it's the cause of these values. I executed a xeno-test command and I got the partial result below. Started child 11510: dohell 900 Started child 11512: /usr/xenomai/bin/latency == Sampling period: 1000 us == Test mode: periodic user-mode task == All results in microseconds warming up... RTT| 00:00:01 (periodic user-mode task, 1000 us period, priority 99) RTH|----lat min|----lat avg|----lat max|-overrun|---msw|---lat best|--lat worst RTD| 4.530| 10.681| 20.570| 0| 0| 4.530| 20.570 RTD| 4.588| 11.494| 309.452| 0| 0| 4.530| 309.452 RTD| 4.580| 10.944| 37.656| 0| 0| 4.530| 309.452 RTD| 4.489| 11.696| 492.573| 0| 0| 4.489| 492.573 RTD| 4.489| 11.303| 460.818| 0| 0| 4.489| 492.573 RTD| 4.085| 11.704| 133.328| 0| 0| 4.085| 492.573 RTD| 8.707| 13.636| 656.525| 0| 0| 4.085| 656.525 RTD| 4.967| 13.671| 664.366| 0| 0| 4.085| 664.366 RTD| 6.108| 12.156| 50.393| 0| 0| 4.085| 664.366 RTD| 3.957| 12.883| 384.060| 0| 0| 3.957| 664.366 RTD| 4.022| 12.578| 962.146| 0| 0| 3.957| 962.146 RTD| 3.982| 12.565| 1080.361| 1| 0| 3.957| 1080.361 RTD| 4.507| 10.906| 452.252| 1| 0| 3.957| 1080.361 RTD| 4.845| 11.047| 112.396| 1| 0| 3.957| 1080.361 RTD| 4.803| 10.782| 55.315| 1| 0| 3.957| 1080.361 RTD| 3.906| 10.464| 1043.691| 2| 0| 3.906| 1080.361 RTD| 3.959| 8.335| 46.666| 2| 0| 3.906| 1080.361 RTD| 4.042| 10.772| 45.176| 2| 0| 3.906| 1080.361 RTD| 3.999| 11.555| 696.714| 2| 0| 3.906| 1080.361 RTD| 4.010| 10.982| 35.601| 2| 0| 3.906| 1080.361 RTD| 3.972| 11.550| 42.679| 2| 0| 3.906| 1080.361 RTT| 00:00:22 (periodic user-mode task, 1000 us period, priority 99) RTH|----lat min|----lat avg|----lat max|-overrun|---msw|---lat best|--lat worst RTD| 4.303| 12.760| 43.477| 2| 0| 3.906| 1080.361 RTD| 3.636| 10.439| 208.924| 2| 0| 3.636| 1080.361 RTD| 3.681| 13.588| 820.573| 2| 0| 3.636| 1080.361 RTD| 4.065| 14.502| 885.888| 2| 0| 3.636| 1080.361 RTD| 3.987| 14.954| 989.131| 2| 0| 3.636| 1080.361 RTD| 3.926| 14.542| 1383.499| 3| 0| 3.636| 1383.499 RTD| 3.853| 14.560| 1154.987| 4| 0| 3.636| 1383.499 RTD| 4.659| 13.555| 924.207| 4| 0| 3.636| 1383.499 RTD| 3.893| 13.777| 663.159| 4| 0| 3.636| 1383.499 RTD| 4.426| 13.454| 808.964| 4| 0| 3.636| 1383.499 RTD| 4.744| 14.840| 827.146| 4| 0| 3.636| 1383.499 RTD| 4.386| 12.659| 572.785| 4| 0| 3.636| 1383.499 RTD| 3.999| 15.138| 1152.191| 5| 0| 3.636| 1383.499 RTD| 3.954| 14.227| 993.108| 5| 0| 3.636| 1383.499 RTD| 4.489| 12.805| 666.755| 5| 0| 3.636| 1383.499 RTD| 3.921| 12.608| 703.176| 5| 0| 3.636| 1383.499 RTD| 4.022| 12.424| 574.785| 5| 0| 3.636| 1383.499 RTD| 4.553| 12.891| 717.265| 5| 0| 3.636| 1383.499 ^C---|-----------|-----------|-----------|--------|------|------------------------- RTS| 3.636| 12.446| 1383.499| 5| 0| 00:00:39/00:00:39 Could you say if these results are right or not. Thank you for the reply, Bruno Em Sexta-feira, 21 de Fevereiro de 2014 11:46, Gilles Chanteperdrix <[email protected]> escreveu: On 02/21/2014 03:31 PM, Bruno Tunes de Mello wrote: > Hi, > > I'm using a Sabre Lite board with IMX6Q for a project. > I > installed xenomai with the kernel 3.0.35 from boundary Devices, its not > the version indicated in README file, but I applied the patches and it > seems work. When it boots can see the messages: > > I-pipe: Domain Xenomai registered. > Xenomai: hal/arm started. > Xenomai: scheduling class idle registered. > Xenomai: scheduling class rt registered. > Xenomai: real-time nucleus v2.6.3 (Lies and Truths) loaded. > Xenomai: debug mode enabled. > Xenomai: starting native API services. > Xenomai: starting POSIX services. > Xenomai: starting RTDM services. > > But the user space is not working. When I try to execute latency and > xeno-test commands I get a error message: not > found. > > linaro@linaro-alip:/usr/xenomai/bin$ ./latency > bash: ./latency: No such file or directory > linaro@linaro-alip:/usr/xenomai/bin$ ./xeno-test > bash: ./xeno-test: /usr/xenomai/bin/xeno-test-run: bad interpreter: No such > file or directory > linaro@linaro-alip:/usr/xenomai/bin$ sudo ./xeno latency > ./xeno: 15: exec: /usr/xenomai/bin/latency: not found > > The only command that work is xeno-config. I started using Linux for this > project so I don't know how to solve it. > > I > tried to search some solution on mailing list, but anything yet. In > troubleshooting guide I read about EABI and OABI compilers mismatch, but > I compiled both kernel and user space with Linaro toolchain > (arm-linux-gnueabi). I tried with Ubuntu cross-compiler too > (arm-linux-gnueabihf), but same result. Xenomai user-space support is probably mis-compiled: - either you did not compile it for ARM; - or you compile it with a toolchain which is not the same as the one used to generate the rest of the root filesystem. -- Gilles. _______________________________________________ Xenomai mailing list [email protected] http://www.xenomai.org/mailman/listinfo/xenomai
