Post by andy pugh
Is this true of the LiveCD-distributed version of LinuxCNC, or only if
using your linked code?
The RTAI tree for LinuxCNC (NTULINUX, me) has many fixes not included in RTAI mainline such as to the timer, math, scheduler, and HAL code. isolcpus is no longer required, I have thoroughly tested that branch myself across several 64-bit SMP systems, 4 cores to 8 cores, and have had no issues, regardless if isolcpus is specified or not.
The tree hasn't been touched in awhile but it works as-is with LinuxCNC with no gotchas that I could find. isolcpus isn't necessarily "on" in that branch by default, it still works, but it isn't needed and can safely be left out.
I have not seen an instance where a real-time thread jumps across cores with that branch, with or without isolcpus, but I also have SCHED_MC and SCHED_SMT disabled. Enabling those and certain ACPI and IOMMU options may cause unexpected behavior, latency spikes, core jumping, etc.
This commit I assume fixes the issue of having interrupt remapping enabled (IOMMU option) with IPIPE enabled (instant boot failure after kernel decompression) but other problems may still remain depending on kernel configuration as the kernel patches (lazily) do not properly blacklist all the potentially conflicting options in Kconfig.
Hope this helps!