NI Linux Real-Time Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

patches in /pub/linux/kernel/projects/rt/

I'm hoping to find out more about the RT patches for the Linux kernel.

 

The Linux kernel patches in /pub/linux/kernel/projects/rt/4.8 are of two flavors:

patch-4.8.15-rt10.patch.xz

and

patches-4.8.15-rt10.tar.xz

The instructions on https://rt.wiki.kernel.org/index.php/RT_PREEMPT_HOWTO say to use the top patch to patch the kernel. That patch contains about 26,000 lines of patches.

 

What is the second set of patches? I figured out that it's a compressed tar file of close to 300 patches, a total of close to 35,000 lines of patches.

 

So, does anyone know what the difference is? If the tar file isn't used, why is it there? I assume it's useful, but I don't see any explantion.

 

Thanks for any help you can give.

0 Kudos
Message 1 of 3
(2,643 Views)

The top patch is the amalgam of the separate patches, and the reason for the differences in number of lines are simply since some of the discrete patches rework stuff that exists in other discrete patches.

 

The giant patch is simpler to apply (to a matching vanilla, unmodified tree), while the discrete patches are better for appling to a not-quite-vanilla tree. Additionally, I would think that the discrete patches would be beneficial if you're wanting to understand the RT patches as a whole (the descriptions that go with the separate changes give some insight into the goal of the patch, and what issue it's intending to solve).

0 Kudos
Message 2 of 3
(2,609 Views)

The release announcements on the linux-rt-users mailing list usually contain an explanation:

e.g. http://www.spinics.net/lists/linux-rt-users/msg16111.html

 

Short version is patch-4.8.15-rt10.patch.xz has all the patches combined into a single patch file that applies to the corresponding kernel version e.g. 4.8.15 in this case. That's done for ease of patching but makes working on the RT patch itself harder.

 

The patches-4.8.15-rt10.tar.xz contains the same patches but split out into individual patch files organized as a quilt queue.

 

If you prefer git instead of dealing with patch files (I do) the trees are available at:

  • rt development tree: git://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git
  • rt stable tree: git://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-stable-rt.git
0 Kudos
Message 3 of 3
(2,607 Views)