problem with Vulcano 2017-05-19 & Linux 4.4.43

Sebastian Kuzminsky <[email protected]> Mon, 22 May 2017 10:11:23 -0600
Newsgroups gmane.linux.real-time.rtai
Message-ID <[email protected]>
I've been working with Vulcano from 2017-05-05 and Linux 4.1.18, with 
fairly good success.

Recently I tried to upgrade to Vulcano from 2017-05-19 and Linux 4.4.43, 
and ran into trouble, I think related to latency calibration.


The working version:  When I load the 2017-05-05 RTAI modules on 4.1.18 
I get these kernel messages:

> [ 1041.193810] RTAI[hal]: mounted. ISOL_CPUS_MASK: 0.
> [ 1041.194876] SYSINFO - # CPUs: 2, TIMER NAME: 'lapic', TIMER IRQ: 2305, TIMER FREQ: 62504000, CLOCK NAME: 'tsc', CLOCK FREQ: 2000145000, CPU FREQ: 2000145000, LINUX TIMER IRQ: 2305.
> [ 1041.202828] RTAI[malloc]: global heap size = 2097152 bytes, <BSD>.
> [ 1041.204523] , kstacks pool size = 524288 bytes.
> [ 1041.205423] RTAI[sched]: hard timer type/freq = lapic/62504000(Hz); timing: ONESHOT; linear timed lists.
> [ 1041.207099] RTAI[sched]: Linux timer freq = 1000 (Hz), TimeBase freq = 2000145000 hz.
> [ 1041.208498] RTAI[sched]: timer setup = 1817 ns, resched latency = 0 ns.
> [ 1041.222992] USERMODE CHECK: OK.
> [ 1041.222992] USERMODE CHECK PROVIDED (ns): KernelLatency 16588, UserLatency 16230.
> [ 1041.222992] FINAL CALIBRATION SUMMARY (ns): KernelLatency 16588, UserLatency 16230.
> [ 1041.229782] RTAI[math]: loaded, using NEWLIB.

And things work pretty well.


The broken version: When I load the 2017-05-19 RTAI modules on 4.4.43 I 
get these kernel messages, followed by a hard lockup:

> [  449.265169] I-pipe: head domain RTAI registered.
> [  449.266431] RTAI[hal]: mounted. ISOL_CPUS_MASK: 0.
> [  449.267884] SYSINFO - # CPUs: 2, TIMER NAME: 'lapic', TIMER IRQ: 2306, TIMER FREQ: 62502999, CLOCK NAME: 'tsc', CLOCK FREQ: 2000102000, CPU FREQ: 2000102000, LINUX TIMER IRQ: 2306.
> [  449.282267] RTAI[malloc]: global heap size = 2097152 bytes, <BSD>.
> [  449.284201] , kstacks pool size = 524288 bytes.
> [  449.285457] RTAI[sched]: hard timer type/freq = lapic/62502999(Hz); timing: ONESHOT; linear timed lists.
> [  449.287694] RTAI[sched]: Linux timer freq = 1000 (Hz), TimeBase freq = 2000102000 hz.
> [  449.289652] RTAI[sched]: timer setup = 2133 ns, resched latency = 0 ns.
> [  449.309166] USERMODE CHECK: OK.
> [  449.309422] USERMODE CHECK PROVIDED (ns): KernelLatency -1, UserLatency -1.
> [  449.311711] Kernel panic - not syncing: stack-protector: Kernel stack is corrupted in: f882165c
> [  449.311711]
> [  449.312202] CPU: 1 PID: 10522 Comm: systemd-udevd Tainted: G           O    4.4.0-0.bpo.2-rtai-686-pae #1 Debian 4.4.43-2linuxcnc
> [  449.312202] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.7.5-20140531_083030-gandalf 04/01/2014
> [  449.312202]  00000000 c2622136 c1227836 f565c000 e09da1aa c10d762b f565c000 e09da1aa
> [  449.312202]  8bef3774 00000201 c1046677 c16d5c98 f882165c f882165c 00000200 498d1642
> [  449.312202]  000000d7 00030d4a 00000000 00030d4a f881626e 00000000 e09da1aa 000000d7
> [  449.312202] Call Trace:
> [  449.312202] Kernel Offset: disabled

And then the machine is hung.


I'm not passing any parameters to the kernel modules on either of these 
builds.

I have not tried Vulcano 2017-05-19 on Linxu 4.1.18, but I could if you 
think that would help shed light on this issue.


Both tests are on a KVM virtual machine running Debian Jessie, if that's 
relevant.  The two kernel configs are here:

http://highlab.com/~seb/rtai/2017-05-22.hard-lockup/


-- 
Sebastian Kuzminsky
_______________________________________________
Rtai mailing list
[email protected]
https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai