From ff23b35c5f99809866f174c429da5506cea22df5 Mon Sep 17 00:00:00 2001 From: Tiejun Chen Date: Fri, 20 Apr 2018 22:09:18 +0800 Subject: [PATCH] update -rt to 4.14.34-rt27 Signed-off-by: Tiejun Chen --- examples/rt-for-vmware.yml | 2 +- kernel/Makefile | 4 +- ...-Remove-redundant-preemptible-checks.patch | 38 ++++ ...se-raw-locks-on-atomic-context-paths.patch | 170 ++++++++++++++++++ ...use-dev_data-in-irte_ga_set_affinity.patch | 31 ++++ ...locking-get_irq_table-from-atomic-co.patch | 116 ++++++++++++ ...nto-account-that-alloc_dev_data-may-.patch | 32 ++++ ...-dev_data_list-into-a-lock-less-list.patch | 97 ++++++++++ ...domain-id-out-of-amd_iommu_devtable_.patch | 62 +++++++ ...irq_lookup_table-out-of-the-amd_iomm.patch | 50 ++++++ ...-the-special-case-from-alloc_irq_tab.patch | 94 ++++++++++ ...ble-instead-irt-as-variable-name-in-.patch | 52 ++++++ ...-out-setting-the-remap-table-for-a-d.patch | 66 +++++++ ...he-lock-while-allocating-new-irq-rem.patch | 131 ++++++++++++++ ...-amd_iommu_devtable_lock-a-spin_lock.patch | 73 ++++++++ ...-proper-error-code-in-irq_remapping_.patch | 40 +++++ ...-keys-for-migrate_enable-nohz_activ.patch} | 0 ...mer-Correct-blantanly-wrong-comment.patch} | 0 ...rneldoc-for-struct-hrtimer_cpu_base.patch} | 0 ...lock-argument-in-schedule_hrtimeout.patch} | 0 ...er-Fix-hrtimer-function-description.patch} | 0 ...7-hrtimer-Cleanup-hrtimer_mode-enum.patch} | 0 ...ake-all-clock-bases-and-modes-into-.patch} | 0 ...rint-hrtimer-mode-in-hrtimer_start-.patch} | 0 ...-Switch-for-loop-to-_ffs-evaluation.patch} | 0 ...running-timer-in-hrtimer_clock_base.patch} | 0 ...ake-room-in-struct-hrtimer_cpu_base.patch} | 0 ...Reduce-conditional-code-hres_active.patch} | 0 ...or-functions-instead-of-direct-acce.patch} | 0 ...-remote-enqueue-check-unconditional.patch} | 0 ...mer_cpu_base.next_timer-handling-un.patch} | 0 ...ke-hrtimer_reprogramm-unconditional.patch} | 0 ...mer_force_reprogramm-unconditionall.patch} | 0 ...er-Unify-handling-of-hrtimer-remove.patch} | 0 ...er-Unify-handling-of-remote-enqueue.patch} | 0 ...te-enqueue-decision-less-restrictiv.patch} | 0 ...ase-argument-from-hrtimer_reprogram.patch} | 0 ...rtimer-Split-hrtimer_start_range_ns.patch} | 0 ...imer-Split-__hrtimer_get_next_event.patch} | 0 ...ave-irqrestore-around-__run_hrtimer.patch} | 0 ...-bases-and-hrtimer-mode-for-soft-ir.patch} | 0 ...andling-of-hard-and-softirq-based-h.patch} | 0 ...-support-for-softirq-based-hrtimers.patch} | 0 ...ment-SOFT-HARD-clock-base-selection.patch} | 0 ...rtimer_tasklet-with-softirq-based-h.patch} | 0 ...place-hrtimer-tasklet-with-softirq-.patch} | 0 ...rtimer-tasklet-with-softirq-hrtimer.patch} | 0 ...0033-softirq-Remove-tasklet_hrtimer.patch} | 0 ...eplace-tasklet-with-softirq-hrtimer.patch} | 0 ...eplace-tasklet-with-softirq-hrtimer.patch} | 0 ...ish-Enable-earlycon-only-if-built-in.patch | 65 ------- ...eplace-tasklet-with-softirq-hrtimer.patch} | 0 ...0053-at91_dont_enable_disable_clock.patch} | 0 ...unction-called-from-invalid-context.patch} | 0 ...dle-non-enqueued-waiters-gracefully.patch} | 0 ...ree-include-rcu.h-because-we-use-it.patch} | 0 ...xrpc-remove-unused-static-variables.patch} | 0 ...d-syscon-atmel-smc-include-string.h.patch} | 0 ... => 0059-sched-swait-include-wait.h.patch} | 0 ...replace-seqcount_t-with-a-seqlock_t.patch} | 0 ...ecursive-locking-in-hci_send_to_cha.patch} | 0 ...w_cpu_ptr-instead-of-get_cpu_ptr-fo.patch} | 0 ...dio-don-t-inclide-rwlock.h-directly.patch} | 0 ...pfs-don-t-inclide-rwlock.h-directly.patch} | 0 ...rm-i915-properly-init-lockdep-class.patch} | 0 ...nt-return-values-of-timerqueue_add-.patch} | 0 ...rc64-use-generic-rwsem-spinlocks-rt.patch} | 0 ...l-SRCU-provide-a-static-initializer.patch} | 0 ...lock_assert-irqs_disabled-combo-che.patch} | 0 ...ide-a-pointer-to-the-valid-CPU-mask.patch} | 0 ...e.patch => 0071-add_migrate_disable.patch} | 0 ...he-order-of-trace_types_lock-and-ev.patch} | 0 ...te-trace_recursive_-un-lock-to-be-s.patch} | 0 ...e-lookups-from-tracing_map-hitcount.patch} | 0 ...-Increase-tracing-map-KEYS_MAX-size.patch} | 0 ...ke-traceprobe-parsing-code-reusable.patch} | 4 +- ...cing-Clean-up-hist_field_flags-enum.patch} | 0 ...racing-Add-hist_field_name-accessor.patch} | 0 ... 0079-0008-tracing-Reimplement-log2.patch} | 0 ...-trigger-Documentation-to-histogram.patch} | 0 ...Add-Documentation-for-log2-modifier.patch} | 0 ...port-to-detect-and-avoid-duplicates.patch} | 0 ...Remove-code-which-merges-duplicates.patch} | 0 ...nterface-for-setting-absolute-time-.patch} | 0 ...ine-the-unimplemented-RINGBUF_TYPE_.patch} | 0 ...acing-Add-timestamp_mode-trace-file.patch} | 0 ...t-triggers-access-to-ring_buffer_ev.patch} | 0 ...buffer-event-param-to-hist-field-fu.patch} | 0 ...out-hist-trigger-assignment-parsing.patch} | 0 ...-Add-hist-trigger-timestamp-support.patch} | 0 ...lement-variable-support-to-tracing_.patch} | 0 ...-Add-hist_data-member-to-hist_field.patch} | 0 ...-modifier-for-hist-trigger-timestam.patch} | 0 ...d-variable-support-to-hist-triggers.patch} | 0 ...or-variables-in-named-trigger-compa.patch} | 0 ...5-tracing-Move-get_hist_field_flags.patch} | 0 ...e-expression-support-to-hist-trigge.patch} | 0 ...alize-per-element-hist-trigger-data.patch} | 0 ...ing_map_elt-to-hist_field-accessor-.patch} | 0 ...9-tracing-Add-hist_field-type-field.patch} | 0 ...ble-reference-handling-to-hist-trig.patch} | 0 ...racing-Add-hist-trigger-action-hook.patch} | 0 ...ng-Add-support-for-synthetic-events.patch} | 0 ...ing-Add-support-for-field-variables.patch} | 0 ...onmatch-hist-trigger-action-support.patch} | 0 ...d-onmax-hist-trigger-action-support.patch} | 0 ...tespace-to-surround-hist-trigger-fi.patch} | 0 ...ing-Add-cpu-field-for-hist-triggers.patch} | 0 ...trigger-support-for-variable-refere.patch} | 0 ...error-error-facility-for-hist-trigg.patch} | 0 ...er-event-hist-trigger-Documentation.patch} | 0 ...g-Make-tracing_set_clock-non-static.patch} | 0 ...a-clock-attribute-for-hist-triggers.patch} | 0 ...-back-context-level-recursive-check.patch} | 0 ...uplicate-results-in-mapping-context.patch} | 0 ...esting-for-adding-events-within-eve.patch} | 0 ...ing-buffer-nesting-to-allow-synthet.patch} | 0 ...-event-blurb-to-HIST_TRIGGERS-confi.patch} | 0 ...Add-inter-event-hist-triggers-testc.patch} | 0 ...lay-of-hist-trigger-expressions-cont.patch | 76 ++++++++ ...d-flag-strings-when-displaying-varia.patch | 34 ++++ ...on-comparisons-when-testing-matching.patch | 84 +++++++++ ...e-variable-string-fields-are-NULL-te.patch | 36 ++++ ...-shorten-interrupt-disabled-regions.patch} | 0 ...0125-timekeeping-split-jiffies-lock.patch} | 0 ...for-preempt-off-in-preempt_schedule.patch} | 0 ...-signal-revert-ptrace-preempt-magic.patch} | 0 ...> 0128-arm-convert-boot-lock-to-raw.patch} | 0 ...robe-replace-patch_lock-to-raw-lock.patch} | 0 ...h => 0130-posix-timers-no-broadcast.patch} | 4 +- ...-tasks-to-cache-one-sigqueue-struct.patch} | 0 ...ndom-reduce-preempt-disabled-region.patch} | 0 ...ve-irq-handler-when-clock-is-unused.patch} | 0 ...rs-timer-atmel-pit-fix-double-free_.patch} | 0 ...ource-tclib-allow-higher-clockrates.patch} | 0 ...drivers-net-8139-disable-irq-nosync.patch} | 0 ...suspend-prevernt-might-sleep-splats.patch} | 0 ...h => 0138-net-prevent-abba-deadlock.patch} | 0 ...ctivate_many-use-msleep-1-instead-o.patch} | 0 ...> 0140-net_disable_NET_RX_BUSY_POLL.patch} | 0 ...=> 0141-x86-io-apic-migra-no-unmask.patch} | 0 ...42-rcu-segcblist-include-rcupdate.h.patch} | 0 ...intk-kill.patch => 0143-printk-kill.patch} | 0 ...7-boot-param-to-help-with-debugging.patch} | 0 ...atch => 0145-rt-preempt-base-config.patch} | 0 ...46-kconfig-disable-a-few-options-rt.patch} | 0 ...tch => 0147-kconfig-preempt-rt-full.patch} | 0 ...h => 0148-bug-rt-dependend-variants.patch} | 0 ...=> 0149-iommu-amd--Use-WARN_ON_NORT.patch} | 4 +- ...150-local-irq-rt-depending-variants.patch} | 0 ...ch => 0151-preempt-nort-rt-variants.patch} | 0 ...migrate_disable-enable-in-different.patch} | 0 ...ock.patch => 0153-rt-local-irq-lock.patch} | 0 ...54-ata-disable-interrupts-if-non-rt.patch} | 0 ...155-ide-use-nort-local-irq-variants.patch} | 0 ...infiniband-mellanox-ib-use-nort-irq.patch} | 0 ...57-inpt-gameport-use-local-irq-nort.patch} | 0 ...tch => 0158-user-use-local-irq-nort.patch} | 0 ...h => 0159-usb-use-_nort-in-giveback.patch} | 0 ...scatterlist-dont-disable-irqs-on-RT.patch} | 0 ...not-protect-workingset_shadow_nodes.patch} | 0 ... => 0162-signal-fix-up-rcu-wreckage.patch} | 0 ...ix.patch => 0163-oleg-signal-rt-fix.patch} | 0 ...gnal-delay-calling-signals-on-32bit.patch} | 0 ...atch => 0165-net-wireless-warn-nort.patch} | 0 ...-fs-replace-bh_uptodate_lock-for-rt.patch} | 0 ...> 0167-fs-jbd-replace-bh_state-lock.patch} | 0 ...bl.h-make-list-head-locking-RT-safe.patch} | 0 ...list_bl-fixup-bogus-lockdep-warning.patch} | 0 ...> 0170-genirq-disable-irqpoll-on-rt.patch} | 0 ...atch => 0171-genirq-force-threading.patch} | 0 ...ivers-net-vortex-fix-locking-issues.patch} | 0 ...=> 0173-delayacct-use-raw_spinlocks.patch} | 0 ...age_alloc-rt-friendly-per-cpu-pages.patch} | 4 +- ..._alloc-reduce-lock-sections-further.patch} | 0 ...76-mm-convert-swap-to-percpu-locked.patch} | 2 +- ...-perform-lru_add_drain_all-remotely.patch} | 0 ...tch => 0178-mm-make-vmstat-rt-aware.patch} | 0 ...-arm-coredump-fails-for-cpu-3e-3d-4.patch} | 0 ... 0180-mm-bounce-local-irq-save-nort.patch} | 0 ...t.patch => 0181-mm-disable-sloub-rt.patch} | 0 ...e-slub.patch => 0182-mm-enable-slub.patch} | 0 ...sible-memory-leak-in-kmem_cache_all.patch} | 0 ...> 0184-slub-enable-irqs-for-no-wait.patch} | 0 ... 0185-slub-disable-SLUB_CPU_PARTIAL.patch} | 0 ...-alloc-use-local-lock-on-target-cpu.patch} | 0 ...-t-call-schedule_work_on-in-preempt.patch} | 0 ...88-mm-memcontrol-do_not_disable_irq.patch} | 0 ...n-t-disable-IRQs-in-wb_congested_pu.patch} | 0 ...c_copy_with_get_cpu_var_and_locking.patch} | 0 ... => 0191-radix-tree-use-local-locks.patch} | 0 ... => 0192-panic-disable-random-on-rt.patch} | 0 ...-timers-prepare-for-full-preemption.patch} | 0 ...waking-softirqs-from-the-jiffy-tick.patch} | 0 ...ent-erroneous-tick-stop-invocations.patch} | 0 ...96-x86-kvm-require-const-tsc-for-rt.patch} | 0 ...tch => 0197-wait.h-include-atomic.h.patch} | 0 ...ple-Simple-work-queue-implemenation.patch} | 0 ...9-completion-use-simple-wait-queues.patch} | 0 ...h => 0200-fs-aio-simple-simple-work.patch} | 0 ...oke-the-affinity-callback-via-a-wor.patch} | 0 ...d-schedule_work-with-interrupts-dis.patch} | 0 ...te-hrtimer_init-hrtimer_init_sleepe.patch} | 2 +- ...04-hrtimers-prepare-full-preemption.patch} | 10 +- ...by-default-into-the-softirq-context.patch} | 2 +- ...er-Prevent-live-lock-in-alarm_cancel.patch | 26 +++ ...r-proper-timer-while-waiting-for-ala.patch | 69 +++++++ ...s-move-the-rcu-head-out-of-the-union.patch | 52 ++++++ ...schedule_work-call-to-helper-thread.patch} | 0 ...ch => 0210-timer-fd-avoid-live-lock.patch} | 0 ...imers-thread-posix-cpu-timers-on-rt.patch} | 0 ....patch => 0212-sched-delay-put-task.patch} | 0 ...atch => 0213-sched-limit-nr-migrate.patch} | 0 ....patch => 0214-sched-mmdrop-delayed.patch} | 0 ...-stack-kprobe-clean-up-to-__put_tas.patch} | 0 ...patch => 0216-sched-rt-mutex-wakeup.patch} | 0 ...k-state-corruption-by-spurious-lock.patch} | 0 ...patch => 0218-sched-Remove-TASK_ALL.patch} | 0 ...ight-sleep-do-not-account-rcu-depth.patch} | 0 ...tch => 0220-cond-resched-softirq-rt.patch} | 0 ... => 0221-cond-resched-lock-rt-tweak.patch} | 0 ...ch => 0222-sched-disable-ttwu-queue.patch} | 0 ...-sched-disable-rt-group-sched-on-rt.patch} | 0 ...wu-ensure-success-return-is-correct.patch} | 0 ...nly-wake-up-idle-workers-if-not-blo.patch} | 0 ...ase-the-nr-of-migratory-tasks-when-.patch} | 0 ...vert-stop_machine_run-to-PREEMPT_RT.patch} | 0 ...patch => 0228-stop-machine-raw-lock.patch} | 0 ... 0229-hotplug-light-get-online-cpus.patch} | 0 ...0230-ftrace-migrate-disable-tracing.patch} | 0 ...lockdep-no-softirq-accounting-on-rt.patch} | 0 ...h => 0232-lockdep-disable-self-test.patch} | 0 ...t.patch => 0233-mutex-no-spin-on-rt.patch} | 0 ...from-going-into-infinite-spin-in-rt.patch} | 0 ...ch => 0235-softirq-preempt-fix-3-re.patch} | 8 +- ...ftirq-disable-softirq-stacks-for-rt.patch} | 4 +- ...s.patch => 0237-softirq-split-locks.patch} | 2 +- ...-kernel-softirq-unlock-with-irqs-on.patch} | 0 ...rq-processing-in-irq-thread-context.patch} | 0 ...lit-timer-softirqs-out-of-ksoftirqd.patch} | 0 ...rq-wake-the-timer-softirq-if-needed.patch} | 0 ... 0242-rtmutex-trylock-is-okay-on-RT.patch} | 0 ...nfs-turn-rmdir_sem-into-a-semaphore.patch} | 0 ...ch => 0244-rtmutex-futex-prepare-rt.patch} | 0 ....patch => 0245-futex-requeue-pi-fix.patch} | 0 ...utex-don-t-drop-the-wait_lock-twice.patch} | 0 ...-unlock-symetry-versus-pi_lock-and-.patch} | 0 ...atch => 0248-pid.h-include-atomic.h.patch} | 0 ...rm-include-definition-for-cpumask_t.patch} | 0 ...re-Do-NOT-include-rwlock.h-directly.patch} | 0 ...patch => 0251-rtmutex-lock-killable.patch} | 0 ...252-rtmutex-Make-lock_killable-work.patch} | 0 ...=> 0253-spinlock-types-separate-raw.patch} | 0 ... => 0254-rtmutex-avoid-include-hell.patch} | 0 ...ch => 0255-rtmutex_dont_include_rcu.patch} | 0 ...ex-Provide-rt_mutex_slowlock_locked.patch} | 0 ...ckdep-less-version-of-rt_mutex-s-lo.patch} | 0 ...ex-add-sleeping-lock-implementation.patch} | 0 ...tex-implementation-based-on-rtmutex.patch} | 0 ...sem-implementation-based-on-rtmutex.patch} | 0 ...ock-implementation-based-on-rtmutex.patch} | 0 ...> 0262-rtmutex-wire-up-RT-s-locking.patch} | 0 ...tex-add-ww_mutex-addon-for-mutex-rt.patch} | 0 ...fix-deadlock-in-device-mapper-block.patch} | 0 ...e-init-the-wait_lock-in-rt_mutex_in.patch} | 0 ...ce-fix-ptrace-vs-tasklist_lock-race.patch} | 0 ...ip-that-warning-but-only-on-sleepin.patch} | 0 ...dule-in-RCU-section-warning-on-UP-t.patch} | 0 ...ck-for-__LINUX_SPINLOCK_TYPES_H-on-.patch} | 0 ...tch => 0270-peter_zijlstra-frob-rcu.patch} | 0 ...erge-rcu-bh-into-rcu-preempt-for-rt.patch} | 0 ...e-rcu-bh-qs-where-safe-from-softirq.patch} | 0 ...-disable-irq-while-calling-rcu_pree.patch} | 0 ...0274-drivers-tty-fix-omap-lock-crap.patch} | 0 ...ivers-tty-pl011-irq-disable-madness.patch} | 0 ...ix.patch => 0276-rt-serial-warn-fix.patch} | 0 ...-don-t-take-the-trylock-during-oops.patch} | 2 +- ...atch => 0278-peterz-percpu-rwsem-rt.patch} | 0 ...=> 0279-fs-namespace-preemption-fix.patch} | 0 ... 0280-mm-protect-activate-switch-mm.patch} | 0 ...t.patch => 0281-fs-block-rt-support.patch} | 0 ...82-fs-ntfs-disable-interrupt-non-rt.patch} | 0 ...ll-your-plug-when-waiting-for-space.patch} | 0 ...ll-your-plug-when-waiting-for-space.patch} | 0 ...back-explicit-INIT_HLIST_BL_HEAD-in.patch} | 6 +- ...-preemption-on-i_dir_seq-s-write-si.patch} | 8 +- ...patch => 0287-x86-mce-timer-hrtimer.patch} | 0 ...mce-use-swait-queue-for-mce-wakeups.patch} | 0 ... 0289-x86-stackprot-no-random-on-rt.patch} | 0 ...0290-x86-use-gen-rwsem-spinlocks-rt.patch} | 0 ...0291-x86-UV-raw_spinlock-conversion.patch} | 0 ...mal-Defer-thermal-wakups-to-threads.patch} | 0 ...tch => 0293-epoll-use-get-cpu-light.patch} | 0 ...> 0294-mm-vmalloc-use-get-cpu-light.patch} | 0 ...atch => 0295-block-mq-use-cpu_light.patch} | 0 ... 0296-block-mq-drop-preempt-disable.patch} | 0 ...-mq-don-t-complete-requests-via-IPI.patch} | 0 ...8-md-raid5-percpu-handling-rt-aware.patch} | 0 ...-md-raid5-do-not-disable-interrupts.patch} | 0 ...atch => 0300-rt-introduce-cpu-chill.patch} | 0 ...a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch} | 0 ...el-cpu_chill-use-schedule_hrtimeout.patch} | 0 ...Add-a-UNINTERRUPTIBLE-hrtimer_nanos.patch} | 0 ...atch => 0304-block-blk-mq-use-swait.patch} | 0 ... 0305-Revert-block-blk-mq-Use-swait.patch} | 0 ...-blk_queue_usage_counter_release-in.patch} | 0 ...l.patch => 0307-block-use-cpu-chill.patch} | 0 ...ache-use-cpu-chill-in-trylock-loops.patch} | 6 +- ...ill.patch => 0309-net-use-cpu-chill.patch} | 0 ...se-swait_queue-instead-of-waitqueue.patch} | 4 +- ...rcu.patch => 0311-workqueue-use-rcu.patch} | 0 ...tch => 0312-workqueue-use-locallock.patch} | 0 ...k-around-irqsafe-timer-optimization.patch} | 0 ...14-workqueue-distangle-from-rq-lock.patch} | 0 ...ch => 0315-percpu_ida-use-locklocks.patch} | 0 ...ts-rt.patch => 0316-debugobjects-rt.patch} | 0 ...abel-rt.patch => 0317-jump-label-rt.patch} | 0 ... 0318-seqlock-prevent-rt-starvation.patch} | 0 ...c_xprt_do_enqueue-use-get_cpu_light.patch} | 0 ...ck.patch => 0320-skbufhead-raw-lock.patch} | 14 +- ...plug-drain-input_pkt_queue-lockless.patch} | 2 +- ...ecursion-to-per-task-variable-on-RT.patch} | 6 +- ...ct-instead-of-CPU-number-as-the-que.patch} | 4 +- ...-to-delegate-processing-a-softirq-t.patch} | 2 +- ...ke-qdisc-s-busylock-in-__dev_xmit_s.patch} | 0 ...disc-use-a-seqlock-instead-seqcount.patch} | 0 ...missing-serialization-in-ip_send_un.patch} | 0 ...e-tcp_sk_lock-lock-with-BH-disabled.patch} | 0 ... 0329-net-add-a-lock-around-icmp_sk.patch} | 0 ... => 0330-net-use-trylock-in-icmp_sk.patch} | 0 ...chedule_irqoff-disable-interrupts-o.patch} | 4 +- ...push_most_work_into_softirq_context.patch} | 0 ...k-Move-irq-safe-work-to-irq-context.patch} | 0 ...cm_stream_lock-irqs_disabled-splats.patch} | 0 ...aware.patch => 0335-printk-rt-aware.patch} | 0 ...-t-try-to-print-from-IRQ-NMI-region.patch} | 0 ...ntk-drop-the-logbuf_lock-more-often.patch} | 0 ... 0338-power-use-generic-rwsem-on-rt.patch} | 0 ...le-in-kernel-MPIC-emulation-for-PRE.patch} | 0 ...e-init.c-adapt-to-completions-using.patch} | 0 ...tclib-default-to-tclib-timer-for-rt.patch} | 0 ...tch => 0342-arm-unwind-use_raw_lock.patch} | 0 ...-translation-section-permission-fau.patch} | 0 ...irq_set_irqchip_state-documentation.patch} | 0 ...ngrade-preempt_disable-d-region-to-.patch} | 6 +- ...rm64-xen--Make-XEN-depend-on-non-rt.patch} | 0 ...patch => 0347-kgb-serial-hackaround.patch} | 2 +- ....patch => 0348-sysfs-realtime-entry.patch} | 0 ...=> 0349-power-disable-highmem-on-rt.patch} | 0 ... => 0350-mips-disable-highmem-on-rt.patch} | 0 ...> 0351-mm-rt-kmap-atomic-scheduling.patch} | 0 ...-rt--Fix-generic-kmap_atomic-for-RT.patch} | 0 ...ighmem-add-a-already-used-pte-check.patch} | 0 ...0354-arm-highmem-flush-tlb-on-unmap.patch} | 0 ...h => 0355-arm-enable-highmem-for-rt.patch} | 0 ...re.patch => 0356-scsi-fcoe-rt-aware.patch} | 0 ...-t-disable-interrupts-in-qc_issue-h.patch} | 0 ...pto-reduce-preempt-disabled-regions.patch} | 0 ...preempt-disabled-regions-more-algos.patch} | 12 +- ...pto-limit-more-FPU-enabled-sections.patch} | 0 ...361-arm-disable-NEON-in-kernel-mode.patch} | 0 ...ware.patch => 0362-dm-make-rt-aware.patch} | 0 ...cpi_gbl_hardware-lock-back-to-a-raw.patch} | 0 ...0364-cpumask-disable-offstack-on-rt.patch} | 0 ...h => 0365-random-make-it-work-on-rt.patch} | 0 ...om-avoid-preempt_disable-ed-section.patch} | 0 ...m-don-t-print-that-the-init-is-done.patch} | 0 ...-cpu-hotplug--Implement-CPU-pinning.patch} | 0 ...uct-tape-RT-rwlock-usage-for-non-RT.patch} | 0 ...unction-called-from-invalid-context.patch} | 0 ...ve-preemption-disabling-in-netif_rx.patch} | 4 +- ...l-irq-disable-alloc-atomic-headache.patch} | 0 ...users-of-napi_alloc_cache-against-r.patch} | 0 ...le-xt-write-recseq-begin-rt-fallout.patch} | 6 +- ...-net-make-devnet_rename_seq-a-mutex.patch} | 0 ...ch => 0376-peterz-srcu-crypto-chain.patch} | 0 ...rdirq-context-test-for-raw-spinlock.patch} | 0 ...fix-warnings-due-to-missing-PREEMPT.patch} | 0 ...use-cpu_online-instead-custom-check.patch} | 0 ...t-call_srcu-use-under-raw-spinlocks.patch} | 0 ...lace-local_irqsave-with-a-locallock.patch} | 0 ...82-rcu-disable-rcu-fast-no-hz-on-rt.patch} | 0 ...ate-softirq-processing-from-rcutree.patch} | 0 ...84-rcu-make-RCU_BOOST-default-on-RT.patch} | 0 ...normal_after_boot-by-default-for-RT.patch} | 0 ....patch => 0386-preempt-lazy-support.patch} | 0 ...7-ftrace-Fix-trace-header-alignment.patch} | 0 ...lazy.patch => 0388-x86-preempt-lazy.patch} | 0 ...ch => 0389-arm-preempt-lazy-support.patch} | 0 ...> 0390-powerpc-preempt-lazy-support.patch} | 0 ...arch-arm64-Add-lazy-preempt-support.patch} | 0 ...s-trigger-disable-CPU-trigger-on-RT.patch} | 0 ... => 0393-mmci-remove-bogus-irq-save.patch} | 0 ...op-K8-s-driver-from-beeing-selected.patch} | 0 ...-Protect-send_msg-with-a-local-lock.patch} | 0 ...m-Replace-bit-spinlocks-with-rtmute.patch} | 0 ...t-disable-preemption-in-zcomp_strea.patch} | 0 ...zcomp_stream_get-smp_processor_id-u.patch} | 0 ...9-tpm_tis-fix-stall-after-iowrite-s.patch} | 0 ...c-Don-t-use-completion-s-wait-queue.patch} | 0 ...isableenable_rt()_where_recommended.patch} | 0 ...q()_in_intel_pipe_update_startend().patch} | 0 ...oups-use-simple-wait-in-css_release.patch} | 6 +- ...eduling-while-atomic-in-cgroup-code.patch} | 0 ...-Prevent-scheduling-while-atomic-in.patch} | 0 ...ert-callback_lock-to-raw_spinlock_t.patch} | 0 ...7-move_sched_delayed_work_to_helper.patch} | 0 ...e-call-to-schedule_delayed_work-to-.patch} | 0 ...che.patch => 0409-md-disable-bcache.patch} | 0 ...a-locallock-instead-preempt_disable.patch} | 0 ...11-workqueue-prevent-deadlock-stall.patch} | 0 ...lversion.patch => 0412-localversion.patch} | 2 +- 412 files changed, 1503 insertions(+), 139 deletions(-) create mode 100644 kernel/patches-4.14.x-rt/0004-KVM-arm-arm64-Remove-redundant-preemptible-checks.patch create mode 100644 kernel/patches-4.14.x-rt/0005-0001-iommu-amd-Use-raw-locks-on-atomic-context-paths.patch create mode 100644 kernel/patches-4.14.x-rt/0006-0002-iommu-amd-Don-t-use-dev_data-in-irte_ga_set_affinity.patch create mode 100644 kernel/patches-4.14.x-rt/0007-0003-iommu-amd-Avoid-locking-get_irq_table-from-atomic-co.patch create mode 100644 kernel/patches-4.14.x-rt/0008-0001-iommu-amd-Take-into-account-that-alloc_dev_data-may-.patch create mode 100644 kernel/patches-4.14.x-rt/0009-0002-iommu-amd-Turn-dev_data_list-into-a-lock-less-list.patch create mode 100644 kernel/patches-4.14.x-rt/0010-0003-iommu-amd-Split-domain-id-out-of-amd_iommu_devtable_.patch create mode 100644 kernel/patches-4.14.x-rt/0011-0004-iommu-amd-Split-irq_lookup_table-out-of-the-amd_iomm.patch create mode 100644 kernel/patches-4.14.x-rt/0012-0005-iommu-amd-Remove-the-special-case-from-alloc_irq_tab.patch create mode 100644 kernel/patches-4.14.x-rt/0013-0006-iommu-amd-Use-table-instead-irt-as-variable-name-in-.patch create mode 100644 kernel/patches-4.14.x-rt/0014-0007-iommu-amd-Factor-out-setting-the-remap-table-for-a-d.patch create mode 100644 kernel/patches-4.14.x-rt/0015-0008-iommu-amd-Drop-the-lock-while-allocating-new-irq-rem.patch create mode 100644 kernel/patches-4.14.x-rt/0016-0009-iommu-amd-Make-amd_iommu_devtable_lock-a-spin_lock.patch create mode 100644 kernel/patches-4.14.x-rt/0017-0010-iommu-amd-Return-proper-error-code-in-irq_remapping_.patch rename kernel/patches-4.14.x-rt/{0004-0001-timers-Use-static-keys-for-migrate_enable-nohz_activ.patch => 0018-0001-timers-Use-static-keys-for-migrate_enable-nohz_activ.patch} (100%) rename kernel/patches-4.14.x-rt/{0005-0002-hrtimer-Correct-blantanly-wrong-comment.patch => 0019-0002-hrtimer-Correct-blantanly-wrong-comment.patch} (100%) rename kernel/patches-4.14.x-rt/{0006-0003-hrtimer-Fix-kerneldoc-for-struct-hrtimer_cpu_base.patch => 0020-0003-hrtimer-Fix-kerneldoc-for-struct-hrtimer_cpu_base.patch} (100%) rename kernel/patches-4.14.x-rt/{0007-0004-hrtimer-Cleanup-clock-argument-in-schedule_hrtimeout.patch => 0021-0004-hrtimer-Cleanup-clock-argument-in-schedule_hrtimeout.patch} (100%) rename kernel/patches-4.14.x-rt/{0008-0005-hrtimer-Fix-hrtimer-function-description.patch => 0022-0005-hrtimer-Fix-hrtimer-function-description.patch} (100%) rename kernel/patches-4.14.x-rt/{0009-0007-hrtimer-Cleanup-hrtimer_mode-enum.patch => 0023-0007-hrtimer-Cleanup-hrtimer_mode-enum.patch} (100%) rename kernel/patches-4.14.x-rt/{0010-0008-tracing-hrtimer-Take-all-clock-bases-and-modes-into-.patch => 0024-0008-tracing-hrtimer-Take-all-clock-bases-and-modes-into-.patch} (100%) rename kernel/patches-4.14.x-rt/{0011-0009-tracing-hrtimer-Print-hrtimer-mode-in-hrtimer_start-.patch => 0025-0009-tracing-hrtimer-Print-hrtimer-mode-in-hrtimer_start-.patch} (100%) rename kernel/patches-4.14.x-rt/{0012-0010-hrtimer-Switch-for-loop-to-_ffs-evaluation.patch => 0026-0010-hrtimer-Switch-for-loop-to-_ffs-evaluation.patch} (100%) rename kernel/patches-4.14.x-rt/{0013-0011-hrtimer-Store-running-timer-in-hrtimer_clock_base.patch => 0027-0011-hrtimer-Store-running-timer-in-hrtimer_clock_base.patch} (100%) rename kernel/patches-4.14.x-rt/{0014-0012-hrtimer-Make-room-in-struct-hrtimer_cpu_base.patch => 0028-0012-hrtimer-Make-room-in-struct-hrtimer_cpu_base.patch} (100%) rename kernel/patches-4.14.x-rt/{0015-0013-hrtimer-Reduce-conditional-code-hres_active.patch => 0029-0013-hrtimer-Reduce-conditional-code-hres_active.patch} (100%) rename kernel/patches-4.14.x-rt/{0016-0014-hrtimer-Use-accesor-functions-instead-of-direct-acce.patch => 0030-0014-hrtimer-Use-accesor-functions-instead-of-direct-acce.patch} (100%) rename kernel/patches-4.14.x-rt/{0017-0015-hrtimer-Make-the-remote-enqueue-check-unconditional.patch => 0031-0015-hrtimer-Make-the-remote-enqueue-check-unconditional.patch} (100%) rename kernel/patches-4.14.x-rt/{0018-0016-hrtimer-Make-hrtimer_cpu_base.next_timer-handling-un.patch => 0032-0016-hrtimer-Make-hrtimer_cpu_base.next_timer-handling-un.patch} (100%) rename kernel/patches-4.14.x-rt/{0019-0017-hrtimer-Make-hrtimer_reprogramm-unconditional.patch => 0033-0017-hrtimer-Make-hrtimer_reprogramm-unconditional.patch} (100%) rename kernel/patches-4.14.x-rt/{0020-0018-hrtimer-Make-hrtimer_force_reprogramm-unconditionall.patch => 0034-0018-hrtimer-Make-hrtimer_force_reprogramm-unconditionall.patch} (100%) rename kernel/patches-4.14.x-rt/{0021-0019-hrtimer-Unify-handling-of-hrtimer-remove.patch => 0035-0019-hrtimer-Unify-handling-of-hrtimer-remove.patch} (100%) rename kernel/patches-4.14.x-rt/{0022-0020-hrtimer-Unify-handling-of-remote-enqueue.patch => 0036-0020-hrtimer-Unify-handling-of-remote-enqueue.patch} (100%) rename kernel/patches-4.14.x-rt/{0023-0021-hrtimer-Make-remote-enqueue-decision-less-restrictiv.patch => 0037-0021-hrtimer-Make-remote-enqueue-decision-less-restrictiv.patch} (100%) rename kernel/patches-4.14.x-rt/{0024-0022-hrtimer-Remove-base-argument-from-hrtimer_reprogram.patch => 0038-0022-hrtimer-Remove-base-argument-from-hrtimer_reprogram.patch} (100%) rename kernel/patches-4.14.x-rt/{0025-0023-hrtimer-Split-hrtimer_start_range_ns.patch => 0039-0023-hrtimer-Split-hrtimer_start_range_ns.patch} (100%) rename kernel/patches-4.14.x-rt/{0026-0024-hrtimer-Split-__hrtimer_get_next_event.patch => 0040-0024-hrtimer-Split-__hrtimer_get_next_event.patch} (100%) rename kernel/patches-4.14.x-rt/{0027-0025-hrtimer-Use-irqsave-irqrestore-around-__run_hrtimer.patch => 0041-0025-hrtimer-Use-irqsave-irqrestore-around-__run_hrtimer.patch} (100%) rename kernel/patches-4.14.x-rt/{0028-0026-hrtimer-Add-clock-bases-and-hrtimer-mode-for-soft-ir.patch => 0042-0026-hrtimer-Add-clock-bases-and-hrtimer-mode-for-soft-ir.patch} (100%) rename kernel/patches-4.14.x-rt/{0029-0027-hrtimer-Prepare-handling-of-hard-and-softirq-based-h.patch => 0043-0027-hrtimer-Prepare-handling-of-hard-and-softirq-based-h.patch} (100%) rename kernel/patches-4.14.x-rt/{0030-0028-hrtimer-Implement-support-for-softirq-based-hrtimers.patch => 0044-0028-hrtimer-Implement-support-for-softirq-based-hrtimers.patch} (100%) rename kernel/patches-4.14.x-rt/{0031-0029-hrtimer-Implement-SOFT-HARD-clock-base-selection.patch => 0045-0029-hrtimer-Implement-SOFT-HARD-clock-base-selection.patch} (100%) rename kernel/patches-4.14.x-rt/{0032-0030-can-bcm-Replace-hrtimer_tasklet-with-softirq-based-h.patch => 0046-0030-can-bcm-Replace-hrtimer_tasklet-with-softirq-based-h.patch} (100%) rename kernel/patches-4.14.x-rt/{0033-0031-mac80211_hwsim-Replace-hrtimer-tasklet-with-softirq-.patch => 0047-0031-mac80211_hwsim-Replace-hrtimer-tasklet-with-softirq-.patch} (100%) rename kernel/patches-4.14.x-rt/{0034-0032-xfrm-Replace-hrtimer-tasklet-with-softirq-hrtimer.patch => 0048-0032-xfrm-Replace-hrtimer-tasklet-with-softirq-hrtimer.patch} (100%) rename kernel/patches-4.14.x-rt/{0035-0033-softirq-Remove-tasklet_hrtimer.patch => 0049-0033-softirq-Remove-tasklet_hrtimer.patch} (100%) rename kernel/patches-4.14.x-rt/{0036-0034-ALSA-dummy-Replace-tasklet-with-softirq-hrtimer.patch => 0050-0034-ALSA-dummy-Replace-tasklet-with-softirq-hrtimer.patch} (100%) rename kernel/patches-4.14.x-rt/{0037-0035-usb-gadget-NCM-Replace-tasklet-with-softirq-hrtimer.patch => 0051-0035-usb-gadget-NCM-Replace-tasklet-with-softirq-hrtimer.patch} (100%) delete mode 100644 kernel/patches-4.14.x-rt/0051-tty-goldfish-Enable-earlycon-only-if-built-in.patch rename kernel/patches-4.14.x-rt/{0038-0036-net-mvpp2-Replace-tasklet-with-softirq-hrtimer.patch => 0052-0036-net-mvpp2-Replace-tasklet-with-softirq-hrtimer.patch} (100%) rename kernel/patches-4.14.x-rt/{0039-at91_dont_enable_disable_clock.patch => 0053-at91_dont_enable_disable_clock.patch} (100%) rename kernel/patches-4.14.x-rt/{0040-rfc-arm-smp-__cpu_disable-fix-sleeping-function-called-from-invalid-context.patch => 0054-rfc-arm-smp-__cpu_disable-fix-sleeping-function-called-from-invalid-context.patch} (100%) rename kernel/patches-4.14.x-rt/{0041-rtmutex--Handle-non-enqueued-waiters-gracefully.patch => 0055-rtmutex--Handle-non-enqueued-waiters-gracefully.patch} (100%) rename kernel/patches-4.14.x-rt/{0042-rbtree-include-rcu.h-because-we-use-it.patch => 0056-rbtree-include-rcu.h-because-we-use-it.patch} (100%) rename kernel/patches-4.14.x-rt/{0043-rxrpc-remove-unused-static-variables.patch => 0057-rxrpc-remove-unused-static-variables.patch} (100%) rename kernel/patches-4.14.x-rt/{0044-mfd-syscon-atmel-smc-include-string.h.patch => 0058-mfd-syscon-atmel-smc-include-string.h.patch} (100%) rename kernel/patches-4.14.x-rt/{0045-sched-swait-include-wait.h.patch => 0059-sched-swait-include-wait.h.patch} (100%) rename kernel/patches-4.14.x-rt/{0046-NFSv4-replace-seqcount_t-with-a-seqlock_t.patch => 0060-NFSv4-replace-seqcount_t-with-a-seqlock_t.patch} (100%) rename kernel/patches-4.14.x-rt/{0047-Bluetooth-avoid-recursive-locking-in-hci_send_to_cha.patch => 0061-Bluetooth-avoid-recursive-locking-in-hci_send_to_cha.patch} (100%) rename kernel/patches-4.14.x-rt/{0048-iommu-iova-Use-raw_cpu_ptr-instead-of-get_cpu_ptr-fo.patch => 0062-iommu-iova-Use-raw_cpu_ptr-instead-of-get_cpu_ptr-fo.patch} (100%) rename kernel/patches-4.14.x-rt/{0049-greybus-audio-don-t-inclide-rwlock.h-directly.patch => 0063-greybus-audio-don-t-inclide-rwlock.h-directly.patch} (100%) rename kernel/patches-4.14.x-rt/{0050-xen-9pfs-don-t-inclide-rwlock.h-directly.patch => 0064-xen-9pfs-don-t-inclide-rwlock.h-directly.patch} (100%) rename kernel/patches-4.14.x-rt/{0052-drm-i915-properly-init-lockdep-class.patch => 0065-drm-i915-properly-init-lockdep-class.patch} (100%) rename kernel/patches-4.14.x-rt/{0053-timerqueue-Document-return-values-of-timerqueue_add-.patch => 0066-timerqueue-Document-return-values-of-timerqueue_add-.patch} (100%) rename kernel/patches-4.14.x-rt/{0054-sparc64-use-generic-rwsem-spinlocks-rt.patch => 0067-sparc64-use-generic-rwsem-spinlocks-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0055-kernel-SRCU-provide-a-static-initializer.patch => 0068-kernel-SRCU-provide-a-static-initializer.patch} (100%) rename kernel/patches-4.14.x-rt/{0056-target-drop-spin_lock_assert-irqs_disabled-combo-che.patch => 0069-target-drop-spin_lock_assert-irqs_disabled-combo-che.patch} (100%) rename kernel/patches-4.14.x-rt/{0057-kernel-sched-Provide-a-pointer-to-the-valid-CPU-mask.patch => 0070-kernel-sched-Provide-a-pointer-to-the-valid-CPU-mask.patch} (100%) rename kernel/patches-4.14.x-rt/{0058-add_migrate_disable.patch => 0071-add_migrate_disable.patch} (100%) rename kernel/patches-4.14.x-rt/{0059-0001-tracing-Reverse-the-order-of-trace_types_lock-and-ev.patch => 0072-0001-tracing-Reverse-the-order-of-trace_types_lock-and-ev.patch} (100%) rename kernel/patches-4.14.x-rt/{0060-0002-ring-buffer-Rewrite-trace_recursive_-un-lock-to-be-s.patch => 0073-0002-ring-buffer-Rewrite-trace_recursive_-un-lock-to-be-s.patch} (100%) rename kernel/patches-4.14.x-rt/{0061-0003-tracing-Remove-lookups-from-tracing_map-hitcount.patch => 0074-0003-tracing-Remove-lookups-from-tracing_map-hitcount.patch} (100%) rename kernel/patches-4.14.x-rt/{0062-0004-tracing-Increase-tracing-map-KEYS_MAX-size.patch => 0075-0004-tracing-Increase-tracing-map-KEYS_MAX-size.patch} (100%) rename kernel/patches-4.14.x-rt/{0063-0005-tracing-Make-traceprobe-parsing-code-reusable.patch => 0076-0005-tracing-Make-traceprobe-parsing-code-reusable.patch} (98%) rename kernel/patches-4.14.x-rt/{0064-0006-tracing-Clean-up-hist_field_flags-enum.patch => 0077-0006-tracing-Clean-up-hist_field_flags-enum.patch} (100%) rename kernel/patches-4.14.x-rt/{0065-0007-tracing-Add-hist_field_name-accessor.patch => 0078-0007-tracing-Add-hist_field_name-accessor.patch} (100%) rename kernel/patches-4.14.x-rt/{0066-0008-tracing-Reimplement-log2.patch => 0079-0008-tracing-Reimplement-log2.patch} (100%) rename kernel/patches-4.14.x-rt/{0067-0009-tracing-Move-hist-trigger-Documentation-to-histogram.patch => 0080-0009-tracing-Move-hist-trigger-Documentation-to-histogram.patch} (100%) rename kernel/patches-4.14.x-rt/{0068-0010-tracing-Add-Documentation-for-log2-modifier.patch => 0081-0010-tracing-Add-Documentation-for-log2-modifier.patch} (100%) rename kernel/patches-4.14.x-rt/{0069-0011-tracing-Add-support-to-detect-and-avoid-duplicates.patch => 0082-0011-tracing-Add-support-to-detect-and-avoid-duplicates.patch} (100%) rename kernel/patches-4.14.x-rt/{0070-0012-tracing-Remove-code-which-merges-duplicates.patch => 0083-0012-tracing-Remove-code-which-merges-duplicates.patch} (100%) rename kernel/patches-4.14.x-rt/{0071-0013-ring-buffer-Add-interface-for-setting-absolute-time-.patch => 0084-0013-ring-buffer-Add-interface-for-setting-absolute-time-.patch} (100%) rename kernel/patches-4.14.x-rt/{0072-0014-ring-buffer-Redefine-the-unimplemented-RINGBUF_TYPE_.patch => 0085-0014-ring-buffer-Redefine-the-unimplemented-RINGBUF_TYPE_.patch} (100%) rename kernel/patches-4.14.x-rt/{0073-0015-tracing-Add-timestamp_mode-trace-file.patch => 0086-0015-tracing-Add-timestamp_mode-trace-file.patch} (100%) rename kernel/patches-4.14.x-rt/{0074-0016-tracing-Give-event-triggers-access-to-ring_buffer_ev.patch => 0087-0016-tracing-Give-event-triggers-access-to-ring_buffer_ev.patch} (100%) rename kernel/patches-4.14.x-rt/{0075-0017-tracing-Add-ring-buffer-event-param-to-hist-field-fu.patch => 0088-0017-tracing-Add-ring-buffer-event-param-to-hist-field-fu.patch} (100%) rename kernel/patches-4.14.x-rt/{0076-0018-tracing-Break-out-hist-trigger-assignment-parsing.patch => 0089-0018-tracing-Break-out-hist-trigger-assignment-parsing.patch} (100%) rename kernel/patches-4.14.x-rt/{0077-0019-tracing-Add-hist-trigger-timestamp-support.patch => 0090-0019-tracing-Add-hist-trigger-timestamp-support.patch} (100%) rename kernel/patches-4.14.x-rt/{0078-0020-tracing-Add-per-element-variable-support-to-tracing_.patch => 0091-0020-tracing-Add-per-element-variable-support-to-tracing_.patch} (100%) rename kernel/patches-4.14.x-rt/{0079-0021-tracing-Add-hist_data-member-to-hist_field.patch => 0092-0021-tracing-Add-hist_data-member-to-hist_field.patch} (100%) rename kernel/patches-4.14.x-rt/{0080-0022-tracing-Add-usecs-modifier-for-hist-trigger-timestam.patch => 0093-0022-tracing-Add-usecs-modifier-for-hist-trigger-timestam.patch} (100%) rename kernel/patches-4.14.x-rt/{0081-0023-tracing-Add-variable-support-to-hist-triggers.patch => 0094-0023-tracing-Add-variable-support-to-hist-triggers.patch} (100%) rename kernel/patches-4.14.x-rt/{0082-0024-tracing-Account-for-variables-in-named-trigger-compa.patch => 0095-0024-tracing-Account-for-variables-in-named-trigger-compa.patch} (100%) rename kernel/patches-4.14.x-rt/{0083-0025-tracing-Move-get_hist_field_flags.patch => 0096-0025-tracing-Move-get_hist_field_flags.patch} (100%) rename kernel/patches-4.14.x-rt/{0084-0026-tracing-Add-simple-expression-support-to-hist-trigge.patch => 0097-0026-tracing-Add-simple-expression-support-to-hist-trigge.patch} (100%) rename kernel/patches-4.14.x-rt/{0085-0027-tracing-Generalize-per-element-hist-trigger-data.patch => 0098-0027-tracing-Generalize-per-element-hist-trigger-data.patch} (100%) rename kernel/patches-4.14.x-rt/{0086-0028-tracing-Pass-tracing_map_elt-to-hist_field-accessor-.patch => 0099-0028-tracing-Pass-tracing_map_elt-to-hist_field-accessor-.patch} (100%) rename kernel/patches-4.14.x-rt/{0087-0029-tracing-Add-hist_field-type-field.patch => 0100-0029-tracing-Add-hist_field-type-field.patch} (100%) rename kernel/patches-4.14.x-rt/{0088-0030-tracing-Add-variable-reference-handling-to-hist-trig.patch => 0101-0030-tracing-Add-variable-reference-handling-to-hist-trig.patch} (100%) rename kernel/patches-4.14.x-rt/{0089-0031-tracing-Add-hist-trigger-action-hook.patch => 0102-0031-tracing-Add-hist-trigger-action-hook.patch} (100%) rename kernel/patches-4.14.x-rt/{0090-0032-tracing-Add-support-for-synthetic-events.patch => 0103-0032-tracing-Add-support-for-synthetic-events.patch} (100%) rename kernel/patches-4.14.x-rt/{0091-0033-tracing-Add-support-for-field-variables.patch => 0104-0033-tracing-Add-support-for-field-variables.patch} (100%) rename kernel/patches-4.14.x-rt/{0092-0034-tracing-Add-onmatch-hist-trigger-action-support.patch => 0105-0034-tracing-Add-onmatch-hist-trigger-action-support.patch} (100%) rename kernel/patches-4.14.x-rt/{0093-0035-tracing-Add-onmax-hist-trigger-action-support.patch => 0106-0035-tracing-Add-onmax-hist-trigger-action-support.patch} (100%) rename kernel/patches-4.14.x-rt/{0094-0036-tracing-Allow-whitespace-to-surround-hist-trigger-fi.patch => 0107-0036-tracing-Allow-whitespace-to-surround-hist-trigger-fi.patch} (100%) rename kernel/patches-4.14.x-rt/{0095-0037-tracing-Add-cpu-field-for-hist-triggers.patch => 0108-0037-tracing-Add-cpu-field-for-hist-triggers.patch} (100%) rename kernel/patches-4.14.x-rt/{0096-0038-tracing-Add-hist-trigger-support-for-variable-refere.patch => 0109-0038-tracing-Add-hist-trigger-support-for-variable-refere.patch} (100%) rename kernel/patches-4.14.x-rt/{0097-0039-tracing-Add-last-error-error-facility-for-hist-trigg.patch => 0110-0039-tracing-Add-last-error-error-facility-for-hist-trigg.patch} (100%) rename kernel/patches-4.14.x-rt/{0098-0040-tracing-Add-inter-event-hist-trigger-Documentation.patch => 0111-0040-tracing-Add-inter-event-hist-trigger-Documentation.patch} (100%) rename kernel/patches-4.14.x-rt/{0099-0041-tracing-Make-tracing_set_clock-non-static.patch => 0112-0041-tracing-Make-tracing_set_clock-non-static.patch} (100%) rename kernel/patches-4.14.x-rt/{0100-0042-tracing-Add-a-clock-attribute-for-hist-triggers.patch => 0113-0042-tracing-Add-a-clock-attribute-for-hist-triggers.patch} (100%) rename kernel/patches-4.14.x-rt/{0101-0043-ring-buffer-Bring-back-context-level-recursive-check.patch => 0114-0043-ring-buffer-Bring-back-context-level-recursive-check.patch} (100%) rename kernel/patches-4.14.x-rt/{0102-0044-ring-buffer-Fix-duplicate-results-in-mapping-context.patch => 0115-0044-ring-buffer-Fix-duplicate-results-in-mapping-context.patch} (100%) rename kernel/patches-4.14.x-rt/{0103-0045-ring-buffer-Add-nesting-for-adding-events-within-eve.patch => 0116-0045-ring-buffer-Add-nesting-for-adding-events-within-eve.patch} (100%) rename kernel/patches-4.14.x-rt/{0104-0046-tracing-Use-the-ring-buffer-nesting-to-allow-synthet.patch => 0117-0046-tracing-Use-the-ring-buffer-nesting-to-allow-synthet.patch} (100%) rename kernel/patches-4.14.x-rt/{0105-0047-tracing-Add-inter-event-blurb-to-HIST_TRIGGERS-confi.patch => 0118-0047-tracing-Add-inter-event-blurb-to-HIST_TRIGGERS-confi.patch} (100%) rename kernel/patches-4.14.x-rt/{0106-0048-selftests-ftrace-Add-inter-event-hist-triggers-testc.patch => 0119-0048-selftests-ftrace-Add-inter-event-hist-triggers-testc.patch} (100%) create mode 100644 kernel/patches-4.14.x-rt/0120-0001-tracing-Fix-display-of-hist-trigger-expressions-cont.patch create mode 100644 kernel/patches-4.14.x-rt/0121-0002-tracing-Don-t-add-flag-strings-when-displaying-varia.patch create mode 100644 kernel/patches-4.14.x-rt/0122-0003-tracing-Add-action-comparisons-when-testing-matching.patch create mode 100644 kernel/patches-4.14.x-rt/0123-0004-tracing-Make-sure-variable-string-fields-are-NULL-te.patch rename kernel/patches-4.14.x-rt/{0107-block-shorten-interrupt-disabled-regions.patch => 0124-block-shorten-interrupt-disabled-regions.patch} (100%) rename kernel/patches-4.14.x-rt/{0108-timekeeping-split-jiffies-lock.patch => 0125-timekeeping-split-jiffies-lock.patch} (100%) rename kernel/patches-4.14.x-rt/{0109-tracing-account-for-preempt-off-in-preempt_schedule.patch => 0126-tracing-account-for-preempt-off-in-preempt_schedule.patch} (100%) rename kernel/patches-4.14.x-rt/{0110-signal-revert-ptrace-preempt-magic.patch => 0127-signal-revert-ptrace-preempt-magic.patch} (100%) rename kernel/patches-4.14.x-rt/{0111-arm-convert-boot-lock-to-raw.patch => 0128-arm-convert-boot-lock-to-raw.patch} (100%) rename kernel/patches-4.14.x-rt/{0112-arm-kprobe-replace-patch_lock-to-raw-lock.patch => 0129-arm-kprobe-replace-patch_lock-to-raw-lock.patch} (100%) rename kernel/patches-4.14.x-rt/{0113-posix-timers-no-broadcast.patch => 0130-posix-timers-no-broadcast.patch} (88%) rename kernel/patches-4.14.x-rt/{0114-signals-allow-rt-tasks-to-cache-one-sigqueue-struct.patch => 0131-signals-allow-rt-tasks-to-cache-one-sigqueue-struct.patch} (100%) rename kernel/patches-4.14.x-rt/{0115-drivers-random-reduce-preempt-disabled-region.patch => 0132-drivers-random-reduce-preempt-disabled-region.patch} (100%) rename kernel/patches-4.14.x-rt/{0116-arm-at91-pit-remove-irq-handler-when-clock-is-unused.patch => 0133-arm-at91-pit-remove-irq-handler-when-clock-is-unused.patch} (100%) rename kernel/patches-4.14.x-rt/{0117-clockevents-drivers-timer-atmel-pit-fix-double-free_.patch => 0134-clockevents-drivers-timer-atmel-pit-fix-double-free_.patch} (100%) rename kernel/patches-4.14.x-rt/{0118-clocksource-tclib-allow-higher-clockrates.patch => 0135-clocksource-tclib-allow-higher-clockrates.patch} (100%) rename kernel/patches-4.14.x-rt/{0119-drivers-net-8139-disable-irq-nosync.patch => 0136-drivers-net-8139-disable-irq-nosync.patch} (100%) rename kernel/patches-4.14.x-rt/{0120-suspend-prevernt-might-sleep-splats.patch => 0137-suspend-prevernt-might-sleep-splats.patch} (100%) rename kernel/patches-4.14.x-rt/{0121-net-prevent-abba-deadlock.patch => 0138-net-prevent-abba-deadlock.patch} (100%) rename kernel/patches-4.14.x-rt/{0122-net-sched-dev_deactivate_many-use-msleep-1-instead-o.patch => 0139-net-sched-dev_deactivate_many-use-msleep-1-instead-o.patch} (100%) rename kernel/patches-4.14.x-rt/{0123-net_disable_NET_RX_BUSY_POLL.patch => 0140-net_disable_NET_RX_BUSY_POLL.patch} (100%) rename kernel/patches-4.14.x-rt/{0124-x86-io-apic-migra-no-unmask.patch => 0141-x86-io-apic-migra-no-unmask.patch} (100%) rename kernel/patches-4.14.x-rt/{0125-rcu-segcblist-include-rcupdate.h.patch => 0142-rcu-segcblist-include-rcupdate.h.patch} (100%) rename kernel/patches-4.14.x-rt/{0126-printk-kill.patch => 0143-printk-kill.patch} (100%) rename kernel/patches-4.14.x-rt/{0127-printk-27force_early_printk-27-boot-param-to-help-with-debugging.patch => 0144-printk-27force_early_printk-27-boot-param-to-help-with-debugging.patch} (100%) rename kernel/patches-4.14.x-rt/{0128-rt-preempt-base-config.patch => 0145-rt-preempt-base-config.patch} (100%) rename kernel/patches-4.14.x-rt/{0129-kconfig-disable-a-few-options-rt.patch => 0146-kconfig-disable-a-few-options-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0130-kconfig-preempt-rt-full.patch => 0147-kconfig-preempt-rt-full.patch} (100%) rename kernel/patches-4.14.x-rt/{0131-bug-rt-dependend-variants.patch => 0148-bug-rt-dependend-variants.patch} (100%) rename kernel/patches-4.14.x-rt/{0132-iommu-amd--Use-WARN_ON_NORT.patch => 0149-iommu-amd--Use-WARN_ON_NORT.patch} (91%) rename kernel/patches-4.14.x-rt/{0133-local-irq-rt-depending-variants.patch => 0150-local-irq-rt-depending-variants.patch} (100%) rename kernel/patches-4.14.x-rt/{0134-preempt-nort-rt-variants.patch => 0151-preempt-nort-rt-variants.patch} (100%) rename kernel/patches-4.14.x-rt/{0135-futex-workaround-migrate_disable-enable-in-different.patch => 0152-futex-workaround-migrate_disable-enable-in-different.patch} (100%) rename kernel/patches-4.14.x-rt/{0136-rt-local-irq-lock.patch => 0153-rt-local-irq-lock.patch} (100%) rename kernel/patches-4.14.x-rt/{0137-ata-disable-interrupts-if-non-rt.patch => 0154-ata-disable-interrupts-if-non-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0138-ide-use-nort-local-irq-variants.patch => 0155-ide-use-nort-local-irq-variants.patch} (100%) rename kernel/patches-4.14.x-rt/{0139-infiniband-mellanox-ib-use-nort-irq.patch => 0156-infiniband-mellanox-ib-use-nort-irq.patch} (100%) rename kernel/patches-4.14.x-rt/{0140-inpt-gameport-use-local-irq-nort.patch => 0157-inpt-gameport-use-local-irq-nort.patch} (100%) rename kernel/patches-4.14.x-rt/{0141-user-use-local-irq-nort.patch => 0158-user-use-local-irq-nort.patch} (100%) rename kernel/patches-4.14.x-rt/{0142-usb-use-_nort-in-giveback.patch => 0159-usb-use-_nort-in-giveback.patch} (100%) rename kernel/patches-4.14.x-rt/{0143-mm-scatterlist-dont-disable-irqs-on-RT.patch => 0160-mm-scatterlist-dont-disable-irqs-on-RT.patch} (100%) rename kernel/patches-4.14.x-rt/{0144-mm-workingset-do-not-protect-workingset_shadow_nodes.patch => 0161-mm-workingset-do-not-protect-workingset_shadow_nodes.patch} (100%) rename kernel/patches-4.14.x-rt/{0145-signal-fix-up-rcu-wreckage.patch => 0162-signal-fix-up-rcu-wreckage.patch} (100%) rename kernel/patches-4.14.x-rt/{0146-oleg-signal-rt-fix.patch => 0163-oleg-signal-rt-fix.patch} (100%) rename kernel/patches-4.14.x-rt/{0147-x86-signal-delay-calling-signals-on-32bit.patch => 0164-x86-signal-delay-calling-signals-on-32bit.patch} (100%) rename kernel/patches-4.14.x-rt/{0148-net-wireless-warn-nort.patch => 0165-net-wireless-warn-nort.patch} (100%) rename kernel/patches-4.14.x-rt/{0149-fs-replace-bh_uptodate_lock-for-rt.patch => 0166-fs-replace-bh_uptodate_lock-for-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0150-fs-jbd-replace-bh_state-lock.patch => 0167-fs-jbd-replace-bh_state-lock.patch} (100%) rename kernel/patches-4.14.x-rt/{0151-list_bl.h-make-list-head-locking-RT-safe.patch => 0168-list_bl.h-make-list-head-locking-RT-safe.patch} (100%) rename kernel/patches-4.14.x-rt/{0152-list_bl-fixup-bogus-lockdep-warning.patch => 0169-list_bl-fixup-bogus-lockdep-warning.patch} (100%) rename kernel/patches-4.14.x-rt/{0153-genirq-disable-irqpoll-on-rt.patch => 0170-genirq-disable-irqpoll-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0154-genirq-force-threading.patch => 0171-genirq-force-threading.patch} (100%) rename kernel/patches-4.14.x-rt/{0155-drivers-net-vortex-fix-locking-issues.patch => 0172-drivers-net-vortex-fix-locking-issues.patch} (100%) rename kernel/patches-4.14.x-rt/{0156-delayacct-use-raw_spinlocks.patch => 0173-delayacct-use-raw_spinlocks.patch} (100%) rename kernel/patches-4.14.x-rt/{0157-mm-page_alloc-rt-friendly-per-cpu-pages.patch => 0174-mm-page_alloc-rt-friendly-per-cpu-pages.patch} (98%) rename kernel/patches-4.14.x-rt/{0158-mm-page_alloc-reduce-lock-sections-further.patch => 0175-mm-page_alloc-reduce-lock-sections-further.patch} (100%) rename kernel/patches-4.14.x-rt/{0159-mm-convert-swap-to-percpu-locked.patch => 0176-mm-convert-swap-to-percpu-locked.patch} (98%) rename kernel/patches-4.14.x-rt/{0160-mm-perform-lru_add_drain_all-remotely.patch => 0177-mm-perform-lru_add_drain_all-remotely.patch} (100%) rename kernel/patches-4.14.x-rt/{0161-mm-make-vmstat-rt-aware.patch => 0178-mm-make-vmstat-rt-aware.patch} (100%) rename kernel/patches-4.14.x-rt/{0162-re-preempt_rt_full-arm-coredump-fails-for-cpu-3e-3d-4.patch => 0179-re-preempt_rt_full-arm-coredump-fails-for-cpu-3e-3d-4.patch} (100%) rename kernel/patches-4.14.x-rt/{0163-mm-bounce-local-irq-save-nort.patch => 0180-mm-bounce-local-irq-save-nort.patch} (100%) rename kernel/patches-4.14.x-rt/{0164-mm-disable-sloub-rt.patch => 0181-mm-disable-sloub-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0165-mm-enable-slub.patch => 0182-mm-enable-slub.patch} (100%) rename kernel/patches-4.14.x-rt/{0166-mm-slub-close-possible-memory-leak-in-kmem_cache_all.patch => 0183-mm-slub-close-possible-memory-leak-in-kmem_cache_all.patch} (100%) rename kernel/patches-4.14.x-rt/{0167-slub-enable-irqs-for-no-wait.patch => 0184-slub-enable-irqs-for-no-wait.patch} (100%) rename kernel/patches-4.14.x-rt/{0168-slub-disable-SLUB_CPU_PARTIAL.patch => 0185-slub-disable-SLUB_CPU_PARTIAL.patch} (100%) rename kernel/patches-4.14.x-rt/{0169-mm-page-alloc-use-local-lock-on-target-cpu.patch => 0186-mm-page-alloc-use-local-lock-on-target-cpu.patch} (100%) rename kernel/patches-4.14.x-rt/{0170-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch => 0187-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch} (100%) rename kernel/patches-4.14.x-rt/{0171-mm-memcontrol-do_not_disable_irq.patch => 0188-mm-memcontrol-do_not_disable_irq.patch} (100%) rename kernel/patches-4.14.x-rt/{0172-mm-backing-dev-don-t-disable-IRQs-in-wb_congested_pu.patch => 0189-mm-backing-dev-don-t-disable-IRQs-in-wb_congested_pu.patch} (100%) rename kernel/patches-4.14.x-rt/{0173-mm_zsmalloc_copy_with_get_cpu_var_and_locking.patch => 0190-mm_zsmalloc_copy_with_get_cpu_var_and_locking.patch} (100%) rename kernel/patches-4.14.x-rt/{0174-radix-tree-use-local-locks.patch => 0191-radix-tree-use-local-locks.patch} (100%) rename kernel/patches-4.14.x-rt/{0175-panic-disable-random-on-rt.patch => 0192-panic-disable-random-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0176-timers-prepare-for-full-preemption.patch => 0193-timers-prepare-for-full-preemption.patch} (100%) rename kernel/patches-4.14.x-rt/{0177-timer-delay-waking-softirqs-from-the-jiffy-tick.patch => 0194-timer-delay-waking-softirqs-from-the-jiffy-tick.patch} (100%) rename kernel/patches-4.14.x-rt/{0178-nohz-Prevent-erroneous-tick-stop-invocations.patch => 0195-nohz-Prevent-erroneous-tick-stop-invocations.patch} (100%) rename kernel/patches-4.14.x-rt/{0179-x86-kvm-require-const-tsc-for-rt.patch => 0196-x86-kvm-require-const-tsc-for-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0180-wait.h-include-atomic.h.patch => 0197-wait.h-include-atomic.h.patch} (100%) rename kernel/patches-4.14.x-rt/{0181-work-simple-Simple-work-queue-implemenation.patch => 0198-work-simple-Simple-work-queue-implemenation.patch} (100%) rename kernel/patches-4.14.x-rt/{0182-completion-use-simple-wait-queues.patch => 0199-completion-use-simple-wait-queues.patch} (100%) rename kernel/patches-4.14.x-rt/{0183-fs-aio-simple-simple-work.patch => 0200-fs-aio-simple-simple-work.patch} (100%) rename kernel/patches-4.14.x-rt/{0184-genirq-do-not-invoke-the-affinity-callback-via-a-wor.patch => 0201-genirq-do-not-invoke-the-affinity-callback-via-a-wor.patch} (100%) rename kernel/patches-4.14.x-rt/{0185-time-hrtimer-avoid-schedule_work-with-interrupts-dis.patch => 0202-time-hrtimer-avoid-schedule_work-with-interrupts-dis.patch} (100%) rename kernel/patches-4.14.x-rt/{0186-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch => 0203-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch} (99%) rename kernel/patches-4.14.x-rt/{0187-hrtimers-prepare-full-preemption.patch => 0204-hrtimers-prepare-full-preemption.patch} (94%) rename kernel/patches-4.14.x-rt/{0188-hrtimer-by-timers-by-default-into-the-softirq-context.patch => 0205-hrtimer-by-timers-by-default-into-the-softirq-context.patch} (99%) create mode 100644 kernel/patches-4.14.x-rt/0206-alarmtimer-Prevent-live-lock-in-alarm_cancel.patch create mode 100644 kernel/patches-4.14.x-rt/0207-posix-timers-user-proper-timer-while-waiting-for-ala.patch create mode 100644 kernel/patches-4.14.x-rt/0208-posix-timers-move-the-rcu-head-out-of-the-union.patch rename kernel/patches-4.14.x-rt/{0189-hrtimer-Move-schedule_work-call-to-helper-thread.patch => 0209-hrtimer-Move-schedule_work-call-to-helper-thread.patch} (100%) rename kernel/patches-4.14.x-rt/{0190-timer-fd-avoid-live-lock.patch => 0210-timer-fd-avoid-live-lock.patch} (100%) rename kernel/patches-4.14.x-rt/{0191-posix-timers-thread-posix-cpu-timers-on-rt.patch => 0211-posix-timers-thread-posix-cpu-timers-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0192-sched-delay-put-task.patch => 0212-sched-delay-put-task.patch} (100%) rename kernel/patches-4.14.x-rt/{0193-sched-limit-nr-migrate.patch => 0213-sched-limit-nr-migrate.patch} (100%) rename kernel/patches-4.14.x-rt/{0194-sched-mmdrop-delayed.patch => 0214-sched-mmdrop-delayed.patch} (100%) rename kernel/patches-4.14.x-rt/{0195-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch => 0215-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch} (100%) rename kernel/patches-4.14.x-rt/{0196-sched-rt-mutex-wakeup.patch => 0216-sched-rt-mutex-wakeup.patch} (100%) rename kernel/patches-4.14.x-rt/{0197-sched-Prevent-task-state-corruption-by-spurious-lock.patch => 0217-sched-Prevent-task-state-corruption-by-spurious-lock.patch} (100%) rename kernel/patches-4.14.x-rt/{0198-sched-Remove-TASK_ALL.patch => 0218-sched-Remove-TASK_ALL.patch} (100%) rename kernel/patches-4.14.x-rt/{0199-sched-might-sleep-do-not-account-rcu-depth.patch => 0219-sched-might-sleep-do-not-account-rcu-depth.patch} (100%) rename kernel/patches-4.14.x-rt/{0200-cond-resched-softirq-rt.patch => 0220-cond-resched-softirq-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0201-cond-resched-lock-rt-tweak.patch => 0221-cond-resched-lock-rt-tweak.patch} (100%) rename kernel/patches-4.14.x-rt/{0202-sched-disable-ttwu-queue.patch => 0222-sched-disable-ttwu-queue.patch} (100%) rename kernel/patches-4.14.x-rt/{0203-sched-disable-rt-group-sched-on-rt.patch => 0223-sched-disable-rt-group-sched-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0204-sched-ttwu-ensure-success-return-is-correct.patch => 0224-sched-ttwu-ensure-success-return-is-correct.patch} (100%) rename kernel/patches-4.14.x-rt/{0205-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch => 0225-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch} (100%) rename kernel/patches-4.14.x-rt/{0206-rt-Increase-decrease-the-nr-of-migratory-tasks-when-.patch => 0226-rt-Increase-decrease-the-nr-of-migratory-tasks-when-.patch} (100%) rename kernel/patches-4.14.x-rt/{0207-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch => 0227-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch} (100%) rename kernel/patches-4.14.x-rt/{0208-stop-machine-raw-lock.patch => 0228-stop-machine-raw-lock.patch} (100%) rename kernel/patches-4.14.x-rt/{0209-hotplug-light-get-online-cpus.patch => 0229-hotplug-light-get-online-cpus.patch} (100%) rename kernel/patches-4.14.x-rt/{0210-ftrace-migrate-disable-tracing.patch => 0230-ftrace-migrate-disable-tracing.patch} (100%) rename kernel/patches-4.14.x-rt/{0211-lockdep-no-softirq-accounting-on-rt.patch => 0231-lockdep-no-softirq-accounting-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0212-lockdep-disable-self-test.patch => 0232-lockdep-disable-self-test.patch} (100%) rename kernel/patches-4.14.x-rt/{0213-mutex-no-spin-on-rt.patch => 0233-mutex-no-spin-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0214-tasklet-rt-prevent-tasklets-from-going-into-infinite-spin-in-rt.patch => 0234-tasklet-rt-prevent-tasklets-from-going-into-infinite-spin-in-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0215-softirq-preempt-fix-3-re.patch => 0235-softirq-preempt-fix-3-re.patch} (94%) rename kernel/patches-4.14.x-rt/{0216-softirq-disable-softirq-stacks-for-rt.patch => 0236-softirq-disable-softirq-stacks-for-rt.patch} (97%) rename kernel/patches-4.14.x-rt/{0217-softirq-split-locks.patch => 0237-softirq-split-locks.patch} (99%) rename kernel/patches-4.14.x-rt/{0218-kernel-softirq-unlock-with-irqs-on.patch => 0238-kernel-softirq-unlock-with-irqs-on.patch} (100%) rename kernel/patches-4.14.x-rt/{0219-irq-allow-disabling-of-softirq-processing-in-irq-thread-context.patch => 0239-irq-allow-disabling-of-softirq-processing-in-irq-thread-context.patch} (100%) rename kernel/patches-4.14.x-rt/{0220-softirq-split-timer-softirqs-out-of-ksoftirqd.patch => 0240-softirq-split-timer-softirqs-out-of-ksoftirqd.patch} (100%) rename kernel/patches-4.14.x-rt/{0221-softirq-wake-the-timer-softirq-if-needed.patch => 0241-softirq-wake-the-timer-softirq-if-needed.patch} (100%) rename kernel/patches-4.14.x-rt/{0222-rtmutex-trylock-is-okay-on-RT.patch => 0242-rtmutex-trylock-is-okay-on-RT.patch} (100%) rename kernel/patches-4.14.x-rt/{0223-fs-nfs-turn-rmdir_sem-into-a-semaphore.patch => 0243-fs-nfs-turn-rmdir_sem-into-a-semaphore.patch} (100%) rename kernel/patches-4.14.x-rt/{0224-rtmutex-futex-prepare-rt.patch => 0244-rtmutex-futex-prepare-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0225-futex-requeue-pi-fix.patch => 0245-futex-requeue-pi-fix.patch} (100%) rename kernel/patches-4.14.x-rt/{0226-locking-rtmutex-don-t-drop-the-wait_lock-twice.patch => 0246-locking-rtmutex-don-t-drop-the-wait_lock-twice.patch} (100%) rename kernel/patches-4.14.x-rt/{0227-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch => 0247-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch} (100%) rename kernel/patches-4.14.x-rt/{0228-pid.h-include-atomic.h.patch => 0248-pid.h-include-atomic.h.patch} (100%) rename kernel/patches-4.14.x-rt/{0229-arm-include-definition-for-cpumask_t.patch => 0249-arm-include-definition-for-cpumask_t.patch} (100%) rename kernel/patches-4.14.x-rt/{0230-locking-locktorture-Do-NOT-include-rwlock.h-directly.patch => 0250-locking-locktorture-Do-NOT-include-rwlock.h-directly.patch} (100%) rename kernel/patches-4.14.x-rt/{0231-rtmutex-lock-killable.patch => 0251-rtmutex-lock-killable.patch} (100%) rename kernel/patches-4.14.x-rt/{0232-rtmutex-Make-lock_killable-work.patch => 0252-rtmutex-Make-lock_killable-work.patch} (100%) rename kernel/patches-4.14.x-rt/{0233-spinlock-types-separate-raw.patch => 0253-spinlock-types-separate-raw.patch} (100%) rename kernel/patches-4.14.x-rt/{0234-rtmutex-avoid-include-hell.patch => 0254-rtmutex-avoid-include-hell.patch} (100%) rename kernel/patches-4.14.x-rt/{0235-rtmutex_dont_include_rcu.patch => 0255-rtmutex_dont_include_rcu.patch} (100%) rename kernel/patches-4.14.x-rt/{0236-rtmutex-Provide-rt_mutex_slowlock_locked.patch => 0256-rtmutex-Provide-rt_mutex_slowlock_locked.patch} (100%) rename kernel/patches-4.14.x-rt/{0237-rtmutex-export-lockdep-less-version-of-rt_mutex-s-lo.patch => 0257-rtmutex-export-lockdep-less-version-of-rt_mutex-s-lo.patch} (100%) rename kernel/patches-4.14.x-rt/{0238-rtmutex-add-sleeping-lock-implementation.patch => 0258-rtmutex-add-sleeping-lock-implementation.patch} (100%) rename kernel/patches-4.14.x-rt/{0239-rtmutex-add-mutex-implementation-based-on-rtmutex.patch => 0259-rtmutex-add-mutex-implementation-based-on-rtmutex.patch} (100%) rename kernel/patches-4.14.x-rt/{0240-rtmutex-add-rwsem-implementation-based-on-rtmutex.patch => 0260-rtmutex-add-rwsem-implementation-based-on-rtmutex.patch} (100%) rename kernel/patches-4.14.x-rt/{0241-rtmutex-add-rwlock-implementation-based-on-rtmutex.patch => 0261-rtmutex-add-rwlock-implementation-based-on-rtmutex.patch} (100%) rename kernel/patches-4.14.x-rt/{0242-rtmutex-wire-up-RT-s-locking.patch => 0262-rtmutex-wire-up-RT-s-locking.patch} (100%) rename kernel/patches-4.14.x-rt/{0243-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch => 0263-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0244-locking-rt-mutex-fix-deadlock-in-device-mapper-block.patch => 0264-locking-rt-mutex-fix-deadlock-in-device-mapper-block.patch} (100%) rename kernel/patches-4.14.x-rt/{0245-locking-rtmutex-re-init-the-wait_lock-in-rt_mutex_in.patch => 0265-locking-rtmutex-re-init-the-wait_lock-in-rt_mutex_in.patch} (100%) rename kernel/patches-4.14.x-rt/{0246-ptrace-fix-ptrace-vs-tasklist_lock-race.patch => 0266-ptrace-fix-ptrace-vs-tasklist_lock-race.patch} (100%) rename kernel/patches-4.14.x-rt/{0247-RCU-we-need-to-skip-that-warning-but-only-on-sleepin.patch => 0267-RCU-we-need-to-skip-that-warning-but-only-on-sleepin.patch} (100%) rename kernel/patches-4.14.x-rt/{0248-RCU-skip-the-schedule-in-RCU-section-warning-on-UP-t.patch => 0268-RCU-skip-the-schedule-in-RCU-section-warning-on-UP-t.patch} (100%) rename kernel/patches-4.14.x-rt/{0249-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch => 0269-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch} (100%) rename kernel/patches-4.14.x-rt/{0250-peter_zijlstra-frob-rcu.patch => 0270-peter_zijlstra-frob-rcu.patch} (100%) rename kernel/patches-4.14.x-rt/{0251-rcu-merge-rcu-bh-into-rcu-preempt-for-rt.patch => 0271-rcu-merge-rcu-bh-into-rcu-preempt-for-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0252-patch-to-introduce-rcu-bh-qs-where-safe-from-softirq.patch => 0272-patch-to-introduce-rcu-bh-qs-where-safe-from-softirq.patch} (100%) rename kernel/patches-4.14.x-rt/{0253-rcutree-rcu_bh_qs-disable-irq-while-calling-rcu_pree.patch => 0273-rcutree-rcu_bh_qs-disable-irq-while-calling-rcu_pree.patch} (100%) rename kernel/patches-4.14.x-rt/{0254-drivers-tty-fix-omap-lock-crap.patch => 0274-drivers-tty-fix-omap-lock-crap.patch} (100%) rename kernel/patches-4.14.x-rt/{0255-drivers-tty-pl011-irq-disable-madness.patch => 0275-drivers-tty-pl011-irq-disable-madness.patch} (100%) rename kernel/patches-4.14.x-rt/{0256-rt-serial-warn-fix.patch => 0276-rt-serial-warn-fix.patch} (100%) rename kernel/patches-4.14.x-rt/{0257-tty-serial-8250-don-t-take-the-trylock-during-oops.patch => 0277-tty-serial-8250-don-t-take-the-trylock-during-oops.patch} (93%) rename kernel/patches-4.14.x-rt/{0258-peterz-percpu-rwsem-rt.patch => 0278-peterz-percpu-rwsem-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0259-fs-namespace-preemption-fix.patch => 0279-fs-namespace-preemption-fix.patch} (100%) rename kernel/patches-4.14.x-rt/{0260-mm-protect-activate-switch-mm.patch => 0280-mm-protect-activate-switch-mm.patch} (100%) rename kernel/patches-4.14.x-rt/{0261-fs-block-rt-support.patch => 0281-fs-block-rt-support.patch} (100%) rename kernel/patches-4.14.x-rt/{0262-fs-ntfs-disable-interrupt-non-rt.patch => 0282-fs-ntfs-disable-interrupt-non-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0263-fs-jbd2-pull-your-plug-when-waiting-for-space.patch => 0283-fs-jbd2-pull-your-plug-when-waiting-for-space.patch} (100%) rename kernel/patches-4.14.x-rt/{0264-Revert-fs-jbd2-pull-your-plug-when-waiting-for-space.patch => 0284-Revert-fs-jbd2-pull-your-plug-when-waiting-for-space.patch} (100%) rename kernel/patches-4.14.x-rt/{0265-fs-dcache-bringt-back-explicit-INIT_HLIST_BL_HEAD-in.patch => 0285-fs-dcache-bringt-back-explicit-INIT_HLIST_BL_HEAD-in.patch} (87%) rename kernel/patches-4.14.x-rt/{0266-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch => 0286-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch} (93%) rename kernel/patches-4.14.x-rt/{0267-x86-mce-timer-hrtimer.patch => 0287-x86-mce-timer-hrtimer.patch} (100%) rename kernel/patches-4.14.x-rt/{0268-x86-mce-use-swait-queue-for-mce-wakeups.patch => 0288-x86-mce-use-swait-queue-for-mce-wakeups.patch} (100%) rename kernel/patches-4.14.x-rt/{0269-x86-stackprot-no-random-on-rt.patch => 0289-x86-stackprot-no-random-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0270-x86-use-gen-rwsem-spinlocks-rt.patch => 0290-x86-use-gen-rwsem-spinlocks-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0271-x86-UV-raw_spinlock-conversion.patch => 0291-x86-UV-raw_spinlock-conversion.patch} (100%) rename kernel/patches-4.14.x-rt/{0272-thermal-Defer-thermal-wakups-to-threads.patch => 0292-thermal-Defer-thermal-wakups-to-threads.patch} (100%) rename kernel/patches-4.14.x-rt/{0273-epoll-use-get-cpu-light.patch => 0293-epoll-use-get-cpu-light.patch} (100%) rename kernel/patches-4.14.x-rt/{0274-mm-vmalloc-use-get-cpu-light.patch => 0294-mm-vmalloc-use-get-cpu-light.patch} (100%) rename kernel/patches-4.14.x-rt/{0275-block-mq-use-cpu_light.patch => 0295-block-mq-use-cpu_light.patch} (100%) rename kernel/patches-4.14.x-rt/{0276-block-mq-drop-preempt-disable.patch => 0296-block-mq-drop-preempt-disable.patch} (100%) rename kernel/patches-4.14.x-rt/{0277-block-mq-don-t-complete-requests-via-IPI.patch => 0297-block-mq-don-t-complete-requests-via-IPI.patch} (100%) rename kernel/patches-4.14.x-rt/{0278-md-raid5-percpu-handling-rt-aware.patch => 0298-md-raid5-percpu-handling-rt-aware.patch} (100%) rename kernel/patches-4.14.x-rt/{0279-md-raid5-do-not-disable-interrupts.patch => 0299-md-raid5-do-not-disable-interrupts.patch} (100%) rename kernel/patches-4.14.x-rt/{0280-rt-introduce-cpu-chill.patch => 0300-rt-introduce-cpu-chill.patch} (100%) rename kernel/patches-4.14.x-rt/{0281-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch => 0301-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch} (100%) rename kernel/patches-4.14.x-rt/{0282-kernel-cpu_chill-use-schedule_hrtimeout.patch => 0302-kernel-cpu_chill-use-schedule_hrtimeout.patch} (100%) rename kernel/patches-4.14.x-rt/{0283-Revert-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanos.patch => 0303-Revert-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanos.patch} (100%) rename kernel/patches-4.14.x-rt/{0284-block-blk-mq-use-swait.patch => 0304-block-blk-mq-use-swait.patch} (100%) rename kernel/patches-4.14.x-rt/{0285-Revert-block-blk-mq-Use-swait.patch => 0305-Revert-block-blk-mq-Use-swait.patch} (100%) rename kernel/patches-4.14.x-rt/{0286-block-blk-mq-move-blk_queue_usage_counter_release-in.patch => 0306-block-blk-mq-move-blk_queue_usage_counter_release-in.patch} (100%) rename kernel/patches-4.14.x-rt/{0287-block-use-cpu-chill.patch => 0307-block-use-cpu-chill.patch} (100%) rename kernel/patches-4.14.x-rt/{0288-fs-dcache-use-cpu-chill-in-trylock-loops.patch => 0308-fs-dcache-use-cpu-chill-in-trylock-loops.patch} (93%) rename kernel/patches-4.14.x-rt/{0289-net-use-cpu-chill.patch => 0309-net-use-cpu-chill.patch} (100%) rename kernel/patches-4.14.x-rt/{0290-fs-dcache-use-swait_queue-instead-of-waitqueue.patch => 0310-fs-dcache-use-swait_queue-instead-of-waitqueue.patch} (98%) rename kernel/patches-4.14.x-rt/{0291-workqueue-use-rcu.patch => 0311-workqueue-use-rcu.patch} (100%) rename kernel/patches-4.14.x-rt/{0292-workqueue-use-locallock.patch => 0312-workqueue-use-locallock.patch} (100%) rename kernel/patches-4.14.x-rt/{0293-work-queue-work-around-irqsafe-timer-optimization.patch => 0313-work-queue-work-around-irqsafe-timer-optimization.patch} (100%) rename kernel/patches-4.14.x-rt/{0294-workqueue-distangle-from-rq-lock.patch => 0314-workqueue-distangle-from-rq-lock.patch} (100%) rename kernel/patches-4.14.x-rt/{0295-percpu_ida-use-locklocks.patch => 0315-percpu_ida-use-locklocks.patch} (100%) rename kernel/patches-4.14.x-rt/{0296-debugobjects-rt.patch => 0316-debugobjects-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0297-jump-label-rt.patch => 0317-jump-label-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0298-seqlock-prevent-rt-starvation.patch => 0318-seqlock-prevent-rt-starvation.patch} (100%) rename kernel/patches-4.14.x-rt/{0299-sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch => 0319-sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch} (100%) rename kernel/patches-4.14.x-rt/{0300-skbufhead-raw-lock.patch => 0320-skbufhead-raw-lock.patch} (90%) rename kernel/patches-4.14.x-rt/{0301-net-core-cpuhotplug-drain-input_pkt_queue-lockless.patch => 0321-net-core-cpuhotplug-drain-input_pkt_queue-lockless.patch} (97%) rename kernel/patches-4.14.x-rt/{0302-net-move-xmit_recursion-to-per-task-variable-on-RT.patch => 0322-net-move-xmit_recursion-to-per-task-variable-on-RT.patch} (95%) rename kernel/patches-4.14.x-rt/{0303-net-use-task_struct-instead-of-CPU-number-as-the-que.patch => 0323-net-use-task_struct-instead-of-CPU-number-as-the-que.patch} (96%) rename kernel/patches-4.14.x-rt/{0304-net-provide-a-way-to-delegate-processing-a-softirq-t.patch => 0324-net-provide-a-way-to-delegate-processing-a-softirq-t.patch} (97%) rename kernel/patches-4.14.x-rt/{0305-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch => 0325-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch} (100%) rename kernel/patches-4.14.x-rt/{0306-net-Qdisc-use-a-seqlock-instead-seqcount.patch => 0326-net-Qdisc-use-a-seqlock-instead-seqcount.patch} (100%) rename kernel/patches-4.14.x-rt/{0307-net-add-back-the-missing-serialization-in-ip_send_un.patch => 0327-net-add-back-the-missing-serialization-in-ip_send_un.patch} (100%) rename kernel/patches-4.14.x-rt/{0308-net-take-the-tcp_sk_lock-lock-with-BH-disabled.patch => 0328-net-take-the-tcp_sk_lock-lock-with-BH-disabled.patch} (100%) rename kernel/patches-4.14.x-rt/{0309-net-add-a-lock-around-icmp_sk.patch => 0329-net-add-a-lock-around-icmp_sk.patch} (100%) rename kernel/patches-4.14.x-rt/{0310-net-use-trylock-in-icmp_sk.patch => 0330-net-use-trylock-in-icmp_sk.patch} (100%) rename kernel/patches-4.14.x-rt/{0311-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch => 0331-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch} (95%) rename kernel/patches-4.14.x-rt/{0312-irqwork-push_most_work_into_softirq_context.patch => 0332-irqwork-push_most_work_into_softirq_context.patch} (100%) rename kernel/patches-4.14.x-rt/{0313-irqwork-Move-irq-safe-work-to-irq-context.patch => 0333-irqwork-Move-irq-safe-work-to-irq-context.patch} (100%) rename kernel/patches-4.14.x-rt/{0314-snd-pcm-fix-snd_pcm_stream_lock-irqs_disabled-splats.patch => 0334-snd-pcm-fix-snd_pcm_stream_lock-irqs_disabled-splats.patch} (100%) rename kernel/patches-4.14.x-rt/{0315-printk-rt-aware.patch => 0335-printk-rt-aware.patch} (100%) rename kernel/patches-4.14.x-rt/{0316-kernel-printk-Don-t-try-to-print-from-IRQ-NMI-region.patch => 0336-kernel-printk-Don-t-try-to-print-from-IRQ-NMI-region.patch} (100%) rename kernel/patches-4.14.x-rt/{0317-HACK-printk-drop-the-logbuf_lock-more-often.patch => 0337-HACK-printk-drop-the-logbuf_lock-more-often.patch} (100%) rename kernel/patches-4.14.x-rt/{0318-power-use-generic-rwsem-on-rt.patch => 0338-power-use-generic-rwsem-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0319-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch => 0339-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch} (100%) rename kernel/patches-4.14.x-rt/{0320-powerpc-ps3-device-init.c-adapt-to-completions-using.patch => 0340-powerpc-ps3-device-init.c-adapt-to-completions-using.patch} (100%) rename kernel/patches-4.14.x-rt/{0321-arm-at91-tclib-default-to-tclib-timer-for-rt.patch => 0341-arm-at91-tclib-default-to-tclib-timer-for-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0322-arm-unwind-use_raw_lock.patch => 0342-arm-unwind-use_raw_lock.patch} (100%) rename kernel/patches-4.14.x-rt/{0323-ARM-enable-irq-in-translation-section-permission-fau.patch => 0343-ARM-enable-irq-in-translation-section-permission-fau.patch} (100%) rename kernel/patches-4.14.x-rt/{0324-genirq-update-irq_set_irqchip_state-documentation.patch => 0344-genirq-update-irq_set_irqchip_state-documentation.patch} (100%) rename kernel/patches-4.14.x-rt/{0325-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch => 0345-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch} (88%) rename kernel/patches-4.14.x-rt/{0326-arm64-xen--Make-XEN-depend-on-non-rt.patch => 0346-arm64-xen--Make-XEN-depend-on-non-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0327-kgb-serial-hackaround.patch => 0347-kgb-serial-hackaround.patch} (97%) rename kernel/patches-4.14.x-rt/{0328-sysfs-realtime-entry.patch => 0348-sysfs-realtime-entry.patch} (100%) rename kernel/patches-4.14.x-rt/{0329-power-disable-highmem-on-rt.patch => 0349-power-disable-highmem-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0330-mips-disable-highmem-on-rt.patch => 0350-mips-disable-highmem-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0331-mm-rt-kmap-atomic-scheduling.patch => 0351-mm-rt-kmap-atomic-scheduling.patch} (100%) rename kernel/patches-4.14.x-rt/{0332-mm--rt--Fix-generic-kmap_atomic-for-RT.patch => 0352-mm--rt--Fix-generic-kmap_atomic-for-RT.patch} (100%) rename kernel/patches-4.14.x-rt/{0333-x86-highmem-add-a-already-used-pte-check.patch => 0353-x86-highmem-add-a-already-used-pte-check.patch} (100%) rename kernel/patches-4.14.x-rt/{0334-arm-highmem-flush-tlb-on-unmap.patch => 0354-arm-highmem-flush-tlb-on-unmap.patch} (100%) rename kernel/patches-4.14.x-rt/{0335-arm-enable-highmem-for-rt.patch => 0355-arm-enable-highmem-for-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0336-scsi-fcoe-rt-aware.patch => 0356-scsi-fcoe-rt-aware.patch} (100%) rename kernel/patches-4.14.x-rt/{0337-sas-ata-isci-dont-t-disable-interrupts-in-qc_issue-h.patch => 0357-sas-ata-isci-dont-t-disable-interrupts-in-qc_issue-h.patch} (100%) rename kernel/patches-4.14.x-rt/{0338-x86-crypto-reduce-preempt-disabled-regions.patch => 0358-x86-crypto-reduce-preempt-disabled-regions.patch} (100%) rename kernel/patches-4.14.x-rt/{0339-crypto-Reduce-preempt-disabled-regions-more-algos.patch => 0359-crypto-Reduce-preempt-disabled-regions-more-algos.patch} (95%) rename kernel/patches-4.14.x-rt/{0340-crypto-limit-more-FPU-enabled-sections.patch => 0360-crypto-limit-more-FPU-enabled-sections.patch} (100%) rename kernel/patches-4.14.x-rt/{0341-arm-disable-NEON-in-kernel-mode.patch => 0361-arm-disable-NEON-in-kernel-mode.patch} (100%) rename kernel/patches-4.14.x-rt/{0342-dm-make-rt-aware.patch => 0362-dm-make-rt-aware.patch} (100%) rename kernel/patches-4.14.x-rt/{0343-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch => 0363-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch} (100%) rename kernel/patches-4.14.x-rt/{0344-cpumask-disable-offstack-on-rt.patch => 0364-cpumask-disable-offstack-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0345-random-make-it-work-on-rt.patch => 0365-random-make-it-work-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0346-random-avoid-preempt_disable-ed-section.patch => 0366-random-avoid-preempt_disable-ed-section.patch} (100%) rename kernel/patches-4.14.x-rt/{0347-char-random-don-t-print-that-the-init-is-done.patch => 0367-char-random-don-t-print-that-the-init-is-done.patch} (100%) rename kernel/patches-4.14.x-rt/{0348-cpu-hotplug--Implement-CPU-pinning.patch => 0368-cpu-hotplug--Implement-CPU-pinning.patch} (100%) rename kernel/patches-4.14.x-rt/{0349-hotplug-duct-tape-RT-rwlock-usage-for-non-RT.patch => 0369-hotplug-duct-tape-RT-rwlock-usage-for-non-RT.patch} (100%) rename kernel/patches-4.14.x-rt/{0350-scsi-qla2xxx-fix-bug-sleeping-function-called-from-invalid-context.patch => 0370-scsi-qla2xxx-fix-bug-sleeping-function-called-from-invalid-context.patch} (100%) rename kernel/patches-4.14.x-rt/{0351-upstream-net-rt-remove-preemption-disabling-in-netif_rx.patch => 0371-upstream-net-rt-remove-preemption-disabling-in-netif_rx.patch} (93%) rename kernel/patches-4.14.x-rt/{0352-net-another-local-irq-disable-alloc-atomic-headache.patch => 0372-net-another-local-irq-disable-alloc-atomic-headache.patch} (100%) rename kernel/patches-4.14.x-rt/{0353-net-core-protect-users-of-napi_alloc_cache-against-r.patch => 0373-net-core-protect-users-of-napi_alloc_cache-against-r.patch} (100%) rename kernel/patches-4.14.x-rt/{0354-net-fix-iptable-xt-write-recseq-begin-rt-fallout.patch => 0374-net-fix-iptable-xt-write-recseq-begin-rt-fallout.patch} (91%) rename kernel/patches-4.14.x-rt/{0355-net-make-devnet_rename_seq-a-mutex.patch => 0375-net-make-devnet_rename_seq-a-mutex.patch} (100%) rename kernel/patches-4.14.x-rt/{0356-peterz-srcu-crypto-chain.patch => 0376-peterz-srcu-crypto-chain.patch} (100%) rename kernel/patches-4.14.x-rt/{0357-lockdep-selftest-only-do-hardirq-context-test-for-raw-spinlock.patch => 0377-lockdep-selftest-only-do-hardirq-context-test-for-raw-spinlock.patch} (100%) rename kernel/patches-4.14.x-rt/{0358-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch => 0378-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch} (100%) rename kernel/patches-4.14.x-rt/{0359-srcu-use-cpu_online-instead-custom-check.patch => 0379-srcu-use-cpu_online-instead-custom-check.patch} (100%) rename kernel/patches-4.14.x-rt/{0360-srcu-Prohibit-call_srcu-use-under-raw-spinlocks.patch => 0380-srcu-Prohibit-call_srcu-use-under-raw-spinlocks.patch} (100%) rename kernel/patches-4.14.x-rt/{0361-srcu-replace-local_irqsave-with-a-locallock.patch => 0381-srcu-replace-local_irqsave-with-a-locallock.patch} (100%) rename kernel/patches-4.14.x-rt/{0362-rcu-disable-rcu-fast-no-hz-on-rt.patch => 0382-rcu-disable-rcu-fast-no-hz-on-rt.patch} (100%) rename kernel/patches-4.14.x-rt/{0363-rcu-Eliminate-softirq-processing-from-rcutree.patch => 0383-rcu-Eliminate-softirq-processing-from-rcutree.patch} (100%) rename kernel/patches-4.14.x-rt/{0364-rcu-make-RCU_BOOST-default-on-RT.patch => 0384-rcu-make-RCU_BOOST-default-on-RT.patch} (100%) rename kernel/patches-4.14.x-rt/{0365-rcu-enable-rcu_normal_after_boot-by-default-for-RT.patch => 0385-rcu-enable-rcu_normal_after_boot-by-default-for-RT.patch} (100%) rename kernel/patches-4.14.x-rt/{0366-preempt-lazy-support.patch => 0386-preempt-lazy-support.patch} (100%) rename kernel/patches-4.14.x-rt/{0367-ftrace-Fix-trace-header-alignment.patch => 0387-ftrace-Fix-trace-header-alignment.patch} (100%) rename kernel/patches-4.14.x-rt/{0368-x86-preempt-lazy.patch => 0388-x86-preempt-lazy.patch} (100%) rename kernel/patches-4.14.x-rt/{0369-arm-preempt-lazy-support.patch => 0389-arm-preempt-lazy-support.patch} (100%) rename kernel/patches-4.14.x-rt/{0370-powerpc-preempt-lazy-support.patch => 0390-powerpc-preempt-lazy-support.patch} (100%) rename kernel/patches-4.14.x-rt/{0371-arch-arm64-Add-lazy-preempt-support.patch => 0391-arch-arm64-Add-lazy-preempt-support.patch} (100%) rename kernel/patches-4.14.x-rt/{0372-leds-trigger-disable-CPU-trigger-on-RT.patch => 0392-leds-trigger-disable-CPU-trigger-on-RT.patch} (100%) rename kernel/patches-4.14.x-rt/{0373-mmci-remove-bogus-irq-save.patch => 0393-mmci-remove-bogus-irq-save.patch} (100%) rename kernel/patches-4.14.x-rt/{0374-cpufreq-drop-K8-s-driver-from-beeing-selected.patch => 0394-cpufreq-drop-K8-s-driver-from-beeing-selected.patch} (100%) rename kernel/patches-4.14.x-rt/{0375-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch => 0395-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch} (100%) rename kernel/patches-4.14.x-rt/{0376-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch => 0396-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch} (100%) rename kernel/patches-4.14.x-rt/{0377-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch => 0397-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch} (100%) rename kernel/patches-4.14.x-rt/{0378-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch => 0398-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch} (100%) rename kernel/patches-4.14.x-rt/{0379-tpm_tis-fix-stall-after-iowrite-s.patch => 0399-tpm_tis-fix-stall-after-iowrite-s.patch} (100%) rename kernel/patches-4.14.x-rt/{0380-pci-switchtec-Don-t-use-completion-s-wait-queue.patch => 0400-pci-switchtec-Don-t-use-completion-s-wait-queue.patch} (100%) rename kernel/patches-4.14.x-rt/{0381-drmradeoni915_Use_preempt_disableenable_rt()_where_recommended.patch => 0401-drmradeoni915_Use_preempt_disableenable_rt()_where_recommended.patch} (100%) rename kernel/patches-4.14.x-rt/{0382-drmi915_Use_local_lockunlock_irq()_in_intel_pipe_update_startend().patch => 0402-drmi915_Use_local_lockunlock_irq()_in_intel_pipe_update_startend().patch} (100%) rename kernel/patches-4.14.x-rt/{0383-cgroups-use-simple-wait-in-css_release.patch => 0403-cgroups-use-simple-wait-in-css_release.patch} (94%) rename kernel/patches-4.14.x-rt/{0384-cgroups-scheduling-while-atomic-in-cgroup-code.patch => 0404-cgroups-scheduling-while-atomic-in-cgroup-code.patch} (100%) rename kernel/patches-4.14.x-rt/{0385-Revert-memcontrol-Prevent-scheduling-while-atomic-in.patch => 0405-Revert-memcontrol-Prevent-scheduling-while-atomic-in.patch} (100%) rename kernel/patches-4.14.x-rt/{0386-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch => 0406-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch} (100%) rename kernel/patches-4.14.x-rt/{0387-move_sched_delayed_work_to_helper.patch => 0407-move_sched_delayed_work_to_helper.patch} (100%) rename kernel/patches-4.14.x-rt/{0388-Revert-rt-ntp-Move-call-to-schedule_delayed_work-to-.patch => 0408-Revert-rt-ntp-Move-call-to-schedule_delayed_work-to-.patch} (100%) rename kernel/patches-4.14.x-rt/{0389-md-disable-bcache.patch => 0409-md-disable-bcache.patch} (100%) rename kernel/patches-4.14.x-rt/{0390-apparmor-use-a-locallock-instead-preempt_disable.patch => 0410-apparmor-use-a-locallock-instead-preempt_disable.patch} (100%) rename kernel/patches-4.14.x-rt/{0391-workqueue-prevent-deadlock-stall.patch => 0411-workqueue-prevent-deadlock-stall.patch} (100%) rename kernel/patches-4.14.x-rt/{0392-localversion.patch => 0412-localversion.patch} (97%) diff --git a/examples/rt-for-vmware.yml b/examples/rt-for-vmware.yml index 12f5fdf93..dcb8b0ae3 100644 --- a/examples/rt-for-vmware.yml +++ b/examples/rt-for-vmware.yml @@ -1,5 +1,5 @@ kernel: - image: linuxkit/kernel:4.14.29-rt + image: linuxkit/kernel:4.14.34-rt cmdline: "console=tty0" init: - linuxkit/init:d0bf64f4cea42bea71e7d8f8832ba497bb822e89 diff --git a/kernel/Makefile b/kernel/Makefile index ff2eeb583..e54dc37ba 100644 --- a/kernel/Makefile +++ b/kernel/Makefile @@ -222,7 +222,7 @@ $(eval $(call kernel,4.16.3,4.16.x,$(EXTRA),$(DEBUG))) $(eval $(call kernel,4.15.18,4.15.x,$(EXTRA),$(DEBUG))) $(eval $(call kernel,4.14.35,4.14.x,$(EXTRA),$(DEBUG))) $(eval $(call kernel,4.14.35,4.14.x,,-dbg)) -$(eval $(call kernel,4.14.29,4.14.x,-rt,)) +$(eval $(call kernel,4.14.34,4.14.x,-rt,)) $(eval $(call kernel,4.9.94,4.9.x,$(EXTRA),$(DEBUG))) $(eval $(call kernel,4.4.128,4.4.x,$(EXTRA),$(DEBUG))) @@ -230,7 +230,7 @@ else ifeq ($(ARCH),aarch64) $(eval $(call kernel,4.16.3,4.16.x,$(EXTRA),$(DEBUG))) $(eval $(call kernel,4.15.18,4.15.x,$(EXTRA),$(DEBUG))) $(eval $(call kernel,4.14.35,4.14.x,$(EXTRA),$(DEBUG))) -$(eval $(call kernel,4.14.29,4.14.x,-rt,)) +$(eval $(call kernel,4.14.34,4.14.x,-rt,)) else ifeq ($(ARCH),s390x) $(eval $(call kernel,4.16.3,4.16.x,$(EXTRA),$(DEBUG))) diff --git a/kernel/patches-4.14.x-rt/0004-KVM-arm-arm64-Remove-redundant-preemptible-checks.patch b/kernel/patches-4.14.x-rt/0004-KVM-arm-arm64-Remove-redundant-preemptible-checks.patch new file mode 100644 index 000000000..c9da70d31 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0004-KVM-arm-arm64-Remove-redundant-preemptible-checks.patch @@ -0,0 +1,38 @@ +From: Christoffer Dall +Date: Fri, 8 Sep 2017 07:07:13 -0700 +Subject: [PATCH] KVM: arm/arm64: Remove redundant preemptible checks + +Upstream commit 5a24575032971c5a9a4580417a791c427ebdb8e5 + +The __this_cpu_read() and __this_cpu_write() functions already implement +checks for the required preemption levels when using +CONFIG_DEBUG_PREEMPT which gives you nice error messages and such. +Therefore there is no need to explicitly check this using a BUG_ON() in +the code (which we don't do for other uses of per cpu variables either). + +Acked-by: Marc Zyngier +Reviewed-by: Andre Przywara +Signed-off-by: Christoffer Dall +Signed-off-by: Sebastian Andrzej Siewior +--- + virt/kvm/arm/arm.c | 2 -- + 1 file changed, 2 deletions(-) + +--- a/virt/kvm/arm/arm.c ++++ b/virt/kvm/arm/arm.c +@@ -69,7 +69,6 @@ static DEFINE_PER_CPU(unsigned char, kvm + + static void kvm_arm_set_running_vcpu(struct kvm_vcpu *vcpu) + { +- BUG_ON(preemptible()); + __this_cpu_write(kvm_arm_running_vcpu, vcpu); + } + +@@ -79,7 +78,6 @@ static void kvm_arm_set_running_vcpu(str + */ + struct kvm_vcpu *kvm_arm_get_running_vcpu(void) + { +- BUG_ON(preemptible()); + return __this_cpu_read(kvm_arm_running_vcpu); + } + diff --git a/kernel/patches-4.14.x-rt/0005-0001-iommu-amd-Use-raw-locks-on-atomic-context-paths.patch b/kernel/patches-4.14.x-rt/0005-0001-iommu-amd-Use-raw-locks-on-atomic-context-paths.patch new file mode 100644 index 000000000..3f2de7b84 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0005-0001-iommu-amd-Use-raw-locks-on-atomic-context-paths.patch @@ -0,0 +1,170 @@ +From: Scott Wood +Date: Sun, 21 Jan 2018 03:28:54 -0600 +Subject: [PATCH 1/3] iommu/amd: Use raw locks on atomic context paths + +Upstream commit 27790398c2aed917828dc3c6f81240d57f1584c9 + +Several functions in this driver are called from atomic context, +and thus raw locks must be used in order to be safe on PREEMPT_RT. + +This includes paths that must wait for command completion, which is +a potential PREEMPT_RT latency concern but not easily avoidable. + +Signed-off-by: Scott Wood +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 30 +++++++++++++++--------------- + drivers/iommu/amd_iommu_init.c | 2 +- + drivers/iommu/amd_iommu_types.h | 4 ++-- + 3 files changed, 18 insertions(+), 18 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -1054,9 +1054,9 @@ static int iommu_queue_command_sync(stru + unsigned long flags; + int ret; + +- spin_lock_irqsave(&iommu->lock, flags); ++ raw_spin_lock_irqsave(&iommu->lock, flags); + ret = __iommu_queue_command_sync(iommu, cmd, sync); +- spin_unlock_irqrestore(&iommu->lock, flags); ++ raw_spin_unlock_irqrestore(&iommu->lock, flags); + + return ret; + } +@@ -1082,7 +1082,7 @@ static int iommu_completion_wait(struct + + build_completion_wait(&cmd, (u64)&iommu->cmd_sem); + +- spin_lock_irqsave(&iommu->lock, flags); ++ raw_spin_lock_irqsave(&iommu->lock, flags); + + iommu->cmd_sem = 0; + +@@ -1093,7 +1093,7 @@ static int iommu_completion_wait(struct + ret = wait_on_sem(&iommu->cmd_sem); + + out_unlock: +- spin_unlock_irqrestore(&iommu->lock, flags); ++ raw_spin_unlock_irqrestore(&iommu->lock, flags); + + return ret; + } +@@ -3618,7 +3618,7 @@ static struct irq_remap_table *get_irq_t + goto out_unlock; + + /* Initialize table spin-lock */ +- spin_lock_init(&table->lock); ++ raw_spin_lock_init(&table->lock); + + if (ioapic) + /* Keep the first 32 indexes free for IOAPIC interrupts */ +@@ -3677,7 +3677,7 @@ static int alloc_irq_index(u16 devid, in + if (!table) + return -ENODEV; + +- spin_lock_irqsave(&table->lock, flags); ++ raw_spin_lock_irqsave(&table->lock, flags); + + /* Scan table for free entries */ + for (c = 0, index = table->min_index; +@@ -3700,7 +3700,7 @@ static int alloc_irq_index(u16 devid, in + index = -ENOSPC; + + out: +- spin_unlock_irqrestore(&table->lock, flags); ++ raw_spin_unlock_irqrestore(&table->lock, flags); + + return index; + } +@@ -3721,7 +3721,7 @@ static int modify_irte_ga(u16 devid, int + if (!table) + return -ENOMEM; + +- spin_lock_irqsave(&table->lock, flags); ++ raw_spin_lock_irqsave(&table->lock, flags); + + entry = (struct irte_ga *)table->table; + entry = &entry[index]; +@@ -3732,7 +3732,7 @@ static int modify_irte_ga(u16 devid, int + if (data) + data->ref = entry; + +- spin_unlock_irqrestore(&table->lock, flags); ++ raw_spin_unlock_irqrestore(&table->lock, flags); + + iommu_flush_irt(iommu, devid); + iommu_completion_wait(iommu); +@@ -3754,9 +3754,9 @@ static int modify_irte(u16 devid, int in + if (!table) + return -ENOMEM; + +- spin_lock_irqsave(&table->lock, flags); ++ raw_spin_lock_irqsave(&table->lock, flags); + table->table[index] = irte->val; +- spin_unlock_irqrestore(&table->lock, flags); ++ raw_spin_unlock_irqrestore(&table->lock, flags); + + iommu_flush_irt(iommu, devid); + iommu_completion_wait(iommu); +@@ -3778,9 +3778,9 @@ static void free_irte(u16 devid, int ind + if (!table) + return; + +- spin_lock_irqsave(&table->lock, flags); ++ raw_spin_lock_irqsave(&table->lock, flags); + iommu->irte_ops->clear_allocated(table, index); +- spin_unlock_irqrestore(&table->lock, flags); ++ raw_spin_unlock_irqrestore(&table->lock, flags); + + iommu_flush_irt(iommu, devid); + iommu_completion_wait(iommu); +@@ -4359,7 +4359,7 @@ int amd_iommu_update_ga(int cpu, bool is + if (!irt) + return -ENODEV; + +- spin_lock_irqsave(&irt->lock, flags); ++ raw_spin_lock_irqsave(&irt->lock, flags); + + if (ref->lo.fields_vapic.guest_mode) { + if (cpu >= 0) +@@ -4368,7 +4368,7 @@ int amd_iommu_update_ga(int cpu, bool is + barrier(); + } + +- spin_unlock_irqrestore(&irt->lock, flags); ++ raw_spin_unlock_irqrestore(&irt->lock, flags); + + iommu_flush_irt(iommu, devid); + iommu_completion_wait(iommu); +--- a/drivers/iommu/amd_iommu_init.c ++++ b/drivers/iommu/amd_iommu_init.c +@@ -1474,7 +1474,7 @@ static int __init init_iommu_one(struct + { + int ret; + +- spin_lock_init(&iommu->lock); ++ raw_spin_lock_init(&iommu->lock); + + /* Add IOMMU to internal data structures */ + list_add_tail(&iommu->list, &amd_iommu_list); +--- a/drivers/iommu/amd_iommu_types.h ++++ b/drivers/iommu/amd_iommu_types.h +@@ -406,7 +406,7 @@ extern bool amd_iommu_iotlb_sup; + #define IRQ_TABLE_ALIGNMENT 128 + + struct irq_remap_table { +- spinlock_t lock; ++ raw_spinlock_t lock; + unsigned min_index; + u32 *table; + }; +@@ -488,7 +488,7 @@ struct amd_iommu { + int index; + + /* locks the accesses to the hardware */ +- spinlock_t lock; ++ raw_spinlock_t lock; + + /* Pointer to PCI device of this IOMMU */ + struct pci_dev *dev; diff --git a/kernel/patches-4.14.x-rt/0006-0002-iommu-amd-Don-t-use-dev_data-in-irte_ga_set_affinity.patch b/kernel/patches-4.14.x-rt/0006-0002-iommu-amd-Don-t-use-dev_data-in-irte_ga_set_affinity.patch new file mode 100644 index 000000000..dbc0ac85a --- /dev/null +++ b/kernel/patches-4.14.x-rt/0006-0002-iommu-amd-Don-t-use-dev_data-in-irte_ga_set_affinity.patch @@ -0,0 +1,31 @@ +From: Scott Wood +Date: Sun, 28 Jan 2018 14:22:19 -0600 +Subject: [PATCH 2/3] iommu/amd: Don't use dev_data in irte_ga_set_affinity() + +Upstream commit 01ee04badefd296eb7a4430497373be9b7b16783 + +search_dev_data() acquires a non-raw lock, which can't be done +from atomic context on PREEMPT_RT. There is no need to look at +dev_data because guest_mode should never be set if use_vapic is +not set. + +Signed-off-by: Scott Wood +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -3861,10 +3861,8 @@ static void irte_ga_set_affinity(void *e + u8 vector, u32 dest_apicid) + { + struct irte_ga *irte = (struct irte_ga *) entry; +- struct iommu_dev_data *dev_data = search_dev_data(devid); + +- if (!dev_data || !dev_data->use_vapic || +- !irte->lo.fields_remap.guest_mode) { ++ if (!irte->lo.fields_remap.guest_mode) { + irte->hi.fields.vector = vector; + irte->lo.fields_remap.destination = dest_apicid; + modify_irte_ga(devid, index, irte, NULL); diff --git a/kernel/patches-4.14.x-rt/0007-0003-iommu-amd-Avoid-locking-get_irq_table-from-atomic-co.patch b/kernel/patches-4.14.x-rt/0007-0003-iommu-amd-Avoid-locking-get_irq_table-from-atomic-co.patch new file mode 100644 index 000000000..5b82337b7 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0007-0003-iommu-amd-Avoid-locking-get_irq_table-from-atomic-co.patch @@ -0,0 +1,116 @@ +From: Scott Wood +Date: Wed, 14 Feb 2018 17:36:28 -0600 +Subject: [PATCH 3/3] iommu/amd: Avoid locking get_irq_table() from atomic + context + +Upstream commit df42a04b15f19a842393dc98a84cbc52b1f8ed49 + +get_irq_table() previously acquired amd_iommu_devtable_lock which is not +a raw lock, and thus cannot be acquired from atomic context on +PREEMPT_RT. Many calls to modify_irte*() come from atomic context due to +the IRQ desc->lock, as does amd_iommu_update_ga() due to the preemption +disabling in vcpu_load/put(). + +The only difference between calling get_irq_table() and reading from +irq_lookup_table[] directly, other than the lock acquisition and +amd_iommu_rlookup_table[] check, is if the table entry is unpopulated, +which should never happen when looking up a devid that came from an +irq_2_irte struct, as get_irq_table() would have already been called on +that devid during irq_remapping_alloc(). + +The lock acquisition is not needed in these cases because entries in +irq_lookup_table[] never change once non-NULL -- nor would the +amd_iommu_devtable_lock usage in get_irq_table() provide meaningful +protection if they did, since it's released before using the looked up +table in the get_irq_table() caller. + +Rename the old get_irq_table() to alloc_irq_table(), and create a new +lockless get_irq_table() to be used in non-allocating contexts that WARNs +if it doesn't find what it's looking for. + +Signed-off-by: Scott Wood +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 29 ++++++++++++++++++++++------- + 1 file changed, 22 insertions(+), 7 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -3586,7 +3586,22 @@ static void set_dte_irq_entry(u16 devid, + amd_iommu_dev_table[devid].data[2] = dte; + } + +-static struct irq_remap_table *get_irq_table(u16 devid, bool ioapic) ++static struct irq_remap_table *get_irq_table(u16 devid) ++{ ++ struct irq_remap_table *table; ++ ++ if (WARN_ONCE(!amd_iommu_rlookup_table[devid], ++ "%s: no iommu for devid %x\n", __func__, devid)) ++ return NULL; ++ ++ table = irq_lookup_table[devid]; ++ if (WARN_ONCE(!table, "%s: no table for devid %x\n", __func__, devid)) ++ return NULL; ++ ++ return table; ++} ++ ++static struct irq_remap_table *alloc_irq_table(u16 devid, bool ioapic) + { + struct irq_remap_table *table = NULL; + struct amd_iommu *iommu; +@@ -3673,7 +3688,7 @@ static int alloc_irq_index(u16 devid, in + if (!iommu) + return -ENODEV; + +- table = get_irq_table(devid, false); ++ table = alloc_irq_table(devid, false); + if (!table) + return -ENODEV; + +@@ -3717,7 +3732,7 @@ static int modify_irte_ga(u16 devid, int + if (iommu == NULL) + return -EINVAL; + +- table = get_irq_table(devid, false); ++ table = get_irq_table(devid); + if (!table) + return -ENOMEM; + +@@ -3750,7 +3765,7 @@ static int modify_irte(u16 devid, int in + if (iommu == NULL) + return -EINVAL; + +- table = get_irq_table(devid, false); ++ table = get_irq_table(devid); + if (!table) + return -ENOMEM; + +@@ -3774,7 +3789,7 @@ static void free_irte(u16 devid, int ind + if (iommu == NULL) + return; + +- table = get_irq_table(devid, false); ++ table = get_irq_table(devid); + if (!table) + return; + +@@ -4092,7 +4107,7 @@ static int irq_remapping_alloc(struct ir + return ret; + + if (info->type == X86_IRQ_ALLOC_TYPE_IOAPIC) { +- if (get_irq_table(devid, true)) ++ if (alloc_irq_table(devid, true)) + index = info->ioapic_pin; + else + ret = -ENOMEM; +@@ -4353,7 +4368,7 @@ int amd_iommu_update_ga(int cpu, bool is + if (!iommu) + return -ENODEV; + +- irt = get_irq_table(devid, false); ++ irt = get_irq_table(devid); + if (!irt) + return -ENODEV; + diff --git a/kernel/patches-4.14.x-rt/0008-0001-iommu-amd-Take-into-account-that-alloc_dev_data-may-.patch b/kernel/patches-4.14.x-rt/0008-0001-iommu-amd-Take-into-account-that-alloc_dev_data-may-.patch new file mode 100644 index 000000000..5f7d6e149 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0008-0001-iommu-amd-Take-into-account-that-alloc_dev_data-may-.patch @@ -0,0 +1,32 @@ +From: Sebastian Andrzej Siewior +Date: Thu, 22 Mar 2018 16:22:33 +0100 +Subject: [PATCH 01/10] iommu/amd: Take into account that alloc_dev_data() may + return NULL + +Upstream commit 39ffe39545cd5cb5b8cee9f0469165cf24dc62c2 + +find_dev_data() does not check whether the return value alloc_dev_data() +is NULL. This was okay once because the pointer was returned once as-is. +Since commit df3f7a6e8e85 ("iommu/amd: Use is_attach_deferred +call-back") the pointer may be used within find_dev_data() so a NULL +check is required. + +Cc: Baoquan He +Fixes: df3f7a6e8e85 ("iommu/amd: Use is_attach_deferred call-back") +Signed-off-by: Sebastian Andrzej Siewior +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -311,6 +311,8 @@ static struct iommu_dev_data *find_dev_d + + if (dev_data == NULL) { + dev_data = alloc_dev_data(devid); ++ if (!dev_data) ++ return NULL; + + if (translation_pre_enabled(iommu)) + dev_data->defer_attach = true; diff --git a/kernel/patches-4.14.x-rt/0009-0002-iommu-amd-Turn-dev_data_list-into-a-lock-less-list.patch b/kernel/patches-4.14.x-rt/0009-0002-iommu-amd-Turn-dev_data_list-into-a-lock-less-list.patch new file mode 100644 index 000000000..bc909a2b8 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0009-0002-iommu-amd-Turn-dev_data_list-into-a-lock-less-list.patch @@ -0,0 +1,97 @@ +From: Sebastian Andrzej Siewior +Date: Thu, 22 Mar 2018 16:22:34 +0100 +Subject: [PATCH 02/10] iommu/amd: Turn dev_data_list into a lock less list + +Upstream commit 779da73273fc4c4c6f41579a95e4fb7880a1720e + +alloc_dev_data() adds new items to dev_data_list and search_dev_data() +is searching for items in this list. Both protect the access to the list +with a spinlock. +There is no need to navigate forth and back within the list and there is +also no deleting of a specific item. This qualifies the list to become a +lock less list and as part of this, the spinlock can be removed. +With this change the ordering of those items within the list is changed: +before the change new items were added to the end of the list, now they +are added to the front. I don't think it matters but wanted to mention +it. + +Signed-off-by: Sebastian Andrzej Siewior +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 28 ++++++++++------------------ + drivers/iommu/amd_iommu_types.h | 2 +- + 2 files changed, 11 insertions(+), 19 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -84,8 +84,7 @@ + static DEFINE_RWLOCK(amd_iommu_devtable_lock); + + /* List of all available dev_data structures */ +-static LIST_HEAD(dev_data_list); +-static DEFINE_SPINLOCK(dev_data_list_lock); ++static LLIST_HEAD(dev_data_list); + + LIST_HEAD(ioapic_map); + LIST_HEAD(hpet_map); +@@ -204,40 +203,33 @@ static struct dma_ops_domain* to_dma_ops + static struct iommu_dev_data *alloc_dev_data(u16 devid) + { + struct iommu_dev_data *dev_data; +- unsigned long flags; + + dev_data = kzalloc(sizeof(*dev_data), GFP_KERNEL); + if (!dev_data) + return NULL; + + dev_data->devid = devid; +- +- spin_lock_irqsave(&dev_data_list_lock, flags); +- list_add_tail(&dev_data->dev_data_list, &dev_data_list); +- spin_unlock_irqrestore(&dev_data_list_lock, flags); +- + ratelimit_default_init(&dev_data->rs); + ++ llist_add(&dev_data->dev_data_list, &dev_data_list); + return dev_data; + } + + static struct iommu_dev_data *search_dev_data(u16 devid) + { + struct iommu_dev_data *dev_data; +- unsigned long flags; ++ struct llist_node *node; ++ ++ if (llist_empty(&dev_data_list)) ++ return NULL; + +- spin_lock_irqsave(&dev_data_list_lock, flags); +- list_for_each_entry(dev_data, &dev_data_list, dev_data_list) { ++ node = dev_data_list.first; ++ llist_for_each_entry(dev_data, node, dev_data_list) { + if (dev_data->devid == devid) +- goto out_unlock; ++ return dev_data; + } + +- dev_data = NULL; +- +-out_unlock: +- spin_unlock_irqrestore(&dev_data_list_lock, flags); +- +- return dev_data; ++ return NULL; + } + + static int __last_alias(struct pci_dev *pdev, u16 alias, void *data) +--- a/drivers/iommu/amd_iommu_types.h ++++ b/drivers/iommu/amd_iommu_types.h +@@ -625,7 +625,7 @@ struct devid_map { + */ + struct iommu_dev_data { + struct list_head list; /* For domain->dev_list */ +- struct list_head dev_data_list; /* For global dev_data_list */ ++ struct llist_node dev_data_list; /* For global dev_data_list */ + struct protection_domain *domain; /* Domain the device is bound to */ + u16 devid; /* PCI Device ID */ + u16 alias; /* Alias Device ID */ diff --git a/kernel/patches-4.14.x-rt/0010-0003-iommu-amd-Split-domain-id-out-of-amd_iommu_devtable_.patch b/kernel/patches-4.14.x-rt/0010-0003-iommu-amd-Split-domain-id-out-of-amd_iommu_devtable_.patch new file mode 100644 index 000000000..da2620d56 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0010-0003-iommu-amd-Split-domain-id-out-of-amd_iommu_devtable_.patch @@ -0,0 +1,62 @@ +From: Sebastian Andrzej Siewior +Date: Thu, 22 Mar 2018 16:22:35 +0100 +Subject: [PATCH 03/10] iommu/amd: Split domain id out of + amd_iommu_devtable_lock + +Upstream commit 2bc00180890427dcc092b2f2b0d03c904bcade29 + +domain_id_alloc() and domain_id_free() is used for id management. Those +two function share a bitmap (amd_iommu_pd_alloc_bitmap) and set/clear +bits based on id allocation. There is no need to share this with +amd_iommu_devtable_lock, it can use its own lock for this operation. + +Signed-off-by: Sebastian Andrzej Siewior +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 12 +++++------- + 1 file changed, 5 insertions(+), 7 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -82,6 +82,7 @@ + #define AMD_IOMMU_PGSIZES ((~0xFFFUL) & ~(2ULL << 38)) + + static DEFINE_RWLOCK(amd_iommu_devtable_lock); ++static DEFINE_SPINLOCK(pd_bitmap_lock); + + /* List of all available dev_data structures */ + static LLIST_HEAD(dev_data_list); +@@ -1596,29 +1597,26 @@ static void del_domain_from_list(struct + + static u16 domain_id_alloc(void) + { +- unsigned long flags; + int id; + +- write_lock_irqsave(&amd_iommu_devtable_lock, flags); ++ spin_lock(&pd_bitmap_lock); + id = find_first_zero_bit(amd_iommu_pd_alloc_bitmap, MAX_DOMAIN_ID); + BUG_ON(id == 0); + if (id > 0 && id < MAX_DOMAIN_ID) + __set_bit(id, amd_iommu_pd_alloc_bitmap); + else + id = 0; +- write_unlock_irqrestore(&amd_iommu_devtable_lock, flags); ++ spin_unlock(&pd_bitmap_lock); + + return id; + } + + static void domain_id_free(int id) + { +- unsigned long flags; +- +- write_lock_irqsave(&amd_iommu_devtable_lock, flags); ++ spin_lock(&pd_bitmap_lock); + if (id > 0 && id < MAX_DOMAIN_ID) + __clear_bit(id, amd_iommu_pd_alloc_bitmap); +- write_unlock_irqrestore(&amd_iommu_devtable_lock, flags); ++ spin_unlock(&pd_bitmap_lock); + } + + #define DEFINE_FREE_PT_FN(LVL, FN) \ diff --git a/kernel/patches-4.14.x-rt/0011-0004-iommu-amd-Split-irq_lookup_table-out-of-the-amd_iomm.patch b/kernel/patches-4.14.x-rt/0011-0004-iommu-amd-Split-irq_lookup_table-out-of-the-amd_iomm.patch new file mode 100644 index 000000000..6d90ec963 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0011-0004-iommu-amd-Split-irq_lookup_table-out-of-the-amd_iomm.patch @@ -0,0 +1,50 @@ +From: Sebastian Andrzej Siewior +Date: Thu, 22 Mar 2018 16:22:36 +0100 +Subject: [PATCH 04/10] iommu/amd: Split irq_lookup_table out of the + amd_iommu_devtable_lock + +Upstream commit ea6166f4b83e9cfba1c18f46a764d50045682fe5 + +The function get_irq_table() reads/writes irq_lookup_table while holding +the amd_iommu_devtable_lock. It also modifies +amd_iommu_dev_table[].data[2]. +set_dte_entry() is using amd_iommu_dev_table[].data[0|1] (under the +domain->lock) so it should be okay. The access to the iommu is +serialized with its own (iommu's) lock. + +So split out get_irq_table() out of amd_iommu_devtable_lock's lock. + +Signed-off-by: Sebastian Andrzej Siewior +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -83,6 +83,7 @@ + + static DEFINE_RWLOCK(amd_iommu_devtable_lock); + static DEFINE_SPINLOCK(pd_bitmap_lock); ++static DEFINE_SPINLOCK(iommu_table_lock); + + /* List of all available dev_data structures */ + static LLIST_HEAD(dev_data_list); +@@ -3600,7 +3601,7 @@ static struct irq_remap_table *alloc_irq + unsigned long flags; + u16 alias; + +- write_lock_irqsave(&amd_iommu_devtable_lock, flags); ++ spin_lock_irqsave(&iommu_table_lock, flags); + + iommu = amd_iommu_rlookup_table[devid]; + if (!iommu) +@@ -3665,7 +3666,7 @@ static struct irq_remap_table *alloc_irq + iommu_completion_wait(iommu); + + out_unlock: +- write_unlock_irqrestore(&amd_iommu_devtable_lock, flags); ++ spin_unlock_irqrestore(&iommu_table_lock, flags); + + return table; + } diff --git a/kernel/patches-4.14.x-rt/0012-0005-iommu-amd-Remove-the-special-case-from-alloc_irq_tab.patch b/kernel/patches-4.14.x-rt/0012-0005-iommu-amd-Remove-the-special-case-from-alloc_irq_tab.patch new file mode 100644 index 000000000..0acd6d2f3 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0012-0005-iommu-amd-Remove-the-special-case-from-alloc_irq_tab.patch @@ -0,0 +1,94 @@ +From: Sebastian Andrzej Siewior +Date: Thu, 22 Mar 2018 16:22:37 +0100 +Subject: [PATCH 05/10] iommu/amd: Remove the special case from + alloc_irq_table() + +Upstream commit fde65dd3d3096e8f6ecc7bbe544eb91f4220772c + +alloc_irq_table() has a special ioapic argument. If set then it will +pre-allocate / reserve the first 32 indexes. The argument is only once +true and it would make alloc_irq_table() a little simpler if we would +extract the special bits to the caller. +The caller of irq_remapping_alloc() is holding irq_domain_mutex so the +initialization of iommu->irte_ops->set_allocated() should not race +against other user. + +Signed-off-by: Sebastian Andrzej Siewior +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 34 ++++++++++++++++++++-------------- + 1 file changed, 20 insertions(+), 14 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -3594,7 +3594,7 @@ static struct irq_remap_table *get_irq_t + return table; + } + +-static struct irq_remap_table *alloc_irq_table(u16 devid, bool ioapic) ++static struct irq_remap_table *alloc_irq_table(u16 devid) + { + struct irq_remap_table *table = NULL; + struct amd_iommu *iommu; +@@ -3628,10 +3628,6 @@ static struct irq_remap_table *alloc_irq + /* Initialize table spin-lock */ + raw_spin_lock_init(&table->lock); + +- if (ioapic) +- /* Keep the first 32 indexes free for IOAPIC interrupts */ +- table->min_index = 32; +- + table->table = kmem_cache_alloc(amd_iommu_irq_cache, GFP_ATOMIC); + if (!table->table) { + kfree(table); +@@ -3646,12 +3642,6 @@ static struct irq_remap_table *alloc_irq + memset(table->table, 0, + (MAX_IRQS_PER_TABLE * (sizeof(u64) * 2))); + +- if (ioapic) { +- int i; +- +- for (i = 0; i < 32; ++i) +- iommu->irte_ops->set_allocated(table, i); +- } + + irq_lookup_table[devid] = table; + set_dte_irq_entry(devid, table); +@@ -3681,7 +3671,7 @@ static int alloc_irq_index(u16 devid, in + if (!iommu) + return -ENODEV; + +- table = alloc_irq_table(devid, false); ++ table = alloc_irq_table(devid); + if (!table) + return -ENODEV; + +@@ -4100,10 +4090,26 @@ static int irq_remapping_alloc(struct ir + return ret; + + if (info->type == X86_IRQ_ALLOC_TYPE_IOAPIC) { +- if (alloc_irq_table(devid, true)) ++ struct irq_remap_table *table; ++ struct amd_iommu *iommu; ++ ++ table = alloc_irq_table(devid); ++ if (table) { ++ if (!table->min_index) { ++ /* ++ * Keep the first 32 indexes free for IOAPIC ++ * interrupts. ++ */ ++ table->min_index = 32; ++ iommu = amd_iommu_rlookup_table[devid]; ++ for (i = 0; i < 32; ++i) ++ iommu->irte_ops->set_allocated(table, i); ++ } ++ WARN_ON(table->min_index != 32); + index = info->ioapic_pin; +- else ++ } else { + ret = -ENOMEM; ++ } + } else { + index = alloc_irq_index(devid, nr_irqs); + } diff --git a/kernel/patches-4.14.x-rt/0013-0006-iommu-amd-Use-table-instead-irt-as-variable-name-in-.patch b/kernel/patches-4.14.x-rt/0013-0006-iommu-amd-Use-table-instead-irt-as-variable-name-in-.patch new file mode 100644 index 000000000..157407927 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0013-0006-iommu-amd-Use-table-instead-irt-as-variable-name-in-.patch @@ -0,0 +1,52 @@ +From: Sebastian Andrzej Siewior +Date: Thu, 22 Mar 2018 16:22:38 +0100 +Subject: [PATCH 06/10] iommu/amd: Use `table' instead `irt' as variable name + in amd_iommu_update_ga() + +Upstream commit 4fde541c9dc114c5b448ad34b0286fe8b7c550f1 + +The variable of type struct irq_remap_table is always named `table' +except in amd_iommu_update_ga() where it is called `irt'. Make it +consistent and name it also `table'. + +Signed-off-by: Sebastian Andrzej Siewior +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -4353,7 +4353,7 @@ int amd_iommu_update_ga(int cpu, bool is + { + unsigned long flags; + struct amd_iommu *iommu; +- struct irq_remap_table *irt; ++ struct irq_remap_table *table; + struct amd_ir_data *ir_data = (struct amd_ir_data *)data; + int devid = ir_data->irq_2_irte.devid; + struct irte_ga *entry = (struct irte_ga *) ir_data->entry; +@@ -4367,11 +4367,11 @@ int amd_iommu_update_ga(int cpu, bool is + if (!iommu) + return -ENODEV; + +- irt = get_irq_table(devid); +- if (!irt) ++ table = get_irq_table(devid); ++ if (!table) + return -ENODEV; + +- raw_spin_lock_irqsave(&irt->lock, flags); ++ raw_spin_lock_irqsave(&table->lock, flags); + + if (ref->lo.fields_vapic.guest_mode) { + if (cpu >= 0) +@@ -4380,7 +4380,7 @@ int amd_iommu_update_ga(int cpu, bool is + barrier(); + } + +- raw_spin_unlock_irqrestore(&irt->lock, flags); ++ raw_spin_unlock_irqrestore(&table->lock, flags); + + iommu_flush_irt(iommu, devid); + iommu_completion_wait(iommu); diff --git a/kernel/patches-4.14.x-rt/0014-0007-iommu-amd-Factor-out-setting-the-remap-table-for-a-d.patch b/kernel/patches-4.14.x-rt/0014-0007-iommu-amd-Factor-out-setting-the-remap-table-for-a-d.patch new file mode 100644 index 000000000..f850e4313 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0014-0007-iommu-amd-Factor-out-setting-the-remap-table-for-a-d.patch @@ -0,0 +1,66 @@ +From: Sebastian Andrzej Siewior +Date: Thu, 22 Mar 2018 16:22:39 +0100 +Subject: [PATCH 07/10] iommu/amd: Factor out setting the remap table for a + devid + +Upstream commit 2fcc1e8ac4a8514c64f946178fc36c2e30e56a41 + +Setting the IRQ remap table for a specific devid (or its alias devid) +includes three steps. Those three steps are always repeated each time +this is done. +Introduce a new helper function, move those steps there and use that +function instead. The compiler can still decide if it is worth to +inline. + +Signed-off-by: Sebastian Andrzej Siewior +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 23 ++++++++++++----------- + 1 file changed, 12 insertions(+), 11 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -3594,6 +3594,14 @@ static struct irq_remap_table *get_irq_t + return table; + } + ++static void set_remap_table_entry(struct amd_iommu *iommu, u16 devid, ++ struct irq_remap_table *table) ++{ ++ irq_lookup_table[devid] = table; ++ set_dte_irq_entry(devid, table); ++ iommu_flush_dte(iommu, devid); ++} ++ + static struct irq_remap_table *alloc_irq_table(u16 devid) + { + struct irq_remap_table *table = NULL; +@@ -3614,9 +3622,7 @@ static struct irq_remap_table *alloc_irq + alias = amd_iommu_alias_table[devid]; + table = irq_lookup_table[alias]; + if (table) { +- irq_lookup_table[devid] = table; +- set_dte_irq_entry(devid, table); +- iommu_flush_dte(iommu, devid); ++ set_remap_table_entry(iommu, devid, table); + goto out; + } + +@@ -3643,14 +3649,9 @@ static struct irq_remap_table *alloc_irq + (MAX_IRQS_PER_TABLE * (sizeof(u64) * 2))); + + +- irq_lookup_table[devid] = table; +- set_dte_irq_entry(devid, table); +- iommu_flush_dte(iommu, devid); +- if (devid != alias) { +- irq_lookup_table[alias] = table; +- set_dte_irq_entry(alias, table); +- iommu_flush_dte(iommu, alias); +- } ++ set_remap_table_entry(iommu, devid, table); ++ if (devid != alias) ++ set_remap_table_entry(iommu, alias, table); + + out: + iommu_completion_wait(iommu); diff --git a/kernel/patches-4.14.x-rt/0015-0008-iommu-amd-Drop-the-lock-while-allocating-new-irq-rem.patch b/kernel/patches-4.14.x-rt/0015-0008-iommu-amd-Drop-the-lock-while-allocating-new-irq-rem.patch new file mode 100644 index 000000000..8af9a6ae8 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0015-0008-iommu-amd-Drop-the-lock-while-allocating-new-irq-rem.patch @@ -0,0 +1,131 @@ +From: Sebastian Andrzej Siewior +Date: Thu, 22 Mar 2018 16:22:40 +0100 +Subject: [PATCH 08/10] iommu/amd: Drop the lock while allocating new irq remap + table + +Upstream commit 993ca6e063a69a0c65ca42ed449b6bc1b3844151 + +The irq_remap_table is allocated while the iommu_table_lock is held with +interrupts disabled. +>From looking at the call sites, all callers are in the early device +initialisation (apic_bsp_setup(), pci_enable_device(), +pci_enable_msi()) so make sense to drop the lock which also enables +interrupts and try to allocate that memory with GFP_KERNEL instead +GFP_ATOMIC. + +Since during the allocation the iommu_table_lock is dropped, we need to +recheck if table exists after the lock has been reacquired. I *think* +that it is impossible that the "devid" entry appears in irq_lookup_table +while the lock is dropped since the same device can only be probed once. +However I check for both cases, just to be sure. + +Signed-off-by: Sebastian Andrzej Siewior +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 63 ++++++++++++++++++++++++++++++++-------------- + 1 file changed, 45 insertions(+), 18 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -3594,6 +3594,30 @@ static struct irq_remap_table *get_irq_t + return table; + } + ++static struct irq_remap_table *__alloc_irq_table(void) ++{ ++ struct irq_remap_table *table; ++ ++ table = kzalloc(sizeof(*table), GFP_KERNEL); ++ if (!table) ++ return NULL; ++ ++ table->table = kmem_cache_alloc(amd_iommu_irq_cache, GFP_KERNEL); ++ if (!table->table) { ++ kfree(table); ++ return NULL; ++ } ++ raw_spin_lock_init(&table->lock); ++ ++ if (!AMD_IOMMU_GUEST_IR_GA(amd_iommu_guest_ir)) ++ memset(table->table, 0, ++ MAX_IRQS_PER_TABLE * sizeof(u32)); ++ else ++ memset(table->table, 0, ++ (MAX_IRQS_PER_TABLE * (sizeof(u64) * 2))); ++ return table; ++} ++ + static void set_remap_table_entry(struct amd_iommu *iommu, u16 devid, + struct irq_remap_table *table) + { +@@ -3605,6 +3629,7 @@ static void set_remap_table_entry(struct + static struct irq_remap_table *alloc_irq_table(u16 devid) + { + struct irq_remap_table *table = NULL; ++ struct irq_remap_table *new_table = NULL; + struct amd_iommu *iommu; + unsigned long flags; + u16 alias; +@@ -3623,42 +3648,44 @@ static struct irq_remap_table *alloc_irq + table = irq_lookup_table[alias]; + if (table) { + set_remap_table_entry(iommu, devid, table); +- goto out; ++ goto out_wait; + } ++ spin_unlock_irqrestore(&iommu_table_lock, flags); + + /* Nothing there yet, allocate new irq remapping table */ +- table = kzalloc(sizeof(*table), GFP_ATOMIC); +- if (!table) +- goto out_unlock; ++ new_table = __alloc_irq_table(); ++ if (!new_table) ++ return NULL; + +- /* Initialize table spin-lock */ +- raw_spin_lock_init(&table->lock); ++ spin_lock_irqsave(&iommu_table_lock, flags); + +- table->table = kmem_cache_alloc(amd_iommu_irq_cache, GFP_ATOMIC); +- if (!table->table) { +- kfree(table); +- table = NULL; ++ table = irq_lookup_table[devid]; ++ if (table) + goto out_unlock; +- } + +- if (!AMD_IOMMU_GUEST_IR_GA(amd_iommu_guest_ir)) +- memset(table->table, 0, +- MAX_IRQS_PER_TABLE * sizeof(u32)); +- else +- memset(table->table, 0, +- (MAX_IRQS_PER_TABLE * (sizeof(u64) * 2))); ++ table = irq_lookup_table[alias]; ++ if (table) { ++ set_remap_table_entry(iommu, devid, table); ++ goto out_wait; ++ } + ++ table = new_table; ++ new_table = NULL; + + set_remap_table_entry(iommu, devid, table); + if (devid != alias) + set_remap_table_entry(iommu, alias, table); + +-out: ++out_wait: + iommu_completion_wait(iommu); + + out_unlock: + spin_unlock_irqrestore(&iommu_table_lock, flags); + ++ if (new_table) { ++ kmem_cache_free(amd_iommu_irq_cache, new_table->table); ++ kfree(new_table); ++ } + return table; + } + diff --git a/kernel/patches-4.14.x-rt/0016-0009-iommu-amd-Make-amd_iommu_devtable_lock-a-spin_lock.patch b/kernel/patches-4.14.x-rt/0016-0009-iommu-amd-Make-amd_iommu_devtable_lock-a-spin_lock.patch new file mode 100644 index 000000000..d8c2de001 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0016-0009-iommu-amd-Make-amd_iommu_devtable_lock-a-spin_lock.patch @@ -0,0 +1,73 @@ +From: Sebastian Andrzej Siewior +Date: Thu, 22 Mar 2018 16:22:41 +0100 +Subject: [PATCH 09/10] iommu/amd: Make amd_iommu_devtable_lock a spin_lock + +Upstream commit 2cd1083d79a0a8c223af430ca97884c28a1e2fc0 + +Before commit 0bb6e243d7fb ("iommu/amd: Support IOMMU_DOMAIN_DMA type +allocation") amd_iommu_devtable_lock had a read_lock() user but now +there are none. In fact, after the mentioned commit we had only +write_lock() user of the lock. Since there is no reason to keep it as +writer lock, change its type to a spin_lock. +I *think* that we might even be able to remove the lock because all its +current user seem to have their own protection. + +Signed-off-by: Sebastian Andrzej Siewior +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -81,7 +81,7 @@ + */ + #define AMD_IOMMU_PGSIZES ((~0xFFFUL) & ~(2ULL << 38)) + +-static DEFINE_RWLOCK(amd_iommu_devtable_lock); ++static DEFINE_SPINLOCK(amd_iommu_devtable_lock); + static DEFINE_SPINLOCK(pd_bitmap_lock); + static DEFINE_SPINLOCK(iommu_table_lock); + +@@ -2086,9 +2086,9 @@ static int attach_device(struct device * + } + + skip_ats_check: +- write_lock_irqsave(&amd_iommu_devtable_lock, flags); ++ spin_lock_irqsave(&amd_iommu_devtable_lock, flags); + ret = __attach_device(dev_data, domain); +- write_unlock_irqrestore(&amd_iommu_devtable_lock, flags); ++ spin_unlock_irqrestore(&amd_iommu_devtable_lock, flags); + + /* + * We might boot into a crash-kernel here. The crashed kernel +@@ -2138,9 +2138,9 @@ static void detach_device(struct device + domain = dev_data->domain; + + /* lock device table */ +- write_lock_irqsave(&amd_iommu_devtable_lock, flags); ++ spin_lock_irqsave(&amd_iommu_devtable_lock, flags); + __detach_device(dev_data); +- write_unlock_irqrestore(&amd_iommu_devtable_lock, flags); ++ spin_unlock_irqrestore(&amd_iommu_devtable_lock, flags); + + if (!dev_is_pci(dev)) + return; +@@ -2804,7 +2804,7 @@ static void cleanup_domain(struct protec + struct iommu_dev_data *entry; + unsigned long flags; + +- write_lock_irqsave(&amd_iommu_devtable_lock, flags); ++ spin_lock_irqsave(&amd_iommu_devtable_lock, flags); + + while (!list_empty(&domain->dev_list)) { + entry = list_first_entry(&domain->dev_list, +@@ -2812,7 +2812,7 @@ static void cleanup_domain(struct protec + __detach_device(entry); + } + +- write_unlock_irqrestore(&amd_iommu_devtable_lock, flags); ++ spin_unlock_irqrestore(&amd_iommu_devtable_lock, flags); + } + + static void protection_domain_free(struct protection_domain *domain) diff --git a/kernel/patches-4.14.x-rt/0017-0010-iommu-amd-Return-proper-error-code-in-irq_remapping_.patch b/kernel/patches-4.14.x-rt/0017-0010-iommu-amd-Return-proper-error-code-in-irq_remapping_.patch new file mode 100644 index 000000000..766f0be5a --- /dev/null +++ b/kernel/patches-4.14.x-rt/0017-0010-iommu-amd-Return-proper-error-code-in-irq_remapping_.patch @@ -0,0 +1,40 @@ +From: Sebastian Andrzej Siewior +Date: Thu, 22 Mar 2018 16:22:42 +0100 +Subject: [PATCH 10/10] iommu/amd: Return proper error code in + irq_remapping_alloc() + +Upstream commit 29d049be9438278c47253a74cf8d0ddf36bd5d68 + +In the unlikely case when alloc_irq_table() is not able to return a +remap table then "ret" will be assigned with an error code. Later, the +code checks `index' and if it is negative (which it is because it is +initialized with `-1') and then then function properly aborts but +returns `-1' instead `-ENOMEM' what was intended. +In order to correct this, I assign -ENOMEM to index. + +Signed-off-by: Sebastian Andrzej Siewior +Signed-off-by: Joerg Roedel +--- + drivers/iommu/amd_iommu.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/drivers/iommu/amd_iommu.c ++++ b/drivers/iommu/amd_iommu.c +@@ -4094,7 +4094,7 @@ static int irq_remapping_alloc(struct ir + struct amd_ir_data *data = NULL; + struct irq_cfg *cfg; + int i, ret, devid; +- int index = -1; ++ int index; + + if (!info) + return -EINVAL; +@@ -4136,7 +4136,7 @@ static int irq_remapping_alloc(struct ir + WARN_ON(table->min_index != 32); + index = info->ioapic_pin; + } else { +- ret = -ENOMEM; ++ index = -ENOMEM; + } + } else { + index = alloc_irq_index(devid, nr_irqs); diff --git a/kernel/patches-4.14.x-rt/0004-0001-timers-Use-static-keys-for-migrate_enable-nohz_activ.patch b/kernel/patches-4.14.x-rt/0018-0001-timers-Use-static-keys-for-migrate_enable-nohz_activ.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0004-0001-timers-Use-static-keys-for-migrate_enable-nohz_activ.patch rename to kernel/patches-4.14.x-rt/0018-0001-timers-Use-static-keys-for-migrate_enable-nohz_activ.patch diff --git a/kernel/patches-4.14.x-rt/0005-0002-hrtimer-Correct-blantanly-wrong-comment.patch b/kernel/patches-4.14.x-rt/0019-0002-hrtimer-Correct-blantanly-wrong-comment.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0005-0002-hrtimer-Correct-blantanly-wrong-comment.patch rename to kernel/patches-4.14.x-rt/0019-0002-hrtimer-Correct-blantanly-wrong-comment.patch diff --git a/kernel/patches-4.14.x-rt/0006-0003-hrtimer-Fix-kerneldoc-for-struct-hrtimer_cpu_base.patch b/kernel/patches-4.14.x-rt/0020-0003-hrtimer-Fix-kerneldoc-for-struct-hrtimer_cpu_base.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0006-0003-hrtimer-Fix-kerneldoc-for-struct-hrtimer_cpu_base.patch rename to kernel/patches-4.14.x-rt/0020-0003-hrtimer-Fix-kerneldoc-for-struct-hrtimer_cpu_base.patch diff --git a/kernel/patches-4.14.x-rt/0007-0004-hrtimer-Cleanup-clock-argument-in-schedule_hrtimeout.patch b/kernel/patches-4.14.x-rt/0021-0004-hrtimer-Cleanup-clock-argument-in-schedule_hrtimeout.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0007-0004-hrtimer-Cleanup-clock-argument-in-schedule_hrtimeout.patch rename to kernel/patches-4.14.x-rt/0021-0004-hrtimer-Cleanup-clock-argument-in-schedule_hrtimeout.patch diff --git a/kernel/patches-4.14.x-rt/0008-0005-hrtimer-Fix-hrtimer-function-description.patch b/kernel/patches-4.14.x-rt/0022-0005-hrtimer-Fix-hrtimer-function-description.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0008-0005-hrtimer-Fix-hrtimer-function-description.patch rename to kernel/patches-4.14.x-rt/0022-0005-hrtimer-Fix-hrtimer-function-description.patch diff --git a/kernel/patches-4.14.x-rt/0009-0007-hrtimer-Cleanup-hrtimer_mode-enum.patch b/kernel/patches-4.14.x-rt/0023-0007-hrtimer-Cleanup-hrtimer_mode-enum.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0009-0007-hrtimer-Cleanup-hrtimer_mode-enum.patch rename to kernel/patches-4.14.x-rt/0023-0007-hrtimer-Cleanup-hrtimer_mode-enum.patch diff --git a/kernel/patches-4.14.x-rt/0010-0008-tracing-hrtimer-Take-all-clock-bases-and-modes-into-.patch b/kernel/patches-4.14.x-rt/0024-0008-tracing-hrtimer-Take-all-clock-bases-and-modes-into-.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0010-0008-tracing-hrtimer-Take-all-clock-bases-and-modes-into-.patch rename to kernel/patches-4.14.x-rt/0024-0008-tracing-hrtimer-Take-all-clock-bases-and-modes-into-.patch diff --git a/kernel/patches-4.14.x-rt/0011-0009-tracing-hrtimer-Print-hrtimer-mode-in-hrtimer_start-.patch b/kernel/patches-4.14.x-rt/0025-0009-tracing-hrtimer-Print-hrtimer-mode-in-hrtimer_start-.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0011-0009-tracing-hrtimer-Print-hrtimer-mode-in-hrtimer_start-.patch rename to kernel/patches-4.14.x-rt/0025-0009-tracing-hrtimer-Print-hrtimer-mode-in-hrtimer_start-.patch diff --git a/kernel/patches-4.14.x-rt/0012-0010-hrtimer-Switch-for-loop-to-_ffs-evaluation.patch b/kernel/patches-4.14.x-rt/0026-0010-hrtimer-Switch-for-loop-to-_ffs-evaluation.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0012-0010-hrtimer-Switch-for-loop-to-_ffs-evaluation.patch rename to kernel/patches-4.14.x-rt/0026-0010-hrtimer-Switch-for-loop-to-_ffs-evaluation.patch diff --git a/kernel/patches-4.14.x-rt/0013-0011-hrtimer-Store-running-timer-in-hrtimer_clock_base.patch b/kernel/patches-4.14.x-rt/0027-0011-hrtimer-Store-running-timer-in-hrtimer_clock_base.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0013-0011-hrtimer-Store-running-timer-in-hrtimer_clock_base.patch rename to kernel/patches-4.14.x-rt/0027-0011-hrtimer-Store-running-timer-in-hrtimer_clock_base.patch diff --git a/kernel/patches-4.14.x-rt/0014-0012-hrtimer-Make-room-in-struct-hrtimer_cpu_base.patch b/kernel/patches-4.14.x-rt/0028-0012-hrtimer-Make-room-in-struct-hrtimer_cpu_base.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0014-0012-hrtimer-Make-room-in-struct-hrtimer_cpu_base.patch rename to kernel/patches-4.14.x-rt/0028-0012-hrtimer-Make-room-in-struct-hrtimer_cpu_base.patch diff --git a/kernel/patches-4.14.x-rt/0015-0013-hrtimer-Reduce-conditional-code-hres_active.patch b/kernel/patches-4.14.x-rt/0029-0013-hrtimer-Reduce-conditional-code-hres_active.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0015-0013-hrtimer-Reduce-conditional-code-hres_active.patch rename to kernel/patches-4.14.x-rt/0029-0013-hrtimer-Reduce-conditional-code-hres_active.patch diff --git a/kernel/patches-4.14.x-rt/0016-0014-hrtimer-Use-accesor-functions-instead-of-direct-acce.patch b/kernel/patches-4.14.x-rt/0030-0014-hrtimer-Use-accesor-functions-instead-of-direct-acce.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0016-0014-hrtimer-Use-accesor-functions-instead-of-direct-acce.patch rename to kernel/patches-4.14.x-rt/0030-0014-hrtimer-Use-accesor-functions-instead-of-direct-acce.patch diff --git a/kernel/patches-4.14.x-rt/0017-0015-hrtimer-Make-the-remote-enqueue-check-unconditional.patch b/kernel/patches-4.14.x-rt/0031-0015-hrtimer-Make-the-remote-enqueue-check-unconditional.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0017-0015-hrtimer-Make-the-remote-enqueue-check-unconditional.patch rename to kernel/patches-4.14.x-rt/0031-0015-hrtimer-Make-the-remote-enqueue-check-unconditional.patch diff --git a/kernel/patches-4.14.x-rt/0018-0016-hrtimer-Make-hrtimer_cpu_base.next_timer-handling-un.patch b/kernel/patches-4.14.x-rt/0032-0016-hrtimer-Make-hrtimer_cpu_base.next_timer-handling-un.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0018-0016-hrtimer-Make-hrtimer_cpu_base.next_timer-handling-un.patch rename to kernel/patches-4.14.x-rt/0032-0016-hrtimer-Make-hrtimer_cpu_base.next_timer-handling-un.patch diff --git a/kernel/patches-4.14.x-rt/0019-0017-hrtimer-Make-hrtimer_reprogramm-unconditional.patch b/kernel/patches-4.14.x-rt/0033-0017-hrtimer-Make-hrtimer_reprogramm-unconditional.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0019-0017-hrtimer-Make-hrtimer_reprogramm-unconditional.patch rename to kernel/patches-4.14.x-rt/0033-0017-hrtimer-Make-hrtimer_reprogramm-unconditional.patch diff --git a/kernel/patches-4.14.x-rt/0020-0018-hrtimer-Make-hrtimer_force_reprogramm-unconditionall.patch b/kernel/patches-4.14.x-rt/0034-0018-hrtimer-Make-hrtimer_force_reprogramm-unconditionall.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0020-0018-hrtimer-Make-hrtimer_force_reprogramm-unconditionall.patch rename to kernel/patches-4.14.x-rt/0034-0018-hrtimer-Make-hrtimer_force_reprogramm-unconditionall.patch diff --git a/kernel/patches-4.14.x-rt/0021-0019-hrtimer-Unify-handling-of-hrtimer-remove.patch b/kernel/patches-4.14.x-rt/0035-0019-hrtimer-Unify-handling-of-hrtimer-remove.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0021-0019-hrtimer-Unify-handling-of-hrtimer-remove.patch rename to kernel/patches-4.14.x-rt/0035-0019-hrtimer-Unify-handling-of-hrtimer-remove.patch diff --git a/kernel/patches-4.14.x-rt/0022-0020-hrtimer-Unify-handling-of-remote-enqueue.patch b/kernel/patches-4.14.x-rt/0036-0020-hrtimer-Unify-handling-of-remote-enqueue.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0022-0020-hrtimer-Unify-handling-of-remote-enqueue.patch rename to kernel/patches-4.14.x-rt/0036-0020-hrtimer-Unify-handling-of-remote-enqueue.patch diff --git a/kernel/patches-4.14.x-rt/0023-0021-hrtimer-Make-remote-enqueue-decision-less-restrictiv.patch b/kernel/patches-4.14.x-rt/0037-0021-hrtimer-Make-remote-enqueue-decision-less-restrictiv.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0023-0021-hrtimer-Make-remote-enqueue-decision-less-restrictiv.patch rename to kernel/patches-4.14.x-rt/0037-0021-hrtimer-Make-remote-enqueue-decision-less-restrictiv.patch diff --git a/kernel/patches-4.14.x-rt/0024-0022-hrtimer-Remove-base-argument-from-hrtimer_reprogram.patch b/kernel/patches-4.14.x-rt/0038-0022-hrtimer-Remove-base-argument-from-hrtimer_reprogram.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0024-0022-hrtimer-Remove-base-argument-from-hrtimer_reprogram.patch rename to kernel/patches-4.14.x-rt/0038-0022-hrtimer-Remove-base-argument-from-hrtimer_reprogram.patch diff --git a/kernel/patches-4.14.x-rt/0025-0023-hrtimer-Split-hrtimer_start_range_ns.patch b/kernel/patches-4.14.x-rt/0039-0023-hrtimer-Split-hrtimer_start_range_ns.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0025-0023-hrtimer-Split-hrtimer_start_range_ns.patch rename to kernel/patches-4.14.x-rt/0039-0023-hrtimer-Split-hrtimer_start_range_ns.patch diff --git a/kernel/patches-4.14.x-rt/0026-0024-hrtimer-Split-__hrtimer_get_next_event.patch b/kernel/patches-4.14.x-rt/0040-0024-hrtimer-Split-__hrtimer_get_next_event.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0026-0024-hrtimer-Split-__hrtimer_get_next_event.patch rename to kernel/patches-4.14.x-rt/0040-0024-hrtimer-Split-__hrtimer_get_next_event.patch diff --git a/kernel/patches-4.14.x-rt/0027-0025-hrtimer-Use-irqsave-irqrestore-around-__run_hrtimer.patch b/kernel/patches-4.14.x-rt/0041-0025-hrtimer-Use-irqsave-irqrestore-around-__run_hrtimer.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0027-0025-hrtimer-Use-irqsave-irqrestore-around-__run_hrtimer.patch rename to kernel/patches-4.14.x-rt/0041-0025-hrtimer-Use-irqsave-irqrestore-around-__run_hrtimer.patch diff --git a/kernel/patches-4.14.x-rt/0028-0026-hrtimer-Add-clock-bases-and-hrtimer-mode-for-soft-ir.patch b/kernel/patches-4.14.x-rt/0042-0026-hrtimer-Add-clock-bases-and-hrtimer-mode-for-soft-ir.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0028-0026-hrtimer-Add-clock-bases-and-hrtimer-mode-for-soft-ir.patch rename to kernel/patches-4.14.x-rt/0042-0026-hrtimer-Add-clock-bases-and-hrtimer-mode-for-soft-ir.patch diff --git a/kernel/patches-4.14.x-rt/0029-0027-hrtimer-Prepare-handling-of-hard-and-softirq-based-h.patch b/kernel/patches-4.14.x-rt/0043-0027-hrtimer-Prepare-handling-of-hard-and-softirq-based-h.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0029-0027-hrtimer-Prepare-handling-of-hard-and-softirq-based-h.patch rename to kernel/patches-4.14.x-rt/0043-0027-hrtimer-Prepare-handling-of-hard-and-softirq-based-h.patch diff --git a/kernel/patches-4.14.x-rt/0030-0028-hrtimer-Implement-support-for-softirq-based-hrtimers.patch b/kernel/patches-4.14.x-rt/0044-0028-hrtimer-Implement-support-for-softirq-based-hrtimers.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0030-0028-hrtimer-Implement-support-for-softirq-based-hrtimers.patch rename to kernel/patches-4.14.x-rt/0044-0028-hrtimer-Implement-support-for-softirq-based-hrtimers.patch diff --git a/kernel/patches-4.14.x-rt/0031-0029-hrtimer-Implement-SOFT-HARD-clock-base-selection.patch b/kernel/patches-4.14.x-rt/0045-0029-hrtimer-Implement-SOFT-HARD-clock-base-selection.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0031-0029-hrtimer-Implement-SOFT-HARD-clock-base-selection.patch rename to kernel/patches-4.14.x-rt/0045-0029-hrtimer-Implement-SOFT-HARD-clock-base-selection.patch diff --git a/kernel/patches-4.14.x-rt/0032-0030-can-bcm-Replace-hrtimer_tasklet-with-softirq-based-h.patch b/kernel/patches-4.14.x-rt/0046-0030-can-bcm-Replace-hrtimer_tasklet-with-softirq-based-h.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0032-0030-can-bcm-Replace-hrtimer_tasklet-with-softirq-based-h.patch rename to kernel/patches-4.14.x-rt/0046-0030-can-bcm-Replace-hrtimer_tasklet-with-softirq-based-h.patch diff --git a/kernel/patches-4.14.x-rt/0033-0031-mac80211_hwsim-Replace-hrtimer-tasklet-with-softirq-.patch b/kernel/patches-4.14.x-rt/0047-0031-mac80211_hwsim-Replace-hrtimer-tasklet-with-softirq-.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0033-0031-mac80211_hwsim-Replace-hrtimer-tasklet-with-softirq-.patch rename to kernel/patches-4.14.x-rt/0047-0031-mac80211_hwsim-Replace-hrtimer-tasklet-with-softirq-.patch diff --git a/kernel/patches-4.14.x-rt/0034-0032-xfrm-Replace-hrtimer-tasklet-with-softirq-hrtimer.patch b/kernel/patches-4.14.x-rt/0048-0032-xfrm-Replace-hrtimer-tasklet-with-softirq-hrtimer.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0034-0032-xfrm-Replace-hrtimer-tasklet-with-softirq-hrtimer.patch rename to kernel/patches-4.14.x-rt/0048-0032-xfrm-Replace-hrtimer-tasklet-with-softirq-hrtimer.patch diff --git a/kernel/patches-4.14.x-rt/0035-0033-softirq-Remove-tasklet_hrtimer.patch b/kernel/patches-4.14.x-rt/0049-0033-softirq-Remove-tasklet_hrtimer.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0035-0033-softirq-Remove-tasklet_hrtimer.patch rename to kernel/patches-4.14.x-rt/0049-0033-softirq-Remove-tasklet_hrtimer.patch diff --git a/kernel/patches-4.14.x-rt/0036-0034-ALSA-dummy-Replace-tasklet-with-softirq-hrtimer.patch b/kernel/patches-4.14.x-rt/0050-0034-ALSA-dummy-Replace-tasklet-with-softirq-hrtimer.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0036-0034-ALSA-dummy-Replace-tasklet-with-softirq-hrtimer.patch rename to kernel/patches-4.14.x-rt/0050-0034-ALSA-dummy-Replace-tasklet-with-softirq-hrtimer.patch diff --git a/kernel/patches-4.14.x-rt/0037-0035-usb-gadget-NCM-Replace-tasklet-with-softirq-hrtimer.patch b/kernel/patches-4.14.x-rt/0051-0035-usb-gadget-NCM-Replace-tasklet-with-softirq-hrtimer.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0037-0035-usb-gadget-NCM-Replace-tasklet-with-softirq-hrtimer.patch rename to kernel/patches-4.14.x-rt/0051-0035-usb-gadget-NCM-Replace-tasklet-with-softirq-hrtimer.patch diff --git a/kernel/patches-4.14.x-rt/0051-tty-goldfish-Enable-earlycon-only-if-built-in.patch b/kernel/patches-4.14.x-rt/0051-tty-goldfish-Enable-earlycon-only-if-built-in.patch deleted file mode 100644 index 29dd3c244..000000000 --- a/kernel/patches-4.14.x-rt/0051-tty-goldfish-Enable-earlycon-only-if-built-in.patch +++ /dev/null @@ -1,65 +0,0 @@ -From: Sebastian Andrzej Siewior -Date: Wed, 29 Nov 2017 16:32:20 +0100 -Subject: [PATCH] tty: goldfish: Enable 'earlycon' only if built-in - -Commit 3840ed9548f7 ("tty: goldfish: Implement support for kernel -'earlycon' parameter") breaks an allmodconfig config on x86: -| LD vmlinux.o -| MODPOST vmlinux.o -|drivers/tty/serial/earlycon.o: In function `parse_options': -|drivers/tty/serial/earlycon.c:97: undefined reference to `uart_parse_earlycon' -|Makefile:1005: recipe for target 'vmlinux' failed - -earlycon.c::parse_options() invokes uart_parse_earlycon() from serial_core.c -which is compiled=m because GOLDFISH_TTY itself (and most others) are =m. -To avoid that, I'm adding the _CONSOLE config option which is selected if the -GOLDFISH module itself is =y since it doesn't need the early bits for the =m -case (other drivers do the same dance). -The alternative would be to move uart_parse_earlycon() from -serial_core.c to earlycon.c (we don't have that many users of that -function). - -Fixes: 3840ed9548f7 ("tty: goldfish: Implement support for kernel - 'earlycon' parameter") -Signed-off-by: Sebastian Andrzej Siewior ---- - drivers/tty/Kconfig | 6 +++++- - drivers/tty/goldfish.c | 2 ++ - 2 files changed, 7 insertions(+), 1 deletion(-) - ---- a/drivers/tty/Kconfig -+++ b/drivers/tty/Kconfig -@@ -394,10 +394,14 @@ config GOLDFISH_TTY - depends on GOLDFISH - select SERIAL_CORE - select SERIAL_CORE_CONSOLE -- select SERIAL_EARLYCON - help - Console and system TTY driver for the Goldfish virtual platform. - -+config GOLDFISH_TTY_EARLY_CONSOLE -+ bool -+ default y if GOLDFISH_TTY=y -+ select SERIAL_EARLYCON -+ - config DA_TTY - bool "DA TTY" - depends on METAG_DA ---- a/drivers/tty/goldfish.c -+++ b/drivers/tty/goldfish.c -@@ -442,6 +442,7 @@ static int goldfish_tty_remove(struct pl - return 0; - } - -+#ifdef CONFIG_GOLDFISH_TTY_EARLY_CONSOLE - static void gf_early_console_putchar(struct uart_port *port, int ch) - { - __raw_writel(ch, port->membase); -@@ -465,6 +466,7 @@ static int __init gf_earlycon_setup(stru - } - - OF_EARLYCON_DECLARE(early_gf_tty, "google,goldfish-tty", gf_earlycon_setup); -+#endif - - static const struct of_device_id goldfish_tty_of_match[] = { - { .compatible = "google,goldfish-tty", }, diff --git a/kernel/patches-4.14.x-rt/0038-0036-net-mvpp2-Replace-tasklet-with-softirq-hrtimer.patch b/kernel/patches-4.14.x-rt/0052-0036-net-mvpp2-Replace-tasklet-with-softirq-hrtimer.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0038-0036-net-mvpp2-Replace-tasklet-with-softirq-hrtimer.patch rename to kernel/patches-4.14.x-rt/0052-0036-net-mvpp2-Replace-tasklet-with-softirq-hrtimer.patch diff --git a/kernel/patches-4.14.x-rt/0039-at91_dont_enable_disable_clock.patch b/kernel/patches-4.14.x-rt/0053-at91_dont_enable_disable_clock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0039-at91_dont_enable_disable_clock.patch rename to kernel/patches-4.14.x-rt/0053-at91_dont_enable_disable_clock.patch diff --git a/kernel/patches-4.14.x-rt/0040-rfc-arm-smp-__cpu_disable-fix-sleeping-function-called-from-invalid-context.patch b/kernel/patches-4.14.x-rt/0054-rfc-arm-smp-__cpu_disable-fix-sleeping-function-called-from-invalid-context.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0040-rfc-arm-smp-__cpu_disable-fix-sleeping-function-called-from-invalid-context.patch rename to kernel/patches-4.14.x-rt/0054-rfc-arm-smp-__cpu_disable-fix-sleeping-function-called-from-invalid-context.patch diff --git a/kernel/patches-4.14.x-rt/0041-rtmutex--Handle-non-enqueued-waiters-gracefully.patch b/kernel/patches-4.14.x-rt/0055-rtmutex--Handle-non-enqueued-waiters-gracefully.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0041-rtmutex--Handle-non-enqueued-waiters-gracefully.patch rename to kernel/patches-4.14.x-rt/0055-rtmutex--Handle-non-enqueued-waiters-gracefully.patch diff --git a/kernel/patches-4.14.x-rt/0042-rbtree-include-rcu.h-because-we-use-it.patch b/kernel/patches-4.14.x-rt/0056-rbtree-include-rcu.h-because-we-use-it.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0042-rbtree-include-rcu.h-because-we-use-it.patch rename to kernel/patches-4.14.x-rt/0056-rbtree-include-rcu.h-because-we-use-it.patch diff --git a/kernel/patches-4.14.x-rt/0043-rxrpc-remove-unused-static-variables.patch b/kernel/patches-4.14.x-rt/0057-rxrpc-remove-unused-static-variables.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0043-rxrpc-remove-unused-static-variables.patch rename to kernel/patches-4.14.x-rt/0057-rxrpc-remove-unused-static-variables.patch diff --git a/kernel/patches-4.14.x-rt/0044-mfd-syscon-atmel-smc-include-string.h.patch b/kernel/patches-4.14.x-rt/0058-mfd-syscon-atmel-smc-include-string.h.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0044-mfd-syscon-atmel-smc-include-string.h.patch rename to kernel/patches-4.14.x-rt/0058-mfd-syscon-atmel-smc-include-string.h.patch diff --git a/kernel/patches-4.14.x-rt/0045-sched-swait-include-wait.h.patch b/kernel/patches-4.14.x-rt/0059-sched-swait-include-wait.h.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0045-sched-swait-include-wait.h.patch rename to kernel/patches-4.14.x-rt/0059-sched-swait-include-wait.h.patch diff --git a/kernel/patches-4.14.x-rt/0046-NFSv4-replace-seqcount_t-with-a-seqlock_t.patch b/kernel/patches-4.14.x-rt/0060-NFSv4-replace-seqcount_t-with-a-seqlock_t.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0046-NFSv4-replace-seqcount_t-with-a-seqlock_t.patch rename to kernel/patches-4.14.x-rt/0060-NFSv4-replace-seqcount_t-with-a-seqlock_t.patch diff --git a/kernel/patches-4.14.x-rt/0047-Bluetooth-avoid-recursive-locking-in-hci_send_to_cha.patch b/kernel/patches-4.14.x-rt/0061-Bluetooth-avoid-recursive-locking-in-hci_send_to_cha.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0047-Bluetooth-avoid-recursive-locking-in-hci_send_to_cha.patch rename to kernel/patches-4.14.x-rt/0061-Bluetooth-avoid-recursive-locking-in-hci_send_to_cha.patch diff --git a/kernel/patches-4.14.x-rt/0048-iommu-iova-Use-raw_cpu_ptr-instead-of-get_cpu_ptr-fo.patch b/kernel/patches-4.14.x-rt/0062-iommu-iova-Use-raw_cpu_ptr-instead-of-get_cpu_ptr-fo.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0048-iommu-iova-Use-raw_cpu_ptr-instead-of-get_cpu_ptr-fo.patch rename to kernel/patches-4.14.x-rt/0062-iommu-iova-Use-raw_cpu_ptr-instead-of-get_cpu_ptr-fo.patch diff --git a/kernel/patches-4.14.x-rt/0049-greybus-audio-don-t-inclide-rwlock.h-directly.patch b/kernel/patches-4.14.x-rt/0063-greybus-audio-don-t-inclide-rwlock.h-directly.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0049-greybus-audio-don-t-inclide-rwlock.h-directly.patch rename to kernel/patches-4.14.x-rt/0063-greybus-audio-don-t-inclide-rwlock.h-directly.patch diff --git a/kernel/patches-4.14.x-rt/0050-xen-9pfs-don-t-inclide-rwlock.h-directly.patch b/kernel/patches-4.14.x-rt/0064-xen-9pfs-don-t-inclide-rwlock.h-directly.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0050-xen-9pfs-don-t-inclide-rwlock.h-directly.patch rename to kernel/patches-4.14.x-rt/0064-xen-9pfs-don-t-inclide-rwlock.h-directly.patch diff --git a/kernel/patches-4.14.x-rt/0052-drm-i915-properly-init-lockdep-class.patch b/kernel/patches-4.14.x-rt/0065-drm-i915-properly-init-lockdep-class.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0052-drm-i915-properly-init-lockdep-class.patch rename to kernel/patches-4.14.x-rt/0065-drm-i915-properly-init-lockdep-class.patch diff --git a/kernel/patches-4.14.x-rt/0053-timerqueue-Document-return-values-of-timerqueue_add-.patch b/kernel/patches-4.14.x-rt/0066-timerqueue-Document-return-values-of-timerqueue_add-.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0053-timerqueue-Document-return-values-of-timerqueue_add-.patch rename to kernel/patches-4.14.x-rt/0066-timerqueue-Document-return-values-of-timerqueue_add-.patch diff --git a/kernel/patches-4.14.x-rt/0054-sparc64-use-generic-rwsem-spinlocks-rt.patch b/kernel/patches-4.14.x-rt/0067-sparc64-use-generic-rwsem-spinlocks-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0054-sparc64-use-generic-rwsem-spinlocks-rt.patch rename to kernel/patches-4.14.x-rt/0067-sparc64-use-generic-rwsem-spinlocks-rt.patch diff --git a/kernel/patches-4.14.x-rt/0055-kernel-SRCU-provide-a-static-initializer.patch b/kernel/patches-4.14.x-rt/0068-kernel-SRCU-provide-a-static-initializer.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0055-kernel-SRCU-provide-a-static-initializer.patch rename to kernel/patches-4.14.x-rt/0068-kernel-SRCU-provide-a-static-initializer.patch diff --git a/kernel/patches-4.14.x-rt/0056-target-drop-spin_lock_assert-irqs_disabled-combo-che.patch b/kernel/patches-4.14.x-rt/0069-target-drop-spin_lock_assert-irqs_disabled-combo-che.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0056-target-drop-spin_lock_assert-irqs_disabled-combo-che.patch rename to kernel/patches-4.14.x-rt/0069-target-drop-spin_lock_assert-irqs_disabled-combo-che.patch diff --git a/kernel/patches-4.14.x-rt/0057-kernel-sched-Provide-a-pointer-to-the-valid-CPU-mask.patch b/kernel/patches-4.14.x-rt/0070-kernel-sched-Provide-a-pointer-to-the-valid-CPU-mask.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0057-kernel-sched-Provide-a-pointer-to-the-valid-CPU-mask.patch rename to kernel/patches-4.14.x-rt/0070-kernel-sched-Provide-a-pointer-to-the-valid-CPU-mask.patch diff --git a/kernel/patches-4.14.x-rt/0058-add_migrate_disable.patch b/kernel/patches-4.14.x-rt/0071-add_migrate_disable.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0058-add_migrate_disable.patch rename to kernel/patches-4.14.x-rt/0071-add_migrate_disable.patch diff --git a/kernel/patches-4.14.x-rt/0059-0001-tracing-Reverse-the-order-of-trace_types_lock-and-ev.patch b/kernel/patches-4.14.x-rt/0072-0001-tracing-Reverse-the-order-of-trace_types_lock-and-ev.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0059-0001-tracing-Reverse-the-order-of-trace_types_lock-and-ev.patch rename to kernel/patches-4.14.x-rt/0072-0001-tracing-Reverse-the-order-of-trace_types_lock-and-ev.patch diff --git a/kernel/patches-4.14.x-rt/0060-0002-ring-buffer-Rewrite-trace_recursive_-un-lock-to-be-s.patch b/kernel/patches-4.14.x-rt/0073-0002-ring-buffer-Rewrite-trace_recursive_-un-lock-to-be-s.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0060-0002-ring-buffer-Rewrite-trace_recursive_-un-lock-to-be-s.patch rename to kernel/patches-4.14.x-rt/0073-0002-ring-buffer-Rewrite-trace_recursive_-un-lock-to-be-s.patch diff --git a/kernel/patches-4.14.x-rt/0061-0003-tracing-Remove-lookups-from-tracing_map-hitcount.patch b/kernel/patches-4.14.x-rt/0074-0003-tracing-Remove-lookups-from-tracing_map-hitcount.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0061-0003-tracing-Remove-lookups-from-tracing_map-hitcount.patch rename to kernel/patches-4.14.x-rt/0074-0003-tracing-Remove-lookups-from-tracing_map-hitcount.patch diff --git a/kernel/patches-4.14.x-rt/0062-0004-tracing-Increase-tracing-map-KEYS_MAX-size.patch b/kernel/patches-4.14.x-rt/0075-0004-tracing-Increase-tracing-map-KEYS_MAX-size.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0062-0004-tracing-Increase-tracing-map-KEYS_MAX-size.patch rename to kernel/patches-4.14.x-rt/0075-0004-tracing-Increase-tracing-map-KEYS_MAX-size.patch diff --git a/kernel/patches-4.14.x-rt/0063-0005-tracing-Make-traceprobe-parsing-code-reusable.patch b/kernel/patches-4.14.x-rt/0076-0005-tracing-Make-traceprobe-parsing-code-reusable.patch similarity index 98% rename from kernel/patches-4.14.x-rt/0063-0005-tracing-Make-traceprobe-parsing-code-reusable.patch rename to kernel/patches-4.14.x-rt/0076-0005-tracing-Make-traceprobe-parsing-code-reusable.patch index 14912fcd5..be506729c 100644 --- a/kernel/patches-4.14.x-rt/0063-0005-tracing-Make-traceprobe-parsing-code-reusable.patch +++ b/kernel/patches-4.14.x-rt/0076-0005-tracing-Make-traceprobe-parsing-code-reusable.patch @@ -192,7 +192,7 @@ Signed-off-by: Sebastian Andrzej Siewior warn++; --- a/kernel/trace/trace_probe.c +++ b/kernel/trace/trace_probe.c -@@ -623,92 +623,6 @@ void traceprobe_free_probe_arg(struct pr +@@ -621,92 +621,6 @@ void traceprobe_free_probe_arg(struct pr kfree(arg->comm); } @@ -297,7 +297,7 @@ Signed-off-by: Sebastian Andrzej Siewior /* Reserved field names */ @@ -356,12 +355,6 @@ extern void traceprobe_free_probe_arg(st - extern int traceprobe_split_symbol_offset(char *symbol, unsigned long *offset); + extern int traceprobe_split_symbol_offset(char *symbol, long *offset); -extern ssize_t traceprobe_probes_write(struct file *file, - const char __user *buffer, size_t count, loff_t *ppos, diff --git a/kernel/patches-4.14.x-rt/0064-0006-tracing-Clean-up-hist_field_flags-enum.patch b/kernel/patches-4.14.x-rt/0077-0006-tracing-Clean-up-hist_field_flags-enum.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0064-0006-tracing-Clean-up-hist_field_flags-enum.patch rename to kernel/patches-4.14.x-rt/0077-0006-tracing-Clean-up-hist_field_flags-enum.patch diff --git a/kernel/patches-4.14.x-rt/0065-0007-tracing-Add-hist_field_name-accessor.patch b/kernel/patches-4.14.x-rt/0078-0007-tracing-Add-hist_field_name-accessor.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0065-0007-tracing-Add-hist_field_name-accessor.patch rename to kernel/patches-4.14.x-rt/0078-0007-tracing-Add-hist_field_name-accessor.patch diff --git a/kernel/patches-4.14.x-rt/0066-0008-tracing-Reimplement-log2.patch b/kernel/patches-4.14.x-rt/0079-0008-tracing-Reimplement-log2.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0066-0008-tracing-Reimplement-log2.patch rename to kernel/patches-4.14.x-rt/0079-0008-tracing-Reimplement-log2.patch diff --git a/kernel/patches-4.14.x-rt/0067-0009-tracing-Move-hist-trigger-Documentation-to-histogram.patch b/kernel/patches-4.14.x-rt/0080-0009-tracing-Move-hist-trigger-Documentation-to-histogram.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0067-0009-tracing-Move-hist-trigger-Documentation-to-histogram.patch rename to kernel/patches-4.14.x-rt/0080-0009-tracing-Move-hist-trigger-Documentation-to-histogram.patch diff --git a/kernel/patches-4.14.x-rt/0068-0010-tracing-Add-Documentation-for-log2-modifier.patch b/kernel/patches-4.14.x-rt/0081-0010-tracing-Add-Documentation-for-log2-modifier.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0068-0010-tracing-Add-Documentation-for-log2-modifier.patch rename to kernel/patches-4.14.x-rt/0081-0010-tracing-Add-Documentation-for-log2-modifier.patch diff --git a/kernel/patches-4.14.x-rt/0069-0011-tracing-Add-support-to-detect-and-avoid-duplicates.patch b/kernel/patches-4.14.x-rt/0082-0011-tracing-Add-support-to-detect-and-avoid-duplicates.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0069-0011-tracing-Add-support-to-detect-and-avoid-duplicates.patch rename to kernel/patches-4.14.x-rt/0082-0011-tracing-Add-support-to-detect-and-avoid-duplicates.patch diff --git a/kernel/patches-4.14.x-rt/0070-0012-tracing-Remove-code-which-merges-duplicates.patch b/kernel/patches-4.14.x-rt/0083-0012-tracing-Remove-code-which-merges-duplicates.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0070-0012-tracing-Remove-code-which-merges-duplicates.patch rename to kernel/patches-4.14.x-rt/0083-0012-tracing-Remove-code-which-merges-duplicates.patch diff --git a/kernel/patches-4.14.x-rt/0071-0013-ring-buffer-Add-interface-for-setting-absolute-time-.patch b/kernel/patches-4.14.x-rt/0084-0013-ring-buffer-Add-interface-for-setting-absolute-time-.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0071-0013-ring-buffer-Add-interface-for-setting-absolute-time-.patch rename to kernel/patches-4.14.x-rt/0084-0013-ring-buffer-Add-interface-for-setting-absolute-time-.patch diff --git a/kernel/patches-4.14.x-rt/0072-0014-ring-buffer-Redefine-the-unimplemented-RINGBUF_TYPE_.patch b/kernel/patches-4.14.x-rt/0085-0014-ring-buffer-Redefine-the-unimplemented-RINGBUF_TYPE_.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0072-0014-ring-buffer-Redefine-the-unimplemented-RINGBUF_TYPE_.patch rename to kernel/patches-4.14.x-rt/0085-0014-ring-buffer-Redefine-the-unimplemented-RINGBUF_TYPE_.patch diff --git a/kernel/patches-4.14.x-rt/0073-0015-tracing-Add-timestamp_mode-trace-file.patch b/kernel/patches-4.14.x-rt/0086-0015-tracing-Add-timestamp_mode-trace-file.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0073-0015-tracing-Add-timestamp_mode-trace-file.patch rename to kernel/patches-4.14.x-rt/0086-0015-tracing-Add-timestamp_mode-trace-file.patch diff --git a/kernel/patches-4.14.x-rt/0074-0016-tracing-Give-event-triggers-access-to-ring_buffer_ev.patch b/kernel/patches-4.14.x-rt/0087-0016-tracing-Give-event-triggers-access-to-ring_buffer_ev.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0074-0016-tracing-Give-event-triggers-access-to-ring_buffer_ev.patch rename to kernel/patches-4.14.x-rt/0087-0016-tracing-Give-event-triggers-access-to-ring_buffer_ev.patch diff --git a/kernel/patches-4.14.x-rt/0075-0017-tracing-Add-ring-buffer-event-param-to-hist-field-fu.patch b/kernel/patches-4.14.x-rt/0088-0017-tracing-Add-ring-buffer-event-param-to-hist-field-fu.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0075-0017-tracing-Add-ring-buffer-event-param-to-hist-field-fu.patch rename to kernel/patches-4.14.x-rt/0088-0017-tracing-Add-ring-buffer-event-param-to-hist-field-fu.patch diff --git a/kernel/patches-4.14.x-rt/0076-0018-tracing-Break-out-hist-trigger-assignment-parsing.patch b/kernel/patches-4.14.x-rt/0089-0018-tracing-Break-out-hist-trigger-assignment-parsing.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0076-0018-tracing-Break-out-hist-trigger-assignment-parsing.patch rename to kernel/patches-4.14.x-rt/0089-0018-tracing-Break-out-hist-trigger-assignment-parsing.patch diff --git a/kernel/patches-4.14.x-rt/0077-0019-tracing-Add-hist-trigger-timestamp-support.patch b/kernel/patches-4.14.x-rt/0090-0019-tracing-Add-hist-trigger-timestamp-support.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0077-0019-tracing-Add-hist-trigger-timestamp-support.patch rename to kernel/patches-4.14.x-rt/0090-0019-tracing-Add-hist-trigger-timestamp-support.patch diff --git a/kernel/patches-4.14.x-rt/0078-0020-tracing-Add-per-element-variable-support-to-tracing_.patch b/kernel/patches-4.14.x-rt/0091-0020-tracing-Add-per-element-variable-support-to-tracing_.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0078-0020-tracing-Add-per-element-variable-support-to-tracing_.patch rename to kernel/patches-4.14.x-rt/0091-0020-tracing-Add-per-element-variable-support-to-tracing_.patch diff --git a/kernel/patches-4.14.x-rt/0079-0021-tracing-Add-hist_data-member-to-hist_field.patch b/kernel/patches-4.14.x-rt/0092-0021-tracing-Add-hist_data-member-to-hist_field.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0079-0021-tracing-Add-hist_data-member-to-hist_field.patch rename to kernel/patches-4.14.x-rt/0092-0021-tracing-Add-hist_data-member-to-hist_field.patch diff --git a/kernel/patches-4.14.x-rt/0080-0022-tracing-Add-usecs-modifier-for-hist-trigger-timestam.patch b/kernel/patches-4.14.x-rt/0093-0022-tracing-Add-usecs-modifier-for-hist-trigger-timestam.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0080-0022-tracing-Add-usecs-modifier-for-hist-trigger-timestam.patch rename to kernel/patches-4.14.x-rt/0093-0022-tracing-Add-usecs-modifier-for-hist-trigger-timestam.patch diff --git a/kernel/patches-4.14.x-rt/0081-0023-tracing-Add-variable-support-to-hist-triggers.patch b/kernel/patches-4.14.x-rt/0094-0023-tracing-Add-variable-support-to-hist-triggers.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0081-0023-tracing-Add-variable-support-to-hist-triggers.patch rename to kernel/patches-4.14.x-rt/0094-0023-tracing-Add-variable-support-to-hist-triggers.patch diff --git a/kernel/patches-4.14.x-rt/0082-0024-tracing-Account-for-variables-in-named-trigger-compa.patch b/kernel/patches-4.14.x-rt/0095-0024-tracing-Account-for-variables-in-named-trigger-compa.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0082-0024-tracing-Account-for-variables-in-named-trigger-compa.patch rename to kernel/patches-4.14.x-rt/0095-0024-tracing-Account-for-variables-in-named-trigger-compa.patch diff --git a/kernel/patches-4.14.x-rt/0083-0025-tracing-Move-get_hist_field_flags.patch b/kernel/patches-4.14.x-rt/0096-0025-tracing-Move-get_hist_field_flags.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0083-0025-tracing-Move-get_hist_field_flags.patch rename to kernel/patches-4.14.x-rt/0096-0025-tracing-Move-get_hist_field_flags.patch diff --git a/kernel/patches-4.14.x-rt/0084-0026-tracing-Add-simple-expression-support-to-hist-trigge.patch b/kernel/patches-4.14.x-rt/0097-0026-tracing-Add-simple-expression-support-to-hist-trigge.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0084-0026-tracing-Add-simple-expression-support-to-hist-trigge.patch rename to kernel/patches-4.14.x-rt/0097-0026-tracing-Add-simple-expression-support-to-hist-trigge.patch diff --git a/kernel/patches-4.14.x-rt/0085-0027-tracing-Generalize-per-element-hist-trigger-data.patch b/kernel/patches-4.14.x-rt/0098-0027-tracing-Generalize-per-element-hist-trigger-data.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0085-0027-tracing-Generalize-per-element-hist-trigger-data.patch rename to kernel/patches-4.14.x-rt/0098-0027-tracing-Generalize-per-element-hist-trigger-data.patch diff --git a/kernel/patches-4.14.x-rt/0086-0028-tracing-Pass-tracing_map_elt-to-hist_field-accessor-.patch b/kernel/patches-4.14.x-rt/0099-0028-tracing-Pass-tracing_map_elt-to-hist_field-accessor-.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0086-0028-tracing-Pass-tracing_map_elt-to-hist_field-accessor-.patch rename to kernel/patches-4.14.x-rt/0099-0028-tracing-Pass-tracing_map_elt-to-hist_field-accessor-.patch diff --git a/kernel/patches-4.14.x-rt/0087-0029-tracing-Add-hist_field-type-field.patch b/kernel/patches-4.14.x-rt/0100-0029-tracing-Add-hist_field-type-field.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0087-0029-tracing-Add-hist_field-type-field.patch rename to kernel/patches-4.14.x-rt/0100-0029-tracing-Add-hist_field-type-field.patch diff --git a/kernel/patches-4.14.x-rt/0088-0030-tracing-Add-variable-reference-handling-to-hist-trig.patch b/kernel/patches-4.14.x-rt/0101-0030-tracing-Add-variable-reference-handling-to-hist-trig.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0088-0030-tracing-Add-variable-reference-handling-to-hist-trig.patch rename to kernel/patches-4.14.x-rt/0101-0030-tracing-Add-variable-reference-handling-to-hist-trig.patch diff --git a/kernel/patches-4.14.x-rt/0089-0031-tracing-Add-hist-trigger-action-hook.patch b/kernel/patches-4.14.x-rt/0102-0031-tracing-Add-hist-trigger-action-hook.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0089-0031-tracing-Add-hist-trigger-action-hook.patch rename to kernel/patches-4.14.x-rt/0102-0031-tracing-Add-hist-trigger-action-hook.patch diff --git a/kernel/patches-4.14.x-rt/0090-0032-tracing-Add-support-for-synthetic-events.patch b/kernel/patches-4.14.x-rt/0103-0032-tracing-Add-support-for-synthetic-events.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0090-0032-tracing-Add-support-for-synthetic-events.patch rename to kernel/patches-4.14.x-rt/0103-0032-tracing-Add-support-for-synthetic-events.patch diff --git a/kernel/patches-4.14.x-rt/0091-0033-tracing-Add-support-for-field-variables.patch b/kernel/patches-4.14.x-rt/0104-0033-tracing-Add-support-for-field-variables.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0091-0033-tracing-Add-support-for-field-variables.patch rename to kernel/patches-4.14.x-rt/0104-0033-tracing-Add-support-for-field-variables.patch diff --git a/kernel/patches-4.14.x-rt/0092-0034-tracing-Add-onmatch-hist-trigger-action-support.patch b/kernel/patches-4.14.x-rt/0105-0034-tracing-Add-onmatch-hist-trigger-action-support.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0092-0034-tracing-Add-onmatch-hist-trigger-action-support.patch rename to kernel/patches-4.14.x-rt/0105-0034-tracing-Add-onmatch-hist-trigger-action-support.patch diff --git a/kernel/patches-4.14.x-rt/0093-0035-tracing-Add-onmax-hist-trigger-action-support.patch b/kernel/patches-4.14.x-rt/0106-0035-tracing-Add-onmax-hist-trigger-action-support.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0093-0035-tracing-Add-onmax-hist-trigger-action-support.patch rename to kernel/patches-4.14.x-rt/0106-0035-tracing-Add-onmax-hist-trigger-action-support.patch diff --git a/kernel/patches-4.14.x-rt/0094-0036-tracing-Allow-whitespace-to-surround-hist-trigger-fi.patch b/kernel/patches-4.14.x-rt/0107-0036-tracing-Allow-whitespace-to-surround-hist-trigger-fi.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0094-0036-tracing-Allow-whitespace-to-surround-hist-trigger-fi.patch rename to kernel/patches-4.14.x-rt/0107-0036-tracing-Allow-whitespace-to-surround-hist-trigger-fi.patch diff --git a/kernel/patches-4.14.x-rt/0095-0037-tracing-Add-cpu-field-for-hist-triggers.patch b/kernel/patches-4.14.x-rt/0108-0037-tracing-Add-cpu-field-for-hist-triggers.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0095-0037-tracing-Add-cpu-field-for-hist-triggers.patch rename to kernel/patches-4.14.x-rt/0108-0037-tracing-Add-cpu-field-for-hist-triggers.patch diff --git a/kernel/patches-4.14.x-rt/0096-0038-tracing-Add-hist-trigger-support-for-variable-refere.patch b/kernel/patches-4.14.x-rt/0109-0038-tracing-Add-hist-trigger-support-for-variable-refere.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0096-0038-tracing-Add-hist-trigger-support-for-variable-refere.patch rename to kernel/patches-4.14.x-rt/0109-0038-tracing-Add-hist-trigger-support-for-variable-refere.patch diff --git a/kernel/patches-4.14.x-rt/0097-0039-tracing-Add-last-error-error-facility-for-hist-trigg.patch b/kernel/patches-4.14.x-rt/0110-0039-tracing-Add-last-error-error-facility-for-hist-trigg.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0097-0039-tracing-Add-last-error-error-facility-for-hist-trigg.patch rename to kernel/patches-4.14.x-rt/0110-0039-tracing-Add-last-error-error-facility-for-hist-trigg.patch diff --git a/kernel/patches-4.14.x-rt/0098-0040-tracing-Add-inter-event-hist-trigger-Documentation.patch b/kernel/patches-4.14.x-rt/0111-0040-tracing-Add-inter-event-hist-trigger-Documentation.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0098-0040-tracing-Add-inter-event-hist-trigger-Documentation.patch rename to kernel/patches-4.14.x-rt/0111-0040-tracing-Add-inter-event-hist-trigger-Documentation.patch diff --git a/kernel/patches-4.14.x-rt/0099-0041-tracing-Make-tracing_set_clock-non-static.patch b/kernel/patches-4.14.x-rt/0112-0041-tracing-Make-tracing_set_clock-non-static.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0099-0041-tracing-Make-tracing_set_clock-non-static.patch rename to kernel/patches-4.14.x-rt/0112-0041-tracing-Make-tracing_set_clock-non-static.patch diff --git a/kernel/patches-4.14.x-rt/0100-0042-tracing-Add-a-clock-attribute-for-hist-triggers.patch b/kernel/patches-4.14.x-rt/0113-0042-tracing-Add-a-clock-attribute-for-hist-triggers.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0100-0042-tracing-Add-a-clock-attribute-for-hist-triggers.patch rename to kernel/patches-4.14.x-rt/0113-0042-tracing-Add-a-clock-attribute-for-hist-triggers.patch diff --git a/kernel/patches-4.14.x-rt/0101-0043-ring-buffer-Bring-back-context-level-recursive-check.patch b/kernel/patches-4.14.x-rt/0114-0043-ring-buffer-Bring-back-context-level-recursive-check.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0101-0043-ring-buffer-Bring-back-context-level-recursive-check.patch rename to kernel/patches-4.14.x-rt/0114-0043-ring-buffer-Bring-back-context-level-recursive-check.patch diff --git a/kernel/patches-4.14.x-rt/0102-0044-ring-buffer-Fix-duplicate-results-in-mapping-context.patch b/kernel/patches-4.14.x-rt/0115-0044-ring-buffer-Fix-duplicate-results-in-mapping-context.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0102-0044-ring-buffer-Fix-duplicate-results-in-mapping-context.patch rename to kernel/patches-4.14.x-rt/0115-0044-ring-buffer-Fix-duplicate-results-in-mapping-context.patch diff --git a/kernel/patches-4.14.x-rt/0103-0045-ring-buffer-Add-nesting-for-adding-events-within-eve.patch b/kernel/patches-4.14.x-rt/0116-0045-ring-buffer-Add-nesting-for-adding-events-within-eve.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0103-0045-ring-buffer-Add-nesting-for-adding-events-within-eve.patch rename to kernel/patches-4.14.x-rt/0116-0045-ring-buffer-Add-nesting-for-adding-events-within-eve.patch diff --git a/kernel/patches-4.14.x-rt/0104-0046-tracing-Use-the-ring-buffer-nesting-to-allow-synthet.patch b/kernel/patches-4.14.x-rt/0117-0046-tracing-Use-the-ring-buffer-nesting-to-allow-synthet.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0104-0046-tracing-Use-the-ring-buffer-nesting-to-allow-synthet.patch rename to kernel/patches-4.14.x-rt/0117-0046-tracing-Use-the-ring-buffer-nesting-to-allow-synthet.patch diff --git a/kernel/patches-4.14.x-rt/0105-0047-tracing-Add-inter-event-blurb-to-HIST_TRIGGERS-confi.patch b/kernel/patches-4.14.x-rt/0118-0047-tracing-Add-inter-event-blurb-to-HIST_TRIGGERS-confi.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0105-0047-tracing-Add-inter-event-blurb-to-HIST_TRIGGERS-confi.patch rename to kernel/patches-4.14.x-rt/0118-0047-tracing-Add-inter-event-blurb-to-HIST_TRIGGERS-confi.patch diff --git a/kernel/patches-4.14.x-rt/0106-0048-selftests-ftrace-Add-inter-event-hist-triggers-testc.patch b/kernel/patches-4.14.x-rt/0119-0048-selftests-ftrace-Add-inter-event-hist-triggers-testc.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0106-0048-selftests-ftrace-Add-inter-event-hist-triggers-testc.patch rename to kernel/patches-4.14.x-rt/0119-0048-selftests-ftrace-Add-inter-event-hist-triggers-testc.patch diff --git a/kernel/patches-4.14.x-rt/0120-0001-tracing-Fix-display-of-hist-trigger-expressions-cont.patch b/kernel/patches-4.14.x-rt/0120-0001-tracing-Fix-display-of-hist-trigger-expressions-cont.patch new file mode 100644 index 000000000..cc46244df --- /dev/null +++ b/kernel/patches-4.14.x-rt/0120-0001-tracing-Fix-display-of-hist-trigger-expressions-cont.patch @@ -0,0 +1,76 @@ +From: Tom Zanussi +Date: Wed, 28 Mar 2018 15:10:53 -0500 +Subject: [PATCH 1/4] tracing: Fix display of hist trigger expressions + containing timestamps + +When displaying hist triggers, variable references that have the +timestamp field flag set are erroneously displayed as common_timestamp +rather than the variable reference. Additionally, timestamp +expressions are displayed in the same way. Fix this by forcing the +timestamp flag handling to follow variable reference and expression +handling. + +Before: + + # cat /sys/kernel/debug/tracing/events/sched/sched_switch/trigger + hist:keys=next_pid:vals=hitcount:wakeup_lat=common_timestamp.usecs:... + +After: + + # cat /sys/kernel/debug/tracing/events/sched/sched_switch/trigger + hist:keys=next_pid:vals=hitcount:wakeup_lat=common_timestamp.usecs-$ts0.usecs:... + +Signed-off-by: Tom Zanussi +Signed-off-by: Sebastian Andrzej Siewior +--- + kernel/trace/trace_events_hist.c | 19 +++++-------------- + 1 file changed, 5 insertions(+), 14 deletions(-) + +--- a/kernel/trace/trace_events_hist.c ++++ b/kernel/trace/trace_events_hist.c +@@ -1686,8 +1686,6 @@ static const char *hist_field_name(struc + else if (field->flags & HIST_FIELD_FL_LOG2 || + field->flags & HIST_FIELD_FL_ALIAS) + field_name = hist_field_name(field->operands[0], ++level); +- else if (field->flags & HIST_FIELD_FL_TIMESTAMP) +- field_name = "common_timestamp"; + else if (field->flags & HIST_FIELD_FL_CPU) + field_name = "cpu"; + else if (field->flags & HIST_FIELD_FL_EXPR || +@@ -1703,7 +1701,8 @@ static const char *hist_field_name(struc + field_name = full_name; + } else + field_name = field->name; +- } ++ } else if (field->flags & HIST_FIELD_FL_TIMESTAMP) ++ field_name = "common_timestamp"; + + if (field_name == NULL) + field_name = ""; +@@ -4859,23 +4858,15 @@ static void hist_field_print(struct seq_ + if (hist_field->var.name) + seq_printf(m, "%s=", hist_field->var.name); + +- if (hist_field->flags & HIST_FIELD_FL_TIMESTAMP) +- seq_puts(m, "common_timestamp"); +- else if (hist_field->flags & HIST_FIELD_FL_CPU) ++ if (hist_field->flags & HIST_FIELD_FL_CPU) + seq_puts(m, "cpu"); + else if (field_name) { + if (hist_field->flags & HIST_FIELD_FL_VAR_REF || + hist_field->flags & HIST_FIELD_FL_ALIAS) + seq_putc(m, '$'); + seq_printf(m, "%s", field_name); +- } +- +- if (hist_field->flags) { +- const char *flags_str = get_hist_field_flags(hist_field); +- +- if (flags_str) +- seq_printf(m, ".%s", flags_str); +- } ++ } else if (hist_field->flags & HIST_FIELD_FL_TIMESTAMP) ++ seq_puts(m, "common_timestamp"); + } + + static int event_hist_trigger_print(struct seq_file *m, diff --git a/kernel/patches-4.14.x-rt/0121-0002-tracing-Don-t-add-flag-strings-when-displaying-varia.patch b/kernel/patches-4.14.x-rt/0121-0002-tracing-Don-t-add-flag-strings-when-displaying-varia.patch new file mode 100644 index 000000000..4a0b95f6c --- /dev/null +++ b/kernel/patches-4.14.x-rt/0121-0002-tracing-Don-t-add-flag-strings-when-displaying-varia.patch @@ -0,0 +1,34 @@ +From: Tom Zanussi +Date: Wed, 28 Mar 2018 15:10:54 -0500 +Subject: [PATCH 2/4] tracing: Don't add flag strings when displaying variable + references + +Variable references should never have flags appended when displayed - +prevent that from happening. + +Before: + + # cat /sys/kernel/debug/tracing/events/sched/sched_switch/trigger + hist:keys=next_pid:vals=hitcount:wakeup_lat=common_timestamp.usecs-$ts0.usecs:... + +After: + + hist:keys=next_pid:vals=hitcount:wakeup_lat=common_timestamp.usecs-$ts0:... + +Signed-off-by: Tom Zanussi +Signed-off-by: Sebastian Andrzej Siewior +--- + kernel/trace/trace_events_hist.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/kernel/trace/trace_events_hist.c ++++ b/kernel/trace/trace_events_hist.c +@@ -2052,7 +2052,7 @@ static void expr_field_str(struct hist_f + + strcat(expr, hist_field_name(field, 0)); + +- if (field->flags) { ++ if (field->flags && !(field->flags & HIST_FIELD_FL_VAR_REF)) { + const char *flags_str = get_hist_field_flags(field); + + if (flags_str) { diff --git a/kernel/patches-4.14.x-rt/0122-0003-tracing-Add-action-comparisons-when-testing-matching.patch b/kernel/patches-4.14.x-rt/0122-0003-tracing-Add-action-comparisons-when-testing-matching.patch new file mode 100644 index 000000000..0fa19086f --- /dev/null +++ b/kernel/patches-4.14.x-rt/0122-0003-tracing-Add-action-comparisons-when-testing-matching.patch @@ -0,0 +1,84 @@ +From: Tom Zanussi +Date: Wed, 28 Mar 2018 15:10:55 -0500 +Subject: [PATCH 3/4] tracing: Add action comparisons when testing matching + hist triggers + +Actions also need to be considered when checking for matching triggers +- triggers differing only by action should be allowed, but currently +aren't because the matching check ignores the action and erroneously +returns -EEXIST. + +Add and call an actions_match() function to address that. + +Signed-off-by: Tom Zanussi +Signed-off-by: Sebastian Andrzej Siewior +--- + kernel/trace/trace_events_hist.c | 50 +++++++++++++++++++++++++++++++++++++++ + 1 file changed, 50 insertions(+) + +--- a/kernel/trace/trace_events_hist.c ++++ b/kernel/trace/trace_events_hist.c +@@ -4363,6 +4363,53 @@ static void print_onmatch_spec(struct se + seq_puts(m, ")"); + } + ++static bool actions_match(struct hist_trigger_data *hist_data, ++ struct hist_trigger_data *hist_data_test) ++{ ++ unsigned int i, j; ++ ++ if (hist_data->n_actions != hist_data_test->n_actions) ++ return false; ++ ++ for (i = 0; i < hist_data->n_actions; i++) { ++ struct action_data *data = hist_data->actions[i]; ++ struct action_data *data_test = hist_data_test->actions[i]; ++ ++ if (data->fn != data_test->fn) ++ return false; ++ ++ if (data->n_params != data_test->n_params) ++ return false; ++ ++ for (j = 0; j < data->n_params; j++) { ++ if (strcmp(data->params[j], data_test->params[j]) != 0) ++ return false; ++ } ++ ++ if (data->fn == action_trace) { ++ if (strcmp(data->onmatch.synth_event_name, ++ data_test->onmatch.synth_event_name) != 0) ++ return false; ++ if (strcmp(data->onmatch.match_event_system, ++ data_test->onmatch.match_event_system) != 0) ++ return false; ++ if (strcmp(data->onmatch.match_event, ++ data_test->onmatch.match_event) != 0) ++ return false; ++ } else if (data->fn == onmax_save) { ++ if (strcmp(data->onmax.var_str, ++ data_test->onmax.var_str) != 0) ++ return false; ++ if (strcmp(data->onmax.fn_name, ++ data_test->onmax.fn_name) != 0) ++ return false; ++ } ++ } ++ ++ return true; ++} ++ ++ + static void print_actions_spec(struct seq_file *m, + struct hist_trigger_data *hist_data) + { +@@ -5175,6 +5222,9 @@ static bool hist_trigger_match(struct ev + (strcmp(data->filter_str, data_test->filter_str) != 0)) + return false; + ++ if (!actions_match(hist_data, hist_data_test)) ++ return false; ++ + return true; + } + diff --git a/kernel/patches-4.14.x-rt/0123-0004-tracing-Make-sure-variable-string-fields-are-NULL-te.patch b/kernel/patches-4.14.x-rt/0123-0004-tracing-Make-sure-variable-string-fields-are-NULL-te.patch new file mode 100644 index 000000000..47e2c5a55 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0123-0004-tracing-Make-sure-variable-string-fields-are-NULL-te.patch @@ -0,0 +1,36 @@ +From: Tom Zanussi +Date: Wed, 28 Mar 2018 15:10:56 -0500 +Subject: [PATCH 4/4] tracing: Make sure variable string fields are + NULL-terminated + +The strncpy() currently being used for variable string fields can +result in a lack of termination if the string length is equal to the +field size. Use the safer strscpy() instead, which will guarantee +termination. + +Signed-off-by: Tom Zanussi +Signed-off-by: Sebastian Andrzej Siewior +--- + kernel/trace/trace_events_hist.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/kernel/trace/trace_events_hist.c ++++ b/kernel/trace/trace_events_hist.c +@@ -669,7 +669,7 @@ static notrace void trace_event_raw_even + char *str_val = (char *)(long)var_ref_vals[var_ref_idx + i]; + char *str_field = (char *)&entry->fields[n_u64]; + +- strncpy(str_field, str_val, STR_VAR_LEN_MAX); ++ strscpy(str_field, str_val, STR_VAR_LEN_MAX); + n_u64 += STR_VAR_LEN_MAX / sizeof(u64); + } else { + entry->fields[n_u64] = var_ref_vals[var_ref_idx + i]; +@@ -3090,7 +3090,7 @@ static inline void __update_field_vars(s + char *str = elt_data->field_var_str[j++]; + char *val_str = (char *)(uintptr_t)var_val; + +- strncpy(str, val_str, STR_VAR_LEN_MAX); ++ strscpy(str, val_str, STR_VAR_LEN_MAX); + var_val = (u64)(uintptr_t)str; + } + tracing_map_set_var(elt, var_idx, var_val); diff --git a/kernel/patches-4.14.x-rt/0107-block-shorten-interrupt-disabled-regions.patch b/kernel/patches-4.14.x-rt/0124-block-shorten-interrupt-disabled-regions.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0107-block-shorten-interrupt-disabled-regions.patch rename to kernel/patches-4.14.x-rt/0124-block-shorten-interrupt-disabled-regions.patch diff --git a/kernel/patches-4.14.x-rt/0108-timekeeping-split-jiffies-lock.patch b/kernel/patches-4.14.x-rt/0125-timekeeping-split-jiffies-lock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0108-timekeeping-split-jiffies-lock.patch rename to kernel/patches-4.14.x-rt/0125-timekeeping-split-jiffies-lock.patch diff --git a/kernel/patches-4.14.x-rt/0109-tracing-account-for-preempt-off-in-preempt_schedule.patch b/kernel/patches-4.14.x-rt/0126-tracing-account-for-preempt-off-in-preempt_schedule.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0109-tracing-account-for-preempt-off-in-preempt_schedule.patch rename to kernel/patches-4.14.x-rt/0126-tracing-account-for-preempt-off-in-preempt_schedule.patch diff --git a/kernel/patches-4.14.x-rt/0110-signal-revert-ptrace-preempt-magic.patch b/kernel/patches-4.14.x-rt/0127-signal-revert-ptrace-preempt-magic.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0110-signal-revert-ptrace-preempt-magic.patch rename to kernel/patches-4.14.x-rt/0127-signal-revert-ptrace-preempt-magic.patch diff --git a/kernel/patches-4.14.x-rt/0111-arm-convert-boot-lock-to-raw.patch b/kernel/patches-4.14.x-rt/0128-arm-convert-boot-lock-to-raw.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0111-arm-convert-boot-lock-to-raw.patch rename to kernel/patches-4.14.x-rt/0128-arm-convert-boot-lock-to-raw.patch diff --git a/kernel/patches-4.14.x-rt/0112-arm-kprobe-replace-patch_lock-to-raw-lock.patch b/kernel/patches-4.14.x-rt/0129-arm-kprobe-replace-patch_lock-to-raw-lock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0112-arm-kprobe-replace-patch_lock-to-raw-lock.patch rename to kernel/patches-4.14.x-rt/0129-arm-kprobe-replace-patch_lock-to-raw-lock.patch diff --git a/kernel/patches-4.14.x-rt/0113-posix-timers-no-broadcast.patch b/kernel/patches-4.14.x-rt/0130-posix-timers-no-broadcast.patch similarity index 88% rename from kernel/patches-4.14.x-rt/0113-posix-timers-no-broadcast.patch rename to kernel/patches-4.14.x-rt/0130-posix-timers-no-broadcast.patch index d6f45f001..2ebea3a70 100644 --- a/kernel/patches-4.14.x-rt/0113-posix-timers-no-broadcast.patch +++ b/kernel/patches-4.14.x-rt/0130-posix-timers-no-broadcast.patch @@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner --- a/kernel/time/posix-timers.c +++ b/kernel/time/posix-timers.c -@@ -433,6 +433,7 @@ static enum hrtimer_restart posix_timer_ +@@ -434,6 +434,7 @@ static enum hrtimer_restart posix_timer_ static struct pid *good_sigevent(sigevent_t * event) { struct task_struct *rtn = current->group_leader; @@ -21,7 +21,7 @@ Signed-off-by: Thomas Gleixner switch (event->sigev_notify) { case SIGEV_SIGNAL | SIGEV_THREAD_ID: -@@ -442,7 +443,8 @@ static struct pid *good_sigevent(sigeven +@@ -443,7 +444,8 @@ static struct pid *good_sigevent(sigeven /* FALLTHRU */ case SIGEV_SIGNAL: case SIGEV_THREAD: diff --git a/kernel/patches-4.14.x-rt/0114-signals-allow-rt-tasks-to-cache-one-sigqueue-struct.patch b/kernel/patches-4.14.x-rt/0131-signals-allow-rt-tasks-to-cache-one-sigqueue-struct.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0114-signals-allow-rt-tasks-to-cache-one-sigqueue-struct.patch rename to kernel/patches-4.14.x-rt/0131-signals-allow-rt-tasks-to-cache-one-sigqueue-struct.patch diff --git a/kernel/patches-4.14.x-rt/0115-drivers-random-reduce-preempt-disabled-region.patch b/kernel/patches-4.14.x-rt/0132-drivers-random-reduce-preempt-disabled-region.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0115-drivers-random-reduce-preempt-disabled-region.patch rename to kernel/patches-4.14.x-rt/0132-drivers-random-reduce-preempt-disabled-region.patch diff --git a/kernel/patches-4.14.x-rt/0116-arm-at91-pit-remove-irq-handler-when-clock-is-unused.patch b/kernel/patches-4.14.x-rt/0133-arm-at91-pit-remove-irq-handler-when-clock-is-unused.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0116-arm-at91-pit-remove-irq-handler-when-clock-is-unused.patch rename to kernel/patches-4.14.x-rt/0133-arm-at91-pit-remove-irq-handler-when-clock-is-unused.patch diff --git a/kernel/patches-4.14.x-rt/0117-clockevents-drivers-timer-atmel-pit-fix-double-free_.patch b/kernel/patches-4.14.x-rt/0134-clockevents-drivers-timer-atmel-pit-fix-double-free_.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0117-clockevents-drivers-timer-atmel-pit-fix-double-free_.patch rename to kernel/patches-4.14.x-rt/0134-clockevents-drivers-timer-atmel-pit-fix-double-free_.patch diff --git a/kernel/patches-4.14.x-rt/0118-clocksource-tclib-allow-higher-clockrates.patch b/kernel/patches-4.14.x-rt/0135-clocksource-tclib-allow-higher-clockrates.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0118-clocksource-tclib-allow-higher-clockrates.patch rename to kernel/patches-4.14.x-rt/0135-clocksource-tclib-allow-higher-clockrates.patch diff --git a/kernel/patches-4.14.x-rt/0119-drivers-net-8139-disable-irq-nosync.patch b/kernel/patches-4.14.x-rt/0136-drivers-net-8139-disable-irq-nosync.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0119-drivers-net-8139-disable-irq-nosync.patch rename to kernel/patches-4.14.x-rt/0136-drivers-net-8139-disable-irq-nosync.patch diff --git a/kernel/patches-4.14.x-rt/0120-suspend-prevernt-might-sleep-splats.patch b/kernel/patches-4.14.x-rt/0137-suspend-prevernt-might-sleep-splats.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0120-suspend-prevernt-might-sleep-splats.patch rename to kernel/patches-4.14.x-rt/0137-suspend-prevernt-might-sleep-splats.patch diff --git a/kernel/patches-4.14.x-rt/0121-net-prevent-abba-deadlock.patch b/kernel/patches-4.14.x-rt/0138-net-prevent-abba-deadlock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0121-net-prevent-abba-deadlock.patch rename to kernel/patches-4.14.x-rt/0138-net-prevent-abba-deadlock.patch diff --git a/kernel/patches-4.14.x-rt/0122-net-sched-dev_deactivate_many-use-msleep-1-instead-o.patch b/kernel/patches-4.14.x-rt/0139-net-sched-dev_deactivate_many-use-msleep-1-instead-o.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0122-net-sched-dev_deactivate_many-use-msleep-1-instead-o.patch rename to kernel/patches-4.14.x-rt/0139-net-sched-dev_deactivate_many-use-msleep-1-instead-o.patch diff --git a/kernel/patches-4.14.x-rt/0123-net_disable_NET_RX_BUSY_POLL.patch b/kernel/patches-4.14.x-rt/0140-net_disable_NET_RX_BUSY_POLL.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0123-net_disable_NET_RX_BUSY_POLL.patch rename to kernel/patches-4.14.x-rt/0140-net_disable_NET_RX_BUSY_POLL.patch diff --git a/kernel/patches-4.14.x-rt/0124-x86-io-apic-migra-no-unmask.patch b/kernel/patches-4.14.x-rt/0141-x86-io-apic-migra-no-unmask.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0124-x86-io-apic-migra-no-unmask.patch rename to kernel/patches-4.14.x-rt/0141-x86-io-apic-migra-no-unmask.patch diff --git a/kernel/patches-4.14.x-rt/0125-rcu-segcblist-include-rcupdate.h.patch b/kernel/patches-4.14.x-rt/0142-rcu-segcblist-include-rcupdate.h.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0125-rcu-segcblist-include-rcupdate.h.patch rename to kernel/patches-4.14.x-rt/0142-rcu-segcblist-include-rcupdate.h.patch diff --git a/kernel/patches-4.14.x-rt/0126-printk-kill.patch b/kernel/patches-4.14.x-rt/0143-printk-kill.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0126-printk-kill.patch rename to kernel/patches-4.14.x-rt/0143-printk-kill.patch diff --git a/kernel/patches-4.14.x-rt/0127-printk-27force_early_printk-27-boot-param-to-help-with-debugging.patch b/kernel/patches-4.14.x-rt/0144-printk-27force_early_printk-27-boot-param-to-help-with-debugging.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0127-printk-27force_early_printk-27-boot-param-to-help-with-debugging.patch rename to kernel/patches-4.14.x-rt/0144-printk-27force_early_printk-27-boot-param-to-help-with-debugging.patch diff --git a/kernel/patches-4.14.x-rt/0128-rt-preempt-base-config.patch b/kernel/patches-4.14.x-rt/0145-rt-preempt-base-config.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0128-rt-preempt-base-config.patch rename to kernel/patches-4.14.x-rt/0145-rt-preempt-base-config.patch diff --git a/kernel/patches-4.14.x-rt/0129-kconfig-disable-a-few-options-rt.patch b/kernel/patches-4.14.x-rt/0146-kconfig-disable-a-few-options-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0129-kconfig-disable-a-few-options-rt.patch rename to kernel/patches-4.14.x-rt/0146-kconfig-disable-a-few-options-rt.patch diff --git a/kernel/patches-4.14.x-rt/0130-kconfig-preempt-rt-full.patch b/kernel/patches-4.14.x-rt/0147-kconfig-preempt-rt-full.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0130-kconfig-preempt-rt-full.patch rename to kernel/patches-4.14.x-rt/0147-kconfig-preempt-rt-full.patch diff --git a/kernel/patches-4.14.x-rt/0131-bug-rt-dependend-variants.patch b/kernel/patches-4.14.x-rt/0148-bug-rt-dependend-variants.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0131-bug-rt-dependend-variants.patch rename to kernel/patches-4.14.x-rt/0148-bug-rt-dependend-variants.patch diff --git a/kernel/patches-4.14.x-rt/0132-iommu-amd--Use-WARN_ON_NORT.patch b/kernel/patches-4.14.x-rt/0149-iommu-amd--Use-WARN_ON_NORT.patch similarity index 91% rename from kernel/patches-4.14.x-rt/0132-iommu-amd--Use-WARN_ON_NORT.patch rename to kernel/patches-4.14.x-rt/0149-iommu-amd--Use-WARN_ON_NORT.patch index 77e6c4702..ea2eefc66 100644 --- a/kernel/patches-4.14.x-rt/0132-iommu-amd--Use-WARN_ON_NORT.patch +++ b/kernel/patches-4.14.x-rt/0149-iommu-amd--Use-WARN_ON_NORT.patch @@ -16,7 +16,7 @@ Signed-off-by: Thomas Gleixner --- a/drivers/iommu/amd_iommu.c +++ b/drivers/iommu/amd_iommu.c -@@ -1944,10 +1944,10 @@ static int __attach_device(struct iommu_ +@@ -1937,10 +1937,10 @@ static int __attach_device(struct iommu_ int ret; /* @@ -30,7 +30,7 @@ Signed-off-by: Thomas Gleixner /* lock domain */ spin_lock(&domain->lock); -@@ -2115,10 +2115,10 @@ static void __detach_device(struct iommu +@@ -2108,10 +2108,10 @@ static void __detach_device(struct iommu struct protection_domain *domain; /* diff --git a/kernel/patches-4.14.x-rt/0133-local-irq-rt-depending-variants.patch b/kernel/patches-4.14.x-rt/0150-local-irq-rt-depending-variants.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0133-local-irq-rt-depending-variants.patch rename to kernel/patches-4.14.x-rt/0150-local-irq-rt-depending-variants.patch diff --git a/kernel/patches-4.14.x-rt/0134-preempt-nort-rt-variants.patch b/kernel/patches-4.14.x-rt/0151-preempt-nort-rt-variants.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0134-preempt-nort-rt-variants.patch rename to kernel/patches-4.14.x-rt/0151-preempt-nort-rt-variants.patch diff --git a/kernel/patches-4.14.x-rt/0135-futex-workaround-migrate_disable-enable-in-different.patch b/kernel/patches-4.14.x-rt/0152-futex-workaround-migrate_disable-enable-in-different.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0135-futex-workaround-migrate_disable-enable-in-different.patch rename to kernel/patches-4.14.x-rt/0152-futex-workaround-migrate_disable-enable-in-different.patch diff --git a/kernel/patches-4.14.x-rt/0136-rt-local-irq-lock.patch b/kernel/patches-4.14.x-rt/0153-rt-local-irq-lock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0136-rt-local-irq-lock.patch rename to kernel/patches-4.14.x-rt/0153-rt-local-irq-lock.patch diff --git a/kernel/patches-4.14.x-rt/0137-ata-disable-interrupts-if-non-rt.patch b/kernel/patches-4.14.x-rt/0154-ata-disable-interrupts-if-non-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0137-ata-disable-interrupts-if-non-rt.patch rename to kernel/patches-4.14.x-rt/0154-ata-disable-interrupts-if-non-rt.patch diff --git a/kernel/patches-4.14.x-rt/0138-ide-use-nort-local-irq-variants.patch b/kernel/patches-4.14.x-rt/0155-ide-use-nort-local-irq-variants.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0138-ide-use-nort-local-irq-variants.patch rename to kernel/patches-4.14.x-rt/0155-ide-use-nort-local-irq-variants.patch diff --git a/kernel/patches-4.14.x-rt/0139-infiniband-mellanox-ib-use-nort-irq.patch b/kernel/patches-4.14.x-rt/0156-infiniband-mellanox-ib-use-nort-irq.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0139-infiniband-mellanox-ib-use-nort-irq.patch rename to kernel/patches-4.14.x-rt/0156-infiniband-mellanox-ib-use-nort-irq.patch diff --git a/kernel/patches-4.14.x-rt/0140-inpt-gameport-use-local-irq-nort.patch b/kernel/patches-4.14.x-rt/0157-inpt-gameport-use-local-irq-nort.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0140-inpt-gameport-use-local-irq-nort.patch rename to kernel/patches-4.14.x-rt/0157-inpt-gameport-use-local-irq-nort.patch diff --git a/kernel/patches-4.14.x-rt/0141-user-use-local-irq-nort.patch b/kernel/patches-4.14.x-rt/0158-user-use-local-irq-nort.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0141-user-use-local-irq-nort.patch rename to kernel/patches-4.14.x-rt/0158-user-use-local-irq-nort.patch diff --git a/kernel/patches-4.14.x-rt/0142-usb-use-_nort-in-giveback.patch b/kernel/patches-4.14.x-rt/0159-usb-use-_nort-in-giveback.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0142-usb-use-_nort-in-giveback.patch rename to kernel/patches-4.14.x-rt/0159-usb-use-_nort-in-giveback.patch diff --git a/kernel/patches-4.14.x-rt/0143-mm-scatterlist-dont-disable-irqs-on-RT.patch b/kernel/patches-4.14.x-rt/0160-mm-scatterlist-dont-disable-irqs-on-RT.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0143-mm-scatterlist-dont-disable-irqs-on-RT.patch rename to kernel/patches-4.14.x-rt/0160-mm-scatterlist-dont-disable-irqs-on-RT.patch diff --git a/kernel/patches-4.14.x-rt/0144-mm-workingset-do-not-protect-workingset_shadow_nodes.patch b/kernel/patches-4.14.x-rt/0161-mm-workingset-do-not-protect-workingset_shadow_nodes.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0144-mm-workingset-do-not-protect-workingset_shadow_nodes.patch rename to kernel/patches-4.14.x-rt/0161-mm-workingset-do-not-protect-workingset_shadow_nodes.patch diff --git a/kernel/patches-4.14.x-rt/0145-signal-fix-up-rcu-wreckage.patch b/kernel/patches-4.14.x-rt/0162-signal-fix-up-rcu-wreckage.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0145-signal-fix-up-rcu-wreckage.patch rename to kernel/patches-4.14.x-rt/0162-signal-fix-up-rcu-wreckage.patch diff --git a/kernel/patches-4.14.x-rt/0146-oleg-signal-rt-fix.patch b/kernel/patches-4.14.x-rt/0163-oleg-signal-rt-fix.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0146-oleg-signal-rt-fix.patch rename to kernel/patches-4.14.x-rt/0163-oleg-signal-rt-fix.patch diff --git a/kernel/patches-4.14.x-rt/0147-x86-signal-delay-calling-signals-on-32bit.patch b/kernel/patches-4.14.x-rt/0164-x86-signal-delay-calling-signals-on-32bit.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0147-x86-signal-delay-calling-signals-on-32bit.patch rename to kernel/patches-4.14.x-rt/0164-x86-signal-delay-calling-signals-on-32bit.patch diff --git a/kernel/patches-4.14.x-rt/0148-net-wireless-warn-nort.patch b/kernel/patches-4.14.x-rt/0165-net-wireless-warn-nort.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0148-net-wireless-warn-nort.patch rename to kernel/patches-4.14.x-rt/0165-net-wireless-warn-nort.patch diff --git a/kernel/patches-4.14.x-rt/0149-fs-replace-bh_uptodate_lock-for-rt.patch b/kernel/patches-4.14.x-rt/0166-fs-replace-bh_uptodate_lock-for-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0149-fs-replace-bh_uptodate_lock-for-rt.patch rename to kernel/patches-4.14.x-rt/0166-fs-replace-bh_uptodate_lock-for-rt.patch diff --git a/kernel/patches-4.14.x-rt/0150-fs-jbd-replace-bh_state-lock.patch b/kernel/patches-4.14.x-rt/0167-fs-jbd-replace-bh_state-lock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0150-fs-jbd-replace-bh_state-lock.patch rename to kernel/patches-4.14.x-rt/0167-fs-jbd-replace-bh_state-lock.patch diff --git a/kernel/patches-4.14.x-rt/0151-list_bl.h-make-list-head-locking-RT-safe.patch b/kernel/patches-4.14.x-rt/0168-list_bl.h-make-list-head-locking-RT-safe.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0151-list_bl.h-make-list-head-locking-RT-safe.patch rename to kernel/patches-4.14.x-rt/0168-list_bl.h-make-list-head-locking-RT-safe.patch diff --git a/kernel/patches-4.14.x-rt/0152-list_bl-fixup-bogus-lockdep-warning.patch b/kernel/patches-4.14.x-rt/0169-list_bl-fixup-bogus-lockdep-warning.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0152-list_bl-fixup-bogus-lockdep-warning.patch rename to kernel/patches-4.14.x-rt/0169-list_bl-fixup-bogus-lockdep-warning.patch diff --git a/kernel/patches-4.14.x-rt/0153-genirq-disable-irqpoll-on-rt.patch b/kernel/patches-4.14.x-rt/0170-genirq-disable-irqpoll-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0153-genirq-disable-irqpoll-on-rt.patch rename to kernel/patches-4.14.x-rt/0170-genirq-disable-irqpoll-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0154-genirq-force-threading.patch b/kernel/patches-4.14.x-rt/0171-genirq-force-threading.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0154-genirq-force-threading.patch rename to kernel/patches-4.14.x-rt/0171-genirq-force-threading.patch diff --git a/kernel/patches-4.14.x-rt/0155-drivers-net-vortex-fix-locking-issues.patch b/kernel/patches-4.14.x-rt/0172-drivers-net-vortex-fix-locking-issues.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0155-drivers-net-vortex-fix-locking-issues.patch rename to kernel/patches-4.14.x-rt/0172-drivers-net-vortex-fix-locking-issues.patch diff --git a/kernel/patches-4.14.x-rt/0156-delayacct-use-raw_spinlocks.patch b/kernel/patches-4.14.x-rt/0173-delayacct-use-raw_spinlocks.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0156-delayacct-use-raw_spinlocks.patch rename to kernel/patches-4.14.x-rt/0173-delayacct-use-raw_spinlocks.patch diff --git a/kernel/patches-4.14.x-rt/0157-mm-page_alloc-rt-friendly-per-cpu-pages.patch b/kernel/patches-4.14.x-rt/0174-mm-page_alloc-rt-friendly-per-cpu-pages.patch similarity index 98% rename from kernel/patches-4.14.x-rt/0157-mm-page_alloc-rt-friendly-per-cpu-pages.patch rename to kernel/patches-4.14.x-rt/0174-mm-page_alloc-rt-friendly-per-cpu-pages.patch index 9a1703a6d..4419b5e89 100644 --- a/kernel/patches-4.14.x-rt/0157-mm-page_alloc-rt-friendly-per-cpu-pages.patch +++ b/kernel/patches-4.14.x-rt/0174-mm-page_alloc-rt-friendly-per-cpu-pages.patch @@ -194,7 +194,7 @@ Signed-off-by: Thomas Gleixner return NULL; } -@@ -7693,7 +7716,7 @@ void zone_pcp_reset(struct zone *zone) +@@ -7684,7 +7707,7 @@ void zone_pcp_reset(struct zone *zone) struct per_cpu_pageset *pset; /* avoid races with drain_pages() */ @@ -203,7 +203,7 @@ Signed-off-by: Thomas Gleixner if (zone->pageset != &boot_pageset) { for_each_online_cpu(cpu) { pset = per_cpu_ptr(zone->pageset, cpu); -@@ -7702,7 +7725,7 @@ void zone_pcp_reset(struct zone *zone) +@@ -7693,7 +7716,7 @@ void zone_pcp_reset(struct zone *zone) free_percpu(zone->pageset); zone->pageset = &boot_pageset; } diff --git a/kernel/patches-4.14.x-rt/0158-mm-page_alloc-reduce-lock-sections-further.patch b/kernel/patches-4.14.x-rt/0175-mm-page_alloc-reduce-lock-sections-further.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0158-mm-page_alloc-reduce-lock-sections-further.patch rename to kernel/patches-4.14.x-rt/0175-mm-page_alloc-reduce-lock-sections-further.patch diff --git a/kernel/patches-4.14.x-rt/0159-mm-convert-swap-to-percpu-locked.patch b/kernel/patches-4.14.x-rt/0176-mm-convert-swap-to-percpu-locked.patch similarity index 98% rename from kernel/patches-4.14.x-rt/0159-mm-convert-swap-to-percpu-locked.patch rename to kernel/patches-4.14.x-rt/0176-mm-convert-swap-to-percpu-locked.patch index eb4d508ea..efe2b1966 100644 --- a/kernel/patches-4.14.x-rt/0159-mm-convert-swap-to-percpu-locked.patch +++ b/kernel/patches-4.14.x-rt/0176-mm-convert-swap-to-percpu-locked.patch @@ -44,7 +44,7 @@ Signed-off-by: Thomas Gleixner } --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -6848,8 +6848,9 @@ void __init free_area_init(unsigned long +@@ -6839,8 +6839,9 @@ void __init free_area_init(unsigned long static int page_alloc_cpu_dead(unsigned int cpu) { diff --git a/kernel/patches-4.14.x-rt/0160-mm-perform-lru_add_drain_all-remotely.patch b/kernel/patches-4.14.x-rt/0177-mm-perform-lru_add_drain_all-remotely.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0160-mm-perform-lru_add_drain_all-remotely.patch rename to kernel/patches-4.14.x-rt/0177-mm-perform-lru_add_drain_all-remotely.patch diff --git a/kernel/patches-4.14.x-rt/0161-mm-make-vmstat-rt-aware.patch b/kernel/patches-4.14.x-rt/0178-mm-make-vmstat-rt-aware.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0161-mm-make-vmstat-rt-aware.patch rename to kernel/patches-4.14.x-rt/0178-mm-make-vmstat-rt-aware.patch diff --git a/kernel/patches-4.14.x-rt/0162-re-preempt_rt_full-arm-coredump-fails-for-cpu-3e-3d-4.patch b/kernel/patches-4.14.x-rt/0179-re-preempt_rt_full-arm-coredump-fails-for-cpu-3e-3d-4.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0162-re-preempt_rt_full-arm-coredump-fails-for-cpu-3e-3d-4.patch rename to kernel/patches-4.14.x-rt/0179-re-preempt_rt_full-arm-coredump-fails-for-cpu-3e-3d-4.patch diff --git a/kernel/patches-4.14.x-rt/0163-mm-bounce-local-irq-save-nort.patch b/kernel/patches-4.14.x-rt/0180-mm-bounce-local-irq-save-nort.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0163-mm-bounce-local-irq-save-nort.patch rename to kernel/patches-4.14.x-rt/0180-mm-bounce-local-irq-save-nort.patch diff --git a/kernel/patches-4.14.x-rt/0164-mm-disable-sloub-rt.patch b/kernel/patches-4.14.x-rt/0181-mm-disable-sloub-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0164-mm-disable-sloub-rt.patch rename to kernel/patches-4.14.x-rt/0181-mm-disable-sloub-rt.patch diff --git a/kernel/patches-4.14.x-rt/0165-mm-enable-slub.patch b/kernel/patches-4.14.x-rt/0182-mm-enable-slub.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0165-mm-enable-slub.patch rename to kernel/patches-4.14.x-rt/0182-mm-enable-slub.patch diff --git a/kernel/patches-4.14.x-rt/0166-mm-slub-close-possible-memory-leak-in-kmem_cache_all.patch b/kernel/patches-4.14.x-rt/0183-mm-slub-close-possible-memory-leak-in-kmem_cache_all.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0166-mm-slub-close-possible-memory-leak-in-kmem_cache_all.patch rename to kernel/patches-4.14.x-rt/0183-mm-slub-close-possible-memory-leak-in-kmem_cache_all.patch diff --git a/kernel/patches-4.14.x-rt/0167-slub-enable-irqs-for-no-wait.patch b/kernel/patches-4.14.x-rt/0184-slub-enable-irqs-for-no-wait.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0167-slub-enable-irqs-for-no-wait.patch rename to kernel/patches-4.14.x-rt/0184-slub-enable-irqs-for-no-wait.patch diff --git a/kernel/patches-4.14.x-rt/0168-slub-disable-SLUB_CPU_PARTIAL.patch b/kernel/patches-4.14.x-rt/0185-slub-disable-SLUB_CPU_PARTIAL.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0168-slub-disable-SLUB_CPU_PARTIAL.patch rename to kernel/patches-4.14.x-rt/0185-slub-disable-SLUB_CPU_PARTIAL.patch diff --git a/kernel/patches-4.14.x-rt/0169-mm-page-alloc-use-local-lock-on-target-cpu.patch b/kernel/patches-4.14.x-rt/0186-mm-page-alloc-use-local-lock-on-target-cpu.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0169-mm-page-alloc-use-local-lock-on-target-cpu.patch rename to kernel/patches-4.14.x-rt/0186-mm-page-alloc-use-local-lock-on-target-cpu.patch diff --git a/kernel/patches-4.14.x-rt/0170-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch b/kernel/patches-4.14.x-rt/0187-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0170-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch rename to kernel/patches-4.14.x-rt/0187-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch diff --git a/kernel/patches-4.14.x-rt/0171-mm-memcontrol-do_not_disable_irq.patch b/kernel/patches-4.14.x-rt/0188-mm-memcontrol-do_not_disable_irq.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0171-mm-memcontrol-do_not_disable_irq.patch rename to kernel/patches-4.14.x-rt/0188-mm-memcontrol-do_not_disable_irq.patch diff --git a/kernel/patches-4.14.x-rt/0172-mm-backing-dev-don-t-disable-IRQs-in-wb_congested_pu.patch b/kernel/patches-4.14.x-rt/0189-mm-backing-dev-don-t-disable-IRQs-in-wb_congested_pu.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0172-mm-backing-dev-don-t-disable-IRQs-in-wb_congested_pu.patch rename to kernel/patches-4.14.x-rt/0189-mm-backing-dev-don-t-disable-IRQs-in-wb_congested_pu.patch diff --git a/kernel/patches-4.14.x-rt/0173-mm_zsmalloc_copy_with_get_cpu_var_and_locking.patch b/kernel/patches-4.14.x-rt/0190-mm_zsmalloc_copy_with_get_cpu_var_and_locking.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0173-mm_zsmalloc_copy_with_get_cpu_var_and_locking.patch rename to kernel/patches-4.14.x-rt/0190-mm_zsmalloc_copy_with_get_cpu_var_and_locking.patch diff --git a/kernel/patches-4.14.x-rt/0174-radix-tree-use-local-locks.patch b/kernel/patches-4.14.x-rt/0191-radix-tree-use-local-locks.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0174-radix-tree-use-local-locks.patch rename to kernel/patches-4.14.x-rt/0191-radix-tree-use-local-locks.patch diff --git a/kernel/patches-4.14.x-rt/0175-panic-disable-random-on-rt.patch b/kernel/patches-4.14.x-rt/0192-panic-disable-random-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0175-panic-disable-random-on-rt.patch rename to kernel/patches-4.14.x-rt/0192-panic-disable-random-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0176-timers-prepare-for-full-preemption.patch b/kernel/patches-4.14.x-rt/0193-timers-prepare-for-full-preemption.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0176-timers-prepare-for-full-preemption.patch rename to kernel/patches-4.14.x-rt/0193-timers-prepare-for-full-preemption.patch diff --git a/kernel/patches-4.14.x-rt/0177-timer-delay-waking-softirqs-from-the-jiffy-tick.patch b/kernel/patches-4.14.x-rt/0194-timer-delay-waking-softirqs-from-the-jiffy-tick.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0177-timer-delay-waking-softirqs-from-the-jiffy-tick.patch rename to kernel/patches-4.14.x-rt/0194-timer-delay-waking-softirqs-from-the-jiffy-tick.patch diff --git a/kernel/patches-4.14.x-rt/0178-nohz-Prevent-erroneous-tick-stop-invocations.patch b/kernel/patches-4.14.x-rt/0195-nohz-Prevent-erroneous-tick-stop-invocations.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0178-nohz-Prevent-erroneous-tick-stop-invocations.patch rename to kernel/patches-4.14.x-rt/0195-nohz-Prevent-erroneous-tick-stop-invocations.patch diff --git a/kernel/patches-4.14.x-rt/0179-x86-kvm-require-const-tsc-for-rt.patch b/kernel/patches-4.14.x-rt/0196-x86-kvm-require-const-tsc-for-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0179-x86-kvm-require-const-tsc-for-rt.patch rename to kernel/patches-4.14.x-rt/0196-x86-kvm-require-const-tsc-for-rt.patch diff --git a/kernel/patches-4.14.x-rt/0180-wait.h-include-atomic.h.patch b/kernel/patches-4.14.x-rt/0197-wait.h-include-atomic.h.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0180-wait.h-include-atomic.h.patch rename to kernel/patches-4.14.x-rt/0197-wait.h-include-atomic.h.patch diff --git a/kernel/patches-4.14.x-rt/0181-work-simple-Simple-work-queue-implemenation.patch b/kernel/patches-4.14.x-rt/0198-work-simple-Simple-work-queue-implemenation.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0181-work-simple-Simple-work-queue-implemenation.patch rename to kernel/patches-4.14.x-rt/0198-work-simple-Simple-work-queue-implemenation.patch diff --git a/kernel/patches-4.14.x-rt/0182-completion-use-simple-wait-queues.patch b/kernel/patches-4.14.x-rt/0199-completion-use-simple-wait-queues.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0182-completion-use-simple-wait-queues.patch rename to kernel/patches-4.14.x-rt/0199-completion-use-simple-wait-queues.patch diff --git a/kernel/patches-4.14.x-rt/0183-fs-aio-simple-simple-work.patch b/kernel/patches-4.14.x-rt/0200-fs-aio-simple-simple-work.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0183-fs-aio-simple-simple-work.patch rename to kernel/patches-4.14.x-rt/0200-fs-aio-simple-simple-work.patch diff --git a/kernel/patches-4.14.x-rt/0184-genirq-do-not-invoke-the-affinity-callback-via-a-wor.patch b/kernel/patches-4.14.x-rt/0201-genirq-do-not-invoke-the-affinity-callback-via-a-wor.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0184-genirq-do-not-invoke-the-affinity-callback-via-a-wor.patch rename to kernel/patches-4.14.x-rt/0201-genirq-do-not-invoke-the-affinity-callback-via-a-wor.patch diff --git a/kernel/patches-4.14.x-rt/0185-time-hrtimer-avoid-schedule_work-with-interrupts-dis.patch b/kernel/patches-4.14.x-rt/0202-time-hrtimer-avoid-schedule_work-with-interrupts-dis.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0185-time-hrtimer-avoid-schedule_work-with-interrupts-dis.patch rename to kernel/patches-4.14.x-rt/0202-time-hrtimer-avoid-schedule_work-with-interrupts-dis.patch diff --git a/kernel/patches-4.14.x-rt/0186-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch b/kernel/patches-4.14.x-rt/0203-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch similarity index 99% rename from kernel/patches-4.14.x-rt/0186-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch rename to kernel/patches-4.14.x-rt/0203-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch index 3bc59f798..b27afab69 100644 --- a/kernel/patches-4.14.x-rt/0186-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch +++ b/kernel/patches-4.14.x-rt/0203-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch @@ -19,7 +19,7 @@ Signed-off-by: Sebastian Andrzej Siewior --- a/block/blk-mq.c +++ b/block/blk-mq.c -@@ -2804,10 +2804,9 @@ static bool blk_mq_poll_hybrid_sleep(str +@@ -2827,10 +2827,9 @@ static bool blk_mq_poll_hybrid_sleep(str kt = nsecs; mode = HRTIMER_MODE_REL; diff --git a/kernel/patches-4.14.x-rt/0187-hrtimers-prepare-full-preemption.patch b/kernel/patches-4.14.x-rt/0204-hrtimers-prepare-full-preemption.patch similarity index 94% rename from kernel/patches-4.14.x-rt/0187-hrtimers-prepare-full-preemption.patch rename to kernel/patches-4.14.x-rt/0204-hrtimers-prepare-full-preemption.patch index 0bd771791..5e7bec86a 100644 --- a/kernel/patches-4.14.x-rt/0187-hrtimers-prepare-full-preemption.patch +++ b/kernel/patches-4.14.x-rt/0204-hrtimers-prepare-full-preemption.patch @@ -133,7 +133,7 @@ Signed-off-by: Thomas Gleixner expires = timeval_to_ktime(value->it_value); --- a/kernel/time/posix-timers.c +++ b/kernel/time/posix-timers.c -@@ -796,6 +796,20 @@ SYSCALL_DEFINE1(timer_getoverrun, timer_ +@@ -797,6 +797,20 @@ SYSCALL_DEFINE1(timer_getoverrun, timer_ return overrun; } @@ -154,7 +154,7 @@ Signed-off-by: Thomas Gleixner static void common_hrtimer_arm(struct k_itimer *timr, ktime_t expires, bool absolute, bool sigev_none) { -@@ -890,6 +904,7 @@ static int do_timer_settime(timer_t time +@@ -891,6 +905,7 @@ static int do_timer_settime(timer_t time if (!timr) return -EINVAL; @@ -162,7 +162,7 @@ Signed-off-by: Thomas Gleixner kc = timr->kclock; if (WARN_ON_ONCE(!kc || !kc->timer_set)) error = -EINVAL; -@@ -898,9 +913,12 @@ static int do_timer_settime(timer_t time +@@ -899,9 +914,12 @@ static int do_timer_settime(timer_t time unlock_timer(timr, flag); if (error == TIMER_RETRY) { @@ -175,7 +175,7 @@ Signed-off-by: Thomas Gleixner return error; } -@@ -982,10 +1000,15 @@ SYSCALL_DEFINE1(timer_delete, timer_t, t +@@ -983,10 +1001,15 @@ SYSCALL_DEFINE1(timer_delete, timer_t, t if (!timer) return -EINVAL; @@ -191,7 +191,7 @@ Signed-off-by: Thomas Gleixner spin_lock(¤t->sighand->siglock); list_del(&timer->list); -@@ -1011,8 +1034,18 @@ static void itimer_delete(struct k_itime +@@ -1012,8 +1035,18 @@ static void itimer_delete(struct k_itime retry_delete: spin_lock_irqsave(&timer->it_lock, flags); diff --git a/kernel/patches-4.14.x-rt/0188-hrtimer-by-timers-by-default-into-the-softirq-context.patch b/kernel/patches-4.14.x-rt/0205-hrtimer-by-timers-by-default-into-the-softirq-context.patch similarity index 99% rename from kernel/patches-4.14.x-rt/0188-hrtimer-by-timers-by-default-into-the-softirq-context.patch rename to kernel/patches-4.14.x-rt/0205-hrtimer-by-timers-by-default-into-the-softirq-context.patch index 823746975..95888a232 100644 --- a/kernel/patches-4.14.x-rt/0188-hrtimer-by-timers-by-default-into-the-softirq-context.patch +++ b/kernel/patches-4.14.x-rt/0205-hrtimer-by-timers-by-default-into-the-softirq-context.patch @@ -68,7 +68,7 @@ Signed-off-by: Sebastian Andrzej Siewior timer->function = perf_mux_hrtimer_handler; } -@@ -8709,7 +8709,7 @@ static void perf_swevent_init_hrtimer(st +@@ -8711,7 +8711,7 @@ static void perf_swevent_init_hrtimer(st if (!is_sampling_event(event)) return; diff --git a/kernel/patches-4.14.x-rt/0206-alarmtimer-Prevent-live-lock-in-alarm_cancel.patch b/kernel/patches-4.14.x-rt/0206-alarmtimer-Prevent-live-lock-in-alarm_cancel.patch new file mode 100644 index 000000000..360b2c0dc --- /dev/null +++ b/kernel/patches-4.14.x-rt/0206-alarmtimer-Prevent-live-lock-in-alarm_cancel.patch @@ -0,0 +1,26 @@ +From: Sebastian Andrzej Siewior +Date: Tue, 27 Mar 2018 15:58:16 +0200 +Subject: [PATCH 1/3] alarmtimer: Prevent live lock in alarm_cancel() + +If alarm_try_to_cancel() requires a retry, then depending on the +priority setting the retry loop might prevent timer callback completion +on RT. Prevent that by waiting for completion on RT, no change for a +non RT kernel. + +Cc: stable-rt@vger.kernel.org +Signed-off-by: Sebastian Andrzej Siewior +--- + kernel/time/alarmtimer.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/kernel/time/alarmtimer.c ++++ b/kernel/time/alarmtimer.c +@@ -429,7 +429,7 @@ int alarm_cancel(struct alarm *alarm) + int ret = alarm_try_to_cancel(alarm); + if (ret >= 0) + return ret; +- cpu_relax(); ++ hrtimer_wait_for_timer(&alarm->timer); + } + } + EXPORT_SYMBOL_GPL(alarm_cancel); diff --git a/kernel/patches-4.14.x-rt/0207-posix-timers-user-proper-timer-while-waiting-for-ala.patch b/kernel/patches-4.14.x-rt/0207-posix-timers-user-proper-timer-while-waiting-for-ala.patch new file mode 100644 index 000000000..46c8d5032 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0207-posix-timers-user-proper-timer-while-waiting-for-ala.patch @@ -0,0 +1,69 @@ +From: Sebastian Andrzej Siewior +Date: Wed, 28 Mar 2018 10:45:40 +0200 +Subject: [PATCH 2/3] posix-timers: user proper timer while waiting for + alarmtimer + +On RT the timer can be preempted while running and therefore we wait +with timer_wait_for_callback() for the timer to complete (instead of +busy looping). +The POSIX timer has an hrtimer underneath and this hrtimer is used to +wait for its completion. The alartimer has also an hrtimer but at a +different location. + +Instead of checking for ->timer_set which is the same for the alarmtimer +and the "posix-timers" I instead check for ->arm which is only used by +the "posix-timers". To match the alarmtimer I check for the alarm_clock +struct. + +Cc: stable-rt@vger.kernel.org +Signed-off-by: Sebastian Andrzej Siewior +--- + kernel/time/posix-timers.c | 30 ++++++++++++++++-------------- + 1 file changed, 16 insertions(+), 14 deletions(-) + +--- a/kernel/time/posix-timers.c ++++ b/kernel/time/posix-timers.c +@@ -797,20 +797,6 @@ SYSCALL_DEFINE1(timer_getoverrun, timer_ + return overrun; + } + +-/* +- * Protected by RCU! +- */ +-static void timer_wait_for_callback(const struct k_clock *kc, struct k_itimer *timr) +-{ +-#ifdef CONFIG_PREEMPT_RT_FULL +- if (kc->timer_set == common_timer_set) +- hrtimer_wait_for_timer(&timr->it.real.timer); +- else +- /* FIXME: Whacky hack for posix-cpu-timers */ +- schedule_timeout(1); +-#endif +-} +- + static void common_hrtimer_arm(struct k_itimer *timr, ktime_t expires, + bool absolute, bool sigev_none) + { +@@ -841,6 +827,22 @@ static void common_hrtimer_arm(struct k_ + hrtimer_start_expires(timer, HRTIMER_MODE_ABS); + } + ++/* ++ * Protected by RCU! ++ */ ++static void timer_wait_for_callback(const struct k_clock *kc, struct k_itimer *timr) ++{ ++#ifdef CONFIG_PREEMPT_RT_FULL ++ if (kc->timer_arm == common_hrtimer_arm) ++ hrtimer_wait_for_timer(&timr->it.real.timer); ++ else if (kc == &alarm_clock) ++ hrtimer_wait_for_timer(&timr->it.alarm.alarmtimer.timer); ++ else ++ /* FIXME: Whacky hack for posix-cpu-timers */ ++ schedule_timeout(1); ++#endif ++} ++ + static int common_hrtimer_try_to_cancel(struct k_itimer *timr) + { + return hrtimer_try_to_cancel(&timr->it.real.timer); diff --git a/kernel/patches-4.14.x-rt/0208-posix-timers-move-the-rcu-head-out-of-the-union.patch b/kernel/patches-4.14.x-rt/0208-posix-timers-move-the-rcu-head-out-of-the-union.patch new file mode 100644 index 000000000..fef40df59 --- /dev/null +++ b/kernel/patches-4.14.x-rt/0208-posix-timers-move-the-rcu-head-out-of-the-union.patch @@ -0,0 +1,52 @@ +From: Sebastian Andrzej Siewior +Date: Wed, 28 Mar 2018 11:15:19 +0200 +Subject: [PATCH 3/3] posix-timers: move the rcu head out of the union + +On RT the timer can be preempted while running and therefore we wait +with timer_wait_for_callback() for the timer to complete (instead of +busy looping). The RCU-readlock is held to ensure that this posix timer +is not removed while we wait on it. +If the timer is removed then it invokes call_rcu() with a pointer that +is shared with the hrtimer because it is part of the same union. +In order to avoid any possible side effects I am moving the rcu pointer +out of the union. + +Cc: stable-rt@vger.kernel.org +Signed-off-by: Sebastian Andrzej Siewior +--- + include/linux/posix-timers.h | 2 +- + kernel/time/posix-timers.c | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +--- a/include/linux/posix-timers.h ++++ b/include/linux/posix-timers.h +@@ -101,8 +101,8 @@ struct k_itimer { + struct { + struct alarm alarmtimer; + } alarm; +- struct rcu_head rcu; + } it; ++ struct rcu_head rcu; + }; + + void run_posix_cpu_timers(struct task_struct *task); +--- a/kernel/time/posix-timers.c ++++ b/kernel/time/posix-timers.c +@@ -471,7 +471,7 @@ static struct k_itimer * alloc_posix_tim + + static void k_itimer_rcu_free(struct rcu_head *head) + { +- struct k_itimer *tmr = container_of(head, struct k_itimer, it.rcu); ++ struct k_itimer *tmr = container_of(head, struct k_itimer, rcu); + + kmem_cache_free(posix_timers_cache, tmr); + } +@@ -488,7 +488,7 @@ static void release_posix_timer(struct k + } + put_pid(tmr->it_pid); + sigqueue_free(tmr->sigq); +- call_rcu(&tmr->it.rcu, k_itimer_rcu_free); ++ call_rcu(&tmr->rcu, k_itimer_rcu_free); + } + + static int common_timer_create(struct k_itimer *new_timer) diff --git a/kernel/patches-4.14.x-rt/0189-hrtimer-Move-schedule_work-call-to-helper-thread.patch b/kernel/patches-4.14.x-rt/0209-hrtimer-Move-schedule_work-call-to-helper-thread.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0189-hrtimer-Move-schedule_work-call-to-helper-thread.patch rename to kernel/patches-4.14.x-rt/0209-hrtimer-Move-schedule_work-call-to-helper-thread.patch diff --git a/kernel/patches-4.14.x-rt/0190-timer-fd-avoid-live-lock.patch b/kernel/patches-4.14.x-rt/0210-timer-fd-avoid-live-lock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0190-timer-fd-avoid-live-lock.patch rename to kernel/patches-4.14.x-rt/0210-timer-fd-avoid-live-lock.patch diff --git a/kernel/patches-4.14.x-rt/0191-posix-timers-thread-posix-cpu-timers-on-rt.patch b/kernel/patches-4.14.x-rt/0211-posix-timers-thread-posix-cpu-timers-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0191-posix-timers-thread-posix-cpu-timers-on-rt.patch rename to kernel/patches-4.14.x-rt/0211-posix-timers-thread-posix-cpu-timers-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0192-sched-delay-put-task.patch b/kernel/patches-4.14.x-rt/0212-sched-delay-put-task.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0192-sched-delay-put-task.patch rename to kernel/patches-4.14.x-rt/0212-sched-delay-put-task.patch diff --git a/kernel/patches-4.14.x-rt/0193-sched-limit-nr-migrate.patch b/kernel/patches-4.14.x-rt/0213-sched-limit-nr-migrate.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0193-sched-limit-nr-migrate.patch rename to kernel/patches-4.14.x-rt/0213-sched-limit-nr-migrate.patch diff --git a/kernel/patches-4.14.x-rt/0194-sched-mmdrop-delayed.patch b/kernel/patches-4.14.x-rt/0214-sched-mmdrop-delayed.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0194-sched-mmdrop-delayed.patch rename to kernel/patches-4.14.x-rt/0214-sched-mmdrop-delayed.patch diff --git a/kernel/patches-4.14.x-rt/0195-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch b/kernel/patches-4.14.x-rt/0215-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0195-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch rename to kernel/patches-4.14.x-rt/0215-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch diff --git a/kernel/patches-4.14.x-rt/0196-sched-rt-mutex-wakeup.patch b/kernel/patches-4.14.x-rt/0216-sched-rt-mutex-wakeup.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0196-sched-rt-mutex-wakeup.patch rename to kernel/patches-4.14.x-rt/0216-sched-rt-mutex-wakeup.patch diff --git a/kernel/patches-4.14.x-rt/0197-sched-Prevent-task-state-corruption-by-spurious-lock.patch b/kernel/patches-4.14.x-rt/0217-sched-Prevent-task-state-corruption-by-spurious-lock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0197-sched-Prevent-task-state-corruption-by-spurious-lock.patch rename to kernel/patches-4.14.x-rt/0217-sched-Prevent-task-state-corruption-by-spurious-lock.patch diff --git a/kernel/patches-4.14.x-rt/0198-sched-Remove-TASK_ALL.patch b/kernel/patches-4.14.x-rt/0218-sched-Remove-TASK_ALL.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0198-sched-Remove-TASK_ALL.patch rename to kernel/patches-4.14.x-rt/0218-sched-Remove-TASK_ALL.patch diff --git a/kernel/patches-4.14.x-rt/0199-sched-might-sleep-do-not-account-rcu-depth.patch b/kernel/patches-4.14.x-rt/0219-sched-might-sleep-do-not-account-rcu-depth.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0199-sched-might-sleep-do-not-account-rcu-depth.patch rename to kernel/patches-4.14.x-rt/0219-sched-might-sleep-do-not-account-rcu-depth.patch diff --git a/kernel/patches-4.14.x-rt/0200-cond-resched-softirq-rt.patch b/kernel/patches-4.14.x-rt/0220-cond-resched-softirq-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0200-cond-resched-softirq-rt.patch rename to kernel/patches-4.14.x-rt/0220-cond-resched-softirq-rt.patch diff --git a/kernel/patches-4.14.x-rt/0201-cond-resched-lock-rt-tweak.patch b/kernel/patches-4.14.x-rt/0221-cond-resched-lock-rt-tweak.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0201-cond-resched-lock-rt-tweak.patch rename to kernel/patches-4.14.x-rt/0221-cond-resched-lock-rt-tweak.patch diff --git a/kernel/patches-4.14.x-rt/0202-sched-disable-ttwu-queue.patch b/kernel/patches-4.14.x-rt/0222-sched-disable-ttwu-queue.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0202-sched-disable-ttwu-queue.patch rename to kernel/patches-4.14.x-rt/0222-sched-disable-ttwu-queue.patch diff --git a/kernel/patches-4.14.x-rt/0203-sched-disable-rt-group-sched-on-rt.patch b/kernel/patches-4.14.x-rt/0223-sched-disable-rt-group-sched-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0203-sched-disable-rt-group-sched-on-rt.patch rename to kernel/patches-4.14.x-rt/0223-sched-disable-rt-group-sched-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0204-sched-ttwu-ensure-success-return-is-correct.patch b/kernel/patches-4.14.x-rt/0224-sched-ttwu-ensure-success-return-is-correct.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0204-sched-ttwu-ensure-success-return-is-correct.patch rename to kernel/patches-4.14.x-rt/0224-sched-ttwu-ensure-success-return-is-correct.patch diff --git a/kernel/patches-4.14.x-rt/0205-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch b/kernel/patches-4.14.x-rt/0225-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0205-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch rename to kernel/patches-4.14.x-rt/0225-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch diff --git a/kernel/patches-4.14.x-rt/0206-rt-Increase-decrease-the-nr-of-migratory-tasks-when-.patch b/kernel/patches-4.14.x-rt/0226-rt-Increase-decrease-the-nr-of-migratory-tasks-when-.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0206-rt-Increase-decrease-the-nr-of-migratory-tasks-when-.patch rename to kernel/patches-4.14.x-rt/0226-rt-Increase-decrease-the-nr-of-migratory-tasks-when-.patch diff --git a/kernel/patches-4.14.x-rt/0207-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch b/kernel/patches-4.14.x-rt/0227-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0207-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch rename to kernel/patches-4.14.x-rt/0227-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch diff --git a/kernel/patches-4.14.x-rt/0208-stop-machine-raw-lock.patch b/kernel/patches-4.14.x-rt/0228-stop-machine-raw-lock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0208-stop-machine-raw-lock.patch rename to kernel/patches-4.14.x-rt/0228-stop-machine-raw-lock.patch diff --git a/kernel/patches-4.14.x-rt/0209-hotplug-light-get-online-cpus.patch b/kernel/patches-4.14.x-rt/0229-hotplug-light-get-online-cpus.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0209-hotplug-light-get-online-cpus.patch rename to kernel/patches-4.14.x-rt/0229-hotplug-light-get-online-cpus.patch diff --git a/kernel/patches-4.14.x-rt/0210-ftrace-migrate-disable-tracing.patch b/kernel/patches-4.14.x-rt/0230-ftrace-migrate-disable-tracing.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0210-ftrace-migrate-disable-tracing.patch rename to kernel/patches-4.14.x-rt/0230-ftrace-migrate-disable-tracing.patch diff --git a/kernel/patches-4.14.x-rt/0211-lockdep-no-softirq-accounting-on-rt.patch b/kernel/patches-4.14.x-rt/0231-lockdep-no-softirq-accounting-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0211-lockdep-no-softirq-accounting-on-rt.patch rename to kernel/patches-4.14.x-rt/0231-lockdep-no-softirq-accounting-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0212-lockdep-disable-self-test.patch b/kernel/patches-4.14.x-rt/0232-lockdep-disable-self-test.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0212-lockdep-disable-self-test.patch rename to kernel/patches-4.14.x-rt/0232-lockdep-disable-self-test.patch diff --git a/kernel/patches-4.14.x-rt/0213-mutex-no-spin-on-rt.patch b/kernel/patches-4.14.x-rt/0233-mutex-no-spin-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0213-mutex-no-spin-on-rt.patch rename to kernel/patches-4.14.x-rt/0233-mutex-no-spin-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0214-tasklet-rt-prevent-tasklets-from-going-into-infinite-spin-in-rt.patch b/kernel/patches-4.14.x-rt/0234-tasklet-rt-prevent-tasklets-from-going-into-infinite-spin-in-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0214-tasklet-rt-prevent-tasklets-from-going-into-infinite-spin-in-rt.patch rename to kernel/patches-4.14.x-rt/0234-tasklet-rt-prevent-tasklets-from-going-into-infinite-spin-in-rt.patch diff --git a/kernel/patches-4.14.x-rt/0215-softirq-preempt-fix-3-re.patch b/kernel/patches-4.14.x-rt/0235-softirq-preempt-fix-3-re.patch similarity index 94% rename from kernel/patches-4.14.x-rt/0215-softirq-preempt-fix-3-re.patch rename to kernel/patches-4.14.x-rt/0235-softirq-preempt-fix-3-re.patch index 915f2a2e9..6eead96e1 100644 --- a/kernel/patches-4.14.x-rt/0215-softirq-preempt-fix-3-re.patch +++ b/kernel/patches-4.14.x-rt/0235-softirq-preempt-fix-3-re.patch @@ -127,7 +127,7 @@ Signed-off-by: Thomas Gleixner } EXPORT_SYMBOL(__dev_kfree_skb_irq); -@@ -3874,6 +3876,7 @@ static int enqueue_to_backlog(struct sk_ +@@ -3882,6 +3884,7 @@ static int enqueue_to_backlog(struct sk_ rps_unlock(sd); local_irq_restore(flags); @@ -135,7 +135,7 @@ Signed-off-by: Thomas Gleixner atomic_long_inc(&skb->dev->rx_dropped); kfree_skb(skb); -@@ -5123,12 +5126,14 @@ static void net_rps_action_and_irq_enabl +@@ -5131,12 +5134,14 @@ static void net_rps_action_and_irq_enabl sd->rps_ipi_list = NULL; local_irq_enable(); @@ -150,7 +150,7 @@ Signed-off-by: Thomas Gleixner } static bool sd_has_rps_ipi_waiting(struct softnet_data *sd) -@@ -5206,6 +5211,7 @@ void __napi_schedule(struct napi_struct +@@ -5214,6 +5219,7 @@ void __napi_schedule(struct napi_struct local_irq_save(flags); ____napi_schedule(this_cpu_ptr(&softnet_data), n); local_irq_restore(flags); @@ -158,7 +158,7 @@ Signed-off-by: Thomas Gleixner } EXPORT_SYMBOL(__napi_schedule); -@@ -8410,6 +8416,7 @@ static int dev_cpu_dead(unsigned int old +@@ -8418,6 +8424,7 @@ static int dev_cpu_dead(unsigned int old raise_softirq_irqoff(NET_TX_SOFTIRQ); local_irq_enable(); diff --git a/kernel/patches-4.14.x-rt/0216-softirq-disable-softirq-stacks-for-rt.patch b/kernel/patches-4.14.x-rt/0236-softirq-disable-softirq-stacks-for-rt.patch similarity index 97% rename from kernel/patches-4.14.x-rt/0216-softirq-disable-softirq-stacks-for-rt.patch rename to kernel/patches-4.14.x-rt/0236-softirq-disable-softirq-stacks-for-rt.patch index d55faa2c4..d90b5f861 100644 --- a/kernel/patches-4.14.x-rt/0216-softirq-disable-softirq-stacks-for-rt.patch +++ b/kernel/patches-4.14.x-rt/0236-softirq-disable-softirq-stacks-for-rt.patch @@ -19,7 +19,7 @@ Signed-off-by: Thomas Gleixner --- a/arch/powerpc/kernel/irq.c +++ b/arch/powerpc/kernel/irq.c -@@ -685,6 +685,7 @@ void irq_ctx_init(void) +@@ -693,6 +693,7 @@ void irq_ctx_init(void) } } @@ -27,7 +27,7 @@ Signed-off-by: Thomas Gleixner void do_softirq_own_stack(void) { struct thread_info *curtp, *irqtp; -@@ -702,6 +703,7 @@ void do_softirq_own_stack(void) +@@ -710,6 +711,7 @@ void do_softirq_own_stack(void) if (irqtp->flags) set_bits(irqtp->flags, &curtp->flags); } diff --git a/kernel/patches-4.14.x-rt/0217-softirq-split-locks.patch b/kernel/patches-4.14.x-rt/0237-softirq-split-locks.patch similarity index 99% rename from kernel/patches-4.14.x-rt/0217-softirq-split-locks.patch rename to kernel/patches-4.14.x-rt/0237-softirq-split-locks.patch index 56c69c7a2..c4ded8f55 100644 --- a/kernel/patches-4.14.x-rt/0217-softirq-split-locks.patch +++ b/kernel/patches-4.14.x-rt/0237-softirq-split-locks.patch @@ -816,7 +816,7 @@ Signed-off-by: Thomas Gleixner --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -4080,11 +4080,9 @@ int netif_rx_ni(struct sk_buff *skb) +@@ -4088,11 +4088,9 @@ int netif_rx_ni(struct sk_buff *skb) trace_netif_rx_ni_entry(skb); diff --git a/kernel/patches-4.14.x-rt/0218-kernel-softirq-unlock-with-irqs-on.patch b/kernel/patches-4.14.x-rt/0238-kernel-softirq-unlock-with-irqs-on.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0218-kernel-softirq-unlock-with-irqs-on.patch rename to kernel/patches-4.14.x-rt/0238-kernel-softirq-unlock-with-irqs-on.patch diff --git a/kernel/patches-4.14.x-rt/0219-irq-allow-disabling-of-softirq-processing-in-irq-thread-context.patch b/kernel/patches-4.14.x-rt/0239-irq-allow-disabling-of-softirq-processing-in-irq-thread-context.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0219-irq-allow-disabling-of-softirq-processing-in-irq-thread-context.patch rename to kernel/patches-4.14.x-rt/0239-irq-allow-disabling-of-softirq-processing-in-irq-thread-context.patch diff --git a/kernel/patches-4.14.x-rt/0220-softirq-split-timer-softirqs-out-of-ksoftirqd.patch b/kernel/patches-4.14.x-rt/0240-softirq-split-timer-softirqs-out-of-ksoftirqd.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0220-softirq-split-timer-softirqs-out-of-ksoftirqd.patch rename to kernel/patches-4.14.x-rt/0240-softirq-split-timer-softirqs-out-of-ksoftirqd.patch diff --git a/kernel/patches-4.14.x-rt/0221-softirq-wake-the-timer-softirq-if-needed.patch b/kernel/patches-4.14.x-rt/0241-softirq-wake-the-timer-softirq-if-needed.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0221-softirq-wake-the-timer-softirq-if-needed.patch rename to kernel/patches-4.14.x-rt/0241-softirq-wake-the-timer-softirq-if-needed.patch diff --git a/kernel/patches-4.14.x-rt/0222-rtmutex-trylock-is-okay-on-RT.patch b/kernel/patches-4.14.x-rt/0242-rtmutex-trylock-is-okay-on-RT.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0222-rtmutex-trylock-is-okay-on-RT.patch rename to kernel/patches-4.14.x-rt/0242-rtmutex-trylock-is-okay-on-RT.patch diff --git a/kernel/patches-4.14.x-rt/0223-fs-nfs-turn-rmdir_sem-into-a-semaphore.patch b/kernel/patches-4.14.x-rt/0243-fs-nfs-turn-rmdir_sem-into-a-semaphore.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0223-fs-nfs-turn-rmdir_sem-into-a-semaphore.patch rename to kernel/patches-4.14.x-rt/0243-fs-nfs-turn-rmdir_sem-into-a-semaphore.patch diff --git a/kernel/patches-4.14.x-rt/0224-rtmutex-futex-prepare-rt.patch b/kernel/patches-4.14.x-rt/0244-rtmutex-futex-prepare-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0224-rtmutex-futex-prepare-rt.patch rename to kernel/patches-4.14.x-rt/0244-rtmutex-futex-prepare-rt.patch diff --git a/kernel/patches-4.14.x-rt/0225-futex-requeue-pi-fix.patch b/kernel/patches-4.14.x-rt/0245-futex-requeue-pi-fix.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0225-futex-requeue-pi-fix.patch rename to kernel/patches-4.14.x-rt/0245-futex-requeue-pi-fix.patch diff --git a/kernel/patches-4.14.x-rt/0226-locking-rtmutex-don-t-drop-the-wait_lock-twice.patch b/kernel/patches-4.14.x-rt/0246-locking-rtmutex-don-t-drop-the-wait_lock-twice.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0226-locking-rtmutex-don-t-drop-the-wait_lock-twice.patch rename to kernel/patches-4.14.x-rt/0246-locking-rtmutex-don-t-drop-the-wait_lock-twice.patch diff --git a/kernel/patches-4.14.x-rt/0227-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch b/kernel/patches-4.14.x-rt/0247-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0227-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch rename to kernel/patches-4.14.x-rt/0247-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch diff --git a/kernel/patches-4.14.x-rt/0228-pid.h-include-atomic.h.patch b/kernel/patches-4.14.x-rt/0248-pid.h-include-atomic.h.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0228-pid.h-include-atomic.h.patch rename to kernel/patches-4.14.x-rt/0248-pid.h-include-atomic.h.patch diff --git a/kernel/patches-4.14.x-rt/0229-arm-include-definition-for-cpumask_t.patch b/kernel/patches-4.14.x-rt/0249-arm-include-definition-for-cpumask_t.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0229-arm-include-definition-for-cpumask_t.patch rename to kernel/patches-4.14.x-rt/0249-arm-include-definition-for-cpumask_t.patch diff --git a/kernel/patches-4.14.x-rt/0230-locking-locktorture-Do-NOT-include-rwlock.h-directly.patch b/kernel/patches-4.14.x-rt/0250-locking-locktorture-Do-NOT-include-rwlock.h-directly.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0230-locking-locktorture-Do-NOT-include-rwlock.h-directly.patch rename to kernel/patches-4.14.x-rt/0250-locking-locktorture-Do-NOT-include-rwlock.h-directly.patch diff --git a/kernel/patches-4.14.x-rt/0231-rtmutex-lock-killable.patch b/kernel/patches-4.14.x-rt/0251-rtmutex-lock-killable.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0231-rtmutex-lock-killable.patch rename to kernel/patches-4.14.x-rt/0251-rtmutex-lock-killable.patch diff --git a/kernel/patches-4.14.x-rt/0232-rtmutex-Make-lock_killable-work.patch b/kernel/patches-4.14.x-rt/0252-rtmutex-Make-lock_killable-work.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0232-rtmutex-Make-lock_killable-work.patch rename to kernel/patches-4.14.x-rt/0252-rtmutex-Make-lock_killable-work.patch diff --git a/kernel/patches-4.14.x-rt/0233-spinlock-types-separate-raw.patch b/kernel/patches-4.14.x-rt/0253-spinlock-types-separate-raw.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0233-spinlock-types-separate-raw.patch rename to kernel/patches-4.14.x-rt/0253-spinlock-types-separate-raw.patch diff --git a/kernel/patches-4.14.x-rt/0234-rtmutex-avoid-include-hell.patch b/kernel/patches-4.14.x-rt/0254-rtmutex-avoid-include-hell.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0234-rtmutex-avoid-include-hell.patch rename to kernel/patches-4.14.x-rt/0254-rtmutex-avoid-include-hell.patch diff --git a/kernel/patches-4.14.x-rt/0235-rtmutex_dont_include_rcu.patch b/kernel/patches-4.14.x-rt/0255-rtmutex_dont_include_rcu.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0235-rtmutex_dont_include_rcu.patch rename to kernel/patches-4.14.x-rt/0255-rtmutex_dont_include_rcu.patch diff --git a/kernel/patches-4.14.x-rt/0236-rtmutex-Provide-rt_mutex_slowlock_locked.patch b/kernel/patches-4.14.x-rt/0256-rtmutex-Provide-rt_mutex_slowlock_locked.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0236-rtmutex-Provide-rt_mutex_slowlock_locked.patch rename to kernel/patches-4.14.x-rt/0256-rtmutex-Provide-rt_mutex_slowlock_locked.patch diff --git a/kernel/patches-4.14.x-rt/0237-rtmutex-export-lockdep-less-version-of-rt_mutex-s-lo.patch b/kernel/patches-4.14.x-rt/0257-rtmutex-export-lockdep-less-version-of-rt_mutex-s-lo.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0237-rtmutex-export-lockdep-less-version-of-rt_mutex-s-lo.patch rename to kernel/patches-4.14.x-rt/0257-rtmutex-export-lockdep-less-version-of-rt_mutex-s-lo.patch diff --git a/kernel/patches-4.14.x-rt/0238-rtmutex-add-sleeping-lock-implementation.patch b/kernel/patches-4.14.x-rt/0258-rtmutex-add-sleeping-lock-implementation.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0238-rtmutex-add-sleeping-lock-implementation.patch rename to kernel/patches-4.14.x-rt/0258-rtmutex-add-sleeping-lock-implementation.patch diff --git a/kernel/patches-4.14.x-rt/0239-rtmutex-add-mutex-implementation-based-on-rtmutex.patch b/kernel/patches-4.14.x-rt/0259-rtmutex-add-mutex-implementation-based-on-rtmutex.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0239-rtmutex-add-mutex-implementation-based-on-rtmutex.patch rename to kernel/patches-4.14.x-rt/0259-rtmutex-add-mutex-implementation-based-on-rtmutex.patch diff --git a/kernel/patches-4.14.x-rt/0240-rtmutex-add-rwsem-implementation-based-on-rtmutex.patch b/kernel/patches-4.14.x-rt/0260-rtmutex-add-rwsem-implementation-based-on-rtmutex.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0240-rtmutex-add-rwsem-implementation-based-on-rtmutex.patch rename to kernel/patches-4.14.x-rt/0260-rtmutex-add-rwsem-implementation-based-on-rtmutex.patch diff --git a/kernel/patches-4.14.x-rt/0241-rtmutex-add-rwlock-implementation-based-on-rtmutex.patch b/kernel/patches-4.14.x-rt/0261-rtmutex-add-rwlock-implementation-based-on-rtmutex.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0241-rtmutex-add-rwlock-implementation-based-on-rtmutex.patch rename to kernel/patches-4.14.x-rt/0261-rtmutex-add-rwlock-implementation-based-on-rtmutex.patch diff --git a/kernel/patches-4.14.x-rt/0242-rtmutex-wire-up-RT-s-locking.patch b/kernel/patches-4.14.x-rt/0262-rtmutex-wire-up-RT-s-locking.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0242-rtmutex-wire-up-RT-s-locking.patch rename to kernel/patches-4.14.x-rt/0262-rtmutex-wire-up-RT-s-locking.patch diff --git a/kernel/patches-4.14.x-rt/0243-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch b/kernel/patches-4.14.x-rt/0263-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0243-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch rename to kernel/patches-4.14.x-rt/0263-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch diff --git a/kernel/patches-4.14.x-rt/0244-locking-rt-mutex-fix-deadlock-in-device-mapper-block.patch b/kernel/patches-4.14.x-rt/0264-locking-rt-mutex-fix-deadlock-in-device-mapper-block.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0244-locking-rt-mutex-fix-deadlock-in-device-mapper-block.patch rename to kernel/patches-4.14.x-rt/0264-locking-rt-mutex-fix-deadlock-in-device-mapper-block.patch diff --git a/kernel/patches-4.14.x-rt/0245-locking-rtmutex-re-init-the-wait_lock-in-rt_mutex_in.patch b/kernel/patches-4.14.x-rt/0265-locking-rtmutex-re-init-the-wait_lock-in-rt_mutex_in.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0245-locking-rtmutex-re-init-the-wait_lock-in-rt_mutex_in.patch rename to kernel/patches-4.14.x-rt/0265-locking-rtmutex-re-init-the-wait_lock-in-rt_mutex_in.patch diff --git a/kernel/patches-4.14.x-rt/0246-ptrace-fix-ptrace-vs-tasklist_lock-race.patch b/kernel/patches-4.14.x-rt/0266-ptrace-fix-ptrace-vs-tasklist_lock-race.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0246-ptrace-fix-ptrace-vs-tasklist_lock-race.patch rename to kernel/patches-4.14.x-rt/0266-ptrace-fix-ptrace-vs-tasklist_lock-race.patch diff --git a/kernel/patches-4.14.x-rt/0247-RCU-we-need-to-skip-that-warning-but-only-on-sleepin.patch b/kernel/patches-4.14.x-rt/0267-RCU-we-need-to-skip-that-warning-but-only-on-sleepin.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0247-RCU-we-need-to-skip-that-warning-but-only-on-sleepin.patch rename to kernel/patches-4.14.x-rt/0267-RCU-we-need-to-skip-that-warning-but-only-on-sleepin.patch diff --git a/kernel/patches-4.14.x-rt/0248-RCU-skip-the-schedule-in-RCU-section-warning-on-UP-t.patch b/kernel/patches-4.14.x-rt/0268-RCU-skip-the-schedule-in-RCU-section-warning-on-UP-t.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0248-RCU-skip-the-schedule-in-RCU-section-warning-on-UP-t.patch rename to kernel/patches-4.14.x-rt/0268-RCU-skip-the-schedule-in-RCU-section-warning-on-UP-t.patch diff --git a/kernel/patches-4.14.x-rt/0249-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch b/kernel/patches-4.14.x-rt/0269-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0249-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch rename to kernel/patches-4.14.x-rt/0269-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch diff --git a/kernel/patches-4.14.x-rt/0250-peter_zijlstra-frob-rcu.patch b/kernel/patches-4.14.x-rt/0270-peter_zijlstra-frob-rcu.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0250-peter_zijlstra-frob-rcu.patch rename to kernel/patches-4.14.x-rt/0270-peter_zijlstra-frob-rcu.patch diff --git a/kernel/patches-4.14.x-rt/0251-rcu-merge-rcu-bh-into-rcu-preempt-for-rt.patch b/kernel/patches-4.14.x-rt/0271-rcu-merge-rcu-bh-into-rcu-preempt-for-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0251-rcu-merge-rcu-bh-into-rcu-preempt-for-rt.patch rename to kernel/patches-4.14.x-rt/0271-rcu-merge-rcu-bh-into-rcu-preempt-for-rt.patch diff --git a/kernel/patches-4.14.x-rt/0252-patch-to-introduce-rcu-bh-qs-where-safe-from-softirq.patch b/kernel/patches-4.14.x-rt/0272-patch-to-introduce-rcu-bh-qs-where-safe-from-softirq.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0252-patch-to-introduce-rcu-bh-qs-where-safe-from-softirq.patch rename to kernel/patches-4.14.x-rt/0272-patch-to-introduce-rcu-bh-qs-where-safe-from-softirq.patch diff --git a/kernel/patches-4.14.x-rt/0253-rcutree-rcu_bh_qs-disable-irq-while-calling-rcu_pree.patch b/kernel/patches-4.14.x-rt/0273-rcutree-rcu_bh_qs-disable-irq-while-calling-rcu_pree.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0253-rcutree-rcu_bh_qs-disable-irq-while-calling-rcu_pree.patch rename to kernel/patches-4.14.x-rt/0273-rcutree-rcu_bh_qs-disable-irq-while-calling-rcu_pree.patch diff --git a/kernel/patches-4.14.x-rt/0254-drivers-tty-fix-omap-lock-crap.patch b/kernel/patches-4.14.x-rt/0274-drivers-tty-fix-omap-lock-crap.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0254-drivers-tty-fix-omap-lock-crap.patch rename to kernel/patches-4.14.x-rt/0274-drivers-tty-fix-omap-lock-crap.patch diff --git a/kernel/patches-4.14.x-rt/0255-drivers-tty-pl011-irq-disable-madness.patch b/kernel/patches-4.14.x-rt/0275-drivers-tty-pl011-irq-disable-madness.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0255-drivers-tty-pl011-irq-disable-madness.patch rename to kernel/patches-4.14.x-rt/0275-drivers-tty-pl011-irq-disable-madness.patch diff --git a/kernel/patches-4.14.x-rt/0256-rt-serial-warn-fix.patch b/kernel/patches-4.14.x-rt/0276-rt-serial-warn-fix.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0256-rt-serial-warn-fix.patch rename to kernel/patches-4.14.x-rt/0276-rt-serial-warn-fix.patch diff --git a/kernel/patches-4.14.x-rt/0257-tty-serial-8250-don-t-take-the-trylock-during-oops.patch b/kernel/patches-4.14.x-rt/0277-tty-serial-8250-don-t-take-the-trylock-during-oops.patch similarity index 93% rename from kernel/patches-4.14.x-rt/0257-tty-serial-8250-don-t-take-the-trylock-during-oops.patch rename to kernel/patches-4.14.x-rt/0277-tty-serial-8250-don-t-take-the-trylock-during-oops.patch index 4f824abb2..d006506a8 100644 --- a/kernel/patches-4.14.x-rt/0257-tty-serial-8250-don-t-take-the-trylock-during-oops.patch +++ b/kernel/patches-4.14.x-rt/0277-tty-serial-8250-don-t-take-the-trylock-during-oops.patch @@ -14,7 +14,7 @@ Signed-off-by: Sebastian Andrzej Siewior --- a/drivers/tty/serial/8250/8250_port.c +++ b/drivers/tty/serial/8250/8250_port.c -@@ -3217,10 +3217,8 @@ void serial8250_console_write(struct uar +@@ -3250,10 +3250,8 @@ void serial8250_console_write(struct uar serial8250_rpm_get(up); diff --git a/kernel/patches-4.14.x-rt/0258-peterz-percpu-rwsem-rt.patch b/kernel/patches-4.14.x-rt/0278-peterz-percpu-rwsem-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0258-peterz-percpu-rwsem-rt.patch rename to kernel/patches-4.14.x-rt/0278-peterz-percpu-rwsem-rt.patch diff --git a/kernel/patches-4.14.x-rt/0259-fs-namespace-preemption-fix.patch b/kernel/patches-4.14.x-rt/0279-fs-namespace-preemption-fix.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0259-fs-namespace-preemption-fix.patch rename to kernel/patches-4.14.x-rt/0279-fs-namespace-preemption-fix.patch diff --git a/kernel/patches-4.14.x-rt/0260-mm-protect-activate-switch-mm.patch b/kernel/patches-4.14.x-rt/0280-mm-protect-activate-switch-mm.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0260-mm-protect-activate-switch-mm.patch rename to kernel/patches-4.14.x-rt/0280-mm-protect-activate-switch-mm.patch diff --git a/kernel/patches-4.14.x-rt/0261-fs-block-rt-support.patch b/kernel/patches-4.14.x-rt/0281-fs-block-rt-support.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0261-fs-block-rt-support.patch rename to kernel/patches-4.14.x-rt/0281-fs-block-rt-support.patch diff --git a/kernel/patches-4.14.x-rt/0262-fs-ntfs-disable-interrupt-non-rt.patch b/kernel/patches-4.14.x-rt/0282-fs-ntfs-disable-interrupt-non-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0262-fs-ntfs-disable-interrupt-non-rt.patch rename to kernel/patches-4.14.x-rt/0282-fs-ntfs-disable-interrupt-non-rt.patch diff --git a/kernel/patches-4.14.x-rt/0263-fs-jbd2-pull-your-plug-when-waiting-for-space.patch b/kernel/patches-4.14.x-rt/0283-fs-jbd2-pull-your-plug-when-waiting-for-space.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0263-fs-jbd2-pull-your-plug-when-waiting-for-space.patch rename to kernel/patches-4.14.x-rt/0283-fs-jbd2-pull-your-plug-when-waiting-for-space.patch diff --git a/kernel/patches-4.14.x-rt/0264-Revert-fs-jbd2-pull-your-plug-when-waiting-for-space.patch b/kernel/patches-4.14.x-rt/0284-Revert-fs-jbd2-pull-your-plug-when-waiting-for-space.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0264-Revert-fs-jbd2-pull-your-plug-when-waiting-for-space.patch rename to kernel/patches-4.14.x-rt/0284-Revert-fs-jbd2-pull-your-plug-when-waiting-for-space.patch diff --git a/kernel/patches-4.14.x-rt/0265-fs-dcache-bringt-back-explicit-INIT_HLIST_BL_HEAD-in.patch b/kernel/patches-4.14.x-rt/0285-fs-dcache-bringt-back-explicit-INIT_HLIST_BL_HEAD-in.patch similarity index 87% rename from kernel/patches-4.14.x-rt/0265-fs-dcache-bringt-back-explicit-INIT_HLIST_BL_HEAD-in.patch rename to kernel/patches-4.14.x-rt/0285-fs-dcache-bringt-back-explicit-INIT_HLIST_BL_HEAD-in.patch index f9165c560..7b7374050 100644 --- a/kernel/patches-4.14.x-rt/0265-fs-dcache-bringt-back-explicit-INIT_HLIST_BL_HEAD-in.patch +++ b/kernel/patches-4.14.x-rt/0285-fs-dcache-bringt-back-explicit-INIT_HLIST_BL_HEAD-in.patch @@ -14,7 +14,7 @@ Signed-off-by: Sebastian Andrzej Siewior --- a/fs/dcache.c +++ b/fs/dcache.c -@@ -3581,6 +3581,8 @@ static int __init set_dhash_entries(char +@@ -3590,6 +3590,8 @@ static int __init set_dhash_entries(char static void __init dcache_init_early(void) { @@ -23,7 +23,7 @@ Signed-off-by: Sebastian Andrzej Siewior /* If hashes are distributed across NUMA nodes, defer * hash allocation until vmalloc space is available. */ -@@ -3597,10 +3599,14 @@ static void __init dcache_init_early(voi +@@ -3606,10 +3608,14 @@ static void __init dcache_init_early(voi &d_hash_mask, 0, 0); @@ -38,7 +38,7 @@ Signed-off-by: Sebastian Andrzej Siewior /* * A constructor could be added for stable state like the lists, * but it is probably not worth it because of the cache nature -@@ -3623,6 +3629,10 @@ static void __init dcache_init(void) +@@ -3632,6 +3638,10 @@ static void __init dcache_init(void) &d_hash_mask, 0, 0); diff --git a/kernel/patches-4.14.x-rt/0266-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch b/kernel/patches-4.14.x-rt/0286-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch similarity index 93% rename from kernel/patches-4.14.x-rt/0266-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch rename to kernel/patches-4.14.x-rt/0286-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch index b7ecd0e97..a8cd1f6f0 100644 --- a/kernel/patches-4.14.x-rt/0266-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch +++ b/kernel/patches-4.14.x-rt/0286-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch @@ -23,7 +23,7 @@ Signed-off-by: Sebastian Andrzej Siewior --- a/fs/dcache.c +++ b/fs/dcache.c -@@ -2410,9 +2410,10 @@ EXPORT_SYMBOL(d_rehash); +@@ -2417,9 +2417,10 @@ EXPORT_SYMBOL(d_rehash); static inline unsigned start_dir_add(struct inode *dir) { @@ -36,7 +36,7 @@ Signed-off-by: Sebastian Andrzej Siewior return n; cpu_relax(); } -@@ -2420,7 +2421,8 @@ static inline unsigned start_dir_add(str +@@ -2427,7 +2428,8 @@ static inline unsigned start_dir_add(str static inline void end_dir_add(struct inode *dir, unsigned n) { @@ -46,7 +46,7 @@ Signed-off-by: Sebastian Andrzej Siewior } static void d_wait_lookup(struct dentry *dentry) -@@ -2453,7 +2455,7 @@ struct dentry *d_alloc_parallel(struct d +@@ -2460,7 +2462,7 @@ struct dentry *d_alloc_parallel(struct d retry: rcu_read_lock(); @@ -55,7 +55,7 @@ Signed-off-by: Sebastian Andrzej Siewior r_seq = read_seqbegin(&rename_lock); dentry = __d_lookup_rcu(parent, name, &d_seq); if (unlikely(dentry)) { -@@ -2475,7 +2477,7 @@ struct dentry *d_alloc_parallel(struct d +@@ -2482,7 +2484,7 @@ struct dentry *d_alloc_parallel(struct d goto retry; } hlist_bl_lock(b); diff --git a/kernel/patches-4.14.x-rt/0267-x86-mce-timer-hrtimer.patch b/kernel/patches-4.14.x-rt/0287-x86-mce-timer-hrtimer.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0267-x86-mce-timer-hrtimer.patch rename to kernel/patches-4.14.x-rt/0287-x86-mce-timer-hrtimer.patch diff --git a/kernel/patches-4.14.x-rt/0268-x86-mce-use-swait-queue-for-mce-wakeups.patch b/kernel/patches-4.14.x-rt/0288-x86-mce-use-swait-queue-for-mce-wakeups.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0268-x86-mce-use-swait-queue-for-mce-wakeups.patch rename to kernel/patches-4.14.x-rt/0288-x86-mce-use-swait-queue-for-mce-wakeups.patch diff --git a/kernel/patches-4.14.x-rt/0269-x86-stackprot-no-random-on-rt.patch b/kernel/patches-4.14.x-rt/0289-x86-stackprot-no-random-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0269-x86-stackprot-no-random-on-rt.patch rename to kernel/patches-4.14.x-rt/0289-x86-stackprot-no-random-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0270-x86-use-gen-rwsem-spinlocks-rt.patch b/kernel/patches-4.14.x-rt/0290-x86-use-gen-rwsem-spinlocks-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0270-x86-use-gen-rwsem-spinlocks-rt.patch rename to kernel/patches-4.14.x-rt/0290-x86-use-gen-rwsem-spinlocks-rt.patch diff --git a/kernel/patches-4.14.x-rt/0271-x86-UV-raw_spinlock-conversion.patch b/kernel/patches-4.14.x-rt/0291-x86-UV-raw_spinlock-conversion.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0271-x86-UV-raw_spinlock-conversion.patch rename to kernel/patches-4.14.x-rt/0291-x86-UV-raw_spinlock-conversion.patch diff --git a/kernel/patches-4.14.x-rt/0272-thermal-Defer-thermal-wakups-to-threads.patch b/kernel/patches-4.14.x-rt/0292-thermal-Defer-thermal-wakups-to-threads.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0272-thermal-Defer-thermal-wakups-to-threads.patch rename to kernel/patches-4.14.x-rt/0292-thermal-Defer-thermal-wakups-to-threads.patch diff --git a/kernel/patches-4.14.x-rt/0273-epoll-use-get-cpu-light.patch b/kernel/patches-4.14.x-rt/0293-epoll-use-get-cpu-light.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0273-epoll-use-get-cpu-light.patch rename to kernel/patches-4.14.x-rt/0293-epoll-use-get-cpu-light.patch diff --git a/kernel/patches-4.14.x-rt/0274-mm-vmalloc-use-get-cpu-light.patch b/kernel/patches-4.14.x-rt/0294-mm-vmalloc-use-get-cpu-light.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0274-mm-vmalloc-use-get-cpu-light.patch rename to kernel/patches-4.14.x-rt/0294-mm-vmalloc-use-get-cpu-light.patch diff --git a/kernel/patches-4.14.x-rt/0275-block-mq-use-cpu_light.patch b/kernel/patches-4.14.x-rt/0295-block-mq-use-cpu_light.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0275-block-mq-use-cpu_light.patch rename to kernel/patches-4.14.x-rt/0295-block-mq-use-cpu_light.patch diff --git a/kernel/patches-4.14.x-rt/0276-block-mq-drop-preempt-disable.patch b/kernel/patches-4.14.x-rt/0296-block-mq-drop-preempt-disable.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0276-block-mq-drop-preempt-disable.patch rename to kernel/patches-4.14.x-rt/0296-block-mq-drop-preempt-disable.patch diff --git a/kernel/patches-4.14.x-rt/0277-block-mq-don-t-complete-requests-via-IPI.patch b/kernel/patches-4.14.x-rt/0297-block-mq-don-t-complete-requests-via-IPI.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0277-block-mq-don-t-complete-requests-via-IPI.patch rename to kernel/patches-4.14.x-rt/0297-block-mq-don-t-complete-requests-via-IPI.patch diff --git a/kernel/patches-4.14.x-rt/0278-md-raid5-percpu-handling-rt-aware.patch b/kernel/patches-4.14.x-rt/0298-md-raid5-percpu-handling-rt-aware.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0278-md-raid5-percpu-handling-rt-aware.patch rename to kernel/patches-4.14.x-rt/0298-md-raid5-percpu-handling-rt-aware.patch diff --git a/kernel/patches-4.14.x-rt/0279-md-raid5-do-not-disable-interrupts.patch b/kernel/patches-4.14.x-rt/0299-md-raid5-do-not-disable-interrupts.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0279-md-raid5-do-not-disable-interrupts.patch rename to kernel/patches-4.14.x-rt/0299-md-raid5-do-not-disable-interrupts.patch diff --git a/kernel/patches-4.14.x-rt/0280-rt-introduce-cpu-chill.patch b/kernel/patches-4.14.x-rt/0300-rt-introduce-cpu-chill.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0280-rt-introduce-cpu-chill.patch rename to kernel/patches-4.14.x-rt/0300-rt-introduce-cpu-chill.patch diff --git a/kernel/patches-4.14.x-rt/0281-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch b/kernel/patches-4.14.x-rt/0301-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0281-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch rename to kernel/patches-4.14.x-rt/0301-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch diff --git a/kernel/patches-4.14.x-rt/0282-kernel-cpu_chill-use-schedule_hrtimeout.patch b/kernel/patches-4.14.x-rt/0302-kernel-cpu_chill-use-schedule_hrtimeout.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0282-kernel-cpu_chill-use-schedule_hrtimeout.patch rename to kernel/patches-4.14.x-rt/0302-kernel-cpu_chill-use-schedule_hrtimeout.patch diff --git a/kernel/patches-4.14.x-rt/0283-Revert-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanos.patch b/kernel/patches-4.14.x-rt/0303-Revert-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanos.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0283-Revert-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanos.patch rename to kernel/patches-4.14.x-rt/0303-Revert-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanos.patch diff --git a/kernel/patches-4.14.x-rt/0284-block-blk-mq-use-swait.patch b/kernel/patches-4.14.x-rt/0304-block-blk-mq-use-swait.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0284-block-blk-mq-use-swait.patch rename to kernel/patches-4.14.x-rt/0304-block-blk-mq-use-swait.patch diff --git a/kernel/patches-4.14.x-rt/0285-Revert-block-blk-mq-Use-swait.patch b/kernel/patches-4.14.x-rt/0305-Revert-block-blk-mq-Use-swait.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0285-Revert-block-blk-mq-Use-swait.patch rename to kernel/patches-4.14.x-rt/0305-Revert-block-blk-mq-Use-swait.patch diff --git a/kernel/patches-4.14.x-rt/0286-block-blk-mq-move-blk_queue_usage_counter_release-in.patch b/kernel/patches-4.14.x-rt/0306-block-blk-mq-move-blk_queue_usage_counter_release-in.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0286-block-blk-mq-move-blk_queue_usage_counter_release-in.patch rename to kernel/patches-4.14.x-rt/0306-block-blk-mq-move-blk_queue_usage_counter_release-in.patch diff --git a/kernel/patches-4.14.x-rt/0287-block-use-cpu-chill.patch b/kernel/patches-4.14.x-rt/0307-block-use-cpu-chill.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0287-block-use-cpu-chill.patch rename to kernel/patches-4.14.x-rt/0307-block-use-cpu-chill.patch diff --git a/kernel/patches-4.14.x-rt/0288-fs-dcache-use-cpu-chill-in-trylock-loops.patch b/kernel/patches-4.14.x-rt/0308-fs-dcache-use-cpu-chill-in-trylock-loops.patch similarity index 93% rename from kernel/patches-4.14.x-rt/0288-fs-dcache-use-cpu-chill-in-trylock-loops.patch rename to kernel/patches-4.14.x-rt/0308-fs-dcache-use-cpu-chill-in-trylock-loops.patch index 25edf4989..bb4ae8508 100644 --- a/kernel/patches-4.14.x-rt/0288-fs-dcache-use-cpu-chill-in-trylock-loops.patch +++ b/kernel/patches-4.14.x-rt/0308-fs-dcache-use-cpu-chill-in-trylock-loops.patch @@ -46,7 +46,7 @@ Signed-off-by: Thomas Gleixner #include #include #include -@@ -789,6 +790,8 @@ static inline bool fast_dput(struct dent +@@ -796,6 +797,8 @@ static inline bool fast_dput(struct dent */ void dput(struct dentry *dentry) { @@ -55,7 +55,7 @@ Signed-off-by: Thomas Gleixner if (unlikely(!dentry)) return; -@@ -825,9 +828,18 @@ void dput(struct dentry *dentry) +@@ -832,9 +835,18 @@ void dput(struct dentry *dentry) return; kill_it: @@ -77,7 +77,7 @@ Signed-off-by: Thomas Gleixner goto repeat; } } -@@ -2365,7 +2377,7 @@ void d_delete(struct dentry * dentry) +@@ -2372,7 +2384,7 @@ void d_delete(struct dentry * dentry) if (dentry->d_lockref.count == 1) { if (!spin_trylock(&inode->i_lock)) { spin_unlock(&dentry->d_lock); diff --git a/kernel/patches-4.14.x-rt/0289-net-use-cpu-chill.patch b/kernel/patches-4.14.x-rt/0309-net-use-cpu-chill.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0289-net-use-cpu-chill.patch rename to kernel/patches-4.14.x-rt/0309-net-use-cpu-chill.patch diff --git a/kernel/patches-4.14.x-rt/0290-fs-dcache-use-swait_queue-instead-of-waitqueue.patch b/kernel/patches-4.14.x-rt/0310-fs-dcache-use-swait_queue-instead-of-waitqueue.patch similarity index 98% rename from kernel/patches-4.14.x-rt/0290-fs-dcache-use-swait_queue-instead-of-waitqueue.patch rename to kernel/patches-4.14.x-rt/0310-fs-dcache-use-swait_queue-instead-of-waitqueue.patch index 9742763a8..164e78980 100644 --- a/kernel/patches-4.14.x-rt/0290-fs-dcache-use-swait_queue-instead-of-waitqueue.patch +++ b/kernel/patches-4.14.x-rt/0310-fs-dcache-use-swait_queue-instead-of-waitqueue.patch @@ -33,7 +33,7 @@ Signed-off-by: Sebastian Andrzej Siewior --- a/fs/dcache.c +++ b/fs/dcache.c -@@ -2439,21 +2439,24 @@ static inline void end_dir_add(struct in +@@ -2446,21 +2446,24 @@ static inline void end_dir_add(struct in static void d_wait_lookup(struct dentry *dentry) { @@ -69,7 +69,7 @@ Signed-off-by: Sebastian Andrzej Siewior { unsigned int hash = name->hash; struct hlist_bl_head *b = in_lookup_hash(parent, hash); -@@ -2562,7 +2565,7 @@ void __d_lookup_done(struct dentry *dent +@@ -2569,7 +2572,7 @@ void __d_lookup_done(struct dentry *dent hlist_bl_lock(b); dentry->d_flags &= ~DCACHE_PAR_LOOKUP; __hlist_bl_del(&dentry->d_u.d_in_lookup_hash); diff --git a/kernel/patches-4.14.x-rt/0291-workqueue-use-rcu.patch b/kernel/patches-4.14.x-rt/0311-workqueue-use-rcu.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0291-workqueue-use-rcu.patch rename to kernel/patches-4.14.x-rt/0311-workqueue-use-rcu.patch diff --git a/kernel/patches-4.14.x-rt/0292-workqueue-use-locallock.patch b/kernel/patches-4.14.x-rt/0312-workqueue-use-locallock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0292-workqueue-use-locallock.patch rename to kernel/patches-4.14.x-rt/0312-workqueue-use-locallock.patch diff --git a/kernel/patches-4.14.x-rt/0293-work-queue-work-around-irqsafe-timer-optimization.patch b/kernel/patches-4.14.x-rt/0313-work-queue-work-around-irqsafe-timer-optimization.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0293-work-queue-work-around-irqsafe-timer-optimization.patch rename to kernel/patches-4.14.x-rt/0313-work-queue-work-around-irqsafe-timer-optimization.patch diff --git a/kernel/patches-4.14.x-rt/0294-workqueue-distangle-from-rq-lock.patch b/kernel/patches-4.14.x-rt/0314-workqueue-distangle-from-rq-lock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0294-workqueue-distangle-from-rq-lock.patch rename to kernel/patches-4.14.x-rt/0314-workqueue-distangle-from-rq-lock.patch diff --git a/kernel/patches-4.14.x-rt/0295-percpu_ida-use-locklocks.patch b/kernel/patches-4.14.x-rt/0315-percpu_ida-use-locklocks.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0295-percpu_ida-use-locklocks.patch rename to kernel/patches-4.14.x-rt/0315-percpu_ida-use-locklocks.patch diff --git a/kernel/patches-4.14.x-rt/0296-debugobjects-rt.patch b/kernel/patches-4.14.x-rt/0316-debugobjects-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0296-debugobjects-rt.patch rename to kernel/patches-4.14.x-rt/0316-debugobjects-rt.patch diff --git a/kernel/patches-4.14.x-rt/0297-jump-label-rt.patch b/kernel/patches-4.14.x-rt/0317-jump-label-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0297-jump-label-rt.patch rename to kernel/patches-4.14.x-rt/0317-jump-label-rt.patch diff --git a/kernel/patches-4.14.x-rt/0298-seqlock-prevent-rt-starvation.patch b/kernel/patches-4.14.x-rt/0318-seqlock-prevent-rt-starvation.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0298-seqlock-prevent-rt-starvation.patch rename to kernel/patches-4.14.x-rt/0318-seqlock-prevent-rt-starvation.patch diff --git a/kernel/patches-4.14.x-rt/0299-sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch b/kernel/patches-4.14.x-rt/0319-sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0299-sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch rename to kernel/patches-4.14.x-rt/0319-sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch diff --git a/kernel/patches-4.14.x-rt/0300-skbufhead-raw-lock.patch b/kernel/patches-4.14.x-rt/0320-skbufhead-raw-lock.patch similarity index 90% rename from kernel/patches-4.14.x-rt/0300-skbufhead-raw-lock.patch rename to kernel/patches-4.14.x-rt/0320-skbufhead-raw-lock.patch index 002ada14b..865ea6c72 100644 --- a/kernel/patches-4.14.x-rt/0300-skbufhead-raw-lock.patch +++ b/kernel/patches-4.14.x-rt/0320-skbufhead-raw-lock.patch @@ -65,7 +65,7 @@ Signed-off-by: Thomas Gleixner #endif } -@@ -4600,7 +4600,7 @@ static void flush_backlog(struct work_st +@@ -4608,7 +4608,7 @@ static void flush_backlog(struct work_st skb_queue_walk_safe(&sd->input_pkt_queue, skb, tmp) { if (skb->dev->reg_state == NETREG_UNREGISTERING) { __skb_unlink(skb, &sd->input_pkt_queue); @@ -74,7 +74,7 @@ Signed-off-by: Thomas Gleixner input_queue_head_incr(sd); } } -@@ -4610,11 +4610,14 @@ static void flush_backlog(struct work_st +@@ -4618,11 +4618,14 @@ static void flush_backlog(struct work_st skb_queue_walk_safe(&sd->process_queue, skb, tmp) { if (skb->dev->reg_state == NETREG_UNREGISTERING) { __skb_unlink(skb, &sd->process_queue); @@ -90,7 +90,7 @@ Signed-off-by: Thomas Gleixner } static void flush_all_backlogs(void) -@@ -5161,7 +5164,9 @@ static int process_backlog(struct napi_s +@@ -5169,7 +5172,9 @@ static int process_backlog(struct napi_s while (again) { struct sk_buff *skb; @@ -100,7 +100,7 @@ Signed-off-by: Thomas Gleixner rcu_read_lock(); __netif_receive_skb(skb); rcu_read_unlock(); -@@ -5169,9 +5174,9 @@ static int process_backlog(struct napi_s +@@ -5177,9 +5182,9 @@ static int process_backlog(struct napi_s if (++work >= quota) return work; @@ -111,7 +111,7 @@ Signed-off-by: Thomas Gleixner rps_lock(sd); if (skb_queue_empty(&sd->input_pkt_queue)) { /* -@@ -5611,13 +5616,21 @@ static __latent_entropy void net_rx_acti +@@ -5619,13 +5624,21 @@ static __latent_entropy void net_rx_acti unsigned long time_limit = jiffies + usecs_to_jiffies(netdev_budget_usecs); int budget = netdev_budget; @@ -133,7 +133,7 @@ Signed-off-by: Thomas Gleixner for (;;) { struct napi_struct *n; -@@ -8432,6 +8445,9 @@ static int dev_cpu_dead(unsigned int old +@@ -8440,6 +8453,9 @@ static int dev_cpu_dead(unsigned int old netif_rx_ni(skb); input_queue_head_incr(oldsd); } @@ -143,7 +143,7 @@ Signed-off-by: Thomas Gleixner return 0; } -@@ -8735,8 +8751,9 @@ static int __init net_dev_init(void) +@@ -8743,8 +8759,9 @@ static int __init net_dev_init(void) INIT_WORK(flush, flush_backlog); diff --git a/kernel/patches-4.14.x-rt/0301-net-core-cpuhotplug-drain-input_pkt_queue-lockless.patch b/kernel/patches-4.14.x-rt/0321-net-core-cpuhotplug-drain-input_pkt_queue-lockless.patch similarity index 97% rename from kernel/patches-4.14.x-rt/0301-net-core-cpuhotplug-drain-input_pkt_queue-lockless.patch rename to kernel/patches-4.14.x-rt/0321-net-core-cpuhotplug-drain-input_pkt_queue-lockless.patch index 2dd51d407..45b7402e6 100644 --- a/kernel/patches-4.14.x-rt/0301-net-core-cpuhotplug-drain-input_pkt_queue-lockless.patch +++ b/kernel/patches-4.14.x-rt/0321-net-core-cpuhotplug-drain-input_pkt_queue-lockless.patch @@ -35,7 +35,7 @@ Cc: stable-rt@vger.kernel.org --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -8441,7 +8441,7 @@ static int dev_cpu_dead(unsigned int old +@@ -8449,7 +8449,7 @@ static int dev_cpu_dead(unsigned int old netif_rx_ni(skb); input_queue_head_incr(oldsd); } diff --git a/kernel/patches-4.14.x-rt/0302-net-move-xmit_recursion-to-per-task-variable-on-RT.patch b/kernel/patches-4.14.x-rt/0322-net-move-xmit_recursion-to-per-task-variable-on-RT.patch similarity index 95% rename from kernel/patches-4.14.x-rt/0302-net-move-xmit_recursion-to-per-task-variable-on-RT.patch rename to kernel/patches-4.14.x-rt/0322-net-move-xmit_recursion-to-per-task-variable-on-RT.patch index 6b8f4b814..dce308af8 100644 --- a/kernel/patches-4.14.x-rt/0302-net-move-xmit_recursion-to-per-task-variable-on-RT.patch +++ b/kernel/patches-4.14.x-rt/0322-net-move-xmit_recursion-to-per-task-variable-on-RT.patch @@ -92,7 +92,7 @@ Signed-off-by: Sebastian Andrzej Siewior struct task_struct *oom_reaper_list; --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -3240,8 +3240,10 @@ static void skb_update_prio(struct sk_bu +@@ -3248,8 +3248,10 @@ static void skb_update_prio(struct sk_bu #define skb_update_prio(skb) #endif @@ -103,7 +103,7 @@ Signed-off-by: Sebastian Andrzej Siewior /** * dev_loopback_xmit - loop back @skb -@@ -3482,8 +3484,7 @@ static int __dev_queue_xmit(struct sk_bu +@@ -3490,8 +3492,7 @@ static int __dev_queue_xmit(struct sk_bu int cpu = smp_processor_id(); /* ok because BHs are off */ if (txq->xmit_lock_owner != cpu) { @@ -113,7 +113,7 @@ Signed-off-by: Sebastian Andrzej Siewior goto recursion_alert; skb = validate_xmit_skb(skb, dev); -@@ -3493,9 +3494,9 @@ static int __dev_queue_xmit(struct sk_bu +@@ -3501,9 +3502,9 @@ static int __dev_queue_xmit(struct sk_bu HARD_TX_LOCK(dev, txq, cpu); if (!netif_xmit_stopped(txq)) { diff --git a/kernel/patches-4.14.x-rt/0303-net-use-task_struct-instead-of-CPU-number-as-the-que.patch b/kernel/patches-4.14.x-rt/0323-net-use-task_struct-instead-of-CPU-number-as-the-que.patch similarity index 96% rename from kernel/patches-4.14.x-rt/0303-net-use-task_struct-instead-of-CPU-number-as-the-que.patch rename to kernel/patches-4.14.x-rt/0323-net-use-task_struct-instead-of-CPU-number-as-the-que.patch index d52b8d0dd..2d7ca26bc 100644 --- a/kernel/patches-4.14.x-rt/0303-net-use-task_struct-instead-of-CPU-number-as-the-que.patch +++ b/kernel/patches-4.14.x-rt/0323-net-use-task_struct-instead-of-CPU-number-as-the-que.patch @@ -122,7 +122,7 @@ Signed-off-by: Sebastian Andrzej Siewior --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -3483,7 +3483,11 @@ static int __dev_queue_xmit(struct sk_bu +@@ -3491,7 +3491,11 @@ static int __dev_queue_xmit(struct sk_bu if (dev->flags & IFF_UP) { int cpu = smp_processor_id(); /* ok because BHs are off */ @@ -134,7 +134,7 @@ Signed-off-by: Sebastian Andrzej Siewior if (unlikely(xmit_rec_read() > XMIT_RECURSION_LIMIT)) goto recursion_alert; -@@ -7488,7 +7492,7 @@ static void netdev_init_one_queue(struct +@@ -7496,7 +7500,7 @@ static void netdev_init_one_queue(struct /* Initialize queue lock */ spin_lock_init(&queue->_xmit_lock); netdev_set_xmit_lockdep_class(&queue->_xmit_lock, dev->type); diff --git a/kernel/patches-4.14.x-rt/0304-net-provide-a-way-to-delegate-processing-a-softirq-t.patch b/kernel/patches-4.14.x-rt/0324-net-provide-a-way-to-delegate-processing-a-softirq-t.patch similarity index 97% rename from kernel/patches-4.14.x-rt/0304-net-provide-a-way-to-delegate-processing-a-softirq-t.patch rename to kernel/patches-4.14.x-rt/0324-net-provide-a-way-to-delegate-processing-a-softirq-t.patch index 97f485a4b..af2e8f34f 100644 --- a/kernel/patches-4.14.x-rt/0304-net-provide-a-way-to-delegate-processing-a-softirq-t.patch +++ b/kernel/patches-4.14.x-rt/0324-net-provide-a-way-to-delegate-processing-a-softirq-t.patch @@ -67,7 +67,7 @@ Signed-off-by: Sebastian Andrzej Siewior void raise_softirq_irqoff(unsigned int nr) --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -5665,7 +5665,7 @@ static __latent_entropy void net_rx_acti +@@ -5673,7 +5673,7 @@ static __latent_entropy void net_rx_acti list_splice_tail(&repoll, &list); list_splice(&list, &sd->poll_list); if (!list_empty(&sd->poll_list)) diff --git a/kernel/patches-4.14.x-rt/0305-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch b/kernel/patches-4.14.x-rt/0325-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0305-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch rename to kernel/patches-4.14.x-rt/0325-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch diff --git a/kernel/patches-4.14.x-rt/0306-net-Qdisc-use-a-seqlock-instead-seqcount.patch b/kernel/patches-4.14.x-rt/0326-net-Qdisc-use-a-seqlock-instead-seqcount.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0306-net-Qdisc-use-a-seqlock-instead-seqcount.patch rename to kernel/patches-4.14.x-rt/0326-net-Qdisc-use-a-seqlock-instead-seqcount.patch diff --git a/kernel/patches-4.14.x-rt/0307-net-add-back-the-missing-serialization-in-ip_send_un.patch b/kernel/patches-4.14.x-rt/0327-net-add-back-the-missing-serialization-in-ip_send_un.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0307-net-add-back-the-missing-serialization-in-ip_send_un.patch rename to kernel/patches-4.14.x-rt/0327-net-add-back-the-missing-serialization-in-ip_send_un.patch diff --git a/kernel/patches-4.14.x-rt/0308-net-take-the-tcp_sk_lock-lock-with-BH-disabled.patch b/kernel/patches-4.14.x-rt/0328-net-take-the-tcp_sk_lock-lock-with-BH-disabled.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0308-net-take-the-tcp_sk_lock-lock-with-BH-disabled.patch rename to kernel/patches-4.14.x-rt/0328-net-take-the-tcp_sk_lock-lock-with-BH-disabled.patch diff --git a/kernel/patches-4.14.x-rt/0309-net-add-a-lock-around-icmp_sk.patch b/kernel/patches-4.14.x-rt/0329-net-add-a-lock-around-icmp_sk.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0309-net-add-a-lock-around-icmp_sk.patch rename to kernel/patches-4.14.x-rt/0329-net-add-a-lock-around-icmp_sk.patch diff --git a/kernel/patches-4.14.x-rt/0310-net-use-trylock-in-icmp_sk.patch b/kernel/patches-4.14.x-rt/0330-net-use-trylock-in-icmp_sk.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0310-net-use-trylock-in-icmp_sk.patch rename to kernel/patches-4.14.x-rt/0330-net-use-trylock-in-icmp_sk.patch diff --git a/kernel/patches-4.14.x-rt/0311-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch b/kernel/patches-4.14.x-rt/0331-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch similarity index 95% rename from kernel/patches-4.14.x-rt/0311-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch rename to kernel/patches-4.14.x-rt/0331-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch index f3d1fa684..064e6cb5d 100644 --- a/kernel/patches-4.14.x-rt/0311-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch +++ b/kernel/patches-4.14.x-rt/0331-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch @@ -50,7 +50,7 @@ Signed-off-by: Sebastian Andrzej Siewior { --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -5260,6 +5260,7 @@ bool napi_schedule_prep(struct napi_stru +@@ -5268,6 +5268,7 @@ bool napi_schedule_prep(struct napi_stru } EXPORT_SYMBOL(napi_schedule_prep); @@ -58,7 +58,7 @@ Signed-off-by: Sebastian Andrzej Siewior /** * __napi_schedule_irqoff - schedule for receive * @n: entry to schedule -@@ -5271,6 +5272,7 @@ void __napi_schedule_irqoff(struct napi_ +@@ -5279,6 +5280,7 @@ void __napi_schedule_irqoff(struct napi_ ____napi_schedule(this_cpu_ptr(&softnet_data), n); } EXPORT_SYMBOL(__napi_schedule_irqoff); diff --git a/kernel/patches-4.14.x-rt/0312-irqwork-push_most_work_into_softirq_context.patch b/kernel/patches-4.14.x-rt/0332-irqwork-push_most_work_into_softirq_context.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0312-irqwork-push_most_work_into_softirq_context.patch rename to kernel/patches-4.14.x-rt/0332-irqwork-push_most_work_into_softirq_context.patch diff --git a/kernel/patches-4.14.x-rt/0313-irqwork-Move-irq-safe-work-to-irq-context.patch b/kernel/patches-4.14.x-rt/0333-irqwork-Move-irq-safe-work-to-irq-context.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0313-irqwork-Move-irq-safe-work-to-irq-context.patch rename to kernel/patches-4.14.x-rt/0333-irqwork-Move-irq-safe-work-to-irq-context.patch diff --git a/kernel/patches-4.14.x-rt/0314-snd-pcm-fix-snd_pcm_stream_lock-irqs_disabled-splats.patch b/kernel/patches-4.14.x-rt/0334-snd-pcm-fix-snd_pcm_stream_lock-irqs_disabled-splats.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0314-snd-pcm-fix-snd_pcm_stream_lock-irqs_disabled-splats.patch rename to kernel/patches-4.14.x-rt/0334-snd-pcm-fix-snd_pcm_stream_lock-irqs_disabled-splats.patch diff --git a/kernel/patches-4.14.x-rt/0315-printk-rt-aware.patch b/kernel/patches-4.14.x-rt/0335-printk-rt-aware.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0315-printk-rt-aware.patch rename to kernel/patches-4.14.x-rt/0335-printk-rt-aware.patch diff --git a/kernel/patches-4.14.x-rt/0316-kernel-printk-Don-t-try-to-print-from-IRQ-NMI-region.patch b/kernel/patches-4.14.x-rt/0336-kernel-printk-Don-t-try-to-print-from-IRQ-NMI-region.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0316-kernel-printk-Don-t-try-to-print-from-IRQ-NMI-region.patch rename to kernel/patches-4.14.x-rt/0336-kernel-printk-Don-t-try-to-print-from-IRQ-NMI-region.patch diff --git a/kernel/patches-4.14.x-rt/0317-HACK-printk-drop-the-logbuf_lock-more-often.patch b/kernel/patches-4.14.x-rt/0337-HACK-printk-drop-the-logbuf_lock-more-often.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0317-HACK-printk-drop-the-logbuf_lock-more-often.patch rename to kernel/patches-4.14.x-rt/0337-HACK-printk-drop-the-logbuf_lock-more-often.patch diff --git a/kernel/patches-4.14.x-rt/0318-power-use-generic-rwsem-on-rt.patch b/kernel/patches-4.14.x-rt/0338-power-use-generic-rwsem-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0318-power-use-generic-rwsem-on-rt.patch rename to kernel/patches-4.14.x-rt/0338-power-use-generic-rwsem-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0319-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch b/kernel/patches-4.14.x-rt/0339-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0319-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch rename to kernel/patches-4.14.x-rt/0339-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch diff --git a/kernel/patches-4.14.x-rt/0320-powerpc-ps3-device-init.c-adapt-to-completions-using.patch b/kernel/patches-4.14.x-rt/0340-powerpc-ps3-device-init.c-adapt-to-completions-using.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0320-powerpc-ps3-device-init.c-adapt-to-completions-using.patch rename to kernel/patches-4.14.x-rt/0340-powerpc-ps3-device-init.c-adapt-to-completions-using.patch diff --git a/kernel/patches-4.14.x-rt/0321-arm-at91-tclib-default-to-tclib-timer-for-rt.patch b/kernel/patches-4.14.x-rt/0341-arm-at91-tclib-default-to-tclib-timer-for-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0321-arm-at91-tclib-default-to-tclib-timer-for-rt.patch rename to kernel/patches-4.14.x-rt/0341-arm-at91-tclib-default-to-tclib-timer-for-rt.patch diff --git a/kernel/patches-4.14.x-rt/0322-arm-unwind-use_raw_lock.patch b/kernel/patches-4.14.x-rt/0342-arm-unwind-use_raw_lock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0322-arm-unwind-use_raw_lock.patch rename to kernel/patches-4.14.x-rt/0342-arm-unwind-use_raw_lock.patch diff --git a/kernel/patches-4.14.x-rt/0323-ARM-enable-irq-in-translation-section-permission-fau.patch b/kernel/patches-4.14.x-rt/0343-ARM-enable-irq-in-translation-section-permission-fau.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0323-ARM-enable-irq-in-translation-section-permission-fau.patch rename to kernel/patches-4.14.x-rt/0343-ARM-enable-irq-in-translation-section-permission-fau.patch diff --git a/kernel/patches-4.14.x-rt/0324-genirq-update-irq_set_irqchip_state-documentation.patch b/kernel/patches-4.14.x-rt/0344-genirq-update-irq_set_irqchip_state-documentation.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0324-genirq-update-irq_set_irqchip_state-documentation.patch rename to kernel/patches-4.14.x-rt/0344-genirq-update-irq_set_irqchip_state-documentation.patch diff --git a/kernel/patches-4.14.x-rt/0325-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch b/kernel/patches-4.14.x-rt/0345-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch similarity index 88% rename from kernel/patches-4.14.x-rt/0325-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch rename to kernel/patches-4.14.x-rt/0345-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch index b5984a998..07b4b622b 100644 --- a/kernel/patches-4.14.x-rt/0325-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch +++ b/kernel/patches-4.14.x-rt/0345-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch @@ -22,7 +22,7 @@ Signed-off-by: Sebastian Andrzej Siewior --- a/virt/kvm/arm/arm.c +++ b/virt/kvm/arm/arm.c -@@ -648,7 +648,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v +@@ -646,7 +646,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v * involves poking the GIC, which must be done in a * non-preemptible context. */ @@ -31,7 +31,7 @@ Signed-off-by: Sebastian Andrzej Siewior kvm_pmu_flush_hwstate(vcpu); -@@ -685,7 +685,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v +@@ -683,7 +683,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v kvm_pmu_sync_hwstate(vcpu); kvm_timer_sync_hwstate(vcpu); kvm_vgic_sync_hwstate(vcpu); @@ -40,7 +40,7 @@ Signed-off-by: Sebastian Andrzej Siewior continue; } -@@ -740,7 +740,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v +@@ -738,7 +738,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_v kvm_vgic_sync_hwstate(vcpu); diff --git a/kernel/patches-4.14.x-rt/0326-arm64-xen--Make-XEN-depend-on-non-rt.patch b/kernel/patches-4.14.x-rt/0346-arm64-xen--Make-XEN-depend-on-non-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0326-arm64-xen--Make-XEN-depend-on-non-rt.patch rename to kernel/patches-4.14.x-rt/0346-arm64-xen--Make-XEN-depend-on-non-rt.patch diff --git a/kernel/patches-4.14.x-rt/0327-kgb-serial-hackaround.patch b/kernel/patches-4.14.x-rt/0347-kgb-serial-hackaround.patch similarity index 97% rename from kernel/patches-4.14.x-rt/0327-kgb-serial-hackaround.patch rename to kernel/patches-4.14.x-rt/0347-kgb-serial-hackaround.patch index 14d79d202..03e339253 100644 --- a/kernel/patches-4.14.x-rt/0327-kgb-serial-hackaround.patch +++ b/kernel/patches-4.14.x-rt/0347-kgb-serial-hackaround.patch @@ -33,7 +33,7 @@ Jason. #include #include #include -@@ -3219,6 +3220,8 @@ void serial8250_console_write(struct uar +@@ -3252,6 +3253,8 @@ void serial8250_console_write(struct uar if (port->sysrq || oops_in_progress) locked = 0; diff --git a/kernel/patches-4.14.x-rt/0328-sysfs-realtime-entry.patch b/kernel/patches-4.14.x-rt/0348-sysfs-realtime-entry.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0328-sysfs-realtime-entry.patch rename to kernel/patches-4.14.x-rt/0348-sysfs-realtime-entry.patch diff --git a/kernel/patches-4.14.x-rt/0329-power-disable-highmem-on-rt.patch b/kernel/patches-4.14.x-rt/0349-power-disable-highmem-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0329-power-disable-highmem-on-rt.patch rename to kernel/patches-4.14.x-rt/0349-power-disable-highmem-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0330-mips-disable-highmem-on-rt.patch b/kernel/patches-4.14.x-rt/0350-mips-disable-highmem-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0330-mips-disable-highmem-on-rt.patch rename to kernel/patches-4.14.x-rt/0350-mips-disable-highmem-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0331-mm-rt-kmap-atomic-scheduling.patch b/kernel/patches-4.14.x-rt/0351-mm-rt-kmap-atomic-scheduling.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0331-mm-rt-kmap-atomic-scheduling.patch rename to kernel/patches-4.14.x-rt/0351-mm-rt-kmap-atomic-scheduling.patch diff --git a/kernel/patches-4.14.x-rt/0332-mm--rt--Fix-generic-kmap_atomic-for-RT.patch b/kernel/patches-4.14.x-rt/0352-mm--rt--Fix-generic-kmap_atomic-for-RT.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0332-mm--rt--Fix-generic-kmap_atomic-for-RT.patch rename to kernel/patches-4.14.x-rt/0352-mm--rt--Fix-generic-kmap_atomic-for-RT.patch diff --git a/kernel/patches-4.14.x-rt/0333-x86-highmem-add-a-already-used-pte-check.patch b/kernel/patches-4.14.x-rt/0353-x86-highmem-add-a-already-used-pte-check.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0333-x86-highmem-add-a-already-used-pte-check.patch rename to kernel/patches-4.14.x-rt/0353-x86-highmem-add-a-already-used-pte-check.patch diff --git a/kernel/patches-4.14.x-rt/0334-arm-highmem-flush-tlb-on-unmap.patch b/kernel/patches-4.14.x-rt/0354-arm-highmem-flush-tlb-on-unmap.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0334-arm-highmem-flush-tlb-on-unmap.patch rename to kernel/patches-4.14.x-rt/0354-arm-highmem-flush-tlb-on-unmap.patch diff --git a/kernel/patches-4.14.x-rt/0335-arm-enable-highmem-for-rt.patch b/kernel/patches-4.14.x-rt/0355-arm-enable-highmem-for-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0335-arm-enable-highmem-for-rt.patch rename to kernel/patches-4.14.x-rt/0355-arm-enable-highmem-for-rt.patch diff --git a/kernel/patches-4.14.x-rt/0336-scsi-fcoe-rt-aware.patch b/kernel/patches-4.14.x-rt/0356-scsi-fcoe-rt-aware.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0336-scsi-fcoe-rt-aware.patch rename to kernel/patches-4.14.x-rt/0356-scsi-fcoe-rt-aware.patch diff --git a/kernel/patches-4.14.x-rt/0337-sas-ata-isci-dont-t-disable-interrupts-in-qc_issue-h.patch b/kernel/patches-4.14.x-rt/0357-sas-ata-isci-dont-t-disable-interrupts-in-qc_issue-h.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0337-sas-ata-isci-dont-t-disable-interrupts-in-qc_issue-h.patch rename to kernel/patches-4.14.x-rt/0357-sas-ata-isci-dont-t-disable-interrupts-in-qc_issue-h.patch diff --git a/kernel/patches-4.14.x-rt/0338-x86-crypto-reduce-preempt-disabled-regions.patch b/kernel/patches-4.14.x-rt/0358-x86-crypto-reduce-preempt-disabled-regions.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0338-x86-crypto-reduce-preempt-disabled-regions.patch rename to kernel/patches-4.14.x-rt/0358-x86-crypto-reduce-preempt-disabled-regions.patch diff --git a/kernel/patches-4.14.x-rt/0339-crypto-Reduce-preempt-disabled-regions-more-algos.patch b/kernel/patches-4.14.x-rt/0359-crypto-Reduce-preempt-disabled-regions-more-algos.patch similarity index 95% rename from kernel/patches-4.14.x-rt/0339-crypto-Reduce-preempt-disabled-regions-more-algos.patch rename to kernel/patches-4.14.x-rt/0359-crypto-Reduce-preempt-disabled-regions-more-algos.patch index db318a657..b48dac2e6 100644 --- a/kernel/patches-4.14.x-rt/0339-crypto-Reduce-preempt-disabled-regions-more-algos.patch +++ b/kernel/patches-4.14.x-rt/0359-crypto-Reduce-preempt-disabled-regions-more-algos.patch @@ -52,7 +52,7 @@ Signed-off-by: Sebastian Andrzej Siewior struct cast5_ctx *ctx = crypto_blkcipher_ctx(desc->tfm); const unsigned int bsize = CAST5_BLOCK_SIZE; unsigned int nbytes; -@@ -75,7 +75,7 @@ static int ecb_crypt(struct blkcipher_de +@@ -73,7 +73,7 @@ static int ecb_crypt(struct blkcipher_de u8 *wsrc = walk->src.virt.addr; u8 *wdst = walk->dst.virt.addr; @@ -61,7 +61,7 @@ Signed-off-by: Sebastian Andrzej Siewior /* Process multi-block batch */ if (nbytes >= bsize * CAST5_PARALLEL_BLOCKS) { -@@ -103,10 +103,9 @@ static int ecb_crypt(struct blkcipher_de +@@ -102,10 +102,9 @@ static int ecb_crypt(struct blkcipher_de } while (nbytes >= bsize); done: @@ -73,7 +73,7 @@ Signed-off-by: Sebastian Andrzej Siewior return err; } -@@ -227,7 +226,7 @@ static unsigned int __cbc_decrypt(struct +@@ -226,7 +225,7 @@ static unsigned int __cbc_decrypt(struct static int cbc_decrypt(struct blkcipher_desc *desc, struct scatterlist *dst, struct scatterlist *src, unsigned int nbytes) { @@ -82,7 +82,7 @@ Signed-off-by: Sebastian Andrzej Siewior struct blkcipher_walk walk; int err; -@@ -236,12 +235,11 @@ static int cbc_decrypt(struct blkcipher_ +@@ -235,12 +234,11 @@ static int cbc_decrypt(struct blkcipher_ desc->flags &= ~CRYPTO_TFM_REQ_MAY_SLEEP; while ((nbytes = walk.nbytes)) { @@ -97,7 +97,7 @@ Signed-off-by: Sebastian Andrzej Siewior return err; } -@@ -310,7 +308,7 @@ static unsigned int __ctr_crypt(struct b +@@ -309,7 +307,7 @@ static unsigned int __ctr_crypt(struct b static int ctr_crypt(struct blkcipher_desc *desc, struct scatterlist *dst, struct scatterlist *src, unsigned int nbytes) { @@ -106,7 +106,7 @@ Signed-off-by: Sebastian Andrzej Siewior struct blkcipher_walk walk; int err; -@@ -319,13 +317,12 @@ static int ctr_crypt(struct blkcipher_de +@@ -318,13 +316,12 @@ static int ctr_crypt(struct blkcipher_de desc->flags &= ~CRYPTO_TFM_REQ_MAY_SLEEP; while ((nbytes = walk.nbytes) >= CAST5_BLOCK_SIZE) { diff --git a/kernel/patches-4.14.x-rt/0340-crypto-limit-more-FPU-enabled-sections.patch b/kernel/patches-4.14.x-rt/0360-crypto-limit-more-FPU-enabled-sections.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0340-crypto-limit-more-FPU-enabled-sections.patch rename to kernel/patches-4.14.x-rt/0360-crypto-limit-more-FPU-enabled-sections.patch diff --git a/kernel/patches-4.14.x-rt/0341-arm-disable-NEON-in-kernel-mode.patch b/kernel/patches-4.14.x-rt/0361-arm-disable-NEON-in-kernel-mode.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0341-arm-disable-NEON-in-kernel-mode.patch rename to kernel/patches-4.14.x-rt/0361-arm-disable-NEON-in-kernel-mode.patch diff --git a/kernel/patches-4.14.x-rt/0342-dm-make-rt-aware.patch b/kernel/patches-4.14.x-rt/0362-dm-make-rt-aware.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0342-dm-make-rt-aware.patch rename to kernel/patches-4.14.x-rt/0362-dm-make-rt-aware.patch diff --git a/kernel/patches-4.14.x-rt/0343-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch b/kernel/patches-4.14.x-rt/0363-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0343-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch rename to kernel/patches-4.14.x-rt/0363-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch diff --git a/kernel/patches-4.14.x-rt/0344-cpumask-disable-offstack-on-rt.patch b/kernel/patches-4.14.x-rt/0364-cpumask-disable-offstack-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0344-cpumask-disable-offstack-on-rt.patch rename to kernel/patches-4.14.x-rt/0364-cpumask-disable-offstack-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0345-random-make-it-work-on-rt.patch b/kernel/patches-4.14.x-rt/0365-random-make-it-work-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0345-random-make-it-work-on-rt.patch rename to kernel/patches-4.14.x-rt/0365-random-make-it-work-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0346-random-avoid-preempt_disable-ed-section.patch b/kernel/patches-4.14.x-rt/0366-random-avoid-preempt_disable-ed-section.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0346-random-avoid-preempt_disable-ed-section.patch rename to kernel/patches-4.14.x-rt/0366-random-avoid-preempt_disable-ed-section.patch diff --git a/kernel/patches-4.14.x-rt/0347-char-random-don-t-print-that-the-init-is-done.patch b/kernel/patches-4.14.x-rt/0367-char-random-don-t-print-that-the-init-is-done.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0347-char-random-don-t-print-that-the-init-is-done.patch rename to kernel/patches-4.14.x-rt/0367-char-random-don-t-print-that-the-init-is-done.patch diff --git a/kernel/patches-4.14.x-rt/0348-cpu-hotplug--Implement-CPU-pinning.patch b/kernel/patches-4.14.x-rt/0368-cpu-hotplug--Implement-CPU-pinning.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0348-cpu-hotplug--Implement-CPU-pinning.patch rename to kernel/patches-4.14.x-rt/0368-cpu-hotplug--Implement-CPU-pinning.patch diff --git a/kernel/patches-4.14.x-rt/0349-hotplug-duct-tape-RT-rwlock-usage-for-non-RT.patch b/kernel/patches-4.14.x-rt/0369-hotplug-duct-tape-RT-rwlock-usage-for-non-RT.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0349-hotplug-duct-tape-RT-rwlock-usage-for-non-RT.patch rename to kernel/patches-4.14.x-rt/0369-hotplug-duct-tape-RT-rwlock-usage-for-non-RT.patch diff --git a/kernel/patches-4.14.x-rt/0350-scsi-qla2xxx-fix-bug-sleeping-function-called-from-invalid-context.patch b/kernel/patches-4.14.x-rt/0370-scsi-qla2xxx-fix-bug-sleeping-function-called-from-invalid-context.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0350-scsi-qla2xxx-fix-bug-sleeping-function-called-from-invalid-context.patch rename to kernel/patches-4.14.x-rt/0370-scsi-qla2xxx-fix-bug-sleeping-function-called-from-invalid-context.patch diff --git a/kernel/patches-4.14.x-rt/0351-upstream-net-rt-remove-preemption-disabling-in-netif_rx.patch b/kernel/patches-4.14.x-rt/0371-upstream-net-rt-remove-preemption-disabling-in-netif_rx.patch similarity index 93% rename from kernel/patches-4.14.x-rt/0351-upstream-net-rt-remove-preemption-disabling-in-netif_rx.patch rename to kernel/patches-4.14.x-rt/0371-upstream-net-rt-remove-preemption-disabling-in-netif_rx.patch index 694a72313..2338ed2db 100644 --- a/kernel/patches-4.14.x-rt/0351-upstream-net-rt-remove-preemption-disabling-in-netif_rx.patch +++ b/kernel/patches-4.14.x-rt/0371-upstream-net-rt-remove-preemption-disabling-in-netif_rx.patch @@ -37,7 +37,7 @@ Signed-off-by: Thomas Gleixner --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -4038,7 +4038,7 @@ static int netif_rx_internal(struct sk_b +@@ -4046,7 +4046,7 @@ static int netif_rx_internal(struct sk_b struct rps_dev_flow voidflow, *rflow = &voidflow; int cpu; @@ -46,7 +46,7 @@ Signed-off-by: Thomas Gleixner rcu_read_lock(); cpu = get_rps_cpu(skb->dev, skb, &rflow); -@@ -4048,14 +4048,14 @@ static int netif_rx_internal(struct sk_b +@@ -4056,14 +4056,14 @@ static int netif_rx_internal(struct sk_b ret = enqueue_to_backlog(skb, cpu, &rflow->last_qtail); rcu_read_unlock(); diff --git a/kernel/patches-4.14.x-rt/0352-net-another-local-irq-disable-alloc-atomic-headache.patch b/kernel/patches-4.14.x-rt/0372-net-another-local-irq-disable-alloc-atomic-headache.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0352-net-another-local-irq-disable-alloc-atomic-headache.patch rename to kernel/patches-4.14.x-rt/0372-net-another-local-irq-disable-alloc-atomic-headache.patch diff --git a/kernel/patches-4.14.x-rt/0353-net-core-protect-users-of-napi_alloc_cache-against-r.patch b/kernel/patches-4.14.x-rt/0373-net-core-protect-users-of-napi_alloc_cache-against-r.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0353-net-core-protect-users-of-napi_alloc_cache-against-r.patch rename to kernel/patches-4.14.x-rt/0373-net-core-protect-users-of-napi_alloc_cache-against-r.patch diff --git a/kernel/patches-4.14.x-rt/0354-net-fix-iptable-xt-write-recseq-begin-rt-fallout.patch b/kernel/patches-4.14.x-rt/0374-net-fix-iptable-xt-write-recseq-begin-rt-fallout.patch similarity index 91% rename from kernel/patches-4.14.x-rt/0354-net-fix-iptable-xt-write-recseq-begin-rt-fallout.patch rename to kernel/patches-4.14.x-rt/0374-net-fix-iptable-xt-write-recseq-begin-rt-fallout.patch index c15a395b3..beab1edb3 100644 --- a/kernel/patches-4.14.x-rt/0354-net-fix-iptable-xt-write-recseq-begin-rt-fallout.patch +++ b/kernel/patches-4.14.x-rt/0374-net-fix-iptable-xt-write-recseq-begin-rt-fallout.patch @@ -24,7 +24,7 @@ Signed-off-by: Thomas Gleixner #include /* Test a struct->invflags and a boolean for inequality */ -@@ -338,6 +339,8 @@ void xt_free_table_info(struct xt_table_ +@@ -340,6 +341,8 @@ void xt_free_table_info(struct xt_table_ */ DECLARE_PER_CPU(seqcount_t, xt_recseq); @@ -33,7 +33,7 @@ Signed-off-by: Thomas Gleixner /* xt_tee_enabled - true if x_tables needs to handle reentrancy * * Enabled if current ip(6)tables ruleset has at least one -j TEE rule. -@@ -358,6 +361,9 @@ static inline unsigned int xt_write_recs +@@ -360,6 +363,9 @@ static inline unsigned int xt_write_recs { unsigned int addend; @@ -43,7 +43,7 @@ Signed-off-by: Thomas Gleixner /* * Low order bit of sequence is set if we already * called xt_write_recseq_begin(). -@@ -388,6 +394,7 @@ static inline void xt_write_recseq_end(u +@@ -390,6 +396,7 @@ static inline void xt_write_recseq_end(u /* this is kind of a write_seqcount_end(), but addend is 0 or 1 */ smp_wmb(); __this_cpu_add(xt_recseq.sequence, addend); diff --git a/kernel/patches-4.14.x-rt/0355-net-make-devnet_rename_seq-a-mutex.patch b/kernel/patches-4.14.x-rt/0375-net-make-devnet_rename_seq-a-mutex.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0355-net-make-devnet_rename_seq-a-mutex.patch rename to kernel/patches-4.14.x-rt/0375-net-make-devnet_rename_seq-a-mutex.patch diff --git a/kernel/patches-4.14.x-rt/0356-peterz-srcu-crypto-chain.patch b/kernel/patches-4.14.x-rt/0376-peterz-srcu-crypto-chain.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0356-peterz-srcu-crypto-chain.patch rename to kernel/patches-4.14.x-rt/0376-peterz-srcu-crypto-chain.patch diff --git a/kernel/patches-4.14.x-rt/0357-lockdep-selftest-only-do-hardirq-context-test-for-raw-spinlock.patch b/kernel/patches-4.14.x-rt/0377-lockdep-selftest-only-do-hardirq-context-test-for-raw-spinlock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0357-lockdep-selftest-only-do-hardirq-context-test-for-raw-spinlock.patch rename to kernel/patches-4.14.x-rt/0377-lockdep-selftest-only-do-hardirq-context-test-for-raw-spinlock.patch diff --git a/kernel/patches-4.14.x-rt/0358-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch b/kernel/patches-4.14.x-rt/0378-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0358-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch rename to kernel/patches-4.14.x-rt/0378-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch diff --git a/kernel/patches-4.14.x-rt/0359-srcu-use-cpu_online-instead-custom-check.patch b/kernel/patches-4.14.x-rt/0379-srcu-use-cpu_online-instead-custom-check.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0359-srcu-use-cpu_online-instead-custom-check.patch rename to kernel/patches-4.14.x-rt/0379-srcu-use-cpu_online-instead-custom-check.patch diff --git a/kernel/patches-4.14.x-rt/0360-srcu-Prohibit-call_srcu-use-under-raw-spinlocks.patch b/kernel/patches-4.14.x-rt/0380-srcu-Prohibit-call_srcu-use-under-raw-spinlocks.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0360-srcu-Prohibit-call_srcu-use-under-raw-spinlocks.patch rename to kernel/patches-4.14.x-rt/0380-srcu-Prohibit-call_srcu-use-under-raw-spinlocks.patch diff --git a/kernel/patches-4.14.x-rt/0361-srcu-replace-local_irqsave-with-a-locallock.patch b/kernel/patches-4.14.x-rt/0381-srcu-replace-local_irqsave-with-a-locallock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0361-srcu-replace-local_irqsave-with-a-locallock.patch rename to kernel/patches-4.14.x-rt/0381-srcu-replace-local_irqsave-with-a-locallock.patch diff --git a/kernel/patches-4.14.x-rt/0362-rcu-disable-rcu-fast-no-hz-on-rt.patch b/kernel/patches-4.14.x-rt/0382-rcu-disable-rcu-fast-no-hz-on-rt.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0362-rcu-disable-rcu-fast-no-hz-on-rt.patch rename to kernel/patches-4.14.x-rt/0382-rcu-disable-rcu-fast-no-hz-on-rt.patch diff --git a/kernel/patches-4.14.x-rt/0363-rcu-Eliminate-softirq-processing-from-rcutree.patch b/kernel/patches-4.14.x-rt/0383-rcu-Eliminate-softirq-processing-from-rcutree.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0363-rcu-Eliminate-softirq-processing-from-rcutree.patch rename to kernel/patches-4.14.x-rt/0383-rcu-Eliminate-softirq-processing-from-rcutree.patch diff --git a/kernel/patches-4.14.x-rt/0364-rcu-make-RCU_BOOST-default-on-RT.patch b/kernel/patches-4.14.x-rt/0384-rcu-make-RCU_BOOST-default-on-RT.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0364-rcu-make-RCU_BOOST-default-on-RT.patch rename to kernel/patches-4.14.x-rt/0384-rcu-make-RCU_BOOST-default-on-RT.patch diff --git a/kernel/patches-4.14.x-rt/0365-rcu-enable-rcu_normal_after_boot-by-default-for-RT.patch b/kernel/patches-4.14.x-rt/0385-rcu-enable-rcu_normal_after_boot-by-default-for-RT.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0365-rcu-enable-rcu_normal_after_boot-by-default-for-RT.patch rename to kernel/patches-4.14.x-rt/0385-rcu-enable-rcu_normal_after_boot-by-default-for-RT.patch diff --git a/kernel/patches-4.14.x-rt/0366-preempt-lazy-support.patch b/kernel/patches-4.14.x-rt/0386-preempt-lazy-support.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0366-preempt-lazy-support.patch rename to kernel/patches-4.14.x-rt/0386-preempt-lazy-support.patch diff --git a/kernel/patches-4.14.x-rt/0367-ftrace-Fix-trace-header-alignment.patch b/kernel/patches-4.14.x-rt/0387-ftrace-Fix-trace-header-alignment.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0367-ftrace-Fix-trace-header-alignment.patch rename to kernel/patches-4.14.x-rt/0387-ftrace-Fix-trace-header-alignment.patch diff --git a/kernel/patches-4.14.x-rt/0368-x86-preempt-lazy.patch b/kernel/patches-4.14.x-rt/0388-x86-preempt-lazy.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0368-x86-preempt-lazy.patch rename to kernel/patches-4.14.x-rt/0388-x86-preempt-lazy.patch diff --git a/kernel/patches-4.14.x-rt/0369-arm-preempt-lazy-support.patch b/kernel/patches-4.14.x-rt/0389-arm-preempt-lazy-support.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0369-arm-preempt-lazy-support.patch rename to kernel/patches-4.14.x-rt/0389-arm-preempt-lazy-support.patch diff --git a/kernel/patches-4.14.x-rt/0370-powerpc-preempt-lazy-support.patch b/kernel/patches-4.14.x-rt/0390-powerpc-preempt-lazy-support.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0370-powerpc-preempt-lazy-support.patch rename to kernel/patches-4.14.x-rt/0390-powerpc-preempt-lazy-support.patch diff --git a/kernel/patches-4.14.x-rt/0371-arch-arm64-Add-lazy-preempt-support.patch b/kernel/patches-4.14.x-rt/0391-arch-arm64-Add-lazy-preempt-support.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0371-arch-arm64-Add-lazy-preempt-support.patch rename to kernel/patches-4.14.x-rt/0391-arch-arm64-Add-lazy-preempt-support.patch diff --git a/kernel/patches-4.14.x-rt/0372-leds-trigger-disable-CPU-trigger-on-RT.patch b/kernel/patches-4.14.x-rt/0392-leds-trigger-disable-CPU-trigger-on-RT.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0372-leds-trigger-disable-CPU-trigger-on-RT.patch rename to kernel/patches-4.14.x-rt/0392-leds-trigger-disable-CPU-trigger-on-RT.patch diff --git a/kernel/patches-4.14.x-rt/0373-mmci-remove-bogus-irq-save.patch b/kernel/patches-4.14.x-rt/0393-mmci-remove-bogus-irq-save.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0373-mmci-remove-bogus-irq-save.patch rename to kernel/patches-4.14.x-rt/0393-mmci-remove-bogus-irq-save.patch diff --git a/kernel/patches-4.14.x-rt/0374-cpufreq-drop-K8-s-driver-from-beeing-selected.patch b/kernel/patches-4.14.x-rt/0394-cpufreq-drop-K8-s-driver-from-beeing-selected.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0374-cpufreq-drop-K8-s-driver-from-beeing-selected.patch rename to kernel/patches-4.14.x-rt/0394-cpufreq-drop-K8-s-driver-from-beeing-selected.patch diff --git a/kernel/patches-4.14.x-rt/0375-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch b/kernel/patches-4.14.x-rt/0395-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0375-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch rename to kernel/patches-4.14.x-rt/0395-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch diff --git a/kernel/patches-4.14.x-rt/0376-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch b/kernel/patches-4.14.x-rt/0396-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0376-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch rename to kernel/patches-4.14.x-rt/0396-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch diff --git a/kernel/patches-4.14.x-rt/0377-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch b/kernel/patches-4.14.x-rt/0397-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0377-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch rename to kernel/patches-4.14.x-rt/0397-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch diff --git a/kernel/patches-4.14.x-rt/0378-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch b/kernel/patches-4.14.x-rt/0398-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0378-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch rename to kernel/patches-4.14.x-rt/0398-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch diff --git a/kernel/patches-4.14.x-rt/0379-tpm_tis-fix-stall-after-iowrite-s.patch b/kernel/patches-4.14.x-rt/0399-tpm_tis-fix-stall-after-iowrite-s.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0379-tpm_tis-fix-stall-after-iowrite-s.patch rename to kernel/patches-4.14.x-rt/0399-tpm_tis-fix-stall-after-iowrite-s.patch diff --git a/kernel/patches-4.14.x-rt/0380-pci-switchtec-Don-t-use-completion-s-wait-queue.patch b/kernel/patches-4.14.x-rt/0400-pci-switchtec-Don-t-use-completion-s-wait-queue.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0380-pci-switchtec-Don-t-use-completion-s-wait-queue.patch rename to kernel/patches-4.14.x-rt/0400-pci-switchtec-Don-t-use-completion-s-wait-queue.patch diff --git a/kernel/patches-4.14.x-rt/0381-drmradeoni915_Use_preempt_disableenable_rt()_where_recommended.patch b/kernel/patches-4.14.x-rt/0401-drmradeoni915_Use_preempt_disableenable_rt()_where_recommended.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0381-drmradeoni915_Use_preempt_disableenable_rt()_where_recommended.patch rename to kernel/patches-4.14.x-rt/0401-drmradeoni915_Use_preempt_disableenable_rt()_where_recommended.patch diff --git a/kernel/patches-4.14.x-rt/0382-drmi915_Use_local_lockunlock_irq()_in_intel_pipe_update_startend().patch b/kernel/patches-4.14.x-rt/0402-drmi915_Use_local_lockunlock_irq()_in_intel_pipe_update_startend().patch similarity index 100% rename from kernel/patches-4.14.x-rt/0382-drmi915_Use_local_lockunlock_irq()_in_intel_pipe_update_startend().patch rename to kernel/patches-4.14.x-rt/0402-drmi915_Use_local_lockunlock_irq()_in_intel_pipe_update_startend().patch diff --git a/kernel/patches-4.14.x-rt/0383-cgroups-use-simple-wait-in-css_release.patch b/kernel/patches-4.14.x-rt/0403-cgroups-use-simple-wait-in-css_release.patch similarity index 94% rename from kernel/patches-4.14.x-rt/0383-cgroups-use-simple-wait-in-css_release.patch rename to kernel/patches-4.14.x-rt/0403-cgroups-use-simple-wait-in-css_release.patch index c14ac1044..f44dd7145 100644 --- a/kernel/patches-4.14.x-rt/0383-cgroups-use-simple-wait-in-css_release.patch +++ b/kernel/patches-4.14.x-rt/0403-cgroups-use-simple-wait-in-css_release.patch @@ -52,7 +52,7 @@ Signed-off-by: Sebastian Andrzej Siewior * PI: the parent css. Placed here for cache proximity to following --- a/kernel/cgroup/cgroup.c +++ b/kernel/cgroup/cgroup.c -@@ -4498,10 +4498,10 @@ static void css_free_rcu_fn(struct rcu_h +@@ -4508,10 +4508,10 @@ static void css_free_rcu_fn(struct rcu_h queue_work(cgroup_destroy_wq, &css->destroy_work); } @@ -65,7 +65,7 @@ Signed-off-by: Sebastian Andrzej Siewior struct cgroup_subsys *ss = css->ss; struct cgroup *cgrp = css->cgroup; -@@ -4552,8 +4552,8 @@ static void css_release(struct percpu_re +@@ -4562,8 +4562,8 @@ static void css_release(struct percpu_re struct cgroup_subsys_state *css = container_of(ref, struct cgroup_subsys_state, refcnt); @@ -76,7 +76,7 @@ Signed-off-by: Sebastian Andrzej Siewior } static void init_and_link_css(struct cgroup_subsys_state *css, -@@ -5259,6 +5259,7 @@ static int __init cgroup_wq_init(void) +@@ -5269,6 +5269,7 @@ static int __init cgroup_wq_init(void) */ cgroup_destroy_wq = alloc_workqueue("cgroup_destroy", 0, 1); BUG_ON(!cgroup_destroy_wq); diff --git a/kernel/patches-4.14.x-rt/0384-cgroups-scheduling-while-atomic-in-cgroup-code.patch b/kernel/patches-4.14.x-rt/0404-cgroups-scheduling-while-atomic-in-cgroup-code.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0384-cgroups-scheduling-while-atomic-in-cgroup-code.patch rename to kernel/patches-4.14.x-rt/0404-cgroups-scheduling-while-atomic-in-cgroup-code.patch diff --git a/kernel/patches-4.14.x-rt/0385-Revert-memcontrol-Prevent-scheduling-while-atomic-in.patch b/kernel/patches-4.14.x-rt/0405-Revert-memcontrol-Prevent-scheduling-while-atomic-in.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0385-Revert-memcontrol-Prevent-scheduling-while-atomic-in.patch rename to kernel/patches-4.14.x-rt/0405-Revert-memcontrol-Prevent-scheduling-while-atomic-in.patch diff --git a/kernel/patches-4.14.x-rt/0386-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch b/kernel/patches-4.14.x-rt/0406-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0386-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch rename to kernel/patches-4.14.x-rt/0406-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch diff --git a/kernel/patches-4.14.x-rt/0387-move_sched_delayed_work_to_helper.patch b/kernel/patches-4.14.x-rt/0407-move_sched_delayed_work_to_helper.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0387-move_sched_delayed_work_to_helper.patch rename to kernel/patches-4.14.x-rt/0407-move_sched_delayed_work_to_helper.patch diff --git a/kernel/patches-4.14.x-rt/0388-Revert-rt-ntp-Move-call-to-schedule_delayed_work-to-.patch b/kernel/patches-4.14.x-rt/0408-Revert-rt-ntp-Move-call-to-schedule_delayed_work-to-.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0388-Revert-rt-ntp-Move-call-to-schedule_delayed_work-to-.patch rename to kernel/patches-4.14.x-rt/0408-Revert-rt-ntp-Move-call-to-schedule_delayed_work-to-.patch diff --git a/kernel/patches-4.14.x-rt/0389-md-disable-bcache.patch b/kernel/patches-4.14.x-rt/0409-md-disable-bcache.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0389-md-disable-bcache.patch rename to kernel/patches-4.14.x-rt/0409-md-disable-bcache.patch diff --git a/kernel/patches-4.14.x-rt/0390-apparmor-use-a-locallock-instead-preempt_disable.patch b/kernel/patches-4.14.x-rt/0410-apparmor-use-a-locallock-instead-preempt_disable.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0390-apparmor-use-a-locallock-instead-preempt_disable.patch rename to kernel/patches-4.14.x-rt/0410-apparmor-use-a-locallock-instead-preempt_disable.patch diff --git a/kernel/patches-4.14.x-rt/0391-workqueue-prevent-deadlock-stall.patch b/kernel/patches-4.14.x-rt/0411-workqueue-prevent-deadlock-stall.patch similarity index 100% rename from kernel/patches-4.14.x-rt/0391-workqueue-prevent-deadlock-stall.patch rename to kernel/patches-4.14.x-rt/0411-workqueue-prevent-deadlock-stall.patch diff --git a/kernel/patches-4.14.x-rt/0392-localversion.patch b/kernel/patches-4.14.x-rt/0412-localversion.patch similarity index 97% rename from kernel/patches-4.14.x-rt/0392-localversion.patch rename to kernel/patches-4.14.x-rt/0412-localversion.patch index ad0785c83..71c13974c 100644 --- a/kernel/patches-4.14.x-rt/0392-localversion.patch +++ b/kernel/patches-4.14.x-rt/0412-localversion.patch @@ -10,4 +10,4 @@ Signed-off-by: Thomas Gleixner --- /dev/null +++ b/localversion-rt @@ -0,0 +1 @@ -+-rt25 ++-rt27