Re: How to install RTAI 5.1 on Debian?

Paolo Mantegazza <[email protected]> Wed, 14 Feb 2018 09:21:35 +0100
Newsgroups gmane.linux.real-time.rtai
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--===============1377959685838325698==
Content-Type: multipart/alternative;
 boundary="------------B02C8942FEAEE03E446F2D88"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------B02C8942FEAEE03E446F2D88
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

I've just one suggestion! Give me root access to your machine, letting=20
me to find some time, now and then, to work on it.
Paolo

On 02/14/2018 07:44 AM, Guo Yunfei wrote:
> Dear Paolo:
>
>
> I install the RTAI 5.1 as the follow process:
>
> First,
> I intstall RTAI 4.1 successful without the math function kernel=20
> support. its latency test is good.
> My envieronment is Debian 8.9.0 , kernel 3.10.32, RTAI 4.1.
>
> Then, for the RTAI 5.1 installation,
> I still using kernel 3.10.32 patch file in RTAI 5.1 package
> I "make oldconfig" from above RTAI 4.1 environment. I just choose the=20
> same kernel version for it has running good with my RTAI 4.1
> =C2=A0it is same kernel version ,so not much difference, but still has =
some=20
> message pop out like below:
>
> //------------------------------------
> root@debian:/media/guoissac/13GDATA/linux-3.10.32-5.1# make oldconfig
> =C2=A0 HOSTCC =C2=A0scripts/basic/fixdep
> =C2=A0 HOSTCC =C2=A0scripts/kconfig/conf.o
> =C2=A0 SHIPPED scripts/kconfig/zconf.tab.c
> =C2=A0 SHIPPED scripts/kconfig/zconf.lex.c
> =C2=A0 SHIPPED scripts/kconfig/zconf.hash.c
> =C2=A0 HOSTCC =C2=A0scripts/kconfig/zconf.tab.o
> In file included from scripts/kconfig/zconf.tab.c:2503:0:
> scripts/kconfig/menu.c: In function =E2=80=98get_symbol_str=E2=80=99:
> scripts/kconfig/menu.c:567:18: warning: =E2=80=98jump=E2=80=99 may be u=
sed=20
> uninitialized in this function [-Wmaybe-uninitialized]
> =C2=A0 =C2=A0 =C2=A0jump->offset =3D r->len - 1;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ^
> scripts/kconfig/menu.c:528:19: note: =E2=80=98jump=E2=80=99 was declare=
d here
> =C2=A0 struct jump_key *jump;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0^
> =C2=A0 HOSTLD =C2=A0scripts/kconfig/conf
> scripts/kconfig/conf --oldconfig Kconfig
> #
> # using defaults found in /boot/config-3.10.32-rt-4.1
> #
> *
> * Restart config...
> *
> *
> * Processor type and features
> *
> DMA memory allocation support (ZONE_DMA) [Y/n/?] y
> Symmetric multi-processing support (SMP) [Y/n/?] y
> Enable MPS table (X86_MPPARSE) [Y/n/?] y
> Support for big SMP systems with more than 8 CPUs (X86_BIGSMP) [Y/n/?] =
y
> Support for extended (non-PC) x86 platforms (X86_EXTENDED_PLATFORM)=20
> [N/y/?] n
> Goldfish (Virtual Platform) (X86_GOLDFISH) [N/y/?] n
> Eurobraille/Iris poweroff module (X86_32_IRIS) [N/m/y/?] n
> Single-depth WCHAN output (SCHED_OMIT_FRAME_POINTER) [Y/n/?] y
> *
> * Linux guest support
> *
> Linux guest support (HYPERVISOR_GUEST) [Y/n/?] y
> Memtest (MEMTEST) [Y/n/?] y
> Processor family
> =C2=A0 1. 486 (M486)
> =C2=A0 2. 586/K5/5x86/6x86/6x86MX (M586)
> =C2=A0 3. Pentium-Classic (M586TSC)
> =C2=A0 4. Pentium-MMX (M586MMX)
> =C2=A0 5. Pentium-Pro (M686)
> =C2=A0 6. Pentium-II/Celeron(pre-Coppermine) (MPENTIUMII)
> =C2=A0 7. Pentium-III/Celeron(Coppermine)/Pentium-III Xeon (MPENTIUMIII=
)
> =C2=A0 8. Pentium M (MPENTIUMM)
> =C2=A0 9. Pentium-4/Celeron(P4-based)/Pentium-4 M/older Xeon (MPENTIUM4=
)
> =C2=A0 10. K6/K6-II/K6-III (MK6)
> =C2=A0 11. Athlon/Duron/K7 (MK7)
> =C2=A0 12. Opteron/Athlon64/Hammer/K8 (MK8)
> =C2=A0 13. Crusoe (MCRUSOE)
> =C2=A0 14. Efficeon (MEFFICEON)
> =C2=A0 15. Winchip-C6 (MWINCHIPC6)
> =C2=A0 16. Winchip-2/Winchip-2A/Winchip-3 (MWINCHIP3D)
> =C2=A0 17. AMD Elan (MELAN)
> =C2=A0 18. GeodeGX1 (MGEODEGX1)
> =C2=A0 19. Geode GX/LX (MGEODE_LX)
> =C2=A0 20. CyrixIII/VIA-C3 (MCYRIXIII)
> =C2=A0 21. VIA C3-2 (Nehemiah) (MVIAC3_2)
> =C2=A0 22. VIA C7 (MVIAC7)
> =C2=A0 23. Core 2/newer Xeon (MCORE2)
> > 24. Intel Atom (MATOM)
> choice[1-24]: 24
> Generic x86 support (X86_GENERIC) [Y/n/?] y
> *
> * Supported processor vendors
> *
> Supported processor vendors (PROCESSOR_SELECT) [N/y/?] n
> HPET Timer Support (HPET_TIMER) [Y/n/?] y
> Enable DMI scanning (DMI) [Y/n/?] y
> Maximum number of CPUs (NR_CPUS) [4] 4
> SMT (Hyperthreading) scheduler support (SCHED_SMT) [N/y/?] n
> Multi-core scheduler support (SCHED_MC) [Y/n/?] y
> Preemption Model
> =C2=A0 1. No Forced Preemption (Server) (PREEMPT_NONE)
> > 2. Voluntary Kernel Preemption (Desktop) (PREEMPT_VOLUNTARY)
> =C2=A0 3. Preemptible Kernel (Low-Latency Desktop) (PREEMPT)
> choice[1-3]: 2
> Interrupt pipeline (IPIPE) [Y/n/?] y
> =C2=A0 I-pipe legacy interface (IPIPE_LEGACY) [Y/n/?] y
> Reroute for broken boot IRQs (X86_REROUTE_FOR_BROKEN_BOOT_IRQS) [Y/n/?]=
 y
> Machine Check / overheating reporting (X86_MCE) [Y/n/?] y
> =C2=A0 Intel MCE features (X86_MCE_INTEL) [Y/n/?] y
> =C2=A0 AMD MCE features (X86_MCE_AMD) [Y/n/?] y
> =C2=A0 Support for old Pentium 5 / WinChip machine checks (X86_ANCIENT_=
MCE)=20
> [N/y/?] n
> Machine check injector support (X86_MCE_INJECT) [M/n/y/?] m
> Enable VM86 support (VM86) [Y/n/?] y
> Toshiba Laptop support (TOSHIBA) [M/n/y/?] m
> Dell laptop support (I8K) [M/n/y/?] m
> Enable X86 board specific fixups for reboot (X86_REBOOTFIXUPS) [Y/n/?] =
y
> CPU microcode loading support (MICROCODE) [Y/n/m/?] y
> =C2=A0 Intel microcode loading support (MICROCODE_INTEL) [Y/n/?] y
> =C2=A0 AMD microcode loading support (MICROCODE_AMD) [N/y/?] n
> Early load microcode (MICROCODE_INTEL_EARLY) [Y/n/?] y
> /dev/cpu/*/msr - Model-specific register support (X86_MSR) [M/n/y/?] m
> /dev/cpu/*/cpuid - CPU information support (X86_CPUID) [M/n/y/?] m
> High Memory Support
> =C2=A0 1. off (NOHIGHMEM)
> =C2=A0 2. 4GB (HIGHMEM4G)
> > 3. 64GB (HIGHMEM64G)
> choice[1-3]: 3
> Memory split
> > 1. 3G/1G user/kernel split (VMSPLIT_3G)
> =C2=A0 2. 2G/2G user/kernel split (VMSPLIT_2G)
> =C2=A0 3. 1G/3G user/kernel split (VMSPLIT_1G)
> choice[1-3?]: 1
> PAE (Physical Address Extension) Support (X86_PAE) [Y/?] y
> Numa Memory Allocation and Scheduler Support (NUMA) [N/y/?] n
> Memory model
> > 1. Flat Memory (FLATMEM_MANUAL)
> =C2=A0 2. Sparse Memory (SPARSEMEM_MANUAL)
> choice[1-2]: 1
> Allow for balloon memory compaction/migration (BALLOON_COMPACTION)=20
> [Y/n/?] y
> Allow for memory compaction (COMPACTION) [Y/n/?] y
> Page migration (MIGRATION) [Y/?] y
> Enable bounce buffers (BOUNCE) [Y/n/?] y
> Enable KSM for page merging (KSM) [Y/n/?] y
> Low address space to protect from user allocation=20
> (DEFAULT_MMAP_MIN_ADDR) [65536] 65536
> Enable recovery from hardware memory errors (MEMORY_FAILURE) [Y/n/?] y
> =C2=A0 HWPoison pages injector (HWPOISON_INJECT) [M/n/y] m
> Transparent Hugepage Support (TRANSPARENT_HUGEPAGE) [N/y/?] (NEW)
> Cross Memory Support (CROSS_MEMORY_ATTACH) [Y/n/?] y
> Enable cleancache driver to cache clean pages if tmem is present=20
> (CLEANCACHE) [N/y/?] n
> Enable frontswap to cache swap pages if tmem is present (FRONTSWAP)=20
> [Y/n/?] y
> Allocate 3rd-level pagetables from highmem (HIGHPTE) [Y/n/?] y
> Check for low memory corruption (X86_CHECK_BIOS_CORRUPTION) [N/y/?] n
> Amount of low memory, in kilobytes, to reserve for the BIOS=20
> (X86_RESERVE_LOW) [64] 64
> Math emulation (MATH_EMULATION) [N/y/?] n
> MTRR (Memory Type Range Register) support (MTRR) [Y/n/?] y
> =C2=A0 MTRR cleanup support (MTRR_SANITIZER) [Y/n/?] y
> =C2=A0 =C2=A0 MTRR cleanup enable value (0-1) (MTRR_SANITIZER_ENABLE_DE=
FAULT) [0] 0
> =C2=A0 =C2=A0 MTRR cleanup spare reg num (0-7)=20
> (MTRR_SANITIZER_SPARE_REG_NR_DEFAULT) [1] 1
> =C2=A0 x86 PAT support (X86_PAT) [Y/n/?] y
> x86 architectural random number generator (ARCH_RANDOM) [Y/n/?] y
> Supervisor Mode Access Prevention (X86_SMAP) [Y/n/?] y
> Enable seccomp to safely compute untrusted bytecode (SECCOMP) [Y/n/?] y
> Enable -fstack-protector buffer overflow detection (CC_STACKPROTECTOR)=20
> [Y/n/?] y
> Timer frequency
> =C2=A0 1. 100 HZ (HZ_100)
> > 2. 250 HZ (HZ_250)
> =C2=A0 3. 300 HZ (HZ_300)
> =C2=A0 4. 1000 HZ (HZ_1000)
> choice[1-4?]: 2
> kexec system call (KEXEC) [Y/n/?] y
> kernel crash dumps (CRASH_DUMP) [Y/n/?] y
> kexec jump (KEXEC_JUMP) [N/y/?] n
> Physical address where the kernel is loaded (PHYSICAL_START)=20
> [0x1000000] 0x1000000
> Build a relocatable kernel (RELOCATABLE) [Y/n/?] y
> Alignment value to which kernel should be aligned (PHYSICAL_ALIGN)=20
> [0x1000000] 0x1000000
> Support for hot-pluggable CPUs (HOTPLUG_CPU) [Y/?] y
> =C2=A0 Set default setting of cpu0_hotpluggable (BOOTPARAM_HOTPLUG_CPU0=
)=20
> [N/y/?] n
> =C2=A0 Debug CPU0 hotplug (DEBUG_HOTPLUG_CPU0) [N/y/?] n
> Compat VDSO support (COMPAT_VDSO) [N/y/?] n
> Built-in kernel command line (CMDLINE_BOOL) [N/y/?] n
> #
> # configuration written to .config
> #
> //-------------------------------------
>
> I think this might because of the difference between two patch files,=20
> although both of the two patch file for a same version kernel.
> I give it all the default option.
> Then I disable the I-pipe-legacy interface support with the "make=20
> menuconfig"
> The kernel-3.10.32-rtai-5.1 was updated successful too.
>
> But,
> when I make the RTAI 5.1, below compiling error pop out:
>
> //----------------------------------------------------
>
> Making all in calibration
> make[5]: Entering directory=20
> '/media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration'
> make[6]: Entering directory=20
> '/media/guoissac/13GDATA/rtai-5.1/base/sched/liblxrt'
> make[6]: warning: jobserver unavailable: using -j1.=C2=A0 Add '+' to pa=
rent=20
> make rule.
> make[6]: Entering directory '/media/guoissac/13GDATA/linux-3.10.32-5.1'
> make[6]: 'liblxrt.la <http://liblxrt.la>' is up to date.
> make[6]: Leaving directory=20
> '/media/guoissac/13GDATA/rtai-5.1/base/sched/liblxrt'
> /bin/bash ../../../../libtool =C2=A0--tag=3DCC =C2=A0 --mode=3Dlink cc =
=C2=A0 =C2=A0 -o=20
> calibrate calibrate-calibrate.o ../../../sched/liblxrt/liblxrt.la=20
> <http://liblxrt.la> -lpthread
>
> *** Warning: Linking the executable calibrate against the loadable modu=
le
> *** liblxrt.so is not portable!
> libtool: link: cc -o .libs/calibrate calibrate-calibrate.o=20
> =C2=A0../../../sched/liblxrt/.libs/liblxrt.so -lpthread
> =C2=A0 CC [M]=20
> =C2=A0/media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-mo=
dule.o
> /media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-module.c=
:=20
> In function =E2=80=98check_smi_count=E2=80=99:
> /media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-module.c=
:280:4:=20
> error: implicit declaration of function =E2=80=98rdmsrl_safe_on_cpu=E2=80=
=99=20
> [-Werror=3Dimplicit-function-declaration]
> =C2=A0 =C2=A0 ret =3D rdmsrl_safe_on_cpu(cpuid, MSR_SMI_COUNT, &q);
> =C2=A0 =C2=A0 ^
> In file included from include/linux/bitops.h:22:0,
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0from incl=
ude/linux/kernel.h:10,
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0from=20
> /media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-module.c=
:26:
> /media/guoissac/13GDATA/linux-3.10.32-5.1/arch/x86/include/asm/bitops.h=
:321:8:=20
> warning: =E2=80=98*((void *)&p+20)=E2=80=99 is used uninitialized in th=
is function=20
> [-Wuninitialized]
> =C2=A0 =C2=A0(addr[nr / BITS_PER_LONG])) !=3D 0;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 ^
> /media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-module.c=
:274:21:=20
> note: =E2=80=98p=E2=80=99 was declared here
> =C2=A0 struct cpuinfo_x86 p;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0^
> cc1: some warnings being treated as errors
> scripts/Makefile.build:308: recipe for target=20
> '/media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-module.=
o'=20
> failed
> make[7]: ***=20
> [/media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-module.=
o]=20
> Error 1
> Makefile:1224: recipe for target=20
> '_module_/media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration'=20
> failed
> make[6]: ***=20
> [_module_/media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration]=20
> Error 2
> make[6]: Leaving directory '/media/guoissac/13GDATA/linux-3.10.32-5.1'
> GNUmakefile:916: recipe for target 'rtai_smi.ko' failed
> make[5]: *** [rtai_smi.ko] Error 2
> make[5]: Leaving directory=20
> '/media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration'
> GNUmakefile:406: recipe for target 'all-recursive' failed
> make[4]: *** [all-recursive] Error 1
> make[4]: Leaving directory=20
> '/media/guoissac/13GDATA/rtai-5.1/base/arch/x86'
> GNUmakefile:428: recipe for target 'all-recursive' failed
> make[3]: *** [all-recursive] Error 1
> make[3]: Leaving directory '/media/guoissac/13GDATA/rtai-5.1/base/arch'
> GNUmakefile:423: recipe for target 'all-recursive' failed
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory '/media/guoissac/13GDATA/rtai-5.1/base'
> GNUmakefile:486: recipe for target 'all-recursive' failed
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory '/media/guoissac/13GDATA/rtai-5.1'
> GNUmakefile:417: recipe for target 'all' failed
> make: *** [all] Error 2
> //-----------------------------------------------------------------
>
> Any suggestion of solve this problem?
>
> Many Thanks.
>
> Best Regards
> Guo Yunfei
>
>
>
> On Mon, Feb 12, 2018 at 10:47 PM, Paolo Mantegazza=20
> <[email protected] <mailto:[email protected]>> wrote:
>
>     I see a lot of confusion in what you write.
>
>     There is no difference in installing RTAI on any distribution of
>     choice, it is the same for all of them.
>     First you have to learn how to make and boot a new kernel, taken
>     form kernel.org <http://kernel.org> and associated to any of the
>     patches coming with your RTAI of choice. For that read the README
>     in the LINUX kernel, with special care to the options:=C2=A0 "make
>     localmodconfig" and=C2=A0 "make localyesconfig".
>     Once you have a LINUX .config that works, you'll remake the kernel
>     anew, applying the related RTAI patch first and using the working
>     .config you have.
>
>     Paolo
>
>
>
>     On 02/12/2018 02:23 PM, Guo Yunfei wrote:
>>
>>     Hi. everybody.
>>
>>     I always install RTAI 4.0 and RTAI 4.1 on Debian as below steps
>>     and using it perfect.
>>     When I install RTAI 5.1 as same steps. =C2=A0the RTAI 5.1 can be m=
ake
>>     successfully.
>>     But the system not reponse after I test the latency by that "run
>>     " command.
>>
>>     Could some one give me a guide of installation of RTAI 5.1 on Debi=
an?
>>
>>     Best Regards
>>     Guo Yunfei
>>
>>     My steps:
>>     //------------------------------------------
>>     This document describes how to install RTAI 4.0 on a Ubuntu
>>     12.04.4 LTS using a 3.8.13 kernel, either 32bit or 64 bit version.
>>
>>
>>             Prerequisites
>>
>>     Install Ubuntu 12.04.4 using one of the following images:
>>
>>     http://releases.ubuntu.com/precise/ubuntu-12.04.4-desktop-amd64.is=
o
>>     <http://releases.ubuntu.com/precise/ubuntu-12.04.4-desktop-amd64.i=
so>
>>
>>     http://releases.ubuntu.com/precise/ubuntu-12.04.4-desktop-i386.iso
>>     <http://releases.ubuntu.com/precise/ubuntu-12.04.4-desktop-i386.is=
o>
>>
>>     And then follow the installation instructions here:
>>     https://help.ubuntu.com/community/Installation/
>>     <https://help.ubuntu.com/community/Installation/>
>>
>>
>>             Introduction
>>
>>     If the ROOT user is not created yet, log as your usual user, open
>>     a terminal and type ->
>>
>>     # sudo su -
>>     # sudo passwd root
>>
>>     Enter the password for the ROOT user. Log out and log in as Root.
>>
>>     Open a terminal and update your package repository source file :
>>
>>     # apt-get update
>>
>>     Some tools are required in order to set up the kernel (You need
>>     to be connected to Internet)
>>
>>     # apt-get -y install qt3-apps-dev build-essential kernel-package v=
im cvs
>>
>>
>>             I - Kernel source and RTAI download
>>
>>     # cd /usr/src/
>>
>>     Get the kernel source from kernel.org <http://kernel.org>
>>
>>     # wgethttps://www.kernel.org/pub/linux/kernel/v3.x/linux-3.8.13.ta=
r.bz2
>>     <https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.8.13.tar.bz2=
>
>>     # tar xf linux-3.8.13.tar.bz2
>>
>>     Get RTAI 4.0 from the RTAI homepage
>>
>>     # wgethttps://www.rtai.org/userfiles/downloads/RTAI/rtai-4.0.tar.b=
z2
>>     <https://www.rtai.org/userfiles/downloads/RTAI/rtai-4.0.tar.bz2>
>>     tar xf rtai-4.0.tar.bz2
>>
>>
>>             II - Kernel Preparation
>>
>>     # cd /usr/src
>>     # ln -s linux-3.8.13 linux
>>     # cd linux
>>
>>
>>               Applying patch
>>
>>     If you want first simulate the patch application, use "--dry-run"
>>     after "-p1". It won't touch any files on your computer, but you
>>     can see if you get Hunks or not.
>>
>>     # patch -p1 < /usr/src/rtai-4.0/base/arch/x86/patches/hal-linux-3.=
8.13-x86-4.patch
>>
>>
>>               Kernel Configuration
>>
>>     # cd /usr/src/linux
>>
>>     In order to retrieve your current kernel configuration : (If at
>>     this step, questions are asked give the answer by default)
>>
>>     # make oldconfig
>>
>>     Now we modify the kernel settings the way we need it (NOTE: some
>>     parameters cannot be disabled with xconfig - better to use
>>     menuconfig):
>>
>>     # make xconfig
>>
>>     Set up the kernel settings as follows :
>>
>>     *Processor type and features*
>>
>>     -> Processor family =3D /Select yours
>>     /-> Maximum number of CPUs (NR_CPUS) =3D /Set your number (it's
>>     generally "4")/
>>     -> SMT (Hyperthreading) scheduler support =3D /DISABLE IT/
>>
>>     *Power Management and ACPI options*
>>
>>     CPU idle PM support
>>     -> Cpu idle Driver for Intel Processors =3D /DISABLE IT
>>     /-> ACPI (Advanced Configuration and Power Interface) Support ->
>>     PROCESSOR =3D /DISABLE IT
>>     /-> APM (Advanced Power Management) BIOS support =3D /DISABLE IT
>>     /-> CPU Frequency scaling -> CPU Frequency scaling =3D /DISABLE IT
>>     /CPU idle PM support =3D DISABLE IT
>>
>>     Save and Quit
>>
>>     Note (Sylvain, May 2014): these settings should be verified in
>>     the .config file, since there have been cases that xconfig does
>>     not do it correctly.
>>
>>
>>             *III - Kernel Compilation*
>>
>>     # cd /usr/src/linux
>>     # make && make modules_install && make install
>>
>>     NOTE: The compilation time might be decreased by passing the
>>     flags -jX (with X=3Dnumber of CPUs you have on your machine). This
>>     has for effect to parallelize the kernel compilation between the
>>     CPUs. This will take ~1 hour.
>>
>>
>>               Kernel Boot Options
>>
>>     This is very important - it took us (and the guys at the RTAI
>>     mailing list) ages to find that special config that makes
>>     everything work smoothly!
>>
>>     You need to add the following option to the kernel at boot time
>>
>>     lapic=3Dnotscdeadline
>>
>>     The best way to do this is in /etc/default/grub in the field
>>     GRUB_CMDLINE_LINUX_DEFAULT, i.e.,
>>
>>     GRUB_CMDLINE_LINUX_DEFAULT=3D"quiet splash lapic=3Dnotscdeadline"
>>
>>     You will also have to change the GRUB_DEFAULT to the number that
>>     corresponds to the new kernel.
>>
>>     Finally run update-grub and reboot
>>
>>     # update-grub
>>     # reboot
>>
>>
>>             *IV - RTAI installation*
>>
>>     Now that the system has restarted, make sure you booted on your
>>     new OpenAir
>>     <https://twiki.eurecom.fr/twiki/bin/edit/OpenAirInterface/OpenAir?=
topicparent=3DOpenAirInterface.OpenAirKernel357Ubuntu1204x86Setups;nowysi=
wyg=3D0>=C2=A0kernel
>>
>>     # uname -r
>>
>>     Should give you "3.8.13" as result
>>
>>     # cd /usr/src/rtai-4.0
>>     # make xconfig
>>
>>     UPDATE the CPUs number according to your configuration and
>>     disable RTAI_USE_NEWERR and real-time COMEDI support in Add-ons.
>>     Enable the watchdog, CONFIG_RTAI_WD.
>>
>>     Save and quit. If any error occurs here, solve it and repeat this
>>     "make xconfig" step until it's OK
>>
>>     # make && make install
>>
>>     Add what follows, to the end of the file ~/.bashrc
>>
>>     export PATH=3D/usr/realtime/bin:$PATH
>>     export LD_LIBRARY_PATH=3D$LD_LIBRARY_PATH:/usr/realtime/lib
>>
>>     Create a file /etc/ld.so.conf.d/rtai.conf with the content
>>
>>     /usr/realtime/lib
>>
>>     and run "ldconfig"in order to take it into account
>>
>>     We will test the RTAI system via the latency test
>>
>>     # cd /usr/realtime/testsuite/kern/latency
>>     # ./run
>>     //----------------------------------------------------------------=
-------------------------
>>
>>
>>     _______________________________________________
>>     Rtai mailing list
>>     [email protected] <mailto:[email protected]>
>>     https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai
>>     <https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai>
>
>
>
>     _______________________________________________
>     Rtai mailing list
>     [email protected] <mailto:[email protected]>
>     https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai
>     <https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai>
>
>


--------------B02C8942FEAEE03E446F2D88
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable

<html>
  <head>
    <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dutf=
-8">
  </head>
  <body text=3D"#000000" bgcolor=3D"#FFFFFF">
    <div class=3D"moz-cite-prefix">I've just one suggestion! Give me root
      access to your machine, letting me to find some time, now and
      then, to work on it.<br>
      Paolo<br>
      <br>
      On 02/14/2018 07:44 AM, Guo Yunfei wrote:<br>
    </div>
    <blockquote type=3D"cite"
cite=3D"mid:CAN_Un=3DW7bMndbTfMRmE7qSM9A2uX1cuaNt5NXre=3D=3DgSxoXMd7w@mai=
l.gmail.com">
      <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Du=
tf-8">
      <div dir=3D"ltr">Dear Paolo:<br>
        <br>
        <div><br>
        </div>
        <div>I install the RTAI 5.1 as the follow process:</div>
        <div><br>
        </div>
        <div>First,</div>
        <div>I intstall RTAI 4.1 successful without the math function
          kernel support. its latency test is good.</div>
        <div>My envieronment is Debian 8.9.0 , kernel 3.10.32, RTAI 4.1.<=
/div>
        <div><br>
        </div>
        <div>Then, for the RTAI 5.1 installation,</div>
        <div>I still using kernel 3.10.32 patch file in RTAI 5.1
          package=C2=A0</div>
        <div>I "make oldconfig" from above RTAI 4.1 environment. I just
          choose the same kernel version for it has running good with my
          RTAI 4.1</div>
        <div>=C2=A0it is same kernel version ,so not much difference, but
          still has some message pop out like below:</div>
        <div><br>
        </div>
        <div>//------------------------------------</div>
        <div>
          <div><a class=3D"moz-txt-link-abbreviated" href=3D"mailto:root@=
debian:/media/guoissac/13GDATA/linux-3.10.32-5.1#">root@debian:/media/guo=
issac/13GDATA/linux-3.10.32-5.1#</a>
            make oldconfig</div>
          <div>=C2=A0 HOSTCC =C2=A0scripts/basic/fixdep</div>
          <div>=C2=A0 HOSTCC =C2=A0scripts/kconfig/conf.o</div>
          <div>=C2=A0 SHIPPED scripts/kconfig/zconf.tab.c</div>
          <div>=C2=A0 SHIPPED scripts/kconfig/zconf.lex.c</div>
          <div>=C2=A0 SHIPPED scripts/kconfig/zconf.hash.c</div>
          <div>=C2=A0 HOSTCC =C2=A0scripts/kconfig/zconf.tab.o</div>
          <div>In file included from scripts/kconfig/zconf.tab.c:2503:0:<=
/div>
          <div>scripts/kconfig/menu.c: In function =E2=80=98get_symbol_st=
r=E2=80=99:</div>
          <div>scripts/kconfig/menu.c:567:18: warning: =E2=80=98jump=E2=80=
=99 may be
            used uninitialized in this function [-Wmaybe-uninitialized]</=
div>
          <div>=C2=A0 =C2=A0 =C2=A0jump-&gt;offset =3D r-&gt;len - 1;</di=
v>
          <div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 ^</div>
          <div>scripts/kconfig/menu.c:528:19: note: =E2=80=98jump=E2=80=99=
 was declared
            here</div>
          <div>=C2=A0 struct jump_key *jump;</div>
          <div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0^</div>
          <div>=C2=A0 HOSTLD =C2=A0scripts/kconfig/conf</div>
          <div>scripts/kconfig/conf --oldconfig Kconfig</div>
          <div>#</div>
          <div># using defaults found in /boot/config-3.10.32-rt-4.1</div=
>
          <div>#</div>
          <div>*</div>
          <div>* Restart config...</div>
          <div>*</div>
          <div>*</div>
          <div>* Processor type and features</div>
          <div>*</div>
          <div>DMA memory allocation support (ZONE_DMA) [Y/n/?] y</div>
          <div>Symmetric multi-processing support (SMP) [Y/n/?] y</div>
          <div>Enable MPS table (X86_MPPARSE) [Y/n/?] y</div>
          <div>Support for big SMP systems with more than 8 CPUs
            (X86_BIGSMP) [Y/n/?] y</div>
          <div>Support for extended (non-PC) x86 platforms
            (X86_EXTENDED_PLATFORM) [N/y/?] n</div>
          <div>Goldfish (Virtual Platform) (X86_GOLDFISH) [N/y/?] n</div>
          <div>Eurobraille/Iris poweroff module (X86_32_IRIS) [N/m/y/?]
            n</div>
          <div>Single-depth WCHAN output (SCHED_OMIT_FRAME_POINTER)
            [Y/n/?] y</div>
          <div>*</div>
          <div>* Linux guest support</div>
          <div>*</div>
          <div>Linux guest support (HYPERVISOR_GUEST) [Y/n/?] y</div>
          <div>Memtest (MEMTEST) [Y/n/?] y</div>
          <div>Processor family</div>
          <div>=C2=A0 1. 486 (M486)</div>
          <div>=C2=A0 2. 586/K5/5x86/6x86/6x86MX (M586)</div>
          <div>=C2=A0 3. Pentium-Classic (M586TSC)</div>
          <div>=C2=A0 4. Pentium-MMX (M586MMX)</div>
          <div>=C2=A0 5. Pentium-Pro (M686)</div>
          <div>=C2=A0 6. Pentium-II/Celeron(pre-Coppermine) (MPENTIUMII)<=
/div>
          <div>=C2=A0 7. Pentium-III/Celeron(Coppermine)/Pentium-III Xeon
            (MPENTIUMIII)</div>
          <div>=C2=A0 8. Pentium M (MPENTIUMM)</div>
          <div>=C2=A0 9. Pentium-4/Celeron(P4-based)/Pentium-4 M/older Xe=
on
            (MPENTIUM4)</div>
          <div>=C2=A0 10. K6/K6-II/K6-III (MK6)</div>
          <div>=C2=A0 11. Athlon/Duron/K7 (MK7)</div>
          <div>=C2=A0 12. Opteron/Athlon64/Hammer/K8 (MK8)</div>
          <div>=C2=A0 13. Crusoe (MCRUSOE)</div>
          <div>=C2=A0 14. Efficeon (MEFFICEON)</div>
          <div>=C2=A0 15. Winchip-C6 (MWINCHIPC6)</div>
          <div>=C2=A0 16. Winchip-2/Winchip-2A/Winchip-3 (MWINCHIP3D)</di=
v>
          <div>=C2=A0 17. AMD Elan (MELAN)</div>
          <div>=C2=A0 18. GeodeGX1 (MGEODEGX1)</div>
          <div>=C2=A0 19. Geode GX/LX (MGEODE_LX)</div>
          <div>=C2=A0 20. CyrixIII/VIA-C3 (MCYRIXIII)</div>
          <div>=C2=A0 21. VIA C3-2 (Nehemiah) (MVIAC3_2)</div>
          <div>=C2=A0 22. VIA C7 (MVIAC7)</div>
          <div>=C2=A0 23. Core 2/newer Xeon (MCORE2)</div>
          <div>&gt; 24. Intel Atom (MATOM)</div>
          <div>choice[1-24]: 24</div>
          <div>Generic x86 support (X86_GENERIC) [Y/n/?] y</div>
          <div>*</div>
          <div>* Supported processor vendors</div>
          <div>*</div>
          <div>Supported processor vendors (PROCESSOR_SELECT) [N/y/?] n</=
div>
          <div>HPET Timer Support (HPET_TIMER) [Y/n/?] y</div>
          <div>Enable DMI scanning (DMI) [Y/n/?] y</div>
          <div>Maximum number of CPUs (NR_CPUS) [4] 4</div>
          <div>SMT (Hyperthreading) scheduler support (SCHED_SMT)
            [N/y/?] n</div>
          <div>Multi-core scheduler support (SCHED_MC) [Y/n/?] y</div>
          <div>Preemption Model</div>
          <div>=C2=A0 1. No Forced Preemption (Server) (PREEMPT_NONE)</di=
v>
          <div>&gt; 2. Voluntary Kernel Preemption (Desktop)
            (PREEMPT_VOLUNTARY)</div>
          <div>=C2=A0 3. Preemptible Kernel (Low-Latency Desktop) (PREEMP=
T)</div>
          <div>choice[1-3]: 2</div>
          <div>Interrupt pipeline (IPIPE) [Y/n/?] y</div>
          <div>=C2=A0 I-pipe legacy interface (IPIPE_LEGACY) [Y/n/?] y</d=
iv>
          <div>Reroute for broken boot IRQs
            (X86_REROUTE_FOR_BROKEN_BOOT_IRQS) [Y/n/?] y</div>
          <div>Machine Check / overheating reporting (X86_MCE) [Y/n/?] y<=
/div>
          <div>=C2=A0 Intel MCE features (X86_MCE_INTEL) [Y/n/?] y</div>
          <div>=C2=A0 AMD MCE features (X86_MCE_AMD) [Y/n/?] y</div>
          <div>=C2=A0 Support for old Pentium 5 / WinChip machine checks
            (X86_ANCIENT_MCE) [N/y/?] n</div>
          <div>Machine check injector support (X86_MCE_INJECT) [M/n/y/?]
            m</div>
          <div>Enable VM86 support (VM86) [Y/n/?] y</div>
          <div>Toshiba Laptop support (TOSHIBA) [M/n/y/?] m</div>
          <div>Dell laptop support (I8K) [M/n/y/?] m</div>
          <div>Enable X86 board specific fixups for reboot
            (X86_REBOOTFIXUPS) [Y/n/?] y</div>
          <div>CPU microcode loading support (MICROCODE) [Y/n/m/?] y</div=
>
          <div>=C2=A0 Intel microcode loading support (MICROCODE_INTEL)
            [Y/n/?] y</div>
          <div>=C2=A0 AMD microcode loading support (MICROCODE_AMD) [N/y/=
?] n</div>
          <div>Early load microcode (MICROCODE_INTEL_EARLY) [Y/n/?] y</di=
v>
          <div>/dev/cpu/*/msr - Model-specific register support
            (X86_MSR) [M/n/y/?] m</div>
          <div>/dev/cpu/*/cpuid - CPU information support (X86_CPUID)
            [M/n/y/?] m</div>
          <div>High Memory Support</div>
          <div>=C2=A0 1. off (NOHIGHMEM)</div>
          <div>=C2=A0 2. 4GB (HIGHMEM4G)</div>
          <div>&gt; 3. 64GB (HIGHMEM64G)</div>
          <div>choice[1-3]: 3</div>
          <div>Memory split</div>
          <div>&gt; 1. 3G/1G user/kernel split (VMSPLIT_3G)</div>
          <div>=C2=A0 2. 2G/2G user/kernel split (VMSPLIT_2G)</div>
          <div>=C2=A0 3. 1G/3G user/kernel split (VMSPLIT_1G)</div>
          <div>choice[1-3?]: 1</div>
          <div>PAE (Physical Address Extension) Support (X86_PAE) [Y/?]
            y</div>
          <div>Numa Memory Allocation and Scheduler Support (NUMA)
            [N/y/?] n</div>
          <div>Memory model</div>
          <div>&gt; 1. Flat Memory (FLATMEM_MANUAL)</div>
          <div>=C2=A0 2. Sparse Memory (SPARSEMEM_MANUAL)</div>
          <div>choice[1-2]: 1</div>
          <div>Allow for balloon memory compaction/migration
            (BALLOON_COMPACTION) [Y/n/?] y</div>
          <div>Allow for memory compaction (COMPACTION) [Y/n/?] y</div>
          <div>Page migration (MIGRATION) [Y/?] y</div>
          <div>Enable bounce buffers (BOUNCE) [Y/n/?] y</div>
          <div>Enable KSM for page merging (KSM) [Y/n/?] y</div>
          <div>Low address space to protect from user allocation
            (DEFAULT_MMAP_MIN_ADDR) [65536] 65536</div>
          <div>Enable recovery from hardware memory errors
            (MEMORY_FAILURE) [Y/n/?] y</div>
          <div>=C2=A0 HWPoison pages injector (HWPOISON_INJECT) [M/n/y] m=
</div>
          <div>Transparent Hugepage Support (TRANSPARENT_HUGEPAGE)
            [N/y/?] (NEW)=C2=A0</div>
          <div>Cross Memory Support (CROSS_MEMORY_ATTACH) [Y/n/?] y</div>
          <div>Enable cleancache driver to cache clean pages if tmem is
            present (CLEANCACHE) [N/y/?] n</div>
          <div>Enable frontswap to cache swap pages if tmem is present
            (FRONTSWAP) [Y/n/?] y</div>
          <div>Allocate 3rd-level pagetables from highmem (HIGHPTE)
            [Y/n/?] y</div>
          <div>Check for low memory corruption
            (X86_CHECK_BIOS_CORRUPTION) [N/y/?] n</div>
          <div>Amount of low memory, in kilobytes, to reserve for the
            BIOS (X86_RESERVE_LOW) [64] 64</div>
          <div>Math emulation (MATH_EMULATION) [N/y/?] n</div>
          <div>MTRR (Memory Type Range Register) support (MTRR) [Y/n/?]
            y</div>
          <div>=C2=A0 MTRR cleanup support (MTRR_SANITIZER) [Y/n/?] y</di=
v>
          <div>=C2=A0 =C2=A0 MTRR cleanup enable value (0-1)
            (MTRR_SANITIZER_ENABLE_DEFAULT) [0] 0</div>
          <div>=C2=A0 =C2=A0 MTRR cleanup spare reg num (0-7)
            (MTRR_SANITIZER_SPARE_REG_NR_DEFAULT) [1] 1</div>
          <div>=C2=A0 x86 PAT support (X86_PAT) [Y/n/?] y</div>
          <div>x86 architectural random number generator (ARCH_RANDOM)
            [Y/n/?] y</div>
          <div>Supervisor Mode Access Prevention (X86_SMAP) [Y/n/?] y</di=
v>
          <div>Enable seccomp to safely compute untrusted bytecode
            (SECCOMP) [Y/n/?] y</div>
          <div>Enable -fstack-protector buffer overflow detection
            (CC_STACKPROTECTOR) [Y/n/?] y</div>
          <div>Timer frequency</div>
          <div>=C2=A0 1. 100 HZ (HZ_100)</div>
          <div>&gt; 2. 250 HZ (HZ_250)</div>
          <div>=C2=A0 3. 300 HZ (HZ_300)</div>
          <div>=C2=A0 4. 1000 HZ (HZ_1000)</div>
          <div>choice[1-4?]: 2</div>
          <div>kexec system call (KEXEC) [Y/n/?] y</div>
          <div>kernel crash dumps (CRASH_DUMP) [Y/n/?] y</div>
          <div>kexec jump (KEXEC_JUMP) [N/y/?] n</div>
          <div>Physical address where the kernel is loaded
            (PHYSICAL_START) [0x1000000] 0x1000000</div>
          <div>Build a relocatable kernel (RELOCATABLE) [Y/n/?] y</div>
          <div>Alignment value to which kernel should be aligned
            (PHYSICAL_ALIGN) [0x1000000] 0x1000000</div>
          <div>Support for hot-pluggable CPUs (HOTPLUG_CPU) [Y/?] y</div>
          <div>=C2=A0 Set default setting of cpu0_hotpluggable
            (BOOTPARAM_HOTPLUG_CPU0) [N/y/?] n</div>
          <div>=C2=A0 Debug CPU0 hotplug (DEBUG_HOTPLUG_CPU0) [N/y/?] n</=
div>
          <div>Compat VDSO support (COMPAT_VDSO) [N/y/?] n</div>
          <div>Built-in kernel command line (CMDLINE_BOOL) [N/y/?] n</div=
>
          <div>#</div>
          <div># configuration written to .config</div>
          <div>#</div>
        </div>
        <div>//-------------------------------------</div>
        <div><br>
        </div>
        <div>I think this might because of the difference between two
          patch files, although both of the two patch file for a same
          version kernel.</div>
        <div>I give it all the default option.</div>
        <div>Then I disable the I-pipe-legacy interface support with the
          "make menuconfig"</div>
        <div>The kernel-3.10.32-rtai-5.1 was updated successful too.</div=
>
        <div><br>
        </div>
        <div>But,</div>
        <div>when I make the RTAI 5.1, below compiling error pop out:</di=
v>
        <div><br>
        </div>
        <div>//----------------------------<wbr>------------------------<=
/div>
        <div><br>
        </div>
        <div>
          <div>Making all in calibration</div>
          <div>make[5]: Entering directory
            '/media/guoissac/13GDATA/rtai-<wbr>5.1/base/arch/x86/calibrat=
ion'</div>
          <div>make[6]: Entering directory
            '/media/guoissac/13GDATA/rtai-<wbr>5.1/base/sched/liblxrt'</d=
iv>
          <div>make[6]: warning: jobserver unavailable: using -j1.=C2=A0 =
Add
            '+' to parent make rule.</div>
          <div>make[6]: Entering directory '/media/guoissac/13GDATA/<wbr>=
linux-3.10.32-5.1'</div>
          <div>make[6]: '<a href=3D"http://liblxrt.la" target=3D"_blank"
              moz-do-not-send=3D"true">liblxrt.la</a>' is up to date.</di=
v>
          <div>make[6]: Leaving directory '/media/guoissac/13GDATA/rtai-<=
wbr>5.1/base/sched/liblxrt'</div>
          <div>/bin/bash ../../../../libtool =C2=A0--tag=3DCC =C2=A0 --mo=
de=3Dlink cc
            =C2=A0 =C2=A0 -o calibrate calibrate-calibrate.o
            ../../../sched/liblxrt/<a href=3D"http://liblxrt.la"
              target=3D"_blank" moz-do-not-send=3D"true">liblxrt<wbr>.la<=
/a>
            -lpthread=C2=A0</div>
          <div><br>
          </div>
          <div>*** Warning: Linking the executable calibrate against the
            loadable module</div>
          <div>*** liblxrt.so is not portable!</div>
          <div>libtool: link: cc -o .libs/calibrate
            calibrate-calibrate.o =C2=A0../../../sched/liblxrt/.libs/<wbr=
>liblxrt.so
            -lpthread</div>
          <div>=C2=A0 CC [M] =C2=A0/media/guoissac/13GDATA/rtai-<wbr>5.1/=
base/arch/x86/calibration/<wbr>smi-module.o</div>
          <div>/media/guoissac/13GDATA/rtai-<wbr>5.1/base/arch/x86/calibr=
ation/<wbr>smi-module.c:
            In function =E2=80=98check_smi_count=E2=80=99:</div>
          <div>/media/guoissac/13GDATA/rtai-<wbr>5.1/base/arch/x86/calibr=
ation/<wbr>smi-module.c:280:4:
            error: implicit declaration of function =E2=80=98rdmsrl_safe_=
on_cpu=E2=80=99
            [-Werror=3Dimplicit-function-<wbr>declaration]</div>
          <div>=C2=A0 =C2=A0 ret =3D rdmsrl_safe_on_cpu(cpuid, MSR_SMI_CO=
UNT,
            &amp;q);</div>
          <div>=C2=A0 =C2=A0 ^</div>
          <div>In file included from include/linux/bitops.h:22:0,</div>
          <div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0from include/linux/kernel.h:10,</div>
          <div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0from /media/guoissac/13GDATA/rtai-<wbr>5.1/base/arch/x86/calibration/<=
wbr>smi-module.c:26:</div>
          <div>/media/guoissac/13GDATA/linux-<wbr>3.10.32-5.1/arch/x86/in=
clude/<wbr>asm/bitops.h:321:8:
            warning: =E2=80=98*((void *)&amp;p+20)=E2=80=99 is used unini=
tialized in
            this function [-Wuninitialized]</div>
          <div>=C2=A0 =C2=A0(addr[nr / BITS_PER_LONG])) !=3D 0;</div>
          <div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 ^</div>
          <div>/media/guoissac/13GDATA/rtai-<wbr>5.1/base/arch/x86/calibr=
ation/<wbr>smi-module.c:274:21:
            note: =E2=80=98p=E2=80=99 was declared here</div>
          <div>=C2=A0 struct cpuinfo_x86 p;</div>
          <div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0^</div>
          <div>cc1: some warnings being treated as errors</div>
          <div>scripts/Makefile.build:308: recipe for target
            '/media/guoissac/13GDATA/rtai-<wbr>5.1/base/arch/x86/calibrat=
ion/<wbr>smi-module.o'
            failed</div>
          <div>make[7]: *** [/media/guoissac/13GDATA/rtai-<wbr>5.1/base/a=
rch/x86/calibration/<wbr>smi-module.o]
            Error 1</div>
          <div>Makefile:1224: recipe for target
            '_module_/media/guoissac/<wbr>13GDATA/rtai-5.1/base/arch/<wbr=
>x86/calibration'
            failed</div>
          <div>make[6]: *** [_module_/media/guoissac/<wbr>13GDATA/rtai-5.=
1/base/arch/<wbr>x86/calibration]
            Error 2</div>
          <div>make[6]: Leaving directory '/media/guoissac/13GDATA/<wbr>l=
inux-3.10.32-5.1'</div>
          <div>GNUmakefile:916: recipe for target 'rtai_smi.ko' failed</d=
iv>
          <div>make[5]: *** [rtai_smi.ko] Error 2</div>
          <div>make[5]: Leaving directory '/media/guoissac/13GDATA/rtai-<=
wbr>5.1/base/arch/x86/calibration'</div>
          <div>GNUmakefile:406: recipe for target 'all-recursive' failed<=
/div>
          <div>make[4]: *** [all-recursive] Error 1</div>
          <div>make[4]: Leaving directory '/media/guoissac/13GDATA/rtai-<=
wbr>5.1/base/arch/x86'</div>
          <div>GNUmakefile:428: recipe for target 'all-recursive' failed<=
/div>
          <div>make[3]: *** [all-recursive] Error 1</div>
          <div>make[3]: Leaving directory '/media/guoissac/13GDATA/rtai-<=
wbr>5.1/base/arch'</div>
          <div>GNUmakefile:423: recipe for target 'all-recursive' failed<=
/div>
          <div>make[2]: *** [all-recursive] Error 1</div>
          <div>make[2]: Leaving directory '/media/guoissac/13GDATA/rtai-<=
wbr>5.1/base'</div>
          <div>GNUmakefile:486: recipe for target 'all-recursive' failed<=
/div>
          <div>make[1]: *** [all-recursive] Error 1</div>
          <div>make[1]: Leaving directory '/media/guoissac/13GDATA/rtai-<=
wbr>5.1'</div>
          <div>GNUmakefile:417: recipe for target 'all' failed</div>
          <div>make: *** [all] Error 2</div>
        </div>
        <div>//----------------------------<wbr>-------------------------=
-----<wbr>-------</div>
        <div><br>
        </div>
        <div>Any suggestion of solve this problem?</div>
        <div><br>
        </div>
        <div>Many Thanks.</div>
        <div><br>
        </div>
        <div>Best Regards</div>
        <div>Guo Yunfei</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div class=3D"gmail_extra"><br>
          <div class=3D"gmail_quote">On Mon, Feb 12, 2018 at 10:47 PM,
            Paolo Mantegazza <span dir=3D"ltr">&lt;<a
                href=3D"mailto:[email protected]" target=3D"_bla=
nk"
                moz-do-not-send=3D"true">[email protected]</a>&g=
t;</span>
            wrote:<br>
            <blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px
              0.8ex;border-left:1px solid
              rgb(204,204,204);padding-left:1ex">
              <div bgcolor=3D"#FFFFFF">
                <div class=3D"gmail-m_4933134306362649551moz-cite-prefix"=
>I
                  see a lot of confusion in what you write. <br>
                  <br>
                  There is no difference in installing RTAI on any
                  distribution of choice, it is the same for all of
                  them.<br>
                  First you have to learn how to make and boot a new
                  kernel, taken form <a href=3D"http://kernel.org"
                    target=3D"_blank" moz-do-not-send=3D"true">kernel.org=
</a>
                  and associated to any of the patches coming with your
                  RTAI of choice. For that read the README in the LINUX
                  kernel, with special care to the options:=C2=A0 "make
                  localmodconfig" and=C2=A0 "make localyesconfig".<br>
                  Once you have a LINUX .config that works, you'll
                  remake the kernel anew, applying the related RTAI
                  patch first and using the working .config you have.<spa=
n
                    class=3D"gmail-"><br>
                    <br>
                    Paolo<br>
                    <br>
                    <br>
                    <br>
                    On 02/12/2018 02:23 PM, Guo Yunfei wrote:<br>
                  </span></div>
                <blockquote type=3D"cite">
                  <div>
                    <div class=3D"gmail-h5">
                      <div dir=3D"ltr">
                        <div><span><br>
                          </span></div>
                        <div><span>Hi. everybody.</span></div>
                        <div><span><br>
                          </span></div>
                        <div><span>I always install RTAI 4.0 and RTAI
                            4.1 on Debian as below steps and using it
                            perfect.</span></div>
                        <div><span>When I install RTAI 5.1 as same
                            steps. =C2=A0the RTAI 5.1 can be make
                            successfully.</span></div>
                        <div><span>But the system not reponse after I
                            test the latency by that "run " command.</spa=
n></div>
                        <div><span><br>
                          </span></div>
                        <div><span>Could some one give me a guide of
                            installation of RTAI 5.1 on Debian?</span></d=
iv>
                        <div><span><br>
                          </span></div>
                        <div><span>Best Regards</span></div>
                        <div><span>Guo Yunfei</span></div>
                        <div><span><br>
                          </span></div>
                        <span>
                          <div>My steps:<span><br>
                            </span></div>
                          <div><span>//----------------------------<wbr>-=
-------------</span></div>
                          <div>This document describes how to install
                            RTAI 4.0 on a Ubuntu 12.04.4 LTS using a
                            3.8.13 kernel, either 32bit or 64 bit
                            version.<br>
                          </div>
                        </span>
                        <h4><a
                            name=3D"m_4933134306362649551_Prerequisites"
                            moz-do-not-send=3D"true"></a>Prerequisites</h=
4>
                        <p>Install Ubuntu 12.04.4 using one of the
                          following images:</p>
                        <p><a
href=3D"http://releases.ubuntu.com/precise/ubuntu-12.04.4-desktop-amd64.i=
so"
                            target=3D"_blank" moz-do-not-send=3D"true">ht=
tp://releases.ubuntu.com/<wbr>precise/ubuntu-12.04.4-<wbr>desktop-amd64.i=
so</a></p>
                        <p><a
href=3D"http://releases.ubuntu.com/precise/ubuntu-12.04.4-desktop-i386.is=
o"
                            target=3D"_blank" moz-do-not-send=3D"true">ht=
tp://releases.ubuntu.com/<wbr>precise/ubuntu-12.04.4-<wbr>desktop-i386.is=
o</a></p>
                        <p>And then follow the installation instructions
                          here:=C2=A0<a
                            href=3D"https://help.ubuntu.com/community/Ins=
tallation/"
                            target=3D"_blank" moz-do-not-send=3D"true">ht=
tps://help.ubuntu.com/<wbr>community/Installation/</a></p>
                        <h4><a name=3D"m_4933134306362649551_Introduction=
"
                            moz-do-not-send=3D"true"></a>Introduction</h4=
>
                        <p>If the ROOT user is not created yet, log as
                          your usual user, open a terminal and type
                          -&gt;</p>
                        <pre style=3D"color:rgb(0,0,0)"># sudo su -
# sudo passwd root
</pre>
                        <p>Enter the password for the ROOT user. Log out
                          and log in as Root.</p>
                        <p>Open a terminal and update your package
                          repository source file :</p>
                        <pre style=3D"color:rgb(0,0,0)"># apt-get update
</pre>
                        <p>Some tools are required in order to set up
                          the kernel (You need to be connected to
                          Internet)</p>
                        <pre style=3D"color:rgb(0,0,0)"># apt-get -y inst=
all qt3-apps-dev build-essential kernel-package vim cvs
</pre>
                        <h4><a
                            name=3D"m_4933134306362649551_I_Kernel_source=
_and_RTAI_downloa"
                            moz-do-not-send=3D"true"></a>I - Kernel sourc=
e
                          and RTAI download</h4>
                        <pre style=3D"color:rgb(0,0,0)"># cd /usr/src/</p=
re>
                        <p>Get the kernel source from <a
                            href=3D"http://kernel.org" target=3D"_blank"
                            moz-do-not-send=3D"true">kernel.org</a></p>
                        <pre style=3D"color:rgb(0,0,0)"># wget <a href=3D=
"https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.8.13.tar.bz2" targe=
t=3D"_blank" moz-do-not-send=3D"true">https://www.kernel.org/pub/<wbr>lin=
ux/kernel/v3.x/linux-3.8.<wbr>13.tar.bz2</a>
# tar xf linux-3.8.13.tar.bz2
</pre>
                        <p>Get RTAI 4.0 from the RTAI homepage</p>
                        <pre style=3D"color:rgb(0,0,0)"># wget <a href=3D=
"https://www.rtai.org/userfiles/downloads/RTAI/rtai-4.0.tar.bz2" target=3D=
"_blank" moz-do-not-send=3D"true">https://www.rtai.org/<wbr>userfiles/dow=
nloads/RTAI/rtai-<wbr>4.0.tar.bz2</a>
tar xf rtai-4.0.tar.bz2</pre>
                        <h4><a
                            name=3D"m_4933134306362649551_II_Kernel_Prepa=
ration"
                            moz-do-not-send=3D"true"></a>II - Kernel
                          Preparation</h4>
                        <pre style=3D"color:rgb(0,0,0)"># cd /usr/src
# ln -s linux-3.8.13 linux
# cd linux </pre>
                        <h5><a
                            name=3D"m_4933134306362649551_Applying_patch"
                            moz-do-not-send=3D"true"></a>Applying patch</=
h5>
                        <p>If you want first simulate the patch
                          application, use "--dry-run" after "-p1". It
                          won't touch any files on your computer, but
                          you can see if you get Hunks or not.</p>
                        <pre style=3D"color:rgb(0,0,0)"># patch -p1 &lt; =
/usr/src/rtai-4.0/base/arch/<wbr>x86/patches/hal-linux-3.8.13-<wbr>x86-4.=
patch
</pre>
                        <h5><a
                            name=3D"m_4933134306362649551_Kernel_Configur=
ation"
                            moz-do-not-send=3D"true"></a>Kernel
                          Configuration</h5>
                        <pre style=3D"color:rgb(0,0,0)"># cd /usr/src/lin=
ux</pre>
                        <p>In order to retrieve your current kernel
                          configuration : (If at this step, questions
                          are asked give the answer by default)</p>
                        <pre style=3D"color:rgb(0,0,0)"># make oldconfig<=
/pre>
                        <p>Now we modify the kernel settings the way we
                          need it (NOTE: some parameters cannot be
                          disabled with xconfig - better to use
                          menuconfig):</p>
                        <pre style=3D"color:rgb(0,0,0)"># make xconfig </=
pre>
                        <p>Set up the kernel settings as follows :</p>
                        <p><strong>Processor type and features</strong></=
p>
                        <p>-&gt; Processor family =3D=C2=A0<em>Select you=
rs<br>
                          </em>-&gt; Maximum number of CPUs (NR_CPUS) =3D=
=C2=A0<em>Set
                            your number (it's generally "4")</em><br>
                          -&gt; SMT (Hyperthreading) scheduler support
                          =3D=C2=A0<em>DISABLE IT</em></p>
                        <p><strong>Power Management and ACPI options</str=
ong><span
                            style=3D"background-color:transparent"></span=
></p>
                        <p>CPU idle PM support<br>
                          <span style=3D"background-color:transparent">-&=
gt;
                            Cpu idle Driver for Intel Processors =3D=C2=A0=
</span><em
                            style=3D"background-color:transparent">DISABL=
E
                            IT<br>
                          </em><span
                            style=3D"background-color:transparent">-&gt;
                            ACPI (Advanced Configuration and Power
                            Interface) Support -&gt; PROCESSOR =3D=C2=A0<=
/span><em
                            style=3D"background-color:transparent">DISABL=
E
                            IT<br>
                          </em><span
                            style=3D"background-color:transparent">-&gt;
                            APM (Advanced Power Management) BIOS support
                            =3D=C2=A0</span><em
                            style=3D"background-color:transparent">DISABL=
E
                            IT<br>
                          </em><span
                            style=3D"background-color:transparent">-&gt;
                            CPU Frequency scaling -&gt; CPU Frequency
                            scaling =3D=C2=A0</span><em
                            style=3D"background-color:transparent">DISABL=
E
                            IT<br>
                          </em><span
                            style=3D"background-color:transparent">CPU
                            idle PM support =3D DISABLE IT</span></p>
                        <p>Save and Quit</p>
                        <p>Note (Sylvain, May 2014): these settings
                          should be verified in the .config file, since
                          there have been cases that xconfig does not do
                          it correctly.</p>
                        <h4><a
                            name=3D"m_4933134306362649551_III_Kernel_Comp=
ilation"
                            moz-do-not-send=3D"true"></a><strong>III -
                            Kernel Compilation</strong></h4>
                        <pre style=3D"color:rgb(0,0,0)"># cd /usr/src/lin=
ux
# make &amp;&amp; make modules_install &amp;&amp; make install</pre>
                        <p>NOTE: The compilation time might be decreased
                          by passing the flags -jX (with X=3Dnumber of
                          CPUs you have on your machine). This has for
                          effect to parallelize the kernel compilation
                          between the CPUs. This will take ~1 hour.</p>
                        <h5><a
                            name=3D"m_4933134306362649551_Kernel_Boot_Opt=
ions"
                            moz-do-not-send=3D"true"></a>Kernel Boot
                          Options</h5>
                        <p>This is very important - it took us (and the
                          guys at the RTAI mailing list) ages to find
                          that special config that makes everything work
                          smoothly!</p>
                        <p>You need to add the following option to the
                          kernel at boot time</p>
                        <pre style=3D"color:rgb(0,0,0)">lapic=3Dnotscdead=
line</pre>
                        <p>The best way to do this is in
                          /etc/default/grub in the field
                          GRUB_CMDLINE_LINUX_DEFAULT, i.e.,</p>
                        <pre style=3D"color:rgb(0,0,0)">GRUB_CMDLINE_LINU=
X_DEFAULT=3D"<wbr>quiet splash lapic=3Dnotscdeadline"</pre>
                        <p>You will also have to change the GRUB_DEFAULT
                          to the number that corresponds to the new
                          kernel.</p>
                        <p>Finally run update-grub and reboot</p>
                        <pre style=3D"color:rgb(0,0,0)"># update-grub
# reboot
</pre>
                        <h4><a
                            name=3D"m_4933134306362649551_IV_RTAI_install=
ation"
                            moz-do-not-send=3D"true"></a><strong>IV - RTA=
I
                            installation</strong></h4>
                        <p>Now that the system has restarted, make sure
                          you booted on your new=C2=A0<span
                            class=3D"gmail-m_4933134306362649551gmail-twi=
kiNewLink"><a
href=3D"https://twiki.eurecom.fr/twiki/bin/edit/OpenAirInterface/OpenAir?=
topicparent=3DOpenAirInterface.OpenAirKernel357Ubuntu1204x86Setups;nowysi=
wyg=3D0"
                              rel=3D"nofollow" title=3D"OpenAir (this top=
ic
                              does not yet exist; you can create it)"
                              target=3D"_blank" moz-do-not-send=3D"true">=
OpenAir</a></span>=C2=A0kernel</p>
                        <pre style=3D"color:rgb(0,0,0)"># uname -r </pre>
                        <p>Should give you "3.8.13" as result</p>
                        <pre style=3D"color:rgb(0,0,0)"># cd /usr/src/rta=
i-4.0 =20
# make xconfig =20
</pre>
                        <p>UPDATE the CPUs number according to your
                          configuration and disable RTAI_USE_NEWERR and
                          real-time COMEDI support in Add-ons. Enable
                          the watchdog, CONFIG_RTAI_WD.</p>
                        <p>Save and quit. If any error occurs here,
                          solve it and repeat this "make xconfig" step
                          until it's OK</p>
                        <pre style=3D"color:rgb(0,0,0)"># make &amp;&amp;=
 make install </pre>
                        <p>Add what follows, to the end of the file
                          ~/.bashrc</p>
                        <pre style=3D"color:rgb(0,0,0)">export PATH=3D/us=
r/realtime/bin:$PATH=20
export LD_LIBRARY_PATH=3D$LD_LIBRARY_<wbr>PATH:/usr/realtime/lib
</pre>
                        <p>Create a file /etc/ld.so.conf.d/rtai.conf
                          with the content</p>
                        <pre style=3D"color:rgb(0,0,0)">/usr/realtime/lib=
</pre>
                        <p>and run "ldconfig"in order to take it into
                          account</p>
                        <p>We will test the RTAI system via the latency
                          test</p>
                        <pre style=3D"color:rgb(0,0,0)"># cd /usr/realtim=
e/testsuite/kern/<wbr>latency =20
# ./run </pre>
                        <div>//----------------------------<wbr>---------=
---------------------<wbr>------------------------------<wbr>-</div>
                      </div>
                      <br>
                      <fieldset
                        class=3D"gmail-m_4933134306362649551mimeAttachmen=
tHeader"></fieldset>
                      <br>
                    </div>
                  </div>
                  <span class=3D"gmail-">
                    <pre>______________________________<wbr>_____________=
____
Rtai mailing list
<a class=3D"gmail-m_4933134306362649551moz-txt-link-abbreviated" href=3D"=
mailto:[email protected]" target=3D"_blank" moz-do-not-send=3D"true">Rtai@rta=
i.org</a>
<a class=3D"gmail-m_4933134306362649551moz-txt-link-freetext" href=3D"htt=
ps://mail.rtai.org/cgi-bin/mailman/listinfo/rtai" target=3D"_blank" moz-d=
o-not-send=3D"true">https://mail.rtai.org/cgi-bin/<wbr>mailman/listinfo/r=
tai</a></pre>
                  </span></blockquote>
                <p><br>
                </p>
              </div>
              <br>
              ______________________________<wbr>_________________<br>
              Rtai mailing list<br>
              <a href=3D"mailto:[email protected]" moz-do-not-send=3D"true">R=
[email protected]</a><br>
              <a
                href=3D"https://mail.rtai.org/cgi-bin/mailman/listinfo/rt=
ai"
                rel=3D"noreferrer" target=3D"_blank" moz-do-not-send=3D"t=
rue">https://mail.rtai.org/cgi-bin/<wbr>mailman/listinfo/rtai</a><br>
            </blockquote>
          </div>
          <br>
        </div>
      </div>
    </blockquote>
    <p><br>
    </p>
  </body>
</html>

--------------B02C8942FEAEE03E446F2D88--

--===============1377959685838325698==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

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