diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2016-01-22 23:56:10 +0100 |
---|---|---|
committer | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2016-01-22 23:56:10 +0100 |
commit | 18b0ea1ce8ddca86b3f09a9122a3c722b265dfb8 (patch) | |
tree | 5c77303303e2b5154e1dd8555b16a5196c553d62 /patches/series | |
parent | c5f0ba59007d49527ec8c89cd6ff721a8f5c294e (diff) | |
download | linux-rt-4.4-rt3-patches.tar.gz |
[ANNOUNCE] 4.4-rt3v4.4-rt3-patches
Dear RT folks!
I'm pleased to announce the v4.4-rt3 patch set.
Changes since v4.4-rt2:
- various compile fixes found by kbuild test robot and Grygorii
Strashko.
- kbuild test robot reported that we open interrupts too early in
ptrace_freeze_traced().
- dropping a GPIO patch from the OMAP queue which is no longer
required (requested by Grygorii Strashko)
- dropping a retry loop in the mm/anon_vma_free() which was probably
just duct tape and does no longer seems required.
- Various people pointed out that the AT91 clocksource driver did not
not compile. It does now. However AT91 does not yet boot. There are
two issues:
- the free_irq() from irq-off region is not good and triggers a
warning because it is invoked twice. This will be addressed later,
the current patch is not bulletproof and not yet part of the series.
- The PMC driver invokes request_irq() very early which leads to a
NULL pointer exception (non-RT with threaded interrupts has the same
problem). A longer explanation by Alexandre Belloni and his current
patch series he refers to can be found at:
http://lkml.kernel.org/r/1452997394-8554-1-git-send-email-alexandre.belloni@free-electrons.com
- Using a virtual network device (like a bridge) could lead to a "Dead
loop" message the packet dropped. This problem has been fixed.
- Julia Lawall sent a patch against hwlat_detector to "move constants to
the right of binary operators".
- Carsten Emde sent a patch to fix the latency histogram tracer.
- Mike Galbraith reported that the softirq ate about 25% CPU time doing
nothing. The problem was fixed.
- Grygorii Strashko pointed out that two RCU/ksoftirqd changes that were
made to the non-RT version of the code did not make to the RT version.
This was corrected.
- btrfs forgot to initialize a seqcount variable which prints a warning
if used with lockdep.
- A few users napi_alloc_cache() were not protected against reentrance.
- Grygorii Strashko fixed highmem on ARM.
- Mike Galbraith reported that all tasks run on CPU0 even on a system
with more than one. Problem fixed by Thomas Gleixner.
- Anders Roxell sent two patches (against coupled and vsp1) because they
did not compile and printed a warning on -RT.
- Mike Galbraith pointed out that we forgot to check for
NEED_RESCHED_LAZY in an exit path on X86 and provided a patch.
- Mike Galbraith pointed out that we don't consider the preempt_lazy_count
in the common preemption check and provided a patch. With this fixed,
the sched_other performance should improve.
- A high network load could lead to RCU stalls followed by the OOM
killer. Say a slower ARM with on a GBIT link running RT tasks, doing
network IO (at a RT prio) and getting shot with the flood ping at a
high rate. NAPI does not really kick in because each time NAPI tries
defer processing it starts again in the context of the IRQ thread of
the network driver.
This has been fixed in two steps:
- once the NAPI budget is up, we schedule ksoftirqd. This works now on
-RT, too
- ksoftirqd runs now at SCHED_OTHER priority like the on !RT. Now the
scheduler can preempt ksoftirqd and let RCU do its job. The timer
and hrtimer softirq processing happens now in ktimersoftd which runs
at SCHED_FIFO (as ksoftirqd used to).
- Grygorii Strashko pointed out that if RCU_EXPERT is not enabled then
we can't select RCU_BOOST. Therefore RCU_EXPERT is default y on RT.
- Grygorii Strashko pointed out the we miss to check for
NEED_RESCHED_LAZY in an exit path on ARM. This has been fixed on ARM
and on ARM64 as well.
This was a lot and I hope I forgot nothing important.
Known issues:
- bcache stays disabled
- CPU hotplug is not better than before
- The netlink_release() OOPS, reported by Clark, is still on the
list, but unsolved due to lack of information
The delta patch against 4.4-rt2 is appended below and can be found here:
https://cdn.kernel.org/pub/linux/kernel/projects/rt/4.4/incr/patch-4.4-rt2-rt3.patch
You can get this release via the git tree at:
git://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git v4.4-rt3
The RT patch against 4.1.13 can be found here:
https://cdn.kernel.org/pub/linux/kernel/projects/rt/4.4/patch-4.4-rt3.patch.xz
The split quilt queue is available at:
https://cdn.kernel.org/pub/linux/kernel/projects/rt/4.4/patches-4.4-rt3.tar.xz
Sebastian
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Diffstat (limited to 'patches/series')
-rw-r--r-- | patches/series | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/patches/series b/patches/series index 9e9f18f91dac..1d6c181dddb6 100644 --- a/patches/series +++ b/patches/series @@ -13,6 +13,11 @@ ############################################################ # Stuff broken upstream, patches submitted ############################################################ +btrfs-initialize-the-seq-counter-in-struct-btrfs_dev.patch +sched-use-tsk_cpus_allowed-instead-of-accessing-cpus.patch +sched-provide-a-tsk_nr_cpus_allowed-helper.patch +drivers-cpuidle-coupled-fix-warning-cpuidle_coupled_.patch +drivers-media-vsp1_video-fix-compile-error.patch ############################################################ # Stuff which needs addressing upstream, but requires more @@ -63,7 +68,6 @@ kernel-SRCU-provide-a-static-initializer.patch ############################################################ # Stuff which should go upstream ASAP ############################################################ -0009-ARM-OMAP2-Drop-the-concept-of-certain-power-domains-.patch # SCHED BLOCK/WQ block-shorten-interrupt-disabled-regions.patch @@ -135,6 +139,8 @@ pci-access-use-__wake_up_all_locked.patch # TRACING latency-hist.patch +latency_hist-update-sched_wakeup-probe.patch +trace-latency-hist-Consider-new-argument-when-probin.patch # HW LATENCY DETECTOR - this really wants a rewrite hwlatdetect.patch @@ -227,7 +233,6 @@ slub-disable-SLUB_CPU_PARTIAL.patch mm-page-alloc-use-local-lock-on-target-cpu.patch mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch mm-memcontrol-do_not_disable_irq.patch -mm-rmap-retry-lock-check-in-anon_vma_free.patch_vma_free.patch # RADIX TREE radix-tree-rt-aware.patch @@ -294,6 +299,7 @@ softirq-preempt-fix-3-re.patch softirq-disable-softirq-stacks-for-rt.patch softirq-split-locks.patch irq-allow-disabling-of-softirq-processing-in-irq-thread-context.patch +softirq-split-timer-softirqs-out-of-ksoftirqd.patch rtmutex-trylock-is-okay-on-RT.patch # RAID5 @@ -319,6 +325,8 @@ ptrace-fix-ptrace-vs-tasklist_lock-race.patch # RTMUTEX Fallout tasklist-lock-fix-section-conflict.patch +#fold +ptrace-don-t-open-IRQs-in-ptrace_freeze_traced-too-e.patch # RCU peter_zijlstra-frob-rcu.patch @@ -407,6 +415,14 @@ sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch net__Make_synchronize-rcu_expedited_conditional-on-non-rt skbufhead-raw-lock.patch net-core-cpuhotplug-drain-input_pkt_queue-lockless.patch +net-move-xmit_recursion-to-per-task-variable-on-RT.patch +net-provide-a-way-to-delegate-processing-a-softirq-t.patch + +# NETWORK livelock fix +net-tx-action-avoid-livelock-on-rt.patch + +# NETWORK DEBUGGING AID +ping-sysrq.patch # irqwork irqwork-push_most_work_into_softirq_context.patch @@ -432,12 +448,6 @@ ARM-enable-irq-in-translation-section-permission-fau.patch # ARM64 arm64-xen--Make-XEN-depend-on-non-rt.patch -# NETWORK livelock fix -net-tx-action-avoid-livelock-on-rt.patch - -# NETWORK DEBUGGING AID -ping-sysrq.patch - # KGDB kgb-serial-hackaround.patch @@ -501,6 +511,7 @@ scsi-qla2xxx-fix-bug-sleeping-function-called-from-invalid-context.patch # NET upstream-net-rt-remove-preemption-disabling-in-netif_rx.patch net-another-local-irq-disable-alloc-atomic-headache.patch +net-core-protect-users-of-napi_alloc_cache-against-r.patch net-fix-iptable-xt-write-recseq-begin-rt-fallout.patch net-make-devnet_rename_seq-a-mutex.patch @@ -521,10 +532,12 @@ rcu-make-RCU_BOOST-default-on-RT.patch # PREEMPT LAZY preempt-lazy-support.patch +preempt-lazy-check-preempt_schedule.patch x86-preempt-lazy.patch arm-preempt-lazy-support.patch powerpc-preempt-lazy-support.patch arch-arm64-Add-lazy-preempt-support.patch +arm-arm64-lazy-preempt-add-TIF_NEED_RESCHED_LAZY-to-.patch # LEDS leds-trigger-disable-CPU-trigger-on-RT.patch @@ -553,8 +566,5 @@ md-disable-bcache.patch # WORKQUEUE SIGH workqueue-prevent-deadlock-stall.patch -# TRACING -latency_hist-update-sched_wakeup-probe.patch - # Add RT to version localversion.patch |