Re: How to install RTAI 5.1 on Debian?

Guo Yunfei <[email protected]> Wed, 14 Feb 2018 16:30:12 +0800
Newsgroups gmane.linux.real-time.rtai
Message-ID <CAN_Un=XBJKfZELxsT6-KW4AtrX=1WSYu6DBkpjxohCAqc5208w@mail.gmail.com>
--===============7056736752624647848==
Content-Type: multipart/alternative; boundary="089e082ccab4844d88056527ebca"

--089e082ccab4844d88056527ebca
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Ok. That is very nice.
But, I don't know how to cooperate with you on this job.
I give you my root password is enough? or I need install some tool
programme on my PC?
my username is : guoissac
root password is : cade

Best Regards
Guo Yunfei

On Wed, Feb 14, 2018 at 4:21 PM, Paolo Mantegazza <
[email protected]> wrote:

> 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.
> 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 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 sam=
e
> kernel version for it has running good with my RTAI 4.1
>  it is same kernel version ,so not much difference, but still has some
> message pop out like below:
>
> //------------------------------------
> root@debian:/media/guoissac/13GDATA/linux-3.10.32-5.1# make oldconfig
>   HOSTCC  scripts/basic/fixdep
>   HOSTCC  scripts/kconfig/conf.o
>   SHIPPED scripts/kconfig/zconf.tab.c
>   SHIPPED scripts/kconfig/zconf.lex.c
>   SHIPPED scripts/kconfig/zconf.hash.c
>   HOSTCC  scripts/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 use=
d uninitialized
> in this function [-Wmaybe-uninitialized]
>      jump->offset =3D r->len - 1;
>                   ^
> scripts/kconfig/menu.c:528:19: note: =E2=80=98jump=E2=80=99 was declared =
here
>   struct jump_key *jump;
>                    ^
>   HOSTLD  scripts/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)
> [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
>   1. 486 (M486)
>   2. 586/K5/5x86/6x86/6x86MX (M586)
>   3. Pentium-Classic (M586TSC)
>   4. Pentium-MMX (M586MMX)
>   5. Pentium-Pro (M686)
>   6. Pentium-II/Celeron(pre-Coppermine) (MPENTIUMII)
>   7. Pentium-III/Celeron(Coppermine)/Pentium-III Xeon (MPENTIUMIII)
>   8. Pentium M (MPENTIUMM)
>   9. Pentium-4/Celeron(P4-based)/Pentium-4 M/older Xeon (MPENTIUM4)
>   10. K6/K6-II/K6-III (MK6)
>   11. Athlon/Duron/K7 (MK7)
>   12. Opteron/Athlon64/Hammer/K8 (MK8)
>   13. Crusoe (MCRUSOE)
>   14. Efficeon (MEFFICEON)
>   15. Winchip-C6 (MWINCHIPC6)
>   16. Winchip-2/Winchip-2A/Winchip-3 (MWINCHIP3D)
>   17. AMD Elan (MELAN)
>   18. GeodeGX1 (MGEODEGX1)
>   19. Geode GX/LX (MGEODE_LX)
>   20. CyrixIII/VIA-C3 (MCYRIXIII)
>   21. VIA C3-2 (Nehemiah) (MVIAC3_2)
>   22. VIA C7 (MVIAC7)
>   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
>   1. No Forced Preemption (Server) (PREEMPT_NONE)
> > 2. Voluntary Kernel Preemption (Desktop) (PREEMPT_VOLUNTARY)
>   3. Preemptible Kernel (Low-Latency Desktop) (PREEMPT)
> choice[1-3]: 2
> Interrupt pipeline (IPIPE) [Y/n/?] y
>   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
>   Intel MCE features (X86_MCE_INTEL) [Y/n/?] y
>   AMD MCE features (X86_MCE_AMD) [Y/n/?] y
>   Support for old Pentium 5 / WinChip machine checks (X86_ANCIENT_MCE)
> [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
>   Intel microcode loading support (MICROCODE_INTEL) [Y/n/?] y
>   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
>   1. off (NOHIGHMEM)
>   2. 4GB (HIGHMEM4G)
> > 3. 64GB (HIGHMEM64G)
> choice[1-3]: 3
> Memory split
> > 1. 3G/1G user/kernel split (VMSPLIT_3G)
>   2. 2G/2G user/kernel split (VMSPLIT_2G)
>   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)
>   2. Sparse Memory (SPARSEMEM_MANUAL)
> choice[1-2]: 1
> Allow for balloon memory compaction/migration (BALLOON_COMPACTION) [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 (DEFAULT_MMAP_MIN_ADDR)
> [65536] 65536
> Enable recovery from hardware memory errors (MEMORY_FAILURE) [Y/n/?] y
>   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
> (CLEANCACHE) [N/y/?] n
> Enable frontswap to cache swap pages if tmem is present (FRONTSWAP)
> [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
> (X86_RESERVE_LOW) [64] 64
> Math emulation (MATH_EMULATION) [N/y/?] n
> MTRR (Memory Type Range Register) support (MTRR) [Y/n/?] y
>   MTRR cleanup support (MTRR_SANITIZER) [Y/n/?] y
>     MTRR cleanup enable value (0-1) (MTRR_SANITIZER_ENABLE_DEFAULT) [0] 0
>     MTRR cleanup spare reg num (0-7) (MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=
)
> [1] 1
>   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)
> [Y/n/?] y
> Timer frequency
>   1. 100 HZ (HZ_100)
> > 2. 250 HZ (HZ_250)
>   3. 300 HZ (HZ_300)
>   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) [0x1000000]
> 0x1000000
> Build a relocatable kernel (RELOCATABLE) [Y/n/?] y
> Alignment value to which kernel should be aligned (PHYSICAL_ALIGN)
> [0x1000000] 0x1000000
> Support for hot-pluggable CPUs (HOTPLUG_CPU) [Y/?] y
>   Set default setting of cpu0_hotpluggable (BOOTPARAM_HOTPLUG_CPU0)
> [N/y/?] n
>   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,
> 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
> 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 '/media/guoissac/13GDATA/rtai-
> 5.1/base/arch/x86/calibration'
> make[6]: Entering directory '/media/guoissac/13GDATA/rtai-
> 5.1/base/sched/liblxrt'
> make[6]: warning: jobserver unavailable: using -j1.  Add '+' to parent
> make rule.
> make[6]: Entering directory '/media/guoissac/13GDATA/linux-3.10.32-5.1'
> make[6]: 'liblxrt.la' is up to date.
> make[6]: Leaving directory '/media/guoissac/13GDATA/rtai-
> 5.1/base/sched/liblxrt'
> /bin/bash ../../../../libtool  --tag=3DCC   --mode=3Dlink cc     -o calib=
rate
> calibrate-calibrate.o ../../../sched/liblxrt/liblxrt.la -lpthread
>
> *** Warning: Linking the executable calibrate against the loadable module
> *** liblxrt.so is not portable!
> libtool: link: cc -o .libs/calibrate calibrate-calibrate.o
>  ../../../sched/liblxrt/.libs/liblxrt.so -lpthread
>   CC [M]  /media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/
> smi-module.o
> /media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-module.c:
> In function =E2=80=98check_smi_count=E2=80=99:
> /media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-module.c:2=
80:4:
> error: implicit declaration of function =E2=80=98rdmsrl_safe_on_cpu=E2=80=
=99
> [-Werror=3Dimplicit-function-declaration]
>     ret =3D rdmsrl_safe_on_cpu(cpuid, MSR_SMI_COUNT, &q);
>     ^
> In file included from include/linux/bitops.h:22:0,
>                  from include/linux/kernel.h:10,
>                  from /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:3=
21:8:
> warning: =E2=80=98*((void *)&p+20)=E2=80=99 is used uninitialized in this=
 function
> [-Wuninitialized]
>    (addr[nr / BITS_PER_LONG])) !=3D 0;
>         ^
> /media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-module.c:2=
74:21:
> note: =E2=80=98p=E2=80=99 was declared here
>   struct cpuinfo_x86 p;
>                      ^
> cc1: some warnings being treated as errors
> scripts/Makefile.build:308: recipe for target
> '/media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/smi-module.o'
> failed
> make[7]: *** [/media/guoissac/13GDATA/rtai-5.1/base/arch/x86/calibration/=
smi-module.o]
> Error 1
> Makefile:1224: recipe for target '_module_/media/guoissac/13GDA
> TA/rtai-5.1/base/arch/x86/calibration' failed
> make[6]: *** [_module_/media/guoissac/13GDATA/rtai-5.1/base/arch/x86/cali=
bration]
> 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 '/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 '/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 <
> [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 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:  "make localmodconfig" and  "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 usin=
g
>> it perfect.
>> When I install RTAI 5.1 as same steps.  the RTAI 5.1 can be make
>> 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 Debian?
>>
>> 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.iso
>>
>> http://releases.ubuntu.com/precise/ubuntu-12.04.4-desktop-i386.iso
>>
>> And then follow the installation instructions here:
>> 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 vim cvs
>>
>> I - Kernel source and RTAI download
>>
>> # cd /usr/src/
>>
>> Get the kernel source from kernel.org
>>
>> # wget 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
>>
>> # wget 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-x=
86-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 h=
our.
>> 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 smooth=
ly!
>>
>> 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?topicp=
arent=3DOpenAirInterface.OpenAirKernel357Ubuntu1204x86Setups;nowysiwyg=3D0>
>>  kernel
>>
>> # 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 [email protected]://mail.rtai.org/cgi-bin/mailman/list=
info/rtai
>>
>>
>>
>> _______________________________________________
>> Rtai mailing list
>> [email protected]
>> https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai
>>
>
>
>

--089e082ccab4844d88056527ebca
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Ok. That is very nice.<div>But, I don&#39;t know how to co=
operate with you on this job.</div><div>I give you my root password is enou=
gh? or I need install some tool programme on my PC?</div><div>my username i=
s : guoissac=C2=A0</div><div>root password is : cade</div><div><br></div><d=
iv>Best Regards</div><div>Guo Yunfei</div></div><div class=3D"gmail_extra">=
<br><div class=3D"gmail_quote">On Wed, Feb 14, 2018 at 4:21 PM, Paolo Mante=
gazza <span dir=3D"ltr">&lt;<a href=3D"mailto:[email protected]" t=
arget=3D"_blank">[email protected]</a>&gt;</span> wrote:<br><block=
quote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc=
 solid;padding-left:1ex">
 =20
   =20
 =20
  <div text=3D"#000000" bgcolor=3D"#FFFFFF"><span class=3D"">
    <div class=3D"m_-2049666392884446017moz-cite-prefix">I&#39;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>
    </span><div><div class=3D"h5"><blockquote type=3D"cite">
     =20
      <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.</d=
iv>
        <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 &quot;make oldconfig&quot; 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>//----------------------------<wbr>--------</div>
        <div>
          <div><a class=3D"m_-2049666392884446017moz-txt-link-abbreviated" =
href=3D"mailto:root@debian:/media/guoissac/13GDATA/linux-3.10.32-5.1#" targ=
et=3D"_blank">root@debian:/media/guoissac/<wbr>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:<wbr>2503:=
0:</div>
          <div>scripts/kconfig/menu.c: In function =E2=80=98get_symbol_str=
=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]</di=
v>
          <div>=C2=A0 =C2=A0 =C2=A0jump-&gt;offset =3D r-&gt;len - 1;</div>
          <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-<wbr>Coppermine) (MPENTIUMI=
I)</div>
          <div>=C2=A0 7. Pentium-III/Celeron(<wbr>Coppermine)/Pentium-III X=
eon
            (MPENTIUMIII)</div>
          <div>=C2=A0 8. Pentium M (MPENTIUMM)</div>
          <div>=C2=A0 9. Pentium-4/Celeron(P4-based)/<wbr>Pentium-4 M/older=
 Xeon
            (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)</div>
          <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</di=
v>
          <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)</div>
          <div>&gt; 2. Voluntary Kernel Preemption (Desktop)
            (PREEMPT_VOLUNTARY)</div>
          <div>=C2=A0 3. Preemptible Kernel (Low-Latency Desktop) (PREEMPT)=
</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</div=
>
          <div>Reroute for broken boot IRQs
            (X86_REROUTE_FOR_BROKEN_BOOT_<wbr>IRQS) [Y/n/?] y</div>
          <div>Machine Check / overheating reporting (X86_MCE) [Y/n/?] y</d=
iv>
          <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</div>
          <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</div>
          <div>=C2=A0 =C2=A0 MTRR cleanup enable value (0-1)
            (MTRR_SANITIZER_ENABLE_<wbr>DEFAULT) [0] 0</div>
          <div>=C2=A0 =C2=A0 MTRR cleanup spare reg num (0-7)
            (MTRR_SANITIZER_SPARE_REG_NR_<wbr>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</div>
          <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</di=
v>
          <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>//----------------------------<wbr>---------</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
          &quot;make menuconfig&quot;</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:</div>
        <div><br>
        </div>
        <div>//----------------------------<wbr>------------------------</d=
iv>
        <div><br>
        </div>
        <div>
          <div>Making all in calibration</div>
          <div>make[5]: Entering directory
            &#39;/media/guoissac/13GDATA/rtai-<wbr>5.1/base/arch/x86/calibr=
ation&#39;</div>
          <div>make[6]: Entering directory
            &#39;/media/guoissac/13GDATA/rtai-<wbr>5.1/base/sched/liblxrt&#=
39;</div>
          <div>make[6]: warning: jobserver unavailable: using -j1.=C2=A0 Ad=
d
            &#39;+&#39; to parent make rule.</div>
          <div>make[6]: Entering directory &#39;/media/guoissac/13GDATA/lin=
ux<wbr>-3.10.32-5.1&#39;</div>
          <div>make[6]: &#39;<a href=3D"http://liblxrt.la" target=3D"_blank=
">liblxrt.la</a>&#39; is up to date.</div>
          <div>make[6]: Leaving directory &#39;/media/guoissac/13GDATA/rtai=
-<wbr>5.1/base/sched/liblxrt&#39;</div>
          <div>/bin/bash ../../../../libtool =C2=A0--tag=3DCC =C2=A0 --mode=
=3Dlink cc
            =C2=A0 =C2=A0 -o calibrate calibrate-calibrate.o
            ../../../sched/liblxrt/<a href=3D"http://liblxrt.la" target=3D"=
_blank">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>l=
iblxrt.so
            -lpthread</div>
          <div>=C2=A0 CC [M] =C2=A0/media/guoissac/13GDATA/rtai-<wbr>5.1/ba=
se/arch/x86/calibration/<wbr>smi-module.o</div>
          <div>/media/guoissac/13GDATA/rtai-5<wbr>.1/base/arch/x86/calibrat=
ion/s<wbr>mi-module.c:
            In function =E2=80=98check_smi_count=E2=80=99:</div>
          <div>/media/guoissac/13GDATA/rtai-5<wbr>.1/base/arch/x86/calibrat=
ion/s<wbr>mi-module.c:280:4:
            error: implicit declaration of function =E2=80=98rdmsrl_safe_on=
_cpu=E2=80=99
            [-Werror=3Dimplicit-function-dec<wbr>laration]</div>
          <div>=C2=A0 =C2=A0 ret =3D rdmsrl_safe_on_cpu(cpuid, MSR_SMI_COUN=
T,
            &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-5<wbr>.1/base/arch/x86/calibration/s<w=
br>mi-module.c:26:</div>
          <div>/media/guoissac/13GDATA/linux-<wbr>3.10.32-5.1/arch/x86/incl=
ude/a<wbr>sm/bitops.h:321:8:
            warning: =E2=80=98*((void *)&amp;p+20)=E2=80=99 is used uniniti=
alized 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-5<wbr>.1/base/arch/x86/calibrat=
ion/s<wbr>mi-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
            &#39;/media/guoissac/13GDATA/rtai-<wbr>5.1/base/arch/x86/calibr=
ation/<wbr>smi-module.o&#39;
            failed</div>
          <div>make[7]: *** [/media/guoissac/13GDATA/rtai-<wbr>5.1/base/arc=
h/x86/calibration/<wbr>smi-module.o]
            Error 1</div>
          <div>Makefile:1224: recipe for target
            &#39;_module_/media/guoissac/13GDA<wbr>TA/rtai-5.1/base/arch/x8=
6/<wbr>calibration&#39;
            failed</div>
          <div>make[6]: *** [_module_/media/guoissac/13GDA<wbr>TA/rtai-5.1/=
base/arch/x86/<wbr>calibration]
            Error 2</div>
          <div>make[6]: Leaving directory &#39;/media/guoissac/13GDATA/linu=
x<wbr>-3.10.32-5.1&#39;</div>
          <div>GNUmakefile:916: recipe for target &#39;rtai_smi.ko&#39; fai=
led</div>
          <div>make[5]: *** [rtai_smi.ko] Error 2</div>
          <div>make[5]: Leaving directory &#39;/media/guoissac/13GDATA/rtai=
-<wbr>5.1/base/arch/x86/calibration&#39;</div>
          <div>GNUmakefile:406: recipe for target &#39;all-recursive&#39; f=
ailed</div>
          <div>make[4]: *** [all-recursive] Error 1</div>
          <div>make[4]: Leaving directory &#39;/media/guoissac/13GDATA/rtai=
-<wbr>5.1/base/arch/x86&#39;</div>
          <div>GNUmakefile:428: recipe for target &#39;all-recursive&#39; f=
ailed</div>
          <div>make[3]: *** [all-recursive] Error 1</div>
          <div>make[3]: Leaving directory &#39;/media/guoissac/13GDATA/rtai=
-<wbr>5.1/base/arch&#39;</div>
          <div>GNUmakefile:423: recipe for target &#39;all-recursive&#39; f=
ailed</div>
          <div>make[2]: *** [all-recursive] Error 1</div>
          <div>make[2]: Leaving directory &#39;/media/guoissac/13GDATA/rtai=
-<wbr>5.1/base&#39;</div>
          <div>GNUmakefile:486: recipe for target &#39;all-recursive&#39; f=
ailed</div>
          <div>make[1]: *** [all-recursive] Error 1</div>
          <div>make[1]: Leaving directory &#39;/media/guoissac/13GDATA/rtai=
-<wbr>5.1&#39;</div>
          <div>GNUmakefile:417: recipe for target &#39;all&#39; 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:paolo.=
[email protected]" target=3D"_blank">[email protected]</a>&gt;<=
/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"m_-2049666392884446017gmail-m_493313430636264=
9551moz-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">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 &quot;mak=
e
                  localmodconfig&quot; and=C2=A0 &quot;make localyesconfig&=
quot;.<br>
                  Once you have a LINUX .config that works, you&#39;ll
                  remake the kernel anew, applying the related RTAI
                  patch first and using the working .config you have.<span =
class=3D"m_-2049666392884446017gmail-"><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"m_-2049666392884446017gmail-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 &quot;run &quot; comma=
nd.</span></div>
                        <div><span><br>
                          </span></div>
                        <div><span>Could some one give me a guide of
                            installation of RTAI 5.1 on Debian?</span></div=
>
                        <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_-2049666392884446017_m_49331343063=
62649551_Prerequisites"></a>Prerequisites</h4>
                        <p>Install Ubuntu 12.04.4 using one of the
                          following images:</p>
                        <p><a href=3D"http://releases.ubuntu.com/precise/ub=
untu-12.04.4-desktop-amd64.iso" target=3D"_blank">http://releases.ubuntu.co=
m/pre<wbr>cise/ubuntu-12.04.4-desktop-<wbr>amd64.iso</a></p>
                        <p><a href=3D"http://releases.ubuntu.com/precise/ub=
untu-12.04.4-desktop-i386.iso" target=3D"_blank">http://releases.ubuntu.com=
/pre<wbr>cise/ubuntu-12.04.4-desktop-<wbr>i386.iso</a></p>
                        <p>And then follow the installation instructions
                          here:=C2=A0<a href=3D"https://help.ubuntu.com/com=
munity/Installation/" target=3D"_blank">https://help.ubuntu.com/<wbr>commun=
ity/Installation/</a></p>
                        <h4><a name=3D"m_-2049666392884446017_m_49331343063=
62649551_Introduction"></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 instal=
l qt3-apps-dev build-essential kernel-package vim cvs
</pre>
                        <h4><a name=3D"m_-2049666392884446017_m_49331343063=
62649551_I_Kernel_source_and_RTAI_downloa"></a>I - Kernel source
                          and RTAI download</h4>
                        <pre style=3D"color:rgb(0,0,0)"># cd /usr/src/</pre=
>
                        <p>Get the kernel source from <a href=3D"http://ker=
nel.org" target=3D"_blank">kernel.org</a></p>
                        <pre style=3D"color:rgb(0,0,0)"># wget <a href=3D"h=
ttps://www.kernel.org/pub/linux/kernel/v3.x/linux-3.8.13.tar.bz2" target=3D=
"_blank">https://www.kernel.org/pub/lin<wbr>ux/kernel/v3.x/linux-3.8.13.<wb=
r>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"h=
ttps://www.rtai.org/userfiles/downloads/RTAI/rtai-4.0.tar.bz2" target=3D"_b=
lank">https://www.rtai.org/userfiles<wbr>/downloads/RTAI/rtai-4.0.tar.<wbr>=
bz2</a>
tar xf rtai-4.0.tar.bz2</pre>
                        <h4><a name=3D"m_-2049666392884446017_m_49331343063=
62649551_II_Kernel_Preparation"></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_-2049666392884446017_m_49331343063=
62649551_Applying_patch"></a>Applying patch</h5>
                        <p>If you want first simulate the patch
                          application, use &quot;--dry-run&quot; after &quo=
t;-p1&quot;. It
                          won&#39;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; /u=
sr/src/rtai-4.0/base/arch/x8<wbr>6/patches/hal-linux-3.8.13-x86<wbr>-4.patc=
h
</pre>
                        <h5><a name=3D"m_-2049666392884446017_m_49331343063=
62649551_Kernel_Configuration"></a>Kernel
                          Configuration</h5>
                        <pre style=3D"color:rgb(0,0,0)"># cd /usr/src/linux=
</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</p=
re>
                        <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 </pr=
e>
                        <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 yours=
<br>
                          </em>-&gt; Maximum number of CPUs (NR_CPUS) =3D=
=C2=A0<em>Set
                            your number (it&#39;s generally &quot;4&quot;)<=
/em><br>
                          -&gt; SMT (Hyperthreading) scheduler support
                          =3D=C2=A0<em>DISABLE IT</em></p>
                        <p><strong>Power Management and ACPI options</stron=
g><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">DISABLE
                            IT<br>
                          </em><span style=3D"background-color:transparent"=
>-&gt;
                            ACPI (Advanced Configuration and Power
                            Interface) Support -&gt; PROCESSOR =3D=C2=A0</s=
pan><em style=3D"background-color:transparent">DISABLE
                            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:t=
ransparent">DISABLE
                            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">DISABLE
                            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_-2049666392884446017_m_49331343063=
62649551_III_Kernel_Compilation"></a><strong>III -
                            Kernel Compilation</strong></h4>
                        <pre style=3D"color:rgb(0,0,0)"># cd /usr/src/linux
# 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_-2049666392884446017_m_49331343063=
62649551_Kernel_Boot_Options"></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=3Dnotscdeadli=
ne</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_LINUX_=
DEFAULT=3D&quot;qu<wbr>iet splash lapic=3Dnotscdeadline&quot;</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_-2049666392884446017_m_49331343063=
62649551_IV_RTAI_installation"></a><strong>IV - RTAI
                            installation</strong></h4>
                        <p>Now that the system has restarted, make sure
                          you booted on your new=C2=A0<span class=3D"m_-204=
9666392884446017gmail-m_4933134306362649551gmail-twikiNewLink"><a href=3D"h=
ttps://twiki.eurecom.fr/twiki/bin/edit/OpenAirInterface/OpenAir?topicparent=
=3DOpenAirInterface.OpenAirKernel357Ubuntu1204x86Setups;nowysiwyg=3D0" rel=
=3D"nofollow" title=3D"OpenAir (this topic
                              does not yet exist; you can create it)" targe=
t=3D"_blank">OpenAir</a></span>=C2=A0kernel</p>
                        <pre style=3D"color:rgb(0,0,0)"># uname -r </pre>
                        <p>Should give you &quot;3.8.13&quot; as result</p>
                        <pre style=3D"color:rgb(0,0,0)"># cd /usr/src/rtai-=
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 &quot;make xconfig&quot;=
 step
                          until it&#39;s OK</p>
                        <pre style=3D"color:rgb(0,0,0)"># make &amp;&amp; m=
ake 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/usr/=
realtime/bin:$PATH=20
export LD_LIBRARY_PATH=3D$LD_LIBRARY_PA<wbr>TH:/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 &quot;ldconfig&quot;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/realtime/=
testsuite/kern/l<wbr>atency =20
# ./run </pre>
                        <div>//----------------------------<wbr>-----------=
-------------------<wbr>------------------------------<wbr>-</div>
                      </div>
                      <br>
                      <fieldset class=3D"m_-2049666392884446017gmail-m_4933=
134306362649551mimeAttachmentHeader"></fieldset>
                      <br>
                    </div>
                  </div>
                  <span class=3D"m_-2049666392884446017gmail-">
                    <pre>______________________________<wbr>_______________=
__
Rtai mailing list
<a class=3D"m_-2049666392884446017gmail-m_4933134306362649551moz-txt-link-a=
bbreviated" href=3D"mailto:[email protected]" target=3D"_blank">[email protected]</=
a>
<a class=3D"m_-2049666392884446017gmail-m_4933134306362649551moz-txt-link-f=
reetext" href=3D"https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai" targe=
t=3D"_blank">https://mail.rtai.org/cgi-bin/<wbr>mailman/listinfo/rtai</a></=
pre>
                  </span></blockquote>
                <p><br>
                </p>
              </div>
              <br>
              ______________________________<wbr>_________________<br>
              Rtai mailing list<br>
              <a href=3D"mailto:[email protected]" target=3D"_blank">Rtai@rtai.=
org</a><br>
              <a href=3D"https://mail.rtai.org/cgi-bin/mailman/listinfo/rta=
i" rel=3D"noreferrer" target=3D"_blank">https://mail.rtai.org/cgi-bin/<wbr>=
mailman/listinfo/rtai</a><br>
            </blockquote>
          </div>
          <br>
        </div>
      </div>
    </blockquote>
    <p><br>
    </p>
  </div></div></div>

</blockquote></div><br></div>

--089e082ccab4844d88056527ebca--

--===============7056736752624647848==
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
--===============7056736752624647848==--