tree 5ae81cee3df6231cec05031a291da83b66f00633
parent 2fffea6a0eee52cf99a7fea4e856d41b940b4e79
author Paul Gortmaker <paul.gortmaker@windriver.com> 1384810036 -0500
committer Paul Gortmaker <paul.gortmaker@windriver.com> 1384810036 -0500

patches-3.10.18-rt14.tar.xz

md5sum:
2e8fed5b41f222ccc30d9f1c357204f9  patches-3.10.18-rt14.tar.xz

Announce:
 ------------------
 Dear RT folks!

 I'm pleased to announce the v3.10.18-rt14 patch set.

 Changes since v3.10.18-rt13
 - a SLUB fix. The delayed free might use wrong kmem_cache structure.
 - update to Yang Shi's memcontrol sleeping while atomic fix. Thanks you
   Yang Shi.
 - dropping the wbinvd in i915. The do_wbinvd module parameter is gone,
   the fix from mainline has been backported. This has been compile
   tested, some feedback would be nice.

 Known issues:

       - SLAB support not working

       - The cpsw network driver shows some issues.

       - bcache is disabled.

       - an ancient race (since we got sleeping spinlocks) where the
         TASK_TRACED state is temporary replaced while waiting on a rw
         lock and the task can't be traced.

 The delta patch against v3.10.18-rt14 is appended below and can be found
 here:
    https://www.kernel.org/pub/linux/kernel/projects/rt/3.10/incr/patch-3.10.18-rt13-rt14.patch.xz

 The RT patch against 3.10.18 can be found here:

    https://www.kernel.org/pub/linux/kernel/projects/rt/3.10/patch-3.10.18-rt14.patch.xz

 The split quilt queue is available at:

    https://www.kernel.org/pub/linux/kernel/projects/rt/3.10/patches-3.10.18-rt14.tar.xz

 Sebastian
 ------------------

http://marc.info/?l=linux-rt-users&m=138394894205686&w=2

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
