cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
63 Views
Registered: ‎11-10-2019

ZYNQ RTLinux Patch Issue

Jump to solution

Hi, everyone

I want to use RTLinux for a custom board of ZYNQ-7000.

I applied the RTLinux patch by installing the kernel source from Github.

Printing the kernel version at the prompt looks like this:

skaskawl_0-1600243794515.png

 

However, Real-Time doesn't seem to apply to kernel work.

First of all, running the Linux command process (EX: ls, cat, ifconfig) while doing the ethernet communication via the Linux schedule will cause a big delay in running the ethernet communication. The result is shown below.

skaskawl_1-1600243869698.png

 

Can the RT patch be applied to the Xilinx kernel source?

I need the help of high-ranking people.

 

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Scholar
Scholar
41 Views
Registered: ‎05-28-2013

Hi there,

It looks like you have the RT patches applied to your kernel, at least based on the version string 4.19.0-rt4-xilinx. That's good.

However it is a common misconception that adding the RT patches will magically fix all realtime performance issues. In fact the RT patches are all about reducing the worst-case latency within the kernel.

Troubleshooting the source of your problem can take some effort. As a first step, look at the program which is transmitting or receiving your ethernet data. This should be running under realtime scheduler class (this has nothing to do with the realtime kernel patches). Check the priority of this (and any other realtime scheduler class tasks). Does this process do dynamic memory allocation, use garbage collection, etc?

Another common approach is to move the time critical processing to a specific CPU core (eg. 2nd core, leaving the 1st one to handle other Linux tasks). Interrupts can similar be routed to specific CPU cores.

Putting it another way: the realtime kernel patches will not fix application level problems.

View solution in original post

1 Reply
Highlighted
Scholar
Scholar
42 Views
Registered: ‎05-28-2013

Hi there,

It looks like you have the RT patches applied to your kernel, at least based on the version string 4.19.0-rt4-xilinx. That's good.

However it is a common misconception that adding the RT patches will magically fix all realtime performance issues. In fact the RT patches are all about reducing the worst-case latency within the kernel.

Troubleshooting the source of your problem can take some effort. As a first step, look at the program which is transmitting or receiving your ethernet data. This should be running under realtime scheduler class (this has nothing to do with the realtime kernel patches). Check the priority of this (and any other realtime scheduler class tasks). Does this process do dynamic memory allocation, use garbage collection, etc?

Another common approach is to move the time critical processing to a specific CPU core (eg. 2nd core, leaving the 1st one to handle other Linux tasks). Interrupts can similar be routed to specific CPU cores.

Putting it another way: the realtime kernel patches will not fix application level problems.

View solution in original post