From ef8d371caddce5e275890c468d4e718fdb4ddca0 Mon Sep 17 00:00:00 2001 From: Ben Hutchings Date: Sun, 19 Jan 2020 00:54:59 +0000 Subject: [PATCH] [rt] Update to 4.19.94-rt38 Most of this is just resolving the same conflicts Salvatore already handled locally. "x86/ioapic: Don't let setaffinity unmask threaded EOI interrupt too early" was refreshed instead of being dropped. --- debian/changelog | 6 +- ...M-at91-add-TCB-registers-definitions.patch | 8 +- ...ers-Add-a-new-driver-for-the-Atmel-A.patch | 8 +- ...ers-timer-atmel-tcb-add-clockevent-d.patch | 8 +- ...drivers-atmel-pit-make-option-silent.patch | 8 +- ...at91-Implement-clocksource-selection.patch | 8 +- ...onfigs-at91-use-new-TCB-timer-driver.patch | 8 +- .../0007-ARM-configs-at91-unselect-PIT.patch | 8 +- ...ts-Move-pending-table-allocation-to-.patch | 8 +- ...-convert-worker-lock-to-raw-spinlock.patch | 8 +- ...m-qi-simplify-CGR-allocation-freeing.patch | 8 +- ...obustify-CFS-bandwidth-timer-locking.patch | 8 +- ...012-arm-Convert-arm-boot_lock-to-raw.patch | 8 +- ...-let-setaffinity-unmask-threaded-EOI.patch | 101 ++++++++++++++++++ ...irqsave-in-cgroup_rstat_flush_locked.patch | 8 +- ...lize-cookie-hash-table-raw-spinlocks.patch | 8 +- ...mbus-include-header-for-get_irq_regs.patch | 8 +- ...de-irqflags.h-for-raw_local_irq_save.patch | 8 +- .../0018-efi-Allow-efi-runtime.patch | 8 +- ...fi-drop-task_lock-from-efi_switch_mm.patch | 8 +- ...e_layout-before-altenates-are-applie.patch | 8 +- ...-phandle-cache-outside-of-the-devtre.patch | 8 +- ...ake-quarantine_lock-a-raw_spinlock_t.patch | 8 +- ...xpedited-GP-parallelization-cleverne.patch | 8 +- ...-kmemleak_lock-to-raw-spinlock-on-RT.patch | 8 +- ...-replace-seqcount_t-with-a-seqlock_t.patch | 8 +- ...vide-a-pointer-to-the-valid-CPU-mask.patch | 8 +- ...ernel-sched-core-add-migrate_disable.patch | 8 +- ...sable-Add-export_symbol_gpl-for-__mi.patch | 8 +- ...o-not-disable-enable-clocks-in-a-row.patch | 8 +- ...B-Allow-higher-clock-rates-for-clock.patch | 8 +- ...31-timekeeping-Split-jiffies-seqlock.patch | 8 +- ...2-signal-Revert-ptrace-preempt-magic.patch | 8 +- ...et-sched-Use-msleep-instead-of-yield.patch | 8 +- ...rq-remove-BUG_ON-irqs_disabled-check.patch | 8 +- ...do-no-disable-interrupts-in-giveback.patch | 8 +- ...rovide-PREEMPT_RT_BASE-config-switch.patch | 8 +- ...sable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch | 8 +- ...abel-disable-if-stop_machine-is-used.patch | 8 +- ...config-options-which-are-not-RT-comp.patch | 8 +- .../0040-lockdep-disable-self-test.patch | 8 +- .../0041-mm-Allow-only-slub-on-RT.patch | 8 +- ...locking-Disable-spin-on-owner-for-RT.patch | 8 +- ...043-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch | 8 +- ...044-rcu-make-RCU_BOOST-default-on-RT.patch | 8 +- ...-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch | 8 +- ...46-net-core-disable-NET_RX_BUSY_POLL.patch | 8 +- ...0047-arm-disable-NEON-in-kernel-mode.patch | 8 +- ...0048-powerpc-Use-generic-rwsem-on-RT.patch | 8 +- ...ble-in-kernel-MPIC-emulation-for-PRE.patch | 8 +- .../0050-powerpc-Disable-highmem-on-RT.patch | 8 +- .../0051-mips-Disable-highmem-on-RT.patch | 8 +- ...86-Use-generic-rwsem_spinlocks-on-rt.patch | 8 +- ...ds-trigger-disable-CPU-trigger-on-RT.patch | 8 +- ...rop-K8-s-driver-from-beeing-selected.patch | 8 +- .../patches-rt/0055-md-disable-bcache.patch | 8 +- ...6-efi-Disable-runtime-services-on-RT.patch | 8 +- ...0057-printk-Add-a-printk-kill-switch.patch | 8 +- ..._early_printk-boot-param-to-help-wit.patch | 8 +- ...pt-Provide-preempt_-_-no-rt-variants.patch | 8 +- ...-migrate_disable-enable-in-different.patch | 8 +- .../0061-rt-Add-local-irq-locks.patch | 8 +- ...provide-get-put-_locked_ptr-variants.patch | 8 +- ...catterlist-Do-not-disable-irqs-on-RT.patch | 8 +- ...-x86-Delay-calling-signals-in-atomic.patch | 8 +- ...ignal-delay-calling-signals-on-32bit.patch | 8 +- ...head-Replace-bh_uptodate_lock-for-rt.patch | 8 +- ...-state-lock-and-journal-head-lock-rt.patch | 8 +- ...st_bl-Make-list-head-locking-RT-safe.patch | 8 +- ...-list_bl-fixup-bogus-lockdep-warning.patch | 8 +- .../0070-genirq-Disable-irqpoll-on-rt.patch | 8 +- ...-genirq-Force-interrupt-thread-on-RT.patch | 8 +- ...d-zone-lock-while-freeing-pages-from.patch | 8 +- ...d-zone-lock-while-freeing-pages-from.patch | 8 +- ...B-change-list_lock-to-raw_spinlock_t.patch | 8 +- ...ving-back-empty-slubs-to-IRQ-enabled.patch | 8 +- ...page_alloc-rt-friendly-per-cpu-pages.patch | 8 +- ...077-mm-swap-Convert-to-percpu-locked.patch | 8 +- ...m-perform-lru_add_drain_all-remotely.patch | 8 +- ...t-per-cpu-variables-with-preempt-dis.patch | 8 +- ...plit-page-table-locks-for-vector-pag.patch | 8 +- .../0081-mm-Enable-SLUB-for-RT.patch | 8 +- ...0082-slub-Enable-irqs-for-__GFP_WAIT.patch | 8 +- .../0083-slub-Disable-SLUB_CPU_PARTIAL.patch | 8 +- ...n-t-call-schedule_work_on-in-preempt.patch | 8 +- ...place-local_irq_disable-with-local-l.patch | 8 +- ...oc-copy-with-get_cpu_var-and-locking.patch | 10 +- ...le-preemption-__split_large_page-aft.patch | 8 +- .../0088-radix-tree-use-local-locks.patch | 8 +- ...9-timers-Prepare-for-full-preemption.patch | 8 +- ...090-x86-kvm-Require-const-tsc-for-RT.patch | 8 +- ...ec-Don-t-use-completion-s-wait-queue.patch | 8 +- .../0092-wait.h-include-atomic.h.patch | 8 +- ...mple-Simple-work-queue-implemenation.patch | 8 +- ...-a-shit-statement-in-SWORK_EVENT_PEN.patch | 8 +- ...95-completion-Use-simple-wait-queues.patch | 8 +- .../0096-fs-aio-simple-simple-work.patch | 8 +- ...voke-the-affinity-callback-via-a-wor.patch | 8 +- ...id-schedule_work-with-interrupts-dis.patch | 8 +- ...ate-hrtimer_init-hrtimer_init_sleepe.patch | 24 ++--- ...100-hrtimers-Prepare-full-preemption.patch | 20 ++-- ...s-by-default-into-the-softirq-contex.patch | 18 ++-- ...air-Make-the-hrtimers-non-hard-again.patch | 8 +- ...-schedule_work-call-to-helper-thread.patch | 10 +- ...te-change-before-hrtimer_cancel-in-d.patch | 12 +-- ...timers-Thread-posix-cpu-timers-on-rt.patch | 8 +- ...ched-Move-task_struct-cleanup-to-RCU.patch | 8 +- ...-number-of-task-migrations-per-batch.patch | 8 +- .../0108-sched-Move-mmdrop-to-RCU-on-RT.patch | 8 +- ...e-stack-kprobe-clean-up-to-__put_tas.patch | 8 +- ...state-for-tasks-blocked-on-sleeping-.patch | 8 +- ...ount-rcu_preempt_depth-on-RT-in-migh.patch | 8 +- ...-proper-LOCK_OFFSET-for-cond_resched.patch | 8 +- .../0113-sched-Disable-TTWU_QUEUE-on-RT.patch | 8 +- ...Only-wake-up-idle-workers-if-not-blo.patch | 8 +- ...ease-the-nr-of-migratory-tasks-when-.patch | 8 +- ...-hotplug-Lightweight-get-online-cpus.patch | 8 +- ...e-disabled-counter-to-tracing-output.patch | 12 +-- .../0118-lockdep-Make-it-RT-aware.patch | 8 +- ...tasklets-from-going-into-infinite-sp.patch | 8 +- ...eemption-after-reenabling-interrupts.patch | 22 ++-- ...oftirq-Disable-softirq-stacks-for-RT.patch | 10 +- .../0122-softirq-Split-softirq-locks.patch | 8 +- ...-use-local_bh_disable-in-netif_rx_ni.patch | 12 +-- ...abling-of-softirq-processing-in-irq-.patch | 8 +- ...plit-timer-softirqs-out-of-ksoftirqd.patch | 8 +- ...cal_softirq_pending-messages-if-ksof.patch | 8 +- ...cal_softirq_pending-messages-if-task.patch | 8 +- .../0128-rtmutex-trylock-is-okay-on-RT.patch | 8 +- ...-nfs-turn-rmdir_sem-into-a-semaphore.patch | 8 +- ...he-various-new-futex-race-conditions.patch | 8 +- ...on-when-a-requeued-RT-task-times-out.patch | 8 +- ...k-unlock-symetry-versus-pi_lock-and-.patch | 8 +- .../0133-pid.h-include-atomic.h.patch | 8 +- ...arm-include-definition-for-cpumask_t.patch | 8 +- ...ure-Do-NOT-include-rwlock.h-directly.patch | 8 +- ...36-rtmutex-Add-rtmutex_lock_killable.patch | 8 +- ...0137-rtmutex-Make-lock_killable-work.patch | 8 +- ...spinlock-Split-the-lock-types-header.patch | 8 +- .../0139-rtmutex-Avoid-include-hell.patch | 8 +- ...-rbtree-don-t-include-the-rcu-header.patch | 8 +- ...tex-Provide-rt_mutex_slowlock_locked.patch | 8 +- ...ockdep-less-version-of-rt_mutex-s-lo.patch | 8 +- ...tex-add-sleeping-lock-implementation.patch | 8 +- ...utex-implementation-based-on-rtmutex.patch | 8 +- ...wsem-implementation-based-on-rtmutex.patch | 8 +- ...lock-implementation-based-on-rtmutex.patch | 8 +- ...-preserve-state-like-a-sleeping-lock.patch | 8 +- .../0148-rtmutex-wire-up-RT-s-locking.patch | 8 +- ...utex-add-ww_mutex-addon-for-mutex-rt.patch | 8 +- .../0150-kconfig-Add-PREEMPT_RT_FULL.patch | 8 +- ...-fix-deadlock-in-device-mapper-block.patch | 8 +- ...utex-Flush-block-plug-on-__down_read.patch | 8 +- ...re-init-the-wait_lock-in-rt_mutex_in.patch | 8 +- ...ace-fix-ptrace-vs-tasklist_lock-race.patch | 8 +- ...mutex-annotate-sleeping-lock-context.patch | 8 +- ...sable-fallback-to-preempt_disable-in.patch | 8 +- ...eck-for-__LINUX_SPINLOCK_TYPES_H-on-.patch | 8 +- .../0158-rcu-Frob-softirq-test.patch | 8 +- ...59-rcu-Merge-RCU-bh-into-RCU-preempt.patch | 8 +- ...ke-ksoftirqd-do-RCU-quiescent-states.patch | 8 +- ...nate-softirq-processing-from-rcutree.patch | 8 +- ...-use-cpu_online-instead-custom-check.patch | 8 +- ...place-local_irqsave-with-a-locallock.patch | 8 +- ..._normal_after_boot-by-default-for-RT.patch | 8 +- ...erial-omap-Make-the-locking-RT-aware.patch | 8 +- ...al-pl011-Make-the-locking-work-on-RT.patch | 8 +- ...-explicitly-initialize-the-flags-var.patch | 8 +- ...mprove-the-serial-console-PASS_LIMIT.patch | 8 +- ...0-don-t-take-the-trylock-during-oops.patch | 8 +- ...wsem-Remove-preempt_disable-variants.patch | 10 +- ...ate_mm-by-preempt_-disable-enable-_r.patch | 8 +- ...back-explicit-INIT_HLIST_BL_HEAD-ini.patch | 8 +- ...e-preemption-on-i_dir_seq-s-write-si.patch | 8 +- ...e-of-local-lock-in-multi_cpu-decompr.patch | 8 +- ...rmal-Defer-thermal-wakups-to-threads.patch | 8 +- ...e-preemption-around-local_bh_disable.patch | 8 +- ...poll-Do-not-disable-preemption-on-RT.patch | 8 +- ...er-preempt-disable-region-which-suck.patch | 8 +- .../0179-block-mq-use-cpu_light.patch | 8 +- ...ock-mq-do-not-invoke-preempt_disable.patch | 8 +- ...k-mq-don-t-complete-requests-via-IPI.patch | 8 +- ...-Make-raid5_percpu-handling-RT-aware.patch | 8 +- .../0183-rt-Introduce-cpu_chill.patch | 12 +-- ...rtimer-Don-t-lose-state-in-cpu_chill.patch | 12 +-- ...chill-save-task-state-in-saved_state.patch | 12 +-- ...e-blk_queue_usage_counter_release-in.patch | 8 +- ...-block-Use-cpu_chill-for-retry-loops.patch | 8 +- ...cache-Use-cpu_chill-in-trylock-loops.patch | 8 +- ...t-Use-cpu_chill-instead-of-cpu_relax.patch | 14 +-- ...use-swait_queue-instead-of-waitqueue.patch | 8 +- .../0191-workqueue-Use-normal-rcu.patch | 8 +- ...cal-irq-lock-instead-of-irq-disable-.patch | 8 +- ...t-workqueue-versus-ata-piix-livelock.patch | 8 +- ...tangle-worker-accounting-from-rqlock.patch | 8 +- .../0195-debugobjects-Make-RT-aware.patch | 8 +- .../0196-seqlock-Prevent-rt-starvation.patch | 10 +- ...vc_xprt_do_enqueue-use-get_cpu_light.patch | 8 +- ...0198-net-Use-skbufhead-with-raw-lock.patch | 32 +++--- ...y-to-delegate-processing-a-softirq-t.patch | 12 +-- ...ake-qdisc-s-busylock-in-__dev_xmit_s.patch | 12 +-- ...Qdisc-use-a-seqlock-instead-seqcount.patch | 8 +- ...-missing-serialization-in-ip_send_un.patch | 10 +- .../0204-net-add-a-lock-around-icmp_sk.patch | 10 +- ...schedule_irqoff-disable-interrupts-o.patch | 16 +-- ...-push-most-work-into-softirq-context.patch | 8 +- .../0207-printk-Make-rt-aware.patch | 8 +- ...n-t-try-to-print-from-IRQ-NMI-region.patch | 8 +- ...intk-Drop-the-logbuf_lock-more-often.patch | 8 +- ...n-translation-section-permission-fau.patch | 8 +- ...-irq_set_irqchip_state-documentation.patch | 8 +- ...wngrade-preempt_disable-d-region-to-.patch | 8 +- ...-preemp_disable-in-addition-to-local.patch | 8 +- ...14-kgdb-serial-Short-term-workaround.patch | 8 +- ...-sysfs-Add-sys-kernel-realtime-entry.patch | 8 +- .../0216-mm-rt-kmap_atomic-scheduling.patch | 8 +- ...highmem-Add-a-already-used-pte-check.patch | 8 +- .../0218-arm-highmem-Flush-tlb-on-unmap.patch | 8 +- .../0219-arm-Enable-highmem-for-rt.patch | 8 +- .../0220-scsi-fcoe-Make-RT-aware.patch | 8 +- ...ypto-Reduce-preempt-disabled-regions.patch | 8 +- ...-preempt-disabled-regions-more-algos.patch | 8 +- ...ypto-limit-more-FPU-enabled-sections.patch | 8 +- ...-serialize-RT-percpu-scratch-buffer-.patch | 8 +- ...d-a-lock-instead-preempt_disable-loc.patch | 8 +- ...andom_bytes-for-RT_FULL-in-init_oops.patch | 8 +- ...ackprotector-Avoid-random-pool-on-rt.patch | 8 +- .../0228-random-Make-it-work-on-rt.patch | 8 +- ...29-cpu-hotplug-Implement-CPU-pinning.patch | 8 +- ...ed-user-tasks-to-be-awakened-to-the-.patch | 8 +- ...duct-tape-RT-rwlock-usage-for-non-RT.patch | 8 +- ...ove-preemption-disabling-in-netif_rx.patch | 14 +-- ...r-local_irq_disable-kmalloc-headache.patch | 8 +- ...-users-of-napi_alloc_cache-against-r.patch | 8 +- ...rialize-xt_write_recseq-sections-on-.patch | 8 +- ...Add-a-mutex-around-devnet_rename_seq.patch | 22 ++-- ...-Only-do-hardirq-context-test-for-ra.patch | 8 +- ...-fix-warnings-due-to-missing-PREEMPT.patch | 8 +- ...ched-Add-support-for-lazy-preemption.patch | 10 +- ...40-ftrace-Fix-trace-header-alignment.patch | 10 +- ...0241-x86-Support-for-lazy-preemption.patch | 8 +- ...-properly-check-against-preempt-mask.patch | 8 +- ...-use-proper-return-label-on-32bit-x8.patch | 8 +- ...-arm-Add-support-for-lazy-preemption.patch | 8 +- ...rpc-Add-support-for-lazy-preemption.patch} | 8 +- ...arch-arm64-Add-lazy-preempt-support.patch} | 8 +- ...-Protect-send_msg-with-a-local-lock.patch} | 8 +- ...m-Replace-bit-spinlocks-with-rtmute.patch} | 8 +- ...t-disable-preemption-in-zcomp_strea.patch} | 8 +- ...zcomp_stream_get-smp_processor_id-u.patch} | 8 +- ...1-tpm_tis-fix-stall-after-iowrite-s.patch} | 8 +- ...-deferral-of-watchdogd-wakeup-on-RT.patch} | 19 ++-- ...se-preempt_disable-enable_rt-where-.patch} | 8 +- ...l_lock-unlock_irq-in-intel_pipe_upd.patch} | 8 +- ...0255-drm-i915-disable-tracing-on-RT.patch} | 8 +- ..._I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch} | 8 +- ...oups-use-simple-wait-in-css_release.patch} | 8 +- ...ert-callback_lock-to-raw_spinlock_t.patch} | 8 +- ...a-locallock-instead-preempt_disable.patch} | 8 +- ...kqueue-Prevent-deadlock-stall-on-RT.patch} | 8 +- ...-tasks-to-cache-one-sigqueue-struct.patch} | 10 +- ...262-Add-localversion-for-RT-release.patch} | 8 +- ...ommu-Use-a-locallock-instead-local_.patch} | 8 +- ... => 0264-powerpc-reshuffle-TIF-bits.patch} | 8 +- ...Convert-show_lock-to-raw_spinlock_t.patch} | 8 +- ...sable-interrupts-independently-of-t.patch} | 8 +- ...Fix-a-lockup-in-wait_for_completion.patch} | 8 +- ...-kthread-add-a-global-worker-thread.patch} | 10 +- ...oke-the-affinity-callback-via-a-wor.patch} | 8 +- ...sing-work_struct-in-irq_set_affinit.patch} | 8 +- ...arm-imx6-cpuidle-Use-raw_spinlock_t.patch} | 8 +- ...o-change-rcu_normal_after_boot-on-R.patch} | 8 +- ...htec-fix-stream_open.cocci-warnings.patch} | 8 +- ...Drop-a-preempt_disable_rt-statement.patch} | 8 +- ...otification-of-canceling-timers-on-.patch} | 22 ++-- ...re-lock-unlock-symetry-versus-pi_lo.patch} | 8 +- ...bug-on-when-a-requeued-RT-task-time.patch} | 8 +- ...ndle-the-various-new-futex-race-con.patch} | 8 +- ...around-migrate_disable-enable-in-di.patch} | 8 +- ...Make-the-futex_hash_bucket-lock-raw.patch} | 8 +- ...utex-Delay-deallocation-of-pi_state.patch} | 8 +- ...isable-preemption-in-zswap_frontswa.patch} | 8 +- ...revert-aio.patch => 0283-revert-aio.patch} | 8 +- ...h => 0284-fs-aio-simple-simple-work.patch} | 8 +- ...hermal.patch => 0285-revert-thermal.patch} | 8 +- ...mal-Defer-thermal-wakups-to-threads.patch} | 8 +- ...rt-block.patch => 0287-revert-block.patch} | 8 +- ...-blk_queue_usage_counter_release-in.patch} | 8 +- ...work.patch => 0289-workqueue-rework.patch} | 12 +-- ...h => 0290-Linux-4.19.94-rt38-REBASE.patch} | 12 +-- debian/patches-rt/series | 93 ++++++++-------- 291 files changed, 1406 insertions(+), 1295 deletions(-) create mode 100644 debian/patches-rt/0013-x86-ioapic-Don-t-let-setaffinity-unmask-threaded-EOI.patch rename debian/patches-rt/{0246-powerpc-Add-support-for-lazy-preemption.patch => 0245-powerpc-Add-support-for-lazy-preemption.patch} (97%) rename debian/patches-rt/{0247-arch-arm64-Add-lazy-preempt-support.patch => 0246-arch-arm64-Add-lazy-preempt-support.patch} (96%) rename debian/patches-rt/{0248-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch => 0247-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch} (93%) rename debian/patches-rt/{0249-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch => 0248-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch} (94%) rename debian/patches-rt/{0250-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch => 0249-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch} (95%) rename debian/patches-rt/{0251-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch => 0250-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch} (88%) rename debian/patches-rt/{0252-tpm_tis-fix-stall-after-iowrite-s.patch => 0251-tpm_tis-fix-stall-after-iowrite-s.patch} (94%) rename debian/patches-rt/{0253-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch => 0252-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch} (80%) rename debian/patches-rt/{0254-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch => 0253-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch} (92%) rename debian/patches-rt/{0255-drm-i915-Use-local_lock-unlock_irq-in-intel_pipe_upd.patch => 0254-drm-i915-Use-local_lock-unlock_irq-in-intel_pipe_upd.patch} (97%) rename debian/patches-rt/{0256-drm-i915-disable-tracing-on-RT.patch => 0255-drm-i915-disable-tracing-on-RT.patch} (90%) rename debian/patches-rt/{0257-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch => 0256-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch} (86%) rename debian/patches-rt/{0258-cgroups-use-simple-wait-in-css_release.patch => 0257-cgroups-use-simple-wait-in-css_release.patch} (95%) rename debian/patches-rt/{0259-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch => 0258-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch} (98%) rename debian/patches-rt/{0260-apparmor-use-a-locallock-instead-preempt_disable.patch => 0259-apparmor-use-a-locallock-instead-preempt_disable.patch} (93%) rename debian/patches-rt/{0261-workqueue-Prevent-deadlock-stall-on-RT.patch => 0260-workqueue-Prevent-deadlock-stall-on-RT.patch} (97%) rename debian/patches-rt/{0262-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch => 0261-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch} (96%) rename debian/patches-rt/{0263-Add-localversion-for-RT-release.patch => 0262-Add-localversion-for-RT-release.patch} (73%) rename debian/patches-rt/{0264-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch => 0263-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch} (94%) rename debian/patches-rt/{0265-powerpc-reshuffle-TIF-bits.patch => 0264-powerpc-reshuffle-TIF-bits.patch} (97%) rename debian/patches-rt/{0266-tty-sysrq-Convert-show_lock-to-raw_spinlock_t.patch => 0265-tty-sysrq-Convert-show_lock-to-raw_spinlock_t.patch} (92%) rename debian/patches-rt/{0267-drm-i915-Don-t-disable-interrupts-independently-of-t.patch => 0266-drm-i915-Don-t-disable-interrupts-independently-of-t.patch} (91%) rename debian/patches-rt/{0268-sched-completion-Fix-a-lockup-in-wait_for_completion.patch => 0267-sched-completion-Fix-a-lockup-in-wait_for_completion.patch} (93%) rename debian/patches-rt/{0269-kthread-add-a-global-worker-thread.patch => 0268-kthread-add-a-global-worker-thread.patch} (96%) rename debian/patches-rt/{0270-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch => 0269-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch} (94%) rename debian/patches-rt/{0271-genirq-Handle-missing-work_struct-in-irq_set_affinit.patch => 0270-genirq-Handle-missing-work_struct-in-irq_set_affinit.patch} (88%) rename debian/patches-rt/{0272-arm-imx6-cpuidle-Use-raw_spinlock_t.patch => 0271-arm-imx6-cpuidle-Use-raw_spinlock_t.patch} (89%) rename debian/patches-rt/{0273-rcu-Don-t-allow-to-change-rcu_normal_after_boot-on-R.patch => 0272-rcu-Don-t-allow-to-change-rcu_normal_after_boot-on-R.patch} (86%) rename debian/patches-rt/{0274-pci-switchtec-fix-stream_open.cocci-warnings.patch => 0273-pci-switchtec-fix-stream_open.cocci-warnings.patch} (89%) rename debian/patches-rt/{0275-sched-core-Drop-a-preempt_disable_rt-statement.patch => 0274-sched-core-Drop-a-preempt_disable_rt-statement.patch} (88%) rename debian/patches-rt/{0276-timers-Redo-the-notification-of-canceling-timers-on-.patch => 0275-timers-Redo-the-notification-of-canceling-timers-on-.patch} (97%) rename debian/patches-rt/{0277-Revert-futex-Ensure-lock-unlock-symetry-versus-pi_lo.patch => 0276-Revert-futex-Ensure-lock-unlock-symetry-versus-pi_lo.patch} (85%) rename debian/patches-rt/{0278-Revert-futex-Fix-bug-on-when-a-requeued-RT-task-time.patch => 0277-Revert-futex-Fix-bug-on-when-a-requeued-RT-task-time.patch} (94%) rename debian/patches-rt/{0279-Revert-rtmutex-Handle-the-various-new-futex-race-con.patch => 0278-Revert-rtmutex-Handle-the-various-new-futex-race-con.patch} (98%) rename debian/patches-rt/{0280-Revert-futex-workaround-migrate_disable-enable-in-di.patch => 0279-Revert-futex-workaround-migrate_disable-enable-in-di.patch} (93%) rename debian/patches-rt/{0281-futex-Make-the-futex_hash_bucket-lock-raw.patch => 0280-futex-Make-the-futex_hash_bucket-lock-raw.patch} (98%) rename debian/patches-rt/{0282-futex-Delay-deallocation-of-pi_state.patch => 0281-futex-Delay-deallocation-of-pi_state.patch} (96%) rename debian/patches-rt/{0283-mm-zswap-Do-not-disable-preemption-in-zswap_frontswa.patch => 0282-mm-zswap-Do-not-disable-preemption-in-zswap_frontswa.patch} (96%) rename debian/patches-rt/{0284-revert-aio.patch => 0283-revert-aio.patch} (93%) rename debian/patches-rt/{0285-fs-aio-simple-simple-work.patch => 0284-fs-aio-simple-simple-work.patch} (94%) rename debian/patches-rt/{0286-revert-thermal.patch => 0285-revert-thermal.patch} (95%) rename debian/patches-rt/{0287-thermal-Defer-thermal-wakups-to-threads.patch => 0286-thermal-Defer-thermal-wakups-to-threads.patch} (94%) rename debian/patches-rt/{0288-revert-block.patch => 0287-revert-block.patch} (94%) rename debian/patches-rt/{0289-block-blk-mq-move-blk_queue_usage_counter_release-in.patch => 0288-block-blk-mq-move-blk_queue_usage_counter_release-in.patch} (96%) rename debian/patches-rt/{0290-workqueue-rework.patch => 0289-workqueue-rework.patch} (99%) rename debian/patches-rt/{0291-Linux-4.19.90-rt35-REBASE.patch => 0290-Linux-4.19.94-rt38-REBASE.patch} (62%) diff --git a/debian/changelog b/debian/changelog index e5d9c3f75..98b2665ef 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1234,7 +1234,6 @@ linux (4.19.97-1) UNRELEASED; urgency=medium (Context changes in 4.19.88) * [rt] Update to 4.19.90-rt35: - Update "workqueue: rework" for workqueue changes in 4.19.90 - * [rt] Drop 0013-x86-ioapic-Don-t-let-setaffinity-unmask-threaded-EOI.patch * [rt] Drop 0245-Revert-arm64-preempt-Fix-big-endian-when-checking-pr.patch * Refresh 0013-scsi-hisi_sas-Relocate-some-codes-to-avoid-an-unused.patch for context changes in 4.19.93. @@ -1244,6 +1243,11 @@ linux (4.19.97-1) UNRELEASED; urgency=medium * [rt] Refresh 0199-net-move-xmit_recursion-to-per-task-variable-on-RT.patch (Context changes in 4.19.97) + [ Ben Hutchings ] + * [rt] Update to 4.19.94-rt38: + - Refresh "x86/ioapic: Don't let setaffinity unmask threaded EOI interrupt + too early" which was partly included in 4.19.92 + -- Salvatore Bonaccorso Sat, 14 Dec 2019 22:00:16 +0100 linux (4.19.87-1) buster; urgency=medium diff --git a/debian/patches-rt/0001-ARM-at91-add-TCB-registers-definitions.patch b/debian/patches-rt/0001-ARM-at91-add-TCB-registers-definitions.patch index d3198b053..4206e8cae 100644 --- a/debian/patches-rt/0001-ARM-at91-add-TCB-registers-definitions.patch +++ b/debian/patches-rt/0001-ARM-at91-add-TCB-registers-definitions.patch @@ -1,8 +1,8 @@ -From e8333eb8d7a441a6274831115543689d82cdeeb2 Mon Sep 17 00:00:00 2001 +From b08620f77bc1fbffba40e033f492a241bc2c62d6 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:18 +0200 -Subject: [PATCH 001/291] ARM: at91: add TCB registers definitions -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 001/290] ARM: at91: add TCB registers definitions +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Add registers and bits definitions for the timer counter blocks found on Atmel ARM SoCs. @@ -206,5 +206,5 @@ index 000000000000..657e234b1483 + +#endif /* __SOC_ATMEL_TCB_H */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0002-clocksource-drivers-Add-a-new-driver-for-the-Atmel-A.patch b/debian/patches-rt/0002-clocksource-drivers-Add-a-new-driver-for-the-Atmel-A.patch index 9c671ab7f..f0556e179 100644 --- a/debian/patches-rt/0002-clocksource-drivers-Add-a-new-driver-for-the-Atmel-A.patch +++ b/debian/patches-rt/0002-clocksource-drivers-Add-a-new-driver-for-the-Atmel-A.patch @@ -1,9 +1,9 @@ -From 3282d066d1ad7d2dc0db6d17a4dc37e8e64137ed Mon Sep 17 00:00:00 2001 +From bc9f46c6ecb0be8a5a14b31b032740f3a1d74761 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:19 +0200 -Subject: [PATCH 002/291] clocksource/drivers: Add a new driver for the Atmel +Subject: [PATCH 002/290] clocksource/drivers: Add a new driver for the Atmel ARM TC blocks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Add a driver for the Atmel Timer Counter Blocks. This driver provides a clocksource and two clockevent devices. @@ -481,5 +481,5 @@ index 000000000000..21fbe430f91b +} +TIMER_OF_DECLARE(atmel_tcb_clksrc, "atmel,tcb-timer", tcb_clksrc_init); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0003-clocksource-drivers-timer-atmel-tcb-add-clockevent-d.patch b/debian/patches-rt/0003-clocksource-drivers-timer-atmel-tcb-add-clockevent-d.patch index 2adb61ceb..be41e3f45 100644 --- a/debian/patches-rt/0003-clocksource-drivers-timer-atmel-tcb-add-clockevent-d.patch +++ b/debian/patches-rt/0003-clocksource-drivers-timer-atmel-tcb-add-clockevent-d.patch @@ -1,9 +1,9 @@ -From 058ed7cb47d8435f29855545f477c74bed325167 Mon Sep 17 00:00:00 2001 +From bfee0cb2aad9baa607add364cd5a6c05d6782641 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:20 +0200 -Subject: [PATCH 003/291] clocksource/drivers: timer-atmel-tcb: add clockevent +Subject: [PATCH 003/290] clocksource/drivers: timer-atmel-tcb: add clockevent device on separate channel -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Add an other clockevent device that uses a separate TCB channel when available. @@ -267,5 +267,5 @@ index 21fbe430f91b..63ce3b69338a 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0004-clocksource-drivers-atmel-pit-make-option-silent.patch b/debian/patches-rt/0004-clocksource-drivers-atmel-pit-make-option-silent.patch index f4edfcc45..3f6100635 100644 --- a/debian/patches-rt/0004-clocksource-drivers-atmel-pit-make-option-silent.patch +++ b/debian/patches-rt/0004-clocksource-drivers-atmel-pit-make-option-silent.patch @@ -1,8 +1,8 @@ -From b6725354b63d71ad4f563d311bd85ffc8722a794 Mon Sep 17 00:00:00 2001 +From 00029cfcfece0c114d6428fcb7e52545a88cf2c1 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:21 +0200 -Subject: [PATCH 004/291] clocksource/drivers: atmel-pit: make option silent -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 004/290] clocksource/drivers: atmel-pit: make option silent +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz To conform with the other option, make the ATMEL_PIT option silent so it can be selected from the platform @@ -32,5 +32,5 @@ index 0ab22e7037f4..34b07047b91f 100644 config ATMEL_ST bool "Atmel ST timer support" if COMPILE_TEST -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0005-ARM-at91-Implement-clocksource-selection.patch b/debian/patches-rt/0005-ARM-at91-Implement-clocksource-selection.patch index 3967032d0..b35117d9b 100644 --- a/debian/patches-rt/0005-ARM-at91-Implement-clocksource-selection.patch +++ b/debian/patches-rt/0005-ARM-at91-Implement-clocksource-selection.patch @@ -1,8 +1,8 @@ -From b8ea7caf670921eb26dece3525a54fc85932e5a1 Mon Sep 17 00:00:00 2001 +From d6f57849d568f7bad4a562fc3466f773384c5af7 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:22 +0200 -Subject: [PATCH 005/291] ARM: at91: Implement clocksource selection -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 005/290] ARM: at91: Implement clocksource selection +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Allow selecting and unselecting the PIT clocksource driver so it doesn't have to be compile when unused. @@ -51,5 +51,5 @@ index 903f23c309df..fa493a86e2bb 100644 bool -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0006-ARM-configs-at91-use-new-TCB-timer-driver.patch b/debian/patches-rt/0006-ARM-configs-at91-use-new-TCB-timer-driver.patch index 9d52ee39c..3dcc1d582 100644 --- a/debian/patches-rt/0006-ARM-configs-at91-use-new-TCB-timer-driver.patch +++ b/debian/patches-rt/0006-ARM-configs-at91-use-new-TCB-timer-driver.patch @@ -1,8 +1,8 @@ -From ed2b6457a9a986edeb1a27688e2eaacca4292766 Mon Sep 17 00:00:00 2001 +From 218e2c7678889a89128237d82a61bf1f23d9cc77 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:23 +0200 -Subject: [PATCH 006/291] ARM: configs: at91: use new TCB timer driver -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 006/290] ARM: configs: at91: use new TCB timer driver +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Unselecting ATMEL_TCLIB switches the TCB timer driver from tcb_clksrc to timer-atmel-tcb. @@ -39,5 +39,5 @@ index 2080025556b5..f2bbc6339ca6 100644 CONFIG_EEPROM_AT24=y CONFIG_SCSI=y -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0007-ARM-configs-at91-unselect-PIT.patch b/debian/patches-rt/0007-ARM-configs-at91-unselect-PIT.patch index 58ee14dab..1abc8cd1a 100644 --- a/debian/patches-rt/0007-ARM-configs-at91-unselect-PIT.patch +++ b/debian/patches-rt/0007-ARM-configs-at91-unselect-PIT.patch @@ -1,8 +1,8 @@ -From 10433e91824db9f89c3f320c5fc3d2bfb5edd9b3 Mon Sep 17 00:00:00 2001 +From 4773aa4fa5a18ca0b25a456fc06be41464775211 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:24 +0200 -Subject: [PATCH 007/291] ARM: configs: at91: unselect PIT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 007/290] ARM: configs: at91: unselect PIT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The PIT is not required anymore to successfully boot and may actually harm in case preempt-rt is used because the PIT interrupt is shared. @@ -40,5 +40,5 @@ index f2bbc6339ca6..be92871ab155 100644 CONFIG_UACCESS_WITH_MEMCPY=y CONFIG_ZBOOT_ROM_TEXT=0x0 -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0008-irqchip-gic-v3-its-Move-pending-table-allocation-to-.patch b/debian/patches-rt/0008-irqchip-gic-v3-its-Move-pending-table-allocation-to-.patch index 6df8d405d..9dbf3a7fb 100644 --- a/debian/patches-rt/0008-irqchip-gic-v3-its-Move-pending-table-allocation-to-.patch +++ b/debian/patches-rt/0008-irqchip-gic-v3-its-Move-pending-table-allocation-to-.patch @@ -1,9 +1,9 @@ -From dcd95836a0ad848d44ebff6c196e968f550bb0de Mon Sep 17 00:00:00 2001 +From 5322b48ab45dcd7e238e7a92c17746b904092021 Mon Sep 17 00:00:00 2001 From: Marc Zyngier Date: Fri, 27 Jul 2018 13:38:54 +0100 -Subject: [PATCH 008/291] irqchip/gic-v3-its: Move pending table allocation to +Subject: [PATCH 008/290] irqchip/gic-v3-its: Move pending table allocation to init time -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Signed-off-by: Marc Zyngier Signed-off-by: Sebastian Andrzej Siewior @@ -167,5 +167,5 @@ index 3188c0bef3e7..5b57501fd2e7 100644 struct page *prop_page; u64 flags; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0009-kthread-convert-worker-lock-to-raw-spinlock.patch b/debian/patches-rt/0009-kthread-convert-worker-lock-to-raw-spinlock.patch index 4b699fedf..97995ac58 100644 --- a/debian/patches-rt/0009-kthread-convert-worker-lock-to-raw-spinlock.patch +++ b/debian/patches-rt/0009-kthread-convert-worker-lock-to-raw-spinlock.patch @@ -1,8 +1,8 @@ -From 7cce8605f6a1ecb97f664ca64726f58e75c4d747 Mon Sep 17 00:00:00 2001 +From e2fc3df409c6764dc2c394061aae000a86437a7c Mon Sep 17 00:00:00 2001 From: Julia Cartwright Date: Fri, 28 Sep 2018 21:03:51 +0000 -Subject: [PATCH 009/291] kthread: convert worker lock to raw spinlock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 009/290] kthread: convert worker lock to raw spinlock +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In order to enable the queuing of kthread work items from hardirq context even when PREEMPT_RT_FULL is enabled, convert the worker @@ -199,5 +199,5 @@ index 087d18d771b5..5641b55783a6 100644 return ret; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0010-crypto-caam-qi-simplify-CGR-allocation-freeing.patch b/debian/patches-rt/0010-crypto-caam-qi-simplify-CGR-allocation-freeing.patch index f799d47d5..002204ded 100644 --- a/debian/patches-rt/0010-crypto-caam-qi-simplify-CGR-allocation-freeing.patch +++ b/debian/patches-rt/0010-crypto-caam-qi-simplify-CGR-allocation-freeing.patch @@ -1,11 +1,11 @@ -From 9bdc2dc2ca3892849462973eaff1e207b26bf025 Mon Sep 17 00:00:00 2001 +From ba865f26206ec12d7d6a140c2a9f6871c7be3d5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Horia=20Geant=C4=83?= Date: Mon, 8 Oct 2018 14:09:37 +0300 -Subject: [PATCH 010/291] crypto: caam/qi - simplify CGR allocation, freeing +Subject: [PATCH 010/290] crypto: caam/qi - simplify CGR allocation, freeing MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [Upstream commit 29e83c757006fd751966bdc53392bb22d74179c6] @@ -136,5 +136,5 @@ index 357b69f57072..b6c8acc30853 100644 /** * qi_cache_alloc - Allocate buffers from CAAM-QI cache -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0011-sched-fair-Robustify-CFS-bandwidth-timer-locking.patch b/debian/patches-rt/0011-sched-fair-Robustify-CFS-bandwidth-timer-locking.patch index 7f4fb918f..6ef84bf95 100644 --- a/debian/patches-rt/0011-sched-fair-Robustify-CFS-bandwidth-timer-locking.patch +++ b/debian/patches-rt/0011-sched-fair-Robustify-CFS-bandwidth-timer-locking.patch @@ -1,8 +1,8 @@ -From 9fb91a865bf531999865a16e329875975a0bbdea Mon Sep 17 00:00:00 2001 +From 147b5bb1f8cd2975bdfa1368ba792f28df1ab8a6 Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Mon, 7 Jan 2019 13:52:31 +0100 -Subject: [PATCH 011/291] sched/fair: Robustify CFS-bandwidth timer locking -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 011/290] sched/fair: Robustify CFS-bandwidth timer locking +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Traditionally hrtimer callbacks were run with IRQs disabled, but with the introduction of HRTIMER_MODE_SOFT it is possible they run from @@ -144,5 +144,5 @@ index f0abb8fe0ae9..b5e03fc56d65 100644 return idle ? HRTIMER_NORESTART : HRTIMER_RESTART; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0012-arm-Convert-arm-boot_lock-to-raw.patch b/debian/patches-rt/0012-arm-Convert-arm-boot_lock-to-raw.patch index 3304b3872..2da3751a9 100644 --- a/debian/patches-rt/0012-arm-Convert-arm-boot_lock-to-raw.patch +++ b/debian/patches-rt/0012-arm-Convert-arm-boot_lock-to-raw.patch @@ -1,8 +1,8 @@ -From 296268c33d7b68c7aed7899eddcb0ac314bebdf8 Mon Sep 17 00:00:00 2001 +From fd46cb23c2b2f9fe3514d2e773f289e0e2f46d73 Mon Sep 17 00:00:00 2001 From: Frank Rowand Date: Mon, 19 Sep 2011 14:51:14 -0700 -Subject: [PATCH 012/291] arm: Convert arm boot_lock to raw -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 012/290] arm: Convert arm boot_lock to raw +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The arm boot_lock is used by the secondary processor startup code. The locking task is the idle thread, which has idle->sched_class == &idle_sched_class. @@ -428,5 +428,5 @@ index c2366510187a..6b60f582b738 100644 return pen_release != -1 ? -ENOSYS : 0; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0013-x86-ioapic-Don-t-let-setaffinity-unmask-threaded-EOI.patch b/debian/patches-rt/0013-x86-ioapic-Don-t-let-setaffinity-unmask-threaded-EOI.patch new file mode 100644 index 000000000..4db56668c --- /dev/null +++ b/debian/patches-rt/0013-x86-ioapic-Don-t-let-setaffinity-unmask-threaded-EOI.patch @@ -0,0 +1,101 @@ +From 2ab61b3cb2b66bd2515c8531da37be20f5cc14a9 Mon Sep 17 00:00:00 2001 +From: Thomas Gleixner +Date: Tue, 17 Jul 2018 18:25:31 +0200 +Subject: [PATCH 013/290] x86/ioapic: Don't let setaffinity unmask threaded EOI + interrupt too early +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz + +There is an issue with threaded interrupts which are marked ONESHOT +and using the fasteoi handler. + + if (IS_ONESHOT()) + mask_irq(); + + .... + .... + + cond_unmask_eoi_irq() + chip->irq_eoi(); + +So if setaffinity is pending then the interrupt will be moved and then +unmasked, which is wrong as it should be kept masked up to the point where +the threaded handler finished. It's not a real problem, the interrupt will +just be able to fire before the threaded handler has finished, though the irq +masked state will be wrong for a bit. + +The patch below should cure the issue. It also renames the horribly +misnomed functions so it becomes clear what they are supposed to do. + +Signed-off-by: Thomas Gleixner +[bigeasy: add the body of the patch, use the same functions in both + ifdef paths (spotted by Andy Shevchenko)] +Signed-off-by: Sebastian Andrzej Siewior +--- + arch/x86/kernel/apic/io_apic.c | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c +index fa3b85b222e3..1bdad61a3ef7 100644 +--- a/arch/x86/kernel/apic/io_apic.c ++++ b/arch/x86/kernel/apic/io_apic.c +@@ -1722,7 +1722,7 @@ static bool io_apic_level_ack_pending(struct mp_chip_data *data) + return false; + } + +-static inline bool ioapic_irqd_mask(struct irq_data *data) ++static inline bool ioapic_prepare_move(struct irq_data *data) + { + /* If we are moving the IRQ we need to mask it */ + if (unlikely(irqd_is_setaffinity_pending(data))) { +@@ -1733,9 +1733,9 @@ static inline bool ioapic_irqd_mask(struct irq_data *data) + return false; + } + +-static inline void ioapic_irqd_unmask(struct irq_data *data, bool masked) ++static inline void ioapic_finish_move(struct irq_data *data, bool moveit) + { +- if (unlikely(masked)) { ++ if (unlikely(moveit)) { + /* Only migrate the irq if the ack has been received. + * + * On rare occasions the broadcast level triggered ack gets +@@ -1770,11 +1770,11 @@ static inline void ioapic_irqd_unmask(struct irq_data *data, bool masked) + } + } + #else +-static inline bool ioapic_irqd_mask(struct irq_data *data) ++static inline bool ioapic_prepare_move(struct irq_data *data) + { + return false; + } +-static inline void ioapic_irqd_unmask(struct irq_data *data, bool masked) ++static inline void ioapic_finish_move(struct irq_data *data, bool moveit) + { + } + #endif +@@ -1783,11 +1783,11 @@ static void ioapic_ack_level(struct irq_data *irq_data) + { + struct irq_cfg *cfg = irqd_cfg(irq_data); + unsigned long v; +- bool masked; ++ bool moveit; + int i; + + irq_complete_move(cfg); +- masked = ioapic_irqd_mask(irq_data); ++ moveit = ioapic_prepare_move(irq_data); + + /* + * It appears there is an erratum which affects at least version 0x11 +@@ -1842,7 +1842,7 @@ static void ioapic_ack_level(struct irq_data *irq_data) + eoi_ioapic_pin(cfg->vector, irq_data->chip_data); + } + +- ioapic_irqd_unmask(irq_data, masked); ++ ioapic_finish_move(irq_data, moveit); + } + + static void ioapic_ir_ack_level(struct irq_data *irq_data) +-- +2.24.1 + diff --git a/debian/patches-rt/0014-cgroup-use-irqsave-in-cgroup_rstat_flush_locked.patch b/debian/patches-rt/0014-cgroup-use-irqsave-in-cgroup_rstat_flush_locked.patch index f1312cfca..5654b34a4 100644 --- a/debian/patches-rt/0014-cgroup-use-irqsave-in-cgroup_rstat_flush_locked.patch +++ b/debian/patches-rt/0014-cgroup-use-irqsave-in-cgroup_rstat_flush_locked.patch @@ -1,8 +1,8 @@ -From a45ef2ccd96d3e814260b46a053f0391aff210be Mon Sep 17 00:00:00 2001 +From 56933f479ee6e504e58236259c2fdacd09bcdeb1 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 3 Jul 2018 18:19:48 +0200 -Subject: [PATCH 014/291] cgroup: use irqsave in cgroup_rstat_flush_locked() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 014/290] cgroup: use irqsave in cgroup_rstat_flush_locked() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz All callers of cgroup_rstat_flush_locked() acquire cgroup_rstat_lock either with spin_lock_irq() or spin_lock_irqsave(). @@ -46,5 +46,5 @@ index bb95a35e8c2d..3266a9781b4e 100644 /* if @may_sleep, play nice and yield if necessary */ if (may_sleep && (need_resched() || -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0015-fscache-initialize-cookie-hash-table-raw-spinlocks.patch b/debian/patches-rt/0015-fscache-initialize-cookie-hash-table-raw-spinlocks.patch index fbb5f46e2..cea1a1723 100644 --- a/debian/patches-rt/0015-fscache-initialize-cookie-hash-table-raw-spinlocks.patch +++ b/debian/patches-rt/0015-fscache-initialize-cookie-hash-table-raw-spinlocks.patch @@ -1,8 +1,8 @@ -From 5f84d926adb23419c2abae8671cd701a192b04b6 Mon Sep 17 00:00:00 2001 +From 11a5fe1b2f98fc37eac8919e99282c1b91f5bb05 Mon Sep 17 00:00:00 2001 From: Clark Williams Date: Tue, 3 Jul 2018 13:34:30 -0500 -Subject: [PATCH 015/291] fscache: initialize cookie hash table raw spinlocks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 015/290] fscache: initialize cookie hash table raw spinlocks +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The fscache cookie mechanism uses a hash table of hlist_bl_head structures. The PREEMPT_RT patcheset adds a raw spinlock to this structure and so on PREEMPT_RT @@ -60,5 +60,5 @@ index 84b90a79d75a..87a9330eafa2 100644 /** * fscache_register_netfs - Register a filesystem as desiring caching services -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0016-Drivers-hv-vmbus-include-header-for-get_irq_regs.patch b/debian/patches-rt/0016-Drivers-hv-vmbus-include-header-for-get_irq_regs.patch index f82a83d78..c9078f6cd 100644 --- a/debian/patches-rt/0016-Drivers-hv-vmbus-include-header-for-get_irq_regs.patch +++ b/debian/patches-rt/0016-Drivers-hv-vmbus-include-header-for-get_irq_regs.patch @@ -1,11 +1,11 @@ -From a94e19a514ac423d3e6b24adcf21a1a0c206206e Mon Sep 17 00:00:00 2001 +From 42e5ab6924b31025c97846b749ebe188ee4b5fdd Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 29 Aug 2018 21:59:04 +0200 -Subject: [PATCH 016/291] Drivers: hv: vmbus: include header for get_irq_regs() +Subject: [PATCH 016/290] Drivers: hv: vmbus: include header for get_irq_regs() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On !RT the header file get_irq_regs() gets pulled in via other header files. On RT it does not and the build fails: @@ -36,5 +36,5 @@ index 87d3d7da78f8..1d2d8a4b837d 100644 #include "hv_trace.h" -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0017-percpu-include-irqflags.h-for-raw_local_irq_save.patch b/debian/patches-rt/0017-percpu-include-irqflags.h-for-raw_local_irq_save.patch index 6a649e370..3cb5b2836 100644 --- a/debian/patches-rt/0017-percpu-include-irqflags.h-for-raw_local_irq_save.patch +++ b/debian/patches-rt/0017-percpu-include-irqflags.h-for-raw_local_irq_save.patch @@ -1,8 +1,8 @@ -From 75c78f86e37ea3d499e1da94c0f5939815a1a05b Mon Sep 17 00:00:00 2001 +From bc0b4a3ef268cec82163752ddaa730d8ec193d7c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 11 Oct 2018 16:39:59 +0200 -Subject: [PATCH 017/291] percpu: include irqflags.h for raw_local_irq_save() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 017/290] percpu: include irqflags.h for raw_local_irq_save() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The header percpu.h header file is using raw_local_irq_save() but does not include irqflags.h for its definition. It compiles because the @@ -29,5 +29,5 @@ index 1817a8415a5e..942d64c0476e 100644 #ifdef CONFIG_SMP -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0018-efi-Allow-efi-runtime.patch b/debian/patches-rt/0018-efi-Allow-efi-runtime.patch index 436187422..4bf055f03 100644 --- a/debian/patches-rt/0018-efi-Allow-efi-runtime.patch +++ b/debian/patches-rt/0018-efi-Allow-efi-runtime.patch @@ -1,8 +1,8 @@ -From 5fb52de64270be979f75b427250d11b540c52b83 Mon Sep 17 00:00:00 2001 +From da834999f8c566ac722fd157de36dd3f9335c2ad Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 26 Jul 2018 15:06:10 +0200 -Subject: [PATCH 018/291] efi: Allow efi=runtime -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 018/290] efi: Allow efi=runtime +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In case the option "efi=noruntime" is default at built-time, the user could overwrite its sate by `efi=runtime' and allow it again. @@ -28,5 +28,5 @@ index d54fca902e64..5db20908aa9c 100644 } early_param("efi", parse_efi_cmdline); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0019-x86-efi-drop-task_lock-from-efi_switch_mm.patch b/debian/patches-rt/0019-x86-efi-drop-task_lock-from-efi_switch_mm.patch index be9d5adff..b6499b28e 100644 --- a/debian/patches-rt/0019-x86-efi-drop-task_lock-from-efi_switch_mm.patch +++ b/debian/patches-rt/0019-x86-efi-drop-task_lock-from-efi_switch_mm.patch @@ -1,8 +1,8 @@ -From 4fd848304a1de3af890fc4af3672ec7f4702418d Mon Sep 17 00:00:00 2001 +From d24d03df7b0c0b6a0975a373a815487a220ee93b Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 24 Jul 2018 14:48:55 +0200 -Subject: [PATCH 019/291] x86/efi: drop task_lock() from efi_switch_mm() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 019/290] x86/efi: drop task_lock() from efi_switch_mm() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz efi_switch_mm() is a wrapper around switch_mm() which saves current's ->active_mm, sets the requests mm as ->active_mm and invokes @@ -51,5 +51,5 @@ index ee5d08f25ce4..e8da7f492970 100644 #ifdef CONFIG_EFI_MIXED -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0020-arm64-KVM-compute_layout-before-altenates-are-applie.patch b/debian/patches-rt/0020-arm64-KVM-compute_layout-before-altenates-are-applie.patch index fa254dc98..6b663ec42 100644 --- a/debian/patches-rt/0020-arm64-KVM-compute_layout-before-altenates-are-applie.patch +++ b/debian/patches-rt/0020-arm64-KVM-compute_layout-before-altenates-are-applie.patch @@ -1,9 +1,9 @@ -From b17f7ae2ce1cef4a3777068f142f46342a68adac Mon Sep 17 00:00:00 2001 +From 057073be1e10190ea715360a6fde5478df36b563 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 26 Jul 2018 09:13:42 +0200 -Subject: [PATCH 020/291] arm64: KVM: compute_layout before altenates are +Subject: [PATCH 020/290] arm64: KVM: compute_layout before altenates are applied -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz compute_layout() is invoked as part of an alternative fixup under stop_machine() and needs a sleeping lock as part of get_random_long(). @@ -79,5 +79,5 @@ index c712a7376bc1..792da0e125de 100644 * Compute HYP VA by using the same computation as kern_hyp_va() */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0021-of-allocate-free-phandle-cache-outside-of-the-devtre.patch b/debian/patches-rt/0021-of-allocate-free-phandle-cache-outside-of-the-devtre.patch index b516b3eca..42fed655b 100644 --- a/debian/patches-rt/0021-of-allocate-free-phandle-cache-outside-of-the-devtre.patch +++ b/debian/patches-rt/0021-of-allocate-free-phandle-cache-outside-of-the-devtre.patch @@ -1,9 +1,9 @@ -From 697998358002f3b4a507a7d2c17f4a574462bfbb Mon Sep 17 00:00:00 2001 +From af2b5f6fa1369ed12974a97865df6125bbede492 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 31 Aug 2018 14:16:30 +0200 -Subject: [PATCH 021/291] of: allocate / free phandle cache outside of the +Subject: [PATCH 021/290] of: allocate / free phandle cache outside of the devtree_lock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The phandle cache code allocates memory while holding devtree_lock which is a raw_spinlock_t. Memory allocation (and free()) is not possible on @@ -99,5 +99,5 @@ index f0dbb7ad88cf..c59b30bab0e0 100644 void __init of_core_init(void) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0022-mm-kasan-make-quarantine_lock-a-raw_spinlock_t.patch b/debian/patches-rt/0022-mm-kasan-make-quarantine_lock-a-raw_spinlock_t.patch index eb1743bdc..2d140c539 100644 --- a/debian/patches-rt/0022-mm-kasan-make-quarantine_lock-a-raw_spinlock_t.patch +++ b/debian/patches-rt/0022-mm-kasan-make-quarantine_lock-a-raw_spinlock_t.patch @@ -1,8 +1,8 @@ -From 8a4f7cc633b7c0c167185220b26c123c854317be Mon Sep 17 00:00:00 2001 +From 90ac218590a6d692a0dafeeef4bfafea30811be3 Mon Sep 17 00:00:00 2001 From: Clark Williams Date: Tue, 18 Sep 2018 10:29:31 -0500 -Subject: [PATCH 022/291] mm/kasan: make quarantine_lock a raw_spinlock_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 022/290] mm/kasan: make quarantine_lock a raw_spinlock_t +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The static lock quarantine_lock is used in quarantine.c to protect the quarantine queue datastructures. It is taken inside quarantine queue @@ -94,5 +94,5 @@ index 3a8ddf8baf7d..b209dbaefde8 100644 qlist_free_all(&to_free, cache); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0023-EXP-rcu-Revert-expedited-GP-parallelization-cleverne.patch b/debian/patches-rt/0023-EXP-rcu-Revert-expedited-GP-parallelization-cleverne.patch index 548c4b4de..b022cda37 100644 --- a/debian/patches-rt/0023-EXP-rcu-Revert-expedited-GP-parallelization-cleverne.patch +++ b/debian/patches-rt/0023-EXP-rcu-Revert-expedited-GP-parallelization-cleverne.patch @@ -1,9 +1,9 @@ -From 39aaee76f350cb367781564b734dc8e29d75b975 Mon Sep 17 00:00:00 2001 +From 37d23bb703b59574c9eeebba86f8c8b9cf382d15 Mon Sep 17 00:00:00 2001 From: "Paul E. McKenney" Date: Mon, 29 Oct 2018 11:53:01 +0100 -Subject: [PATCH 023/291] EXP rcu: Revert expedited GP parallelization +Subject: [PATCH 023/290] EXP rcu: Revert expedited GP parallelization cleverness -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz (Commit 258ba8e089db23f760139266c232f01bad73f85c from linux-rcu) @@ -47,5 +47,5 @@ index 0b2c2ad69629..a0486414edb4 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0024-kmemleak-Turn-kmemleak_lock-to-raw-spinlock-on-RT.patch b/debian/patches-rt/0024-kmemleak-Turn-kmemleak_lock-to-raw-spinlock-on-RT.patch index 451d9190f..00308a357 100644 --- a/debian/patches-rt/0024-kmemleak-Turn-kmemleak_lock-to-raw-spinlock-on-RT.patch +++ b/debian/patches-rt/0024-kmemleak-Turn-kmemleak_lock-to-raw-spinlock-on-RT.patch @@ -1,11 +1,11 @@ -From 4d466dc4215908fa4bc26c7451f4cc09f1d78e0a Mon Sep 17 00:00:00 2001 +From 5a62bb92ae6df828a0b6cf14c0e1d55558f0002e Mon Sep 17 00:00:00 2001 From: He Zhe Date: Wed, 19 Dec 2018 16:30:57 +0100 -Subject: [PATCH 024/291] kmemleak: Turn kmemleak_lock to raw spinlock on RT +Subject: [PATCH 024/290] kmemleak: Turn kmemleak_lock to raw spinlock on RT MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz kmemleak_lock, as a rwlock on RT, can possibly be held in atomic context and causes the follow BUG. @@ -165,5 +165,5 @@ index 5eeabece0c17..92ce99b15f2b 100644 /* -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0025-NFSv4-replace-seqcount_t-with-a-seqlock_t.patch b/debian/patches-rt/0025-NFSv4-replace-seqcount_t-with-a-seqlock_t.patch index 2245eb61f..6435bc90d 100644 --- a/debian/patches-rt/0025-NFSv4-replace-seqcount_t-with-a-seqlock_t.patch +++ b/debian/patches-rt/0025-NFSv4-replace-seqcount_t-with-a-seqlock_t.patch @@ -1,8 +1,8 @@ -From 2c7ee1a045b00c6310d027dc5aa1a079ff655630 Mon Sep 17 00:00:00 2001 +From 78cfba1f8655c35ecd538b02a09000d4d7d18af9 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 28 Oct 2016 23:05:11 +0200 -Subject: [PATCH 025/291] NFSv4: replace seqcount_t with a seqlock_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 025/290] NFSv4: replace seqcount_t with a seqlock_t +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The raw_write_seqcount_begin() in nfs4_reclaim_open_state() bugs me because it maps to preempt_disable() in -RT which I can't have at this @@ -132,5 +132,5 @@ index b3086e99420c..c9bf1eb7e1b2 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0026-kernel-sched-Provide-a-pointer-to-the-valid-CPU-mask.patch b/debian/patches-rt/0026-kernel-sched-Provide-a-pointer-to-the-valid-CPU-mask.patch index a88e5e87c..cdedd1420 100644 --- a/debian/patches-rt/0026-kernel-sched-Provide-a-pointer-to-the-valid-CPU-mask.patch +++ b/debian/patches-rt/0026-kernel-sched-Provide-a-pointer-to-the-valid-CPU-mask.patch @@ -1,12 +1,12 @@ -From f5fde14ac17fd00556c20f2e137ce5e1a3608442 Mon Sep 17 00:00:00 2001 +From f8da0dd0f5a6dd0097a13f5f59567b9d7a91d0f4 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 4 Apr 2017 12:50:16 +0200 -Subject: [PATCH 026/291] kernel: sched: Provide a pointer to the valid CPU +Subject: [PATCH 026/290] kernel: sched: Provide a pointer to the valid CPU mask MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In commit 4b53a3412d66 ("sched/core: Remove the tsk_nr_cpus_allowed() wrapper") the tsk_nr_cpus_allowed() wrapper was removed. There was not @@ -781,5 +781,5 @@ index 5522692100ba..8b4be8e1802a 100644 trace_foo_with_template_simple("HELLO", cnt); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0027-kernel-sched-core-add-migrate_disable.patch b/debian/patches-rt/0027-kernel-sched-core-add-migrate_disable.patch index 60d4f1668..b36c46001 100644 --- a/debian/patches-rt/0027-kernel-sched-core-add-migrate_disable.patch +++ b/debian/patches-rt/0027-kernel-sched-core-add-migrate_disable.patch @@ -1,8 +1,8 @@ -From 61ce7ed9daafbc845c8d675d1ff793f1c3cdc7dc Mon Sep 17 00:00:00 2001 +From a73bbe4b98f56b8c69e3932df7e083d1d94f5109 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Sat, 27 May 2017 19:02:06 +0200 -Subject: [PATCH 027/291] kernel/sched/core: add migrate_disable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 027/290] kernel/sched/core: add migrate_disable() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz --- include/linux/preempt.h | 23 +++++++ @@ -262,5 +262,5 @@ index 78fadf0438ea..5027158d3908 100644 #undef PN #undef __PN -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0028-sched-migrate_disable-Add-export_symbol_gpl-for-__mi.patch b/debian/patches-rt/0028-sched-migrate_disable-Add-export_symbol_gpl-for-__mi.patch index c9b1d1706..4090a1b99 100644 --- a/debian/patches-rt/0028-sched-migrate_disable-Add-export_symbol_gpl-for-__mi.patch +++ b/debian/patches-rt/0028-sched-migrate_disable-Add-export_symbol_gpl-for-__mi.patch @@ -1,9 +1,9 @@ -From bd7f5c8faa18b9f1d37703913f1570138422d3da Mon Sep 17 00:00:00 2001 +From ac059eda6d9782325d4d8432b5bee7638eafd90a Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 9 Oct 2018 17:34:50 +0200 -Subject: [PATCH 028/291] sched/migrate_disable: Add export_symbol_gpl for +Subject: [PATCH 028/290] sched/migrate_disable: Add export_symbol_gpl for __migrate_disabled -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Jonathan reported that lttng/modules can't use __migrate_disabled(). This function is only used by sched/core itself and the tracing @@ -34,5 +34,5 @@ index d0450f06612c..e6022cc2605b 100644 static void __do_set_cpus_allowed_tail(struct task_struct *p, -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0029-arm-at91-do-not-disable-enable-clocks-in-a-row.patch b/debian/patches-rt/0029-arm-at91-do-not-disable-enable-clocks-in-a-row.patch index fadfc782b..920978aff 100644 --- a/debian/patches-rt/0029-arm-at91-do-not-disable-enable-clocks-in-a-row.patch +++ b/debian/patches-rt/0029-arm-at91-do-not-disable-enable-clocks-in-a-row.patch @@ -1,8 +1,8 @@ -From 947af8820a4dd6fc2c767f8fe42428555bea5600 Mon Sep 17 00:00:00 2001 +From b4f795e23aa449ae7116c445646a5ee51f90c022 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 9 Mar 2016 10:51:06 +0100 -Subject: [PATCH 029/291] arm: at91: do not disable/enable clocks in a row -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 029/290] arm: at91: do not disable/enable clocks in a row +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Currently the driver will disable the clock and enable it one line later if it is switching from periodic mode into one shot. @@ -94,5 +94,5 @@ index 43f4d5c4d6fa..de6baf564dfe 100644 .set_state_oneshot = tc_set_oneshot, }, -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0030-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch b/debian/patches-rt/0030-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch index aecedf191..e7b45d9af 100644 --- a/debian/patches-rt/0030-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch +++ b/debian/patches-rt/0030-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch @@ -1,12 +1,12 @@ -From 13089a9a78c41543e74768f0322a9eeabd65a5e1 Mon Sep 17 00:00:00 2001 +From 45b7375a7348d45d17515da0b294d479805fd855 Mon Sep 17 00:00:00 2001 From: Benedikt Spranger Date: Mon, 8 Mar 2010 18:57:04 +0100 -Subject: [PATCH 030/291] clocksource: TCLIB: Allow higher clock rates for +Subject: [PATCH 030/290] clocksource: TCLIB: Allow higher clock rates for clock events MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz As default the TCLIB uses the 32KiHz base clock rate for clock events. Add a compile time selection to allow higher clock resulution. @@ -166,5 +166,5 @@ index 3726eacdf65d..0900dec7ec04 100644 tristate "Dummy IRQ handler" default n -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0031-timekeeping-Split-jiffies-seqlock.patch b/debian/patches-rt/0031-timekeeping-Split-jiffies-seqlock.patch index a67976fd5..371719dbc 100644 --- a/debian/patches-rt/0031-timekeeping-Split-jiffies-seqlock.patch +++ b/debian/patches-rt/0031-timekeeping-Split-jiffies-seqlock.patch @@ -1,8 +1,8 @@ -From 4d016dbd1b8f0ec0d903af01d0ab3c7b83bd8799 Mon Sep 17 00:00:00 2001 +From fe98a4f2036225a3ccb28c230f5245fa0eddec4c Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 14 Feb 2013 22:36:59 +0100 -Subject: [PATCH 031/291] timekeeping: Split jiffies seqlock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 031/290] timekeeping: Split jiffies seqlock +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Replace jiffies_lock seqlock with a simple seqcounter and a rawlock so it can be taken in atomic context on RT. @@ -167,5 +167,5 @@ index 141ab3ab0354..099737f6f10c 100644 #define CS_NAME_LEN 32 -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0032-signal-Revert-ptrace-preempt-magic.patch b/debian/patches-rt/0032-signal-Revert-ptrace-preempt-magic.patch index a6846220d..44cd95f22 100644 --- a/debian/patches-rt/0032-signal-Revert-ptrace-preempt-magic.patch +++ b/debian/patches-rt/0032-signal-Revert-ptrace-preempt-magic.patch @@ -1,8 +1,8 @@ -From d9af1e0a1659a5d42d0495e38677bd8fb8fd0aaf Mon Sep 17 00:00:00 2001 +From fc38cdec8c7fa26cc2b0520c1cd0eb9ff96c969a Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 21 Sep 2011 19:57:12 +0200 -Subject: [PATCH 032/291] signal: Revert ptrace preempt magic -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 032/290] signal: Revert ptrace preempt magic +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Upstream commit '53da1d9456fe7f8 fix ptrace slowness' is nothing more than a bandaid around the ptrace design trainwreck. It's not a @@ -34,5 +34,5 @@ index 7278302e3485..6b9d4bbfa9df 100644 } else { /* -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0033-net-sched-Use-msleep-instead-of-yield.patch b/debian/patches-rt/0033-net-sched-Use-msleep-instead-of-yield.patch index eecbcb5a1..54fc9ba11 100644 --- a/debian/patches-rt/0033-net-sched-Use-msleep-instead-of-yield.patch +++ b/debian/patches-rt/0033-net-sched-Use-msleep-instead-of-yield.patch @@ -1,8 +1,8 @@ -From df3cd4ac6e62e719cadc664491e6dfe9f501e305 Mon Sep 17 00:00:00 2001 +From 280627bfccdc36087f174418d56e57d027552a14 Mon Sep 17 00:00:00 2001 From: Marc Kleine-Budde Date: Wed, 5 Mar 2014 00:49:47 +0100 -Subject: [PATCH 033/291] net: sched: Use msleep() instead of yield() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 033/290] net: sched: Use msleep() instead of yield() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On PREEMPT_RT enabled systems the interrupt handler run as threads at prio 50 (by default). If a high priority userspace process tries to shut down a busy @@ -60,5 +60,5 @@ index 8a4d01e427a2..4ab20f1138fd 100644 * unwind stale skb lists and qdisc statistics */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0034-dm-rq-remove-BUG_ON-irqs_disabled-check.patch b/debian/patches-rt/0034-dm-rq-remove-BUG_ON-irqs_disabled-check.patch index e136ee997..cad53c9b4 100644 --- a/debian/patches-rt/0034-dm-rq-remove-BUG_ON-irqs_disabled-check.patch +++ b/debian/patches-rt/0034-dm-rq-remove-BUG_ON-irqs_disabled-check.patch @@ -1,8 +1,8 @@ -From a159d24537239954b6315ccc562c3e8cab89f5ed Mon Sep 17 00:00:00 2001 +From ec6350958b69d6c98248ee0871b3a7c00c5949c5 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 27 Mar 2018 16:24:15 +0200 -Subject: [PATCH 034/291] dm rq: remove BUG_ON(!irqs_disabled) check -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 034/290] dm rq: remove BUG_ON(!irqs_disabled) check +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In commit 052189a2ec95 ("dm: remove superfluous irq disablement in dm_request_fn") the spin_lock_irq() was replaced with spin_lock() + a @@ -33,5 +33,5 @@ index 4d36373e1c0f..12ed08245130 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0035-usb-do-no-disable-interrupts-in-giveback.patch b/debian/patches-rt/0035-usb-do-no-disable-interrupts-in-giveback.patch index 219cab214..424d8e480 100644 --- a/debian/patches-rt/0035-usb-do-no-disable-interrupts-in-giveback.patch +++ b/debian/patches-rt/0035-usb-do-no-disable-interrupts-in-giveback.patch @@ -1,8 +1,8 @@ -From 07883a7dceb3c9bbdd7c8deb51d2d069cda79118 Mon Sep 17 00:00:00 2001 +From c5248048f310926cc88f9d625126ebb980024a51 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 8 Nov 2013 17:34:54 +0100 -Subject: [PATCH 035/291] usb: do no disable interrupts in giveback -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 035/290] usb: do no disable interrupts in giveback +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Since commit 94dfd7ed ("USB: HCD: support giveback of URB in tasklet context") the USB code disables interrupts before invoking the complete @@ -42,5 +42,5 @@ index b82a7d787add..2f3015356124 100644 usb_anchor_resume_wakeups(anchor); atomic_dec(&urb->use_count); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0036-rt-Provide-PREEMPT_RT_BASE-config-switch.patch b/debian/patches-rt/0036-rt-Provide-PREEMPT_RT_BASE-config-switch.patch index d08b6193f..2247734ad 100644 --- a/debian/patches-rt/0036-rt-Provide-PREEMPT_RT_BASE-config-switch.patch +++ b/debian/patches-rt/0036-rt-Provide-PREEMPT_RT_BASE-config-switch.patch @@ -1,8 +1,8 @@ -From 1354583e3f4c2811caec1d3c97ac3835246ec7ef Mon Sep 17 00:00:00 2001 +From 4bfca780bcff671d348be592531816808005330c Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 17 Jun 2011 12:39:57 +0200 -Subject: [PATCH 036/291] rt: Provide PREEMPT_RT_BASE config switch -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 036/290] rt: Provide PREEMPT_RT_BASE config switch +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Introduce PREEMPT_RT_BASE which enables parts of PREEMPT_RT_FULL. Forces interrupt threading and enables some of the RT @@ -60,5 +60,5 @@ index cd1655122ec0..027db5976c2f 100644 \ No newline at end of file + bool -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0037-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch b/debian/patches-rt/0037-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch index 2adfa3118..a4444d160 100644 --- a/debian/patches-rt/0037-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch +++ b/debian/patches-rt/0037-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch @@ -1,8 +1,8 @@ -From 6663ab6c43da36389be915ad106047ee1afb6a8d Mon Sep 17 00:00:00 2001 +From 6ea70c3ef4fff78246212f51f67a6e48b159bc50 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 14 Dec 2011 01:03:49 +0100 -Subject: [PATCH 037/291] cpumask: Disable CONFIG_CPUMASK_OFFSTACK for RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 037/290] cpumask: Disable CONFIG_CPUMASK_OFFSTACK for RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz There are "valid" GFP_ATOMIC allocations such as @@ -72,5 +72,5 @@ index a3928d4438b5..a50b2158f7cd 100644 Use dynamic allocation for cpumask_var_t, instead of putting them on the stack. This is a bit more expensive, but avoids -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0038-jump-label-disable-if-stop_machine-is-used.patch b/debian/patches-rt/0038-jump-label-disable-if-stop_machine-is-used.patch index 091b02279..c9a397bf7 100644 --- a/debian/patches-rt/0038-jump-label-disable-if-stop_machine-is-used.patch +++ b/debian/patches-rt/0038-jump-label-disable-if-stop_machine-is-used.patch @@ -1,8 +1,8 @@ -From 043f2096e98b4bf45e462337195e37d7214f7aff Mon Sep 17 00:00:00 2001 +From cded0d9563b5948a2aa3bddb86f632ea0ec38f0e Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 8 Jul 2015 17:14:48 +0200 -Subject: [PATCH 038/291] jump-label: disable if stop_machine() is used -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 038/290] jump-label: disable if stop_machine() is used +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Some architectures are using stop_machine() while switching the opcode which leads to latency spikes. @@ -38,5 +38,5 @@ index 185e552f1461..84f36e47e3ab 100644 select HAVE_ARCH_MMAP_RND_BITS if MMU select HAVE_ARCH_SECCOMP_FILTER if (AEABI && !OABI_COMPAT) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0039-kconfig-Disable-config-options-which-are-not-RT-comp.patch b/debian/patches-rt/0039-kconfig-Disable-config-options-which-are-not-RT-comp.patch index b61ddb9af..b0b1e02fe 100644 --- a/debian/patches-rt/0039-kconfig-Disable-config-options-which-are-not-RT-comp.patch +++ b/debian/patches-rt/0039-kconfig-Disable-config-options-which-are-not-RT-comp.patch @@ -1,9 +1,9 @@ -From 4ff387e1b68a6ad023a1be0934614c7fea2571b1 Mon Sep 17 00:00:00 2001 +From dce06dcc7c4046de51f2d0b0aa53995461a65b82 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 24 Jul 2011 12:11:43 +0200 -Subject: [PATCH 039/291] kconfig: Disable config options which are not RT +Subject: [PATCH 039/290] kconfig: Disable config options which are not RT compatible -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Disable stuff which is known to have issues on RT @@ -39,5 +39,5 @@ index b457e94ae618..0dddbb2a3282 100644 select RADIX_TREE_MULTIORDER help -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0040-lockdep-disable-self-test.patch b/debian/patches-rt/0040-lockdep-disable-self-test.patch index 0fb062e31..2a640e1ca 100644 --- a/debian/patches-rt/0040-lockdep-disable-self-test.patch +++ b/debian/patches-rt/0040-lockdep-disable-self-test.patch @@ -1,11 +1,11 @@ -From 203f0695996b8484c7cf3978c6d66ef5cf5122fa Mon Sep 17 00:00:00 2001 +From 895584437f1a9e0847ff7ca40873fb3b8bd4be0c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 17 Oct 2017 16:36:18 +0200 -Subject: [PATCH 040/291] lockdep: disable self-test +Subject: [PATCH 040/290] lockdep: disable self-test MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The self-test wasn't always 100% accurate for RT. We disabled a few tests which failed because they had a different semantic for RT. Some @@ -31,5 +31,5 @@ index 46a910acce3f..38cf7f81daa7 100644 Say Y here if you want the kernel to run a short self-test during bootup. The self-test checks whether common types of locking bugs -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0041-mm-Allow-only-slub-on-RT.patch b/debian/patches-rt/0041-mm-Allow-only-slub-on-RT.patch index 129283a18..51feadb4e 100644 --- a/debian/patches-rt/0041-mm-Allow-only-slub-on-RT.patch +++ b/debian/patches-rt/0041-mm-Allow-only-slub-on-RT.patch @@ -1,8 +1,8 @@ -From e6f803613e75df4c54389b97fda1cb6d239d70da Mon Sep 17 00:00:00 2001 +From dcf8f258f572870f67b12f9d9082eebd0561d085 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:44:03 -0500 -Subject: [PATCH 041/291] mm: Allow only slub on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 041/290] mm: Allow only slub on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Disable SLAB and SLOB on -RT. Only SLUB is adopted to -RT needs. @@ -33,5 +33,5 @@ index 47035b5a46f6..ae9a0113a699 100644 SLOB replaces the stock allocator with a drastically simpler allocator. SLOB is generally more space efficient but -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0042-locking-Disable-spin-on-owner-for-RT.patch b/debian/patches-rt/0042-locking-Disable-spin-on-owner-for-RT.patch index 38671de3e..768d7200f 100644 --- a/debian/patches-rt/0042-locking-Disable-spin-on-owner-for-RT.patch +++ b/debian/patches-rt/0042-locking-Disable-spin-on-owner-for-RT.patch @@ -1,11 +1,11 @@ -From ce4dfdbd95a61055f3cf6a29ecaed9d195bda6d6 Mon Sep 17 00:00:00 2001 +From 4aaf38cf9c2cd085bbee6aec83c66b52b33c9a32 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 21:51:45 +0200 -Subject: [PATCH 042/291] locking: Disable spin on owner for RT +Subject: [PATCH 042/290] locking: Disable spin on owner for RT MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Drop spin on owner for mutex / rwsem. We are most likely not using it but… @@ -34,5 +34,5 @@ index 84d882f3e299..af27c4000812 100644 config LOCK_SPIN_ON_OWNER def_bool y -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0043-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch b/debian/patches-rt/0043-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch index ad0c5fc32..903ae3ad1 100644 --- a/debian/patches-rt/0043-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch +++ b/debian/patches-rt/0043-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch @@ -1,8 +1,8 @@ -From 0828aeddb0ee251954aad102cc5de568f0b94aca Mon Sep 17 00:00:00 2001 +From 5f1bd47909aca86dfc97df6f5ceecd67c755b2e8 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 28 Oct 2012 13:26:09 +0000 -Subject: [PATCH 043/291] rcu: Disable RCU_FAST_NO_HZ on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 043/290] rcu: Disable RCU_FAST_NO_HZ on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz This uses a timer_list timer from the irq disabled guts of the idle code. Disable it for now to prevent wreckage. @@ -26,5 +26,5 @@ index 9210379c0353..644264be90f0 100644 help This option permits CPUs to enter dynticks-idle state even if -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0044-rcu-make-RCU_BOOST-default-on-RT.patch b/debian/patches-rt/0044-rcu-make-RCU_BOOST-default-on-RT.patch index e3d87b55f..73cf39f76 100644 --- a/debian/patches-rt/0044-rcu-make-RCU_BOOST-default-on-RT.patch +++ b/debian/patches-rt/0044-rcu-make-RCU_BOOST-default-on-RT.patch @@ -1,8 +1,8 @@ -From 8572bd12065e844033ac5dc1513ac6e375f102f5 Mon Sep 17 00:00:00 2001 +From 980f69b6bec3356146f6c2d4e28405b3c4de4a87 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 21 Mar 2014 20:19:05 +0100 -Subject: [PATCH 044/291] rcu: make RCU_BOOST default on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 044/290] rcu: make RCU_BOOST default on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Since it is no longer invoked from the softirq people run into OOM more often if the priority of the RCU thread is too low. Making boosting @@ -30,5 +30,5 @@ index 644264be90f0..a243a78ff38c 100644 This option boosts the priority of preempted RCU readers that block the current preemptible RCU grace period for too long. -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0045-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch b/debian/patches-rt/0045-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch index 6262bb7f7..38edf1175 100644 --- a/debian/patches-rt/0045-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch +++ b/debian/patches-rt/0045-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch @@ -1,8 +1,8 @@ -From dbed6df30f02693175cf4859cc59ed5c164bc939 Mon Sep 17 00:00:00 2001 +From 6c16852b3700b4b98d7ea4b6dffbfbb5e1118c01 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 18 Jul 2011 17:03:52 +0200 -Subject: [PATCH 045/291] sched: Disable CONFIG_RT_GROUP_SCHED on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 045/290] sched: Disable CONFIG_RT_GROUP_SCHED on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Carsten reported problems when running: @@ -31,5 +31,5 @@ index ae9a0113a699..61e8b531649b 100644 help This feature lets you explicitly allocate real CPU bandwidth -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0046-net-core-disable-NET_RX_BUSY_POLL.patch b/debian/patches-rt/0046-net-core-disable-NET_RX_BUSY_POLL.patch index ad807454f..8be99d1b4 100644 --- a/debian/patches-rt/0046-net-core-disable-NET_RX_BUSY_POLL.patch +++ b/debian/patches-rt/0046-net-core-disable-NET_RX_BUSY_POLL.patch @@ -1,11 +1,11 @@ -From 5069703501d3a9941838df3cd946b5e4c41d7e04 Mon Sep 17 00:00:00 2001 +From 9822fde0d385af32e0b8550600e3961cc9bb96aa Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Sat, 27 May 2017 19:02:06 +0200 -Subject: [PATCH 046/291] net/core: disable NET_RX_BUSY_POLL +Subject: [PATCH 046/290] net/core: disable NET_RX_BUSY_POLL MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz sk_busy_loop() does preempt_disable() followed by a few operations which can take sleeping locks and may get long. @@ -34,5 +34,5 @@ index 228dfa382eec..bc8d01996f22 100644 config BQL bool -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0047-arm-disable-NEON-in-kernel-mode.patch b/debian/patches-rt/0047-arm-disable-NEON-in-kernel-mode.patch index cfeff4cfd..947b149a8 100644 --- a/debian/patches-rt/0047-arm-disable-NEON-in-kernel-mode.patch +++ b/debian/patches-rt/0047-arm-disable-NEON-in-kernel-mode.patch @@ -1,8 +1,8 @@ -From e9ece8f9dc53c0d74f9fe98b534d0e753c517281 Mon Sep 17 00:00:00 2001 +From c628460359a533e7547887b5212d2291117eeacb Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 1 Dec 2017 10:42:03 +0100 -Subject: [PATCH 047/291] arm*: disable NEON in kernel mode -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 047/290] arm*: disable NEON in kernel mode +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz NEON in kernel mode is used by the crypto algorithms and raid6 code. While the raid6 code looks okay, the crypto algorithms do not: NEON @@ -162,5 +162,5 @@ index 34b4e3d46aab..ae055cdad8cf 100644 crc32_pmull_algs[1].update = crc32c_pmull_update; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0048-powerpc-Use-generic-rwsem-on-RT.patch b/debian/patches-rt/0048-powerpc-Use-generic-rwsem-on-RT.patch index da3081785..58cf7cc60 100644 --- a/debian/patches-rt/0048-powerpc-Use-generic-rwsem-on-RT.patch +++ b/debian/patches-rt/0048-powerpc-Use-generic-rwsem-on-RT.patch @@ -1,8 +1,8 @@ -From 98313a22669a4dc95b20a2d09b91ccb788afb8b2 Mon Sep 17 00:00:00 2001 +From 2b0792d20032fb077f028c433ce0575e0b2af952 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 14 Jul 2015 14:26:34 +0200 -Subject: [PATCH 048/291] powerpc: Use generic rwsem on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 048/290] powerpc: Use generic rwsem on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Use generic code which uses rtmutex @@ -29,5 +29,5 @@ index a80669209155..9952764db9c5 100644 config GENERIC_LOCKBREAK bool -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0049-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch b/debian/patches-rt/0049-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch index bf3efdbe7..78a1861b8 100644 --- a/debian/patches-rt/0049-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch +++ b/debian/patches-rt/0049-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch @@ -1,9 +1,9 @@ -From 0575c26ddd4406cd80932c9fca520f4e602110cd Mon Sep 17 00:00:00 2001 +From 59e8b4257278a94fecf207ad131920b7e1364aa7 Mon Sep 17 00:00:00 2001 From: Bogdan Purcareata Date: Fri, 24 Apr 2015 15:53:13 +0000 -Subject: [PATCH 049/291] powerpc/kvm: Disable in-kernel MPIC emulation for +Subject: [PATCH 049/290] powerpc/kvm: Disable in-kernel MPIC emulation for PREEMPT_RT_FULL -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz While converting the openpic emulation code to use a raw_spinlock_t enables guests to run on RT, there's still a performance issue. For interrupts sent in @@ -41,5 +41,5 @@ index 68a0e9d5b440..6f4d5d7615af 100644 select HAVE_KVM_IRQFD select HAVE_KVM_IRQ_ROUTING -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0050-powerpc-Disable-highmem-on-RT.patch b/debian/patches-rt/0050-powerpc-Disable-highmem-on-RT.patch index 5879170b7..72a3bbe14 100644 --- a/debian/patches-rt/0050-powerpc-Disable-highmem-on-RT.patch +++ b/debian/patches-rt/0050-powerpc-Disable-highmem-on-RT.patch @@ -1,8 +1,8 @@ -From 688d9558ce5aee4f904f63182e3b4d23bb4a9792 Mon Sep 17 00:00:00 2001 +From da3f221553e2c41925af06392f6ed660d68543a7 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 18 Jul 2011 17:08:34 +0200 -Subject: [PATCH 050/291] powerpc: Disable highmem on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 050/290] powerpc: Disable highmem on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The current highmem handling on -RT is not compatible and needs fixups. @@ -25,5 +25,5 @@ index 9952764db9c5..1563820a37e8 100644 source kernel/Kconfig.hz -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0051-mips-Disable-highmem-on-RT.patch b/debian/patches-rt/0051-mips-Disable-highmem-on-RT.patch index b2f055e48..0e92ea60c 100644 --- a/debian/patches-rt/0051-mips-Disable-highmem-on-RT.patch +++ b/debian/patches-rt/0051-mips-Disable-highmem-on-RT.patch @@ -1,8 +1,8 @@ -From 0c1e53d4534612ac67956790bde4c6d4e9eb8981 Mon Sep 17 00:00:00 2001 +From 33a7e9d57de8e82532d8cdec33795907685b22e7 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 18 Jul 2011 17:10:12 +0200 -Subject: [PATCH 051/291] mips: Disable highmem on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 051/290] mips: Disable highmem on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The current highmem handling on -RT is not compatible and needs fixups. @@ -25,5 +25,5 @@ index a830a9701e50..3d5fae3891be 100644 config CPU_SUPPORTS_HIGHMEM bool -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0052-x86-Use-generic-rwsem_spinlocks-on-rt.patch b/debian/patches-rt/0052-x86-Use-generic-rwsem_spinlocks-on-rt.patch index 29d35cce2..2caa4d36d 100644 --- a/debian/patches-rt/0052-x86-Use-generic-rwsem_spinlocks-on-rt.patch +++ b/debian/patches-rt/0052-x86-Use-generic-rwsem_spinlocks-on-rt.patch @@ -1,8 +1,8 @@ -From 3f49b83521789612e3946f2e3ddfc7ec52abc6b0 Mon Sep 17 00:00:00 2001 +From 2aeeb18ed2650e5c8d35e52ed37e51f4f112e87e Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 26 Jul 2009 02:21:32 +0200 -Subject: [PATCH 052/291] x86: Use generic rwsem_spinlocks on -rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 052/290] x86: Use generic rwsem_spinlocks on -rt +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Simplifies the separation of anon_rw_semaphores and rw_semaphores for -rt. @@ -30,5 +30,5 @@ index e40ba59efe7f..f22e787329cf 100644 config GENERIC_CALIBRATE_DELAY def_bool y -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0053-leds-trigger-disable-CPU-trigger-on-RT.patch b/debian/patches-rt/0053-leds-trigger-disable-CPU-trigger-on-RT.patch index c48da4024..65923005b 100644 --- a/debian/patches-rt/0053-leds-trigger-disable-CPU-trigger-on-RT.patch +++ b/debian/patches-rt/0053-leds-trigger-disable-CPU-trigger-on-RT.patch @@ -1,8 +1,8 @@ -From 4f41629bce81abd28a76c4440368bd788b659e38 Mon Sep 17 00:00:00 2001 +From d438ee6c55b0969d2490f97a6fc897f462f017b0 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 23 Jan 2014 14:45:59 +0100 -Subject: [PATCH 053/291] leds: trigger: disable CPU trigger on -RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 053/290] leds: trigger: disable CPU trigger on -RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz as it triggers: |CPU: 0 PID: 0 Comm: swapper Not tainted 3.12.8-rt10 #141 @@ -37,5 +37,5 @@ index 4018af769969..b4ce8c115949 100644 This allows LEDs to be controlled by active CPUs. This shows the active CPUs across an array of LEDs so you can see which -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0054-cpufreq-drop-K8-s-driver-from-beeing-selected.patch b/debian/patches-rt/0054-cpufreq-drop-K8-s-driver-from-beeing-selected.patch index 693572e4d..c3e626b68 100644 --- a/debian/patches-rt/0054-cpufreq-drop-K8-s-driver-from-beeing-selected.patch +++ b/debian/patches-rt/0054-cpufreq-drop-K8-s-driver-from-beeing-selected.patch @@ -1,8 +1,8 @@ -From 2c79ea262098448777ae80d2fbba5ef53ee41eb4 Mon Sep 17 00:00:00 2001 +From 24a05d9b26a5e6f52e0e35f401fd16a50bc3cc2d Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 9 Apr 2015 15:23:01 +0200 -Subject: [PATCH 054/291] cpufreq: drop K8's driver from beeing selected -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 054/290] cpufreq: drop K8's driver from beeing selected +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Ralf posted a picture of a backtrace from @@ -35,5 +35,5 @@ index 35f71825b7f3..bb4a6160d0f7 100644 This adds the CPUFreq driver for K8/early Opteron/Athlon64 processors. Support for K10 and newer processors is now in acpi-cpufreq. -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0055-md-disable-bcache.patch b/debian/patches-rt/0055-md-disable-bcache.patch index cb2bbdddf..10ba898d1 100644 --- a/debian/patches-rt/0055-md-disable-bcache.patch +++ b/debian/patches-rt/0055-md-disable-bcache.patch @@ -1,11 +1,11 @@ -From 2abf64d8df05eb498ac85316bbe4e0ded713eff2 Mon Sep 17 00:00:00 2001 +From 00fd6babe97f1ea784554baabb1bc74d7f11be16 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 29 Aug 2013 11:48:57 +0200 -Subject: [PATCH 055/291] md: disable bcache +Subject: [PATCH 055/290] md: disable bcache MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz It uses anon semaphores |drivers/md/bcache/request.c: In function ‘cached_dev_write_complete’: @@ -37,5 +37,5 @@ index f6e0a8b3a61e..18c03d79a442 100644 help Allows a block device to be used as cache for other devices; uses -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0056-efi-Disable-runtime-services-on-RT.patch b/debian/patches-rt/0056-efi-Disable-runtime-services-on-RT.patch index 9d8d231b1..0e69cf027 100644 --- a/debian/patches-rt/0056-efi-Disable-runtime-services-on-RT.patch +++ b/debian/patches-rt/0056-efi-Disable-runtime-services-on-RT.patch @@ -1,8 +1,8 @@ -From 9dd14e0939b8782199db8b468b784df45d4c3f8f Mon Sep 17 00:00:00 2001 +From e2d68290b3efe18e50ef23302fda76bb471d7493 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 26 Jul 2018 15:03:16 +0200 -Subject: [PATCH 056/291] efi: Disable runtime services on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 056/290] efi: Disable runtime services on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Based on meassurements the EFI functions get_variable / get_next_variable take up to 2us which looks okay. @@ -42,5 +42,5 @@ index 5db20908aa9c..1708505fdf5d 100644 { disable_runtime = true; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0057-printk-Add-a-printk-kill-switch.patch b/debian/patches-rt/0057-printk-Add-a-printk-kill-switch.patch index a43dfb448..acebca7ec 100644 --- a/debian/patches-rt/0057-printk-Add-a-printk-kill-switch.patch +++ b/debian/patches-rt/0057-printk-Add-a-printk-kill-switch.patch @@ -1,8 +1,8 @@ -From 2633507842e7e7dd5c6b745727b4ec0d690ac274 Mon Sep 17 00:00:00 2001 +From 3d59550d2bce945d0885bb16ee747edc40521c95 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 22 Jul 2011 17:58:40 +0200 -Subject: [PATCH 057/291] printk: Add a printk kill switch -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 057/290] printk: Add a printk kill switch +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Add a prinkt-kill-switch. This is used from (NMI) watchdog to ensure that it does not dead-lock with the early printk code. @@ -170,5 +170,5 @@ index 71381168dede..685443375dc0 100644 nmi_panic(regs, "Hard LOCKUP"); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0058-printk-Add-force_early_printk-boot-param-to-help-wit.patch b/debian/patches-rt/0058-printk-Add-force_early_printk-boot-param-to-help-wit.patch index d36bfa713..be435d342 100644 --- a/debian/patches-rt/0058-printk-Add-force_early_printk-boot-param-to-help-wit.patch +++ b/debian/patches-rt/0058-printk-Add-force_early_printk-boot-param-to-help-wit.patch @@ -1,9 +1,9 @@ -From 2f10ef0c470e409bfb0982641f133a396cd46281 Mon Sep 17 00:00:00 2001 +From ec95016b0067d4801b743959345d1d2b4897b4c7 Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Fri, 2 Sep 2011 14:41:29 +0200 -Subject: [PATCH 058/291] printk: Add "force_early_printk" boot param to help +Subject: [PATCH 058/290] printk: Add "force_early_printk" boot param to help with debugging -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Gives me an option to screw printk and actually see what the machine says. @@ -35,5 +35,5 @@ index 0214d876c22d..9a7f259dbb20 100644 { printk_killswitch = true; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0059-preempt-Provide-preempt_-_-no-rt-variants.patch b/debian/patches-rt/0059-preempt-Provide-preempt_-_-no-rt-variants.patch index 2866dd735..03e3667ee 100644 --- a/debian/patches-rt/0059-preempt-Provide-preempt_-_-no-rt-variants.patch +++ b/debian/patches-rt/0059-preempt-Provide-preempt_-_-no-rt-variants.patch @@ -1,8 +1,8 @@ -From 9e91087e1107b31abd5e3b5ce129e47a16253707 Mon Sep 17 00:00:00 2001 +From 8cdff06e21bab2bdf3a7f633a9e22b890bc43f39 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 24 Jul 2009 12:38:56 +0200 -Subject: [PATCH 059/291] preempt: Provide preempt_*_(no)rt variants -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 059/290] preempt: Provide preempt_*_(no)rt variants +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz RT needs a few preempt_disable/enable points which are not necessary otherwise. Implement variants to avoid #ifdeffery. @@ -49,5 +49,5 @@ index 3196d0e76719..f7a17fcc3fec 100644 struct preempt_notifier; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0060-futex-workaround-migrate_disable-enable-in-different.patch b/debian/patches-rt/0060-futex-workaround-migrate_disable-enable-in-different.patch index 238871072..6ca359ffe 100644 --- a/debian/patches-rt/0060-futex-workaround-migrate_disable-enable-in-different.patch +++ b/debian/patches-rt/0060-futex-workaround-migrate_disable-enable-in-different.patch @@ -1,9 +1,9 @@ -From db36aad65079786bbb06ee45e5f5c34c02b3acaf Mon Sep 17 00:00:00 2001 +From 4c36c4326b5f829aaabd0e2bd105c12797f16449 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 8 Mar 2017 14:23:35 +0100 -Subject: [PATCH 060/291] futex: workaround migrate_disable/enable in different +Subject: [PATCH 060/290] futex: workaround migrate_disable/enable in different context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz migrate_disable()/migrate_enable() takes a different path in atomic() vs !atomic() context. These little hacks ensure that we don't underflow / overflow @@ -66,5 +66,5 @@ index e75ad30aa7bc..5c8053098fc8 100644 /* -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0061-rt-Add-local-irq-locks.patch b/debian/patches-rt/0061-rt-Add-local-irq-locks.patch index af5164512..15e4de7aa 100644 --- a/debian/patches-rt/0061-rt-Add-local-irq-locks.patch +++ b/debian/patches-rt/0061-rt-Add-local-irq-locks.patch @@ -1,8 +1,8 @@ -From 071d70cf7a6d5ebc7050308f88be8777ad38f69a Mon Sep 17 00:00:00 2001 +From 2bd99b106c35f77357bcaea4546eb89085cc5ac8 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 20 Jun 2011 09:03:47 +0200 -Subject: [PATCH 061/291] rt: Add local irq locks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 061/290] rt: Add local irq locks +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Introduce locallock. For !RT this maps to preempt_disable()/ local_irq_disable() so there is not much that changes. For RT this will @@ -337,5 +337,5 @@ index 70b7123f38c7..24421bf8c4b3 100644 #define PCPU_MIN_UNIT_SIZE PFN_ALIGN(32 << 10) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0062-locallock-provide-get-put-_locked_ptr-variants.patch b/debian/patches-rt/0062-locallock-provide-get-put-_locked_ptr-variants.patch index 2bc491150..0bb5b3c6d 100644 --- a/debian/patches-rt/0062-locallock-provide-get-put-_locked_ptr-variants.patch +++ b/debian/patches-rt/0062-locallock-provide-get-put-_locked_ptr-variants.patch @@ -1,8 +1,8 @@ -From a242fd05b7f4d53e53733c9055315c30c3433fb1 Mon Sep 17 00:00:00 2001 +From 6b3038f8d30a5cef133ed3791a44e17377c0b052 Mon Sep 17 00:00:00 2001 From: Julia Cartwright Date: Mon, 7 May 2018 08:58:56 -0500 -Subject: [PATCH 062/291] locallock: provide {get,put}_locked_ptr() variants -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 062/290] locallock: provide {get,put}_locked_ptr() variants +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Provide a set of locallocked accessors for pointers to per-CPU data; this is useful for dynamically-allocated per-CPU regions, for example. @@ -45,5 +45,5 @@ index d658c2552601..921eab83cd34 100644 #define local_lock_cpu(lvar) get_cpu() #define local_unlock_cpu(lvar) put_cpu() -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0063-mm-scatterlist-Do-not-disable-irqs-on-RT.patch b/debian/patches-rt/0063-mm-scatterlist-Do-not-disable-irqs-on-RT.patch index 87656d51b..90c850061 100644 --- a/debian/patches-rt/0063-mm-scatterlist-Do-not-disable-irqs-on-RT.patch +++ b/debian/patches-rt/0063-mm-scatterlist-Do-not-disable-irqs-on-RT.patch @@ -1,8 +1,8 @@ -From 8c311c3b11935f5963075e2c1ede0b92863cfcf1 Mon Sep 17 00:00:00 2001 +From ed4646fb9f4dde9fa5e97aadbd15073babb2fdb5 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 3 Jul 2009 08:44:34 -0500 -Subject: [PATCH 063/291] mm/scatterlist: Do not disable irqs on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 063/290] mm/scatterlist: Do not disable irqs on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz For -RT it is enough to keep pagefault disabled (which is currently handled by kmap_atomic()). @@ -26,5 +26,5 @@ index 8c3036c37ba0..336162c2813f 100644 } else kunmap(miter->page); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0064-signal-x86-Delay-calling-signals-in-atomic.patch b/debian/patches-rt/0064-signal-x86-Delay-calling-signals-in-atomic.patch index ca259a289..317a2f95b 100644 --- a/debian/patches-rt/0064-signal-x86-Delay-calling-signals-in-atomic.patch +++ b/debian/patches-rt/0064-signal-x86-Delay-calling-signals-in-atomic.patch @@ -1,8 +1,8 @@ -From ebfdfb6456fcba5ed6d8dc35e0ca52db72a87cca Mon Sep 17 00:00:00 2001 +From 61d171cababe91bd799f750f2c88eca687b65d51 Mon Sep 17 00:00:00 2001 From: Oleg Nesterov Date: Tue, 14 Jul 2015 14:26:34 +0200 -Subject: [PATCH 064/291] signal/x86: Delay calling signals in atomic -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 064/290] signal/x86: Delay calling signals in atomic +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On x86_64 we must disable preemption before we enable interrupts for stack faults, int3 and debugging, because the current task is using @@ -150,5 +150,5 @@ index 6b9d4bbfa9df..3565221b4fac 100644 * Nuke all other threads in the group. */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0065-x86-signal-delay-calling-signals-on-32bit.patch b/debian/patches-rt/0065-x86-signal-delay-calling-signals-on-32bit.patch index 9f13f661e..e39d7d747 100644 --- a/debian/patches-rt/0065-x86-signal-delay-calling-signals-on-32bit.patch +++ b/debian/patches-rt/0065-x86-signal-delay-calling-signals-on-32bit.patch @@ -1,8 +1,8 @@ -From b86af89277597aa054eed1dc69417bc959f2b347 Mon Sep 17 00:00:00 2001 +From 159a99e63d62232f0de5a25fe8d92e4e31140c29 Mon Sep 17 00:00:00 2001 From: Yang Shi Date: Thu, 10 Dec 2015 10:58:51 -0800 -Subject: [PATCH 065/291] x86/signal: delay calling signals on 32bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 065/290] x86/signal: delay calling signals on 32bit +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz When running some ptrace single step tests on x86-32 machine, the below problem is triggered: @@ -45,5 +45,5 @@ index fb0438d06ca7..c00e27af2205 100644 #endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0066-buffer_head-Replace-bh_uptodate_lock-for-rt.patch b/debian/patches-rt/0066-buffer_head-Replace-bh_uptodate_lock-for-rt.patch index ebbab7165..ba90d0991 100644 --- a/debian/patches-rt/0066-buffer_head-Replace-bh_uptodate_lock-for-rt.patch +++ b/debian/patches-rt/0066-buffer_head-Replace-bh_uptodate_lock-for-rt.patch @@ -1,8 +1,8 @@ -From c0f5bfc27c440bc3c6cc4bc60045cd9c28d932ad Mon Sep 17 00:00:00 2001 +From 5c50a0cef22d58bcda53aae4df00e10ce6e04903 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 18 Mar 2011 09:18:52 +0100 -Subject: [PATCH 066/291] buffer_head: Replace bh_uptodate_lock for -rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 066/290] buffer_head: Replace bh_uptodate_lock for -rt +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Wrap the bit_spin_lock calls into a separate inline and add the RT replacements with a real spinlock. @@ -193,5 +193,5 @@ index 96225a77c112..8a1bcfb145d7 100644 * macro tricks to expand the set_buffer_foo(), clear_buffer_foo() * and buffer_foo() functions. -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0067-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch b/debian/patches-rt/0067-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch index 37ea181f7..4906e5f32 100644 --- a/debian/patches-rt/0067-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch +++ b/debian/patches-rt/0067-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch @@ -1,9 +1,9 @@ -From 52fddde4582134cacf5a692ab51f3d0a43de2efa Mon Sep 17 00:00:00 2001 +From f3f66f83edae0ab6ff7569d6395c5ee3833e8fba Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 18 Mar 2011 10:11:25 +0100 -Subject: [PATCH 067/291] fs: jbd/jbd2: Make state lock and journal head lock +Subject: [PATCH 067/290] fs: jbd/jbd2: Make state lock and journal head lock rt safe -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz bit_spin_locks break under RT. @@ -106,5 +106,5 @@ index 268f3000d1b3..8f5d6ecb802e 100644 #define J_ASSERT(assert) BUG_ON(!(assert)) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0068-list_bl-Make-list-head-locking-RT-safe.patch b/debian/patches-rt/0068-list_bl-Make-list-head-locking-RT-safe.patch index 7099a31c7..f090db122 100644 --- a/debian/patches-rt/0068-list_bl-Make-list-head-locking-RT-safe.patch +++ b/debian/patches-rt/0068-list_bl-Make-list-head-locking-RT-safe.patch @@ -1,8 +1,8 @@ -From 0ce3eda31c573ee39d4b22db00e980f5b2463d15 Mon Sep 17 00:00:00 2001 +From 3023eb220840f37bbc9d31e9959de567cb1aaaae Mon Sep 17 00:00:00 2001 From: Paul Gortmaker Date: Fri, 21 Jun 2013 15:07:25 -0400 -Subject: [PATCH 068/291] list_bl: Make list head locking RT safe -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 068/290] list_bl: Make list head locking RT safe +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz As per changes in include/linux/jbd_common.h for avoiding the bit_spin_locks on RT ("fs: jbd/jbd2: Make state lock and journal @@ -117,5 +117,5 @@ index 3fc2cc57ba1b..69b659259bac 100644 static inline bool hlist_bl_is_locked(struct hlist_bl_head *b) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0069-list_bl-fixup-bogus-lockdep-warning.patch b/debian/patches-rt/0069-list_bl-fixup-bogus-lockdep-warning.patch index fb937fbea..1c9edc623 100644 --- a/debian/patches-rt/0069-list_bl-fixup-bogus-lockdep-warning.patch +++ b/debian/patches-rt/0069-list_bl-fixup-bogus-lockdep-warning.patch @@ -1,8 +1,8 @@ -From 488f7a9c44a9ae28e258ca909a5d338820395943 Mon Sep 17 00:00:00 2001 +From 819674251514107628d4f10edb7514ab08bb57a9 Mon Sep 17 00:00:00 2001 From: Josh Cartwright Date: Thu, 31 Mar 2016 00:04:25 -0500 -Subject: [PATCH 069/291] list_bl: fixup bogus lockdep warning -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 069/290] list_bl: fixup bogus lockdep warning +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz At first glance, the use of 'static inline' seems appropriate for INIT_HLIST_BL_HEAD(). @@ -100,5 +100,5 @@ index 69b659259bac..0b5de7d9ffcf 100644 static inline void INIT_HLIST_BL_NODE(struct hlist_bl_node *h) { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0070-genirq-Disable-irqpoll-on-rt.patch b/debian/patches-rt/0070-genirq-Disable-irqpoll-on-rt.patch index 3e7352436..90239ea40 100644 --- a/debian/patches-rt/0070-genirq-Disable-irqpoll-on-rt.patch +++ b/debian/patches-rt/0070-genirq-Disable-irqpoll-on-rt.patch @@ -1,8 +1,8 @@ -From 082d02b81690735ef8e3879a14bc3b2a01209aa1 Mon Sep 17 00:00:00 2001 +From 672f4d8462083915084e695c9ed600d32fbfcd52 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:29:57 -0500 -Subject: [PATCH 070/291] genirq: Disable irqpoll on -rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 070/290] genirq: Disable irqpoll on -rt +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Creates long latencies for no value @@ -39,5 +39,5 @@ index d867d6ddafdd..cd12ee86c01e 100644 printk(KERN_WARNING "Misrouted IRQ fixup and polling support " "enabled\n"); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0071-genirq-Force-interrupt-thread-on-RT.patch b/debian/patches-rt/0071-genirq-Force-interrupt-thread-on-RT.patch index 8ea398ac5..8178de602 100644 --- a/debian/patches-rt/0071-genirq-Force-interrupt-thread-on-RT.patch +++ b/debian/patches-rt/0071-genirq-Force-interrupt-thread-on-RT.patch @@ -1,8 +1,8 @@ -From a863959ff793c9eb01af152ae87968428df9cef1 Mon Sep 17 00:00:00 2001 +From a2049c3364eae5d13eaaa22d9212c631faf58236 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 3 Apr 2011 11:57:29 +0200 -Subject: [PATCH 071/291] genirq: Force interrupt thread on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 071/290] genirq: Force interrupt thread on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Force threaded_irqs and optimize the code (force_irqthreads) in regard to this. @@ -50,5 +50,5 @@ index 23bcfa71077f..3c26d0708709 100644 static void __synchronize_hardirq(struct irq_desc *desc, bool sync_chip) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0072-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch b/debian/patches-rt/0072-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch index cb6eac591..d203ccd1d 100644 --- a/debian/patches-rt/0072-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch +++ b/debian/patches-rt/0072-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch @@ -1,9 +1,9 @@ -From 40ffd160bf0a9773c74fb394f24a3ff35c8d5c79 Mon Sep 17 00:00:00 2001 +From e8c4b5df495a54c8c5fdf5c34fcbb07a2780e3bd Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Mon, 28 May 2018 15:24:20 +0200 -Subject: [PATCH 072/291] Split IRQ-off and zone->lock while freeing pages from +Subject: [PATCH 072/290] Split IRQ-off and zone->lock while freeing pages from PCP list #1 -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Split the IRQ-off section while accessing the PCP list from zone->lock while freeing pages. @@ -169,5 +169,5 @@ index 74fb5c338e8f..3b51ad4a6089 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0073-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch b/debian/patches-rt/0073-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch index 9acee6973..056c2e622 100644 --- a/debian/patches-rt/0073-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch +++ b/debian/patches-rt/0073-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch @@ -1,9 +1,9 @@ -From b1dd295e939a677f850e22b8baf141e609797430 Mon Sep 17 00:00:00 2001 +From acc79cbb82bc621f748cafcab53e6038456ee194 Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Mon, 28 May 2018 15:24:21 +0200 -Subject: [PATCH 073/291] Split IRQ-off and zone->lock while freeing pages from +Subject: [PATCH 073/290] Split IRQ-off and zone->lock while freeing pages from PCP list #2 -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Split the IRQ-off section while accessing the PCP list from zone->lock while freeing pages. @@ -168,5 +168,5 @@ index 3b51ad4a6089..49f7bb170b4d 100644 /* -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0074-mm-SLxB-change-list_lock-to-raw_spinlock_t.patch b/debian/patches-rt/0074-mm-SLxB-change-list_lock-to-raw_spinlock_t.patch index 749545057..49407ecdd 100644 --- a/debian/patches-rt/0074-mm-SLxB-change-list_lock-to-raw_spinlock_t.patch +++ b/debian/patches-rt/0074-mm-SLxB-change-list_lock-to-raw_spinlock_t.patch @@ -1,8 +1,8 @@ -From 0109dfb313df01af85a47ff0105038b1e7ddb7df Mon Sep 17 00:00:00 2001 +From 110ed1923c52a4d9ec01080e38ec6a48b9254b32 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 28 May 2018 15:24:22 +0200 -Subject: [PATCH 074/291] mm/SLxB: change list_lock to raw_spinlock_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 074/290] mm/SLxB: change list_lock to raw_spinlock_t +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The list_lock is used with used with IRQs off on RT. Make it a raw_spinlock_t otherwise the interrupts won't be disabled on -RT. The locking rules remain @@ -615,5 +615,5 @@ index 9c3937c5ce38..ba20c68a9cfd 100644 for (i = 0; i < t.count; i++) { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0075-mm-SLUB-delay-giving-back-empty-slubs-to-IRQ-enabled.patch b/debian/patches-rt/0075-mm-SLUB-delay-giving-back-empty-slubs-to-IRQ-enabled.patch index bc9b924e0..b1fc3a298 100644 --- a/debian/patches-rt/0075-mm-SLUB-delay-giving-back-empty-slubs-to-IRQ-enabled.patch +++ b/debian/patches-rt/0075-mm-SLUB-delay-giving-back-empty-slubs-to-IRQ-enabled.patch @@ -1,9 +1,9 @@ -From 19ad8a9e854096d3fac2791a2efea9224d34c773 Mon Sep 17 00:00:00 2001 +From 4a3bfadbedbdbba560abbf1073deacf963fcbc6a Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 21 Jun 2018 17:29:19 +0200 -Subject: [PATCH 075/291] mm/SLUB: delay giving back empty slubs to IRQ enabled +Subject: [PATCH 075/290] mm/SLUB: delay giving back empty slubs to IRQ enabled regions -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz __free_slab() is invoked with disabled interrupts which increases the irq-off time while __free_pages() is doing the work. @@ -219,5 +219,5 @@ index ba20c68a9cfd..224663e20772 100644 if (debug_guardpage_minorder()) slub_max_order = 0; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0076-mm-page_alloc-rt-friendly-per-cpu-pages.patch b/debian/patches-rt/0076-mm-page_alloc-rt-friendly-per-cpu-pages.patch index 605ab061a..c2c2cd1f0 100644 --- a/debian/patches-rt/0076-mm-page_alloc-rt-friendly-per-cpu-pages.patch +++ b/debian/patches-rt/0076-mm-page_alloc-rt-friendly-per-cpu-pages.patch @@ -1,8 +1,8 @@ -From 74ac2aa47d12cbb0d7bbb1cdc0ff04ea92341862 Mon Sep 17 00:00:00 2001 +From b2dcde8f1c9f1175f30723fc2d3fe6aaabe087ea Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:29:37 -0500 -Subject: [PATCH 076/291] mm: page_alloc: rt-friendly per-cpu pages -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 076/290] mm: page_alloc: rt-friendly per-cpu pages +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz rt-friendly per-cpu pages: convert the irqs-off per-cpu locking method into a preemptible, explicit-per-cpu-locks method. @@ -235,5 +235,5 @@ index 49f7bb170b4d..bff6c04eb359 100644 #ifdef CONFIG_MEMORY_HOTREMOVE -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0077-mm-swap-Convert-to-percpu-locked.patch b/debian/patches-rt/0077-mm-swap-Convert-to-percpu-locked.patch index ac2f3fb03..ace9c4afa 100644 --- a/debian/patches-rt/0077-mm-swap-Convert-to-percpu-locked.patch +++ b/debian/patches-rt/0077-mm-swap-Convert-to-percpu-locked.patch @@ -1,8 +1,8 @@ -From 82680c2474fe5d30728dcb7680d590e65182d84e Mon Sep 17 00:00:00 2001 +From 3350882474566687c3916a408fd9097ef4656f0b Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:29:51 -0500 -Subject: [PATCH 077/291] mm/swap: Convert to percpu locked -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 077/290] mm/swap: Convert to percpu locked +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Replace global locks (get_cpu + local_irq_save) with "local_locks()". Currently there is one of for "rotate" and one for "swap". @@ -207,5 +207,5 @@ index 45fdbfb6b2a6..92f994b962f0 100644 #ifdef CONFIG_SMP -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0078-mm-perform-lru_add_drain_all-remotely.patch b/debian/patches-rt/0078-mm-perform-lru_add_drain_all-remotely.patch index c73e0aa12..a85d27997 100644 --- a/debian/patches-rt/0078-mm-perform-lru_add_drain_all-remotely.patch +++ b/debian/patches-rt/0078-mm-perform-lru_add_drain_all-remotely.patch @@ -1,8 +1,8 @@ -From 9f92e71858249e17821b12562d9a9436e59c78ba Mon Sep 17 00:00:00 2001 +From 86cb58e9a8ac63e967bb1b1cfce05718c20cacb8 Mon Sep 17 00:00:00 2001 From: Luiz Capitulino Date: Fri, 27 May 2016 15:03:28 +0200 -Subject: [PATCH 078/291] mm: perform lru_add_drain_all() remotely -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 078/290] mm: perform lru_add_drain_all() remotely +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz lru_add_drain_all() works by scheduling lru_add_drain_cpu() to run on all CPUs that have non-empty LRU pagevecs and then waiting for @@ -105,5 +105,5 @@ index 92f994b962f0..3885645a45ce 100644 mutex_unlock(&lock); } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0079-mm-vmstat-Protect-per-cpu-variables-with-preempt-dis.patch b/debian/patches-rt/0079-mm-vmstat-Protect-per-cpu-variables-with-preempt-dis.patch index b491f7d33..e77cf055d 100644 --- a/debian/patches-rt/0079-mm-vmstat-Protect-per-cpu-variables-with-preempt-dis.patch +++ b/debian/patches-rt/0079-mm-vmstat-Protect-per-cpu-variables-with-preempt-dis.patch @@ -1,9 +1,9 @@ -From c76d6094a239d12a17547e882af4b200f31c5a5c Mon Sep 17 00:00:00 2001 +From 23db125cbdadfa2ec3477b09b2735a77aa683c64 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:30:13 -0500 -Subject: [PATCH 079/291] mm/vmstat: Protect per cpu variables with preempt +Subject: [PATCH 079/290] mm/vmstat: Protect per cpu variables with preempt disable on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Disable preemption on -RT for the vmstat code. On vanila the code runs in IRQ-off regions while on -RT it is not. "preempt_disable" ensures that the @@ -141,5 +141,5 @@ index ce81b0a7d018..cfa2a3bbdf91 100644 void __dec_zone_page_state(struct page *page, enum zone_stat_item item) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0080-ARM-Initialize-split-page-table-locks-for-vector-pag.patch b/debian/patches-rt/0080-ARM-Initialize-split-page-table-locks-for-vector-pag.patch index 5856676a3..091e10b75 100644 --- a/debian/patches-rt/0080-ARM-Initialize-split-page-table-locks-for-vector-pag.patch +++ b/debian/patches-rt/0080-ARM-Initialize-split-page-table-locks-for-vector-pag.patch @@ -1,9 +1,9 @@ -From 78052a354c73655898ed1cefbe47eb18954eebf6 Mon Sep 17 00:00:00 2001 +From 361d54ae02b6b48ee93c86c2abdeee149a8d04be Mon Sep 17 00:00:00 2001 From: Frank Rowand Date: Sat, 1 Oct 2011 18:58:13 -0700 -Subject: [PATCH 080/291] ARM: Initialize split page table locks for vector +Subject: [PATCH 080/290] ARM: Initialize split page table locks for vector page -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Without this patch, ARM can not use SPLIT_PTLOCK_CPUS if PREEMPT_RT_FULL=y because vectors_user_mapping() creates a @@ -72,5 +72,5 @@ index 82ab015bf42b..8d3c7ce34c24 100644 /* * The vectors page is always readable from user space for the -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0081-mm-Enable-SLUB-for-RT.patch b/debian/patches-rt/0081-mm-Enable-SLUB-for-RT.patch index 4615c74a0..29d257fd2 100644 --- a/debian/patches-rt/0081-mm-Enable-SLUB-for-RT.patch +++ b/debian/patches-rt/0081-mm-Enable-SLUB-for-RT.patch @@ -1,8 +1,8 @@ -From e2165a1c6c5a4c2b80c3b5131bdd7c9531e5966d Mon Sep 17 00:00:00 2001 +From 4c7a8a89b8b16cb2733dc45aae256c0fda1c34c8 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 25 Oct 2012 10:32:35 +0100 -Subject: [PATCH 081/291] mm: Enable SLUB for RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 081/290] mm: Enable SLUB for RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Avoid the memory allocation in IRQ section @@ -38,5 +38,5 @@ index 224663e20772..cbe47408c6eb 100644 /* -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0082-slub-Enable-irqs-for-__GFP_WAIT.patch b/debian/patches-rt/0082-slub-Enable-irqs-for-__GFP_WAIT.patch index 94dcd1c82..4aaed772b 100644 --- a/debian/patches-rt/0082-slub-Enable-irqs-for-__GFP_WAIT.patch +++ b/debian/patches-rt/0082-slub-Enable-irqs-for-__GFP_WAIT.patch @@ -1,8 +1,8 @@ -From df25287facb539725b686abab7eb72e03d137972 Mon Sep 17 00:00:00 2001 +From 2d3739e2e7cae9db7fe6affbc747b7f06dc42613 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 9 Jan 2013 12:08:15 +0100 -Subject: [PATCH 082/291] slub: Enable irqs for __GFP_WAIT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 082/290] slub: Enable irqs for __GFP_WAIT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz SYSTEM_RUNNING might be too late for enabling interrupts. Allocations with GFP_WAIT can happen before that. So use this as an indicator. @@ -44,5 +44,5 @@ index cbe47408c6eb..81c32ceab228 100644 if (!page) return NULL; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0083-slub-Disable-SLUB_CPU_PARTIAL.patch b/debian/patches-rt/0083-slub-Disable-SLUB_CPU_PARTIAL.patch index 906890272..46eee9c36 100644 --- a/debian/patches-rt/0083-slub-Disable-SLUB_CPU_PARTIAL.patch +++ b/debian/patches-rt/0083-slub-Disable-SLUB_CPU_PARTIAL.patch @@ -1,8 +1,8 @@ -From 3f7490c09bf723709d2ab78d73e8af75d175d1f6 Mon Sep 17 00:00:00 2001 +From d4993fa5aea9eed8f9fce53e94e226f2504eda18 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 15 Apr 2015 19:00:47 +0200 -Subject: [PATCH 083/291] slub: Disable SLUB_CPU_PARTIAL -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 083/290] slub: Disable SLUB_CPU_PARTIAL +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz |BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:915 |in_atomic(): 1, irqs_disabled(): 0, pid: 87, name: rcuop/7 @@ -50,5 +50,5 @@ index 61e8b531649b..b4e88fb19c26 100644 help Per cpu partial caches accellerate objects allocation and freeing -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0084-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch b/debian/patches-rt/0084-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch index e87a5c316..b98b76910 100644 --- a/debian/patches-rt/0084-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch +++ b/debian/patches-rt/0084-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch @@ -1,9 +1,9 @@ -From 1465f1fb6c510e3b455896a89b990af4f7d31dd8 Mon Sep 17 00:00:00 2001 +From 17e8b2696494bfeee71425d3acac4608ac97b45d Mon Sep 17 00:00:00 2001 From: Yang Shi Date: Wed, 30 Oct 2013 11:48:33 -0700 -Subject: [PATCH 084/291] mm/memcontrol: Don't call schedule_work_on in +Subject: [PATCH 084/290] mm/memcontrol: Don't call schedule_work_on in preemption disabled context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The following trace is triggered when running ltp oom test cases: @@ -71,5 +71,5 @@ index 3a3d109dce21..cf9e81fb342d 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0085-mm-memcontrol-Replace-local_irq_disable-with-local-l.patch b/debian/patches-rt/0085-mm-memcontrol-Replace-local_irq_disable-with-local-l.patch index 3352afa1b..565cf0f74 100644 --- a/debian/patches-rt/0085-mm-memcontrol-Replace-local_irq_disable-with-local-l.patch +++ b/debian/patches-rt/0085-mm-memcontrol-Replace-local_irq_disable-with-local-l.patch @@ -1,9 +1,9 @@ -From 4e9211f677ea1a456883db3c665ffd31a8a974f2 Mon Sep 17 00:00:00 2001 +From 43548b6188b27097898381e2f1548ff656f4d127 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 28 Jan 2015 17:14:16 +0100 -Subject: [PATCH 085/291] mm/memcontrol: Replace local_irq_disable with local +Subject: [PATCH 085/290] mm/memcontrol: Replace local_irq_disable with local locks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz There are a few local_irq_disable() which then take sleeping locks. This patch converts them local locks. @@ -120,5 +120,5 @@ index cf9e81fb342d..421ac74450f6 100644 /** -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0086-mm-zsmalloc-copy-with-get_cpu_var-and-locking.patch b/debian/patches-rt/0086-mm-zsmalloc-copy-with-get_cpu_var-and-locking.patch index adceb6de4..f2c6fec00 100644 --- a/debian/patches-rt/0086-mm-zsmalloc-copy-with-get_cpu_var-and-locking.patch +++ b/debian/patches-rt/0086-mm-zsmalloc-copy-with-get_cpu_var-and-locking.patch @@ -1,8 +1,8 @@ -From b76cb69dc727feca28a95ed7912d3c1a32b7f9b3 Mon Sep 17 00:00:00 2001 +From 6b63a10dc279d7aa3134caeb249969ae7af3f010 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Tue, 22 Mar 2016 11:16:09 +0100 -Subject: [PATCH 086/291] mm/zsmalloc: copy with get_cpu_var() and locking -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 086/290] mm/zsmalloc: copy with get_cpu_var() and locking +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz get_cpu_var() disables preemption and triggers a might_sleep() splat later. This is replaced with get_locked_var(). @@ -18,7 +18,7 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 74 insertions(+), 6 deletions(-) diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c -index 4b9063d12b93..1a2f6c13acbd 100644 +index 85cc29c93d93..63e83b47fa99 100644 --- a/mm/zsmalloc.c +++ b/mm/zsmalloc.c @@ -56,6 +56,7 @@ @@ -199,5 +199,5 @@ index 4b9063d12b93..1a2f6c13acbd 100644 migrate_read_unlock(zspage); unpin_tag(handle); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0087-x86-mm-pat-disable-preemption-__split_large_page-aft.patch b/debian/patches-rt/0087-x86-mm-pat-disable-preemption-__split_large_page-aft.patch index a8b3a7ddd..2a70f2045 100644 --- a/debian/patches-rt/0087-x86-mm-pat-disable-preemption-__split_large_page-aft.patch +++ b/debian/patches-rt/0087-x86-mm-pat-disable-preemption-__split_large_page-aft.patch @@ -1,9 +1,9 @@ -From b12c6aa5ca0abacc6642ef5f9664a38eebc659e0 Mon Sep 17 00:00:00 2001 +From 3596d839ec05c759a409ec3c9fb058b89bc43de8 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 11 Dec 2018 21:53:43 +0100 -Subject: [PATCH 087/291] x86/mm/pat: disable preemption __split_large_page() +Subject: [PATCH 087/290] x86/mm/pat: disable preemption __split_large_page() after spin_lock() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Commit "x86/mm/pat: Disable preemption around __flush_tlb_all()" added a warning if __flush_tlb_all() is invoked in preemptible context. On !RT @@ -58,5 +58,5 @@ index e2d4b25c7aa4..9626ebb9e3c8 100644 return 0; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0088-radix-tree-use-local-locks.patch b/debian/patches-rt/0088-radix-tree-use-local-locks.patch index ec08a7c6f..96901c9ae 100644 --- a/debian/patches-rt/0088-radix-tree-use-local-locks.patch +++ b/debian/patches-rt/0088-radix-tree-use-local-locks.patch @@ -1,8 +1,8 @@ -From 3bb3dc105ca3567ed9a3c0949c34212b6e1e29ab Mon Sep 17 00:00:00 2001 +From 2ca56bb81f83515755165c1c638655a4120b1b06 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 25 Jan 2017 16:34:27 +0100 -Subject: [PATCH 088/291] radix-tree: use local locks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 088/290] radix-tree: use local locks +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The preload functionality uses per-CPU variables and preempt-disable to ensure that it does not switch CPUs during its usage. This patch adds @@ -172,5 +172,5 @@ index e5cab5c4e383..9309e813bc1f 100644 if (!this_cpu_read(ida_bitmap)) { struct ida_bitmap *bitmap = kzalloc(sizeof(*bitmap), gfp); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0089-timers-Prepare-for-full-preemption.patch b/debian/patches-rt/0089-timers-Prepare-for-full-preemption.patch index 568f19bcc..a2bfc31ae 100644 --- a/debian/patches-rt/0089-timers-Prepare-for-full-preemption.patch +++ b/debian/patches-rt/0089-timers-Prepare-for-full-preemption.patch @@ -1,8 +1,8 @@ -From ae4363243810267b721cd1cc91172504af20f458 Mon Sep 17 00:00:00 2001 +From c87cd9494b5ba0149620db6bc1655edbe04f9c9d Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:29:34 -0500 -Subject: [PATCH 089/291] timers: Prepare for full preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 089/290] timers: Prepare for full preemption +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz When softirqs can be preempted we need to make sure that cancelling the timer from the active thread can not deadlock vs. a running timer @@ -172,5 +172,5 @@ index ae64cb819a9a..9019c9caf146 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0090-x86-kvm-Require-const-tsc-for-RT.patch b/debian/patches-rt/0090-x86-kvm-Require-const-tsc-for-RT.patch index 37d48469d..5e23b80e9 100644 --- a/debian/patches-rt/0090-x86-kvm-Require-const-tsc-for-RT.patch +++ b/debian/patches-rt/0090-x86-kvm-Require-const-tsc-for-RT.patch @@ -1,8 +1,8 @@ -From 69f6cf117a94ffa2e96367a29529767dcb1d8e01 Mon Sep 17 00:00:00 2001 +From 70c79c38cb1e81d8cffa19dc562b629dcde98c6c Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 6 Nov 2011 12:26:18 +0100 -Subject: [PATCH 090/291] x86: kvm Require const tsc for RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 090/290] x86: kvm Require const tsc for RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Non constant TSC is a nightmare on bare metal already, but with virtualization it becomes a complete disaster because the workarounds @@ -33,5 +33,5 @@ index 353f63f3b262..2611898419ff 100644 if (r) goto out_free_percpu; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0091-pci-switchtec-Don-t-use-completion-s-wait-queue.patch b/debian/patches-rt/0091-pci-switchtec-Don-t-use-completion-s-wait-queue.patch index a76c2201d..0dac9fe70 100644 --- a/debian/patches-rt/0091-pci-switchtec-Don-t-use-completion-s-wait-queue.patch +++ b/debian/patches-rt/0091-pci-switchtec-Don-t-use-completion-s-wait-queue.patch @@ -1,8 +1,8 @@ -From 841762dfdf68aeabfd6b0fa45b6337f55e632550 Mon Sep 17 00:00:00 2001 +From cffa5c3f97fb6ad83cf3d770f5297f879f6efc36 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 4 Oct 2017 10:24:23 +0200 -Subject: [PATCH 091/291] pci/switchtec: Don't use completion's wait queue -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 091/290] pci/switchtec: Don't use completion's wait queue +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The poll callback is using completion's wait_queue_head_t member and puts it in poll_wait() so the poll() caller gets a wakeup after command @@ -111,5 +111,5 @@ index 72db2e0ebced..77d4fb86d05b 100644 stuser_put(stuser); } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0092-wait.h-include-atomic.h.patch b/debian/patches-rt/0092-wait.h-include-atomic.h.patch index 744d288ed..3dc80ace6 100644 --- a/debian/patches-rt/0092-wait.h-include-atomic.h.patch +++ b/debian/patches-rt/0092-wait.h-include-atomic.h.patch @@ -1,11 +1,11 @@ -From 4d037c94e1a96fbb44377bb71fb62678ddeadf5f Mon Sep 17 00:00:00 2001 +From 0aafaa8df18cf87cf491f2592b9c378667766a62 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 28 Oct 2013 12:19:57 +0100 -Subject: [PATCH 092/291] wait.h: include atomic.h +Subject: [PATCH 092/290] wait.h: include atomic.h MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz | CC init/main.o |In file included from include/linux/mmzone.h:9:0, @@ -38,5 +38,5 @@ index ed7c122cb31f..2b5ef8e94d19 100644 typedef struct wait_queue_entry wait_queue_entry_t; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0093-work-simple-Simple-work-queue-implemenation.patch b/debian/patches-rt/0093-work-simple-Simple-work-queue-implemenation.patch index 601c8d6cf..cc44b5f9f 100644 --- a/debian/patches-rt/0093-work-simple-Simple-work-queue-implemenation.patch +++ b/debian/patches-rt/0093-work-simple-Simple-work-queue-implemenation.patch @@ -1,8 +1,8 @@ -From 678ffba561d271dc2b667925993a805e3e704fa6 Mon Sep 17 00:00:00 2001 +From eccea3070c1d002aaa2a9cbdaaee36e65f5d06cf Mon Sep 17 00:00:00 2001 From: Daniel Wagner Date: Fri, 11 Jul 2014 15:26:11 +0200 -Subject: [PATCH 093/291] work-simple: Simple work queue implemenation -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 093/290] work-simple: Simple work queue implemenation +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Provides a framework for enqueuing callbacks from irq context PREEMPT_RT_FULL safe. The callbacks are executed in kthread context. @@ -242,5 +242,5 @@ index 000000000000..a5b89fdacf19 +} +EXPORT_SYMBOL_GPL(swork_put); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0094-work-simple-drop-a-shit-statement-in-SWORK_EVENT_PEN.patch b/debian/patches-rt/0094-work-simple-drop-a-shit-statement-in-SWORK_EVENT_PEN.patch index 8c4e935a8..36bf7196e 100644 --- a/debian/patches-rt/0094-work-simple-drop-a-shit-statement-in-SWORK_EVENT_PEN.patch +++ b/debian/patches-rt/0094-work-simple-drop-a-shit-statement-in-SWORK_EVENT_PEN.patch @@ -1,9 +1,9 @@ -From e630efe32f11a9b6bb1cd2125d72c2042aabdf79 Mon Sep 17 00:00:00 2001 +From cb2283a50926db7e39bf3643c28a9c8c73a3263a Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 10 Sep 2018 18:00:31 +0200 -Subject: [PATCH 094/291] work-simple: drop a shit statement in +Subject: [PATCH 094/290] work-simple: drop a shit statement in SWORK_EVENT_PENDING -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Dan Carpenter reported | smatch warnings: @@ -33,5 +33,5 @@ index a5b89fdacf19..c90d14b9b126 100644 static DEFINE_MUTEX(worker_mutex); static struct sworker *glob_worker; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0095-completion-Use-simple-wait-queues.patch b/debian/patches-rt/0095-completion-Use-simple-wait-queues.patch index 6ca2240d0..0c97b3f2e 100644 --- a/debian/patches-rt/0095-completion-Use-simple-wait-queues.patch +++ b/debian/patches-rt/0095-completion-Use-simple-wait-queues.patch @@ -1,8 +1,8 @@ -From 501d25c451ea4875bcaaf1e03db60549693b5b02 Mon Sep 17 00:00:00 2001 +From 93e59514ca04f36ad3f87b3c0da5be1e0b9d238f Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 11 Jan 2013 11:23:51 +0100 -Subject: [PATCH 095/291] completion: Use simple wait queues -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 095/290] completion: Use simple wait queues +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Completions have no long lasting callbacks and therefor do not need the complex waitqueue variant. Use simple waitqueues which reduces the @@ -387,5 +387,5 @@ index 66b59ac77c22..c7cb30cdd1b7 100644 wait->task = current; if (list_empty(&wait->task_list)) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0096-fs-aio-simple-simple-work.patch b/debian/patches-rt/0096-fs-aio-simple-simple-work.patch index 73b5fcfd0..38f660b93 100644 --- a/debian/patches-rt/0096-fs-aio-simple-simple-work.patch +++ b/debian/patches-rt/0096-fs-aio-simple-simple-work.patch @@ -1,8 +1,8 @@ -From 9765896344d21aacd56cf3e8a1f2f1c1e30779cf Mon Sep 17 00:00:00 2001 +From 864971842ede76748f6c198f112d6857b19196fa Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 16 Feb 2015 18:49:10 +0100 -Subject: [PATCH 096/291] fs/aio: simple simple work -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 096/290] fs/aio: simple simple work +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz |BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:768 |in_atomic(): 1, irqs_disabled(): 0, pid: 26, name: rcuos/2 @@ -85,5 +85,5 @@ index 911e23087dfb..16dcf8521c2c 100644 { unsigned i, new_nr; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0097-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch b/debian/patches-rt/0097-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch index 27ae5be67..27a51b3b6 100644 --- a/debian/patches-rt/0097-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch +++ b/debian/patches-rt/0097-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch @@ -1,9 +1,9 @@ -From 3b496e3467c3a76558a4d6695e60bc78481b30db Mon Sep 17 00:00:00 2001 +From 06003e1c96291d4d372f2e31c988999c2ef34f31 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 21 Aug 2013 17:48:46 +0200 -Subject: [PATCH 097/291] genirq: Do not invoke the affinity callback via a +Subject: [PATCH 097/290] genirq: Do not invoke the affinity callback via a workqueue on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Joe Korty reported, that __irq_set_affinity_locked() schedules a workqueue while holding a rawlock which results in a might_sleep() @@ -138,5 +138,5 @@ index 3c26d0708709..eadcbfbd434a 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0098-time-hrtimer-avoid-schedule_work-with-interrupts-dis.patch b/debian/patches-rt/0098-time-hrtimer-avoid-schedule_work-with-interrupts-dis.patch index d5ec4572e..e827aa9b0 100644 --- a/debian/patches-rt/0098-time-hrtimer-avoid-schedule_work-with-interrupts-dis.patch +++ b/debian/patches-rt/0098-time-hrtimer-avoid-schedule_work-with-interrupts-dis.patch @@ -1,9 +1,9 @@ -From 46d2a1a8dce9bfd02328affe4407e51245bbf34d Mon Sep 17 00:00:00 2001 +From cd74856820b82cb80ddd3b12dde3caad12642b3c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 15 Nov 2017 17:29:51 +0100 -Subject: [PATCH 098/291] time/hrtimer: avoid schedule_work() with interrupts +Subject: [PATCH 098/290] time/hrtimer: avoid schedule_work() with interrupts disabled -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The NOHZ code tries to schedule a workqueue with interrupts disabled. Since this does not work -RT I am switching it to swork instead. @@ -56,5 +56,5 @@ index 9019c9caf146..3fab1c50bf1b 100644 void __user *buffer, size_t *lenp, loff_t *ppos) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0099-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch b/debian/patches-rt/0099-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch index ad0587921..597487347 100644 --- a/debian/patches-rt/0099-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch +++ b/debian/patches-rt/0099-hrtimer-consolidate-hrtimer_init-hrtimer_init_sleepe.patch @@ -1,9 +1,9 @@ -From 60c6d506604f96849de575eab0339febb39c5058 Mon Sep 17 00:00:00 2001 +From 8553725681eb8c0f78dad5fb1ef542301586e9ff Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 3 Jul 2018 11:25:41 +0200 -Subject: [PATCH 099/291] hrtimer: consolidate hrtimer_init() + +Subject: [PATCH 099/290] hrtimer: consolidate hrtimer_init() + hrtimer_init_sleeper() calls -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz hrtimer_init_sleeper() calls require a prior initialisation of the hrtimer object with hrtimer_init(). Lets make the initialisation of @@ -63,7 +63,7 @@ index 22571abcaa4e..78a529d363f3 100644 while (1) { diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h -index 3892e9c8b2de..b8bbaabd5aff 100644 +index 542b4fa2cda9..cbd041b22088 100644 --- a/include/linux/hrtimer.h +++ b/include/linux/hrtimer.h @@ -364,10 +364,17 @@ DECLARE_PER_CPU(struct tick_device, tick_cpu_device); @@ -100,7 +100,7 @@ index 3892e9c8b2de..b8bbaabd5aff 100644 static inline void destroy_hrtimer_on_stack(struct hrtimer *timer) { } #endif -@@ -480,9 +496,6 @@ extern long hrtimer_nanosleep(const struct timespec64 *rqtp, +@@ -486,9 +502,6 @@ extern long hrtimer_nanosleep(const struct timespec64 *rqtp, const enum hrtimer_mode mode, const clockid_t clockid); @@ -170,10 +170,10 @@ index 5c8053098fc8..23e1f8a478e8 100644 current->timer_slack_ns); } diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c -index e1a549c9e399..4f43ece42f3b 100644 +index 7362554416fd..c6f755495a63 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c -@@ -1648,13 +1648,44 @@ static enum hrtimer_restart hrtimer_wakeup(struct hrtimer *timer) +@@ -1651,13 +1651,44 @@ static enum hrtimer_restart hrtimer_wakeup(struct hrtimer *timer) return HRTIMER_NORESTART; } @@ -219,7 +219,7 @@ index e1a549c9e399..4f43ece42f3b 100644 int nanosleep_copyout(struct restart_block *restart, struct timespec64 *ts) { switch(restart->nanosleep.type) { -@@ -1678,8 +1709,6 @@ static int __sched do_nanosleep(struct hrtimer_sleeper *t, enum hrtimer_mode mod +@@ -1681,8 +1712,6 @@ static int __sched do_nanosleep(struct hrtimer_sleeper *t, enum hrtimer_mode mod { struct restart_block *restart; @@ -228,7 +228,7 @@ index e1a549c9e399..4f43ece42f3b 100644 do { set_current_state(TASK_INTERRUPTIBLE); hrtimer_start_expires(&t->timer, mode); -@@ -1716,10 +1745,9 @@ static long __sched hrtimer_nanosleep_restart(struct restart_block *restart) +@@ -1719,10 +1748,9 @@ static long __sched hrtimer_nanosleep_restart(struct restart_block *restart) struct hrtimer_sleeper t; int ret; @@ -241,7 +241,7 @@ index e1a549c9e399..4f43ece42f3b 100644 ret = do_nanosleep(&t, HRTIMER_MODE_ABS); destroy_hrtimer_on_stack(&t.timer); return ret; -@@ -1737,7 +1765,7 @@ long hrtimer_nanosleep(const struct timespec64 *rqtp, +@@ -1740,7 +1768,7 @@ long hrtimer_nanosleep(const struct timespec64 *rqtp, if (dl_task(current) || rt_task(current)) slack = 0; @@ -250,7 +250,7 @@ index e1a549c9e399..4f43ece42f3b 100644 hrtimer_set_expires_range_ns(&t.timer, timespec64_to_ktime(*rqtp), slack); ret = do_nanosleep(&t, mode); if (ret != -ERESTART_RESTARTBLOCK) -@@ -1936,11 +1964,9 @@ schedule_hrtimeout_range_clock(ktime_t *expires, u64 delta, +@@ -1939,11 +1967,9 @@ schedule_hrtimeout_range_clock(ktime_t *expires, u64 delta, return -EINTR; } @@ -286,5 +286,5 @@ index 092fa3d75b32..9d472d626aaa 100644 set_current_state(TASK_INTERRUPTIBLE); hrtimer_start_expires(&t.timer, HRTIMER_MODE_ABS); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0100-hrtimers-Prepare-full-preemption.patch b/debian/patches-rt/0100-hrtimers-Prepare-full-preemption.patch index 9ca5d2464..78c052474 100644 --- a/debian/patches-rt/0100-hrtimers-Prepare-full-preemption.patch +++ b/debian/patches-rt/0100-hrtimers-Prepare-full-preemption.patch @@ -1,8 +1,8 @@ -From bc582bb1287556dc87a84d176e9bc098647196a3 Mon Sep 17 00:00:00 2001 +From e033fc3f9345af04f20c1d45fa8ee453caaf5b1c Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:29:34 -0500 -Subject: [PATCH 100/291] hrtimers: Prepare full preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 100/290] hrtimers: Prepare full preemption +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Make cancellation of a running callback in softirq context safe against preemption. @@ -36,7 +36,7 @@ index d69ad801eb80..82d0f52414a6 100644 /* diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h -index b8bbaabd5aff..73ad7309436a 100644 +index cbd041b22088..8714f1a37d84 100644 --- a/include/linux/hrtimer.h +++ b/include/linux/hrtimer.h @@ -22,6 +22,7 @@ @@ -71,7 +71,7 @@ index b8bbaabd5aff..73ad7309436a 100644 /* Query timers: */ extern ktime_t __hrtimer_get_remaining(const struct hrtimer *timer, bool adjust); -@@ -458,7 +469,7 @@ static inline int hrtimer_is_queued(struct hrtimer *timer) +@@ -464,7 +475,7 @@ static inline bool hrtimer_is_queued(struct hrtimer *timer) * Helper function to check, whether the timer is running the callback * function */ @@ -108,7 +108,7 @@ index f4255a65c44b..1d1f077cffb3 100644 } EXPORT_SYMBOL_GPL(alarm_cancel); diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c -index 4f43ece42f3b..923a650e5c35 100644 +index c6f755495a63..e135cb27db39 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c @@ -939,6 +939,33 @@ u64 hrtimer_forward(struct hrtimer *timer, ktime_t now, ktime_t interval) @@ -145,7 +145,7 @@ index 4f43ece42f3b..923a650e5c35 100644 /* * enqueue_hrtimer - internal function to (re)start a timer * -@@ -1171,7 +1198,7 @@ int hrtimer_cancel(struct hrtimer *timer) +@@ -1174,7 +1201,7 @@ int hrtimer_cancel(struct hrtimer *timer) if (ret >= 0) return ret; @@ -154,7 +154,7 @@ index 4f43ece42f3b..923a650e5c35 100644 } } EXPORT_SYMBOL_GPL(hrtimer_cancel); -@@ -1477,6 +1504,7 @@ static __latent_entropy void hrtimer_run_softirq(struct softirq_action *h) +@@ -1480,6 +1507,7 @@ static __latent_entropy void hrtimer_run_softirq(struct softirq_action *h) hrtimer_update_softirq_timer(cpu_base, true); raw_spin_unlock_irqrestore(&cpu_base->lock, flags); @@ -162,7 +162,7 @@ index 4f43ece42f3b..923a650e5c35 100644 } #ifdef CONFIG_HIGH_RES_TIMERS -@@ -1846,6 +1874,9 @@ int hrtimers_prepare_cpu(unsigned int cpu) +@@ -1849,6 +1877,9 @@ int hrtimers_prepare_cpu(unsigned int cpu) cpu_base->softirq_next_timer = NULL; cpu_base->expires_next = KTIME_MAX; cpu_base->softirq_expires_next = KTIME_MAX; @@ -286,5 +286,5 @@ index 5a01c4fdbfef..a5ec421e3437 100644 } list_del(&timer->list); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0101-hrtimer-by-timers-by-default-into-the-softirq-contex.patch b/debian/patches-rt/0101-hrtimer-by-timers-by-default-into-the-softirq-contex.patch index 17c267ec9..ac4ef8535 100644 --- a/debian/patches-rt/0101-hrtimer-by-timers-by-default-into-the-softirq-contex.patch +++ b/debian/patches-rt/0101-hrtimer-by-timers-by-default-into-the-softirq-contex.patch @@ -1,9 +1,9 @@ -From e9a7b277a228256c44836983088b956e32bf3dda Mon Sep 17 00:00:00 2001 +From b26ce46313b85d2d4f52b053c1602b3c6d3e3f9f Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 3 Jul 2009 08:44:31 -0500 -Subject: [PATCH 101/291] hrtimer: by timers by default into the softirq +Subject: [PATCH 101/290] hrtimer: by timers by default into the softirq context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz We can't have hrtimers callbacks running in hardirq context on RT. Therefore the timers are deferred to the softirq context by default. @@ -42,7 +42,7 @@ index 262e49301cae..c2f51b6e8974 100644 /* diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h -index 73ad7309436a..2bdb047c7656 100644 +index 8714f1a37d84..082147c07831 100644 --- a/include/linux/hrtimer.h +++ b/include/linux/hrtimer.h @@ -42,6 +42,7 @@ enum hrtimer_mode { @@ -145,10 +145,10 @@ index b6ca4a630050..aeb99395c03b 100644 } diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c -index 923a650e5c35..abf24e60b6e8 100644 +index e135cb27db39..1fd5ec39e7f4 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c -@@ -1135,7 +1135,9 @@ void hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim, +@@ -1138,7 +1138,9 @@ void hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim, * Check whether the HRTIMER_MODE_SOFT bit and hrtimer.is_soft * match. */ @@ -158,7 +158,7 @@ index 923a650e5c35..abf24e60b6e8 100644 base = lock_hrtimer_base(timer, &flags); -@@ -1295,10 +1297,17 @@ static inline int hrtimer_clockid_to_base(clockid_t clock_id) +@@ -1298,10 +1300,17 @@ static inline int hrtimer_clockid_to_base(clockid_t clock_id) static void __hrtimer_init(struct hrtimer *timer, clockid_t clock_id, enum hrtimer_mode mode) { @@ -178,7 +178,7 @@ index 923a650e5c35..abf24e60b6e8 100644 memset(timer, 0, sizeof(struct hrtimer)); cpu_base = raw_cpu_ptr(&hrtimer_bases); -@@ -1681,6 +1690,14 @@ static void __hrtimer_init_sleeper(struct hrtimer_sleeper *sl, +@@ -1684,6 +1693,14 @@ static void __hrtimer_init_sleeper(struct hrtimer_sleeper *sl, enum hrtimer_mode mode, struct task_struct *task) { @@ -233,5 +233,5 @@ index bbc4940f21af..defd493ba967 100644 hrtimer_start(hrtimer, ns_to_ktime(sample_period), HRTIMER_MODE_REL_PINNED); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0102-sched-fair-Make-the-hrtimers-non-hard-again.patch b/debian/patches-rt/0102-sched-fair-Make-the-hrtimers-non-hard-again.patch index 35780f32f..42d86ba35 100644 --- a/debian/patches-rt/0102-sched-fair-Make-the-hrtimers-non-hard-again.patch +++ b/debian/patches-rt/0102-sched-fair-Make-the-hrtimers-non-hard-again.patch @@ -1,8 +1,8 @@ -From 9a3901666d90285bd44692fb723d6d1b8b3d8521 Mon Sep 17 00:00:00 2001 +From 1f9048fd4cb26be3c10ac92b6c9b2e90d5005888 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 8 Jan 2019 12:31:06 +0100 -Subject: [PATCH 102/291] sched/fair: Make the hrtimers non-hard again -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 102/290] sched/fair: Make the hrtimers non-hard again +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Since commit "sched/fair: Robustify CFS-bandwidth timer locking" both hrtimer can run in softirq context because now interrupts are disabled @@ -30,5 +30,5 @@ index 21cf60c360e8..6e6d9e999814 100644 cfs_b->distribute_running = 0; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0103-hrtimer-Move-schedule_work-call-to-helper-thread.patch b/debian/patches-rt/0103-hrtimer-Move-schedule_work-call-to-helper-thread.patch index 98ba5239d..9bfa5a35b 100644 --- a/debian/patches-rt/0103-hrtimer-Move-schedule_work-call-to-helper-thread.patch +++ b/debian/patches-rt/0103-hrtimer-Move-schedule_work-call-to-helper-thread.patch @@ -1,8 +1,8 @@ -From c4d00d0031d5e7a19f484b59cb25a62bf933b835 Mon Sep 17 00:00:00 2001 +From 1669cbc2eb152b7ae7f94cb966fbfd888a191cc8 Mon Sep 17 00:00:00 2001 From: Yang Shi Date: Mon, 16 Sep 2013 14:09:19 -0700 -Subject: [PATCH 103/291] hrtimer: Move schedule_work call to helper thread -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 103/290] hrtimer: Move schedule_work call to helper thread +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz When run ltp leapsec_timer test, the following call trace is caught: @@ -52,7 +52,7 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 24 insertions(+) diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c -index abf24e60b6e8..c72eb8bfc471 100644 +index 1fd5ec39e7f4..9f3412acdb16 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c @@ -730,6 +730,29 @@ static void hrtimer_switch_to_hres(void) @@ -94,5 +94,5 @@ index abf24e60b6e8..c72eb8bfc471 100644 #else -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0104-hrtimer-move-state-change-before-hrtimer_cancel-in-d.patch b/debian/patches-rt/0104-hrtimer-move-state-change-before-hrtimer_cancel-in-d.patch index 6618e9367..fa523682f 100644 --- a/debian/patches-rt/0104-hrtimer-move-state-change-before-hrtimer_cancel-in-d.patch +++ b/debian/patches-rt/0104-hrtimer-move-state-change-before-hrtimer_cancel-in-d.patch @@ -1,9 +1,9 @@ -From d8090cc3b4f54bd967f84b49b9f6cf25a72e61a1 Mon Sep 17 00:00:00 2001 +From b62f8583e5a6a8a86192ed4bc3cef3e923f295d0 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 6 Dec 2018 10:15:13 +0100 -Subject: [PATCH 104/291] hrtimer: move state change before hrtimer_cancel in +Subject: [PATCH 104/290] hrtimer: move state change before hrtimer_cancel in do_nanosleep() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz There is a small window between setting t->task to NULL and waking the task up (which would set TASK_RUNNING). So the timer would fire, run and @@ -29,10 +29,10 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c -index c72eb8bfc471..cfa3599fa789 100644 +index 9f3412acdb16..b800efb64238 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c -@@ -1785,12 +1785,12 @@ static int __sched do_nanosleep(struct hrtimer_sleeper *t, enum hrtimer_mode mod +@@ -1788,12 +1788,12 @@ static int __sched do_nanosleep(struct hrtimer_sleeper *t, enum hrtimer_mode mod if (likely(t->task)) freezable_schedule(); @@ -47,5 +47,5 @@ index c72eb8bfc471..cfa3599fa789 100644 if (!t->task) return 0; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0105-posix-timers-Thread-posix-cpu-timers-on-rt.patch b/debian/patches-rt/0105-posix-timers-Thread-posix-cpu-timers-on-rt.patch index 58c39024f..22bc9182e 100644 --- a/debian/patches-rt/0105-posix-timers-Thread-posix-cpu-timers-on-rt.patch +++ b/debian/patches-rt/0105-posix-timers-Thread-posix-cpu-timers-on-rt.patch @@ -1,8 +1,8 @@ -From ba97fe18b52206c31cfc5bc128734bb2c121e790 Mon Sep 17 00:00:00 2001 +From e63ab953f4da79eb0d2767e029e61f4d8491f131 Mon Sep 17 00:00:00 2001 From: John Stultz Date: Fri, 3 Jul 2009 08:29:58 -0500 -Subject: [PATCH 105/291] posix-timers: Thread posix-cpu-timers on -rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 105/290] posix-timers: Thread posix-cpu-timers on -rt +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz posix-cpu-timer code takes non -rt safe locks in hard irq context. Move it to a thread. @@ -265,5 +265,5 @@ index d62d7ae5201c..8d95e8de98b2 100644 * Set one of the process-wide special case CPU timers or RLIMIT_CPU. * The tsk->sighand->siglock must be held by the caller. -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0106-sched-Move-task_struct-cleanup-to-RCU.patch b/debian/patches-rt/0106-sched-Move-task_struct-cleanup-to-RCU.patch index ee20a61a0..d35f8ab1a 100644 --- a/debian/patches-rt/0106-sched-Move-task_struct-cleanup-to-RCU.patch +++ b/debian/patches-rt/0106-sched-Move-task_struct-cleanup-to-RCU.patch @@ -1,8 +1,8 @@ -From 16a46f713b065fd08009fa6fe5bf4e8356586c06 Mon Sep 17 00:00:00 2001 +From 64754a230b30e0beeda510f8a0dfcf82075166a7 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 31 May 2011 16:59:16 +0200 -Subject: [PATCH 106/291] sched: Move task_struct cleanup to RCU -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 106/290] sched: Move task_struct cleanup to RCU +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz __put_task_struct() does quite some expensive work. We don't want to burden random tasks with that. @@ -92,5 +92,5 @@ index b3744a043f46..4b85282d9a07 100644 void __init __weak arch_task_cache_init(void) { } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0107-sched-Limit-the-number-of-task-migrations-per-batch.patch b/debian/patches-rt/0107-sched-Limit-the-number-of-task-migrations-per-batch.patch index 6ea211691..cbf4adfcd 100644 --- a/debian/patches-rt/0107-sched-Limit-the-number-of-task-migrations-per-batch.patch +++ b/debian/patches-rt/0107-sched-Limit-the-number-of-task-migrations-per-batch.patch @@ -1,8 +1,8 @@ -From b71d34c01676a0158b89b9a972bc875b15bf9db7 Mon Sep 17 00:00:00 2001 +From 5d814c2f67298a28fc845d4444a083e1438c621a Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 6 Jun 2011 12:12:51 +0200 -Subject: [PATCH 107/291] sched: Limit the number of task migrations per batch -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 107/290] sched: Limit the number of task migrations per batch +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Put an upper limit on the number of tasks which are migrated per batch to avoid large latencies. @@ -29,5 +29,5 @@ index 2f6b4365d070..5c23d1272429 100644 /* * period over which we measure -rt task CPU usage in us. -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0108-sched-Move-mmdrop-to-RCU-on-RT.patch b/debian/patches-rt/0108-sched-Move-mmdrop-to-RCU-on-RT.patch index f3f87fca1..9c7f75f46 100644 --- a/debian/patches-rt/0108-sched-Move-mmdrop-to-RCU-on-RT.patch +++ b/debian/patches-rt/0108-sched-Move-mmdrop-to-RCU-on-RT.patch @@ -1,8 +1,8 @@ -From a6eb0eff1b7326245510c39e0988015fd5b15a35 Mon Sep 17 00:00:00 2001 +From 265373d21c09c71609a28e9412050091f086ffd0 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 6 Jun 2011 12:20:33 +0200 -Subject: [PATCH 108/291] sched: Move mmdrop to RCU on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 108/290] sched: Move mmdrop to RCU on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Takes sleeping locks and calls into the memory allocator, so nothing we want to do in task switch and oder atomic contexts. @@ -136,5 +136,5 @@ index 5c23d1272429..cb89c90513dd 100644 } #endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0109-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch b/debian/patches-rt/0109-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch index 411cfb9cf..8b7b23ced 100644 --- a/debian/patches-rt/0109-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch +++ b/debian/patches-rt/0109-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch @@ -1,9 +1,9 @@ -From 9743471dae584ebce206d2d879b9628ef3aaa012 Mon Sep 17 00:00:00 2001 +From ebf1a9a382707d58a0bba64660e90f2d9088d8f6 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 21 Nov 2016 19:31:08 +0100 -Subject: [PATCH 109/291] kernel/sched: move stack + kprobe clean up to +Subject: [PATCH 109/290] kernel/sched: move stack + kprobe clean up to __put_task_struct() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz There is no need to free the stack before the task struct (except for reasons mentioned in commit 68f24b08ee89 ("sched/core: Free the stack early if @@ -66,5 +66,5 @@ index cb89c90513dd..79e0d052e848 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0110-sched-Add-saved_state-for-tasks-blocked-on-sleeping-.patch b/debian/patches-rt/0110-sched-Add-saved_state-for-tasks-blocked-on-sleeping-.patch index f867e477a..f2b4d6d65 100644 --- a/debian/patches-rt/0110-sched-Add-saved_state-for-tasks-blocked-on-sleeping-.patch +++ b/debian/patches-rt/0110-sched-Add-saved_state-for-tasks-blocked-on-sleeping-.patch @@ -1,9 +1,9 @@ -From 124e5e8cec2c3de85fd78ce02bfa478b06640af3 Mon Sep 17 00:00:00 2001 +From 321628fe4e281be121ed55fdf60c24c6d58cc051 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sat, 25 Jun 2011 09:21:04 +0200 -Subject: [PATCH 110/291] sched: Add saved_state for tasks blocked on sleeping +Subject: [PATCH 110/290] sched: Add saved_state for tasks blocked on sleeping locks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Spinlocks are state preserving in !RT. RT changes the state when a task gets blocked on a lock. So we need to remember the state before @@ -104,5 +104,5 @@ index 94bec97bd5e2..c79e32488940 100644 /* * To aid in avoiding the subversion of "niceness" due to uneven distribution -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0111-sched-Do-not-account-rcu_preempt_depth-on-RT-in-migh.patch b/debian/patches-rt/0111-sched-Do-not-account-rcu_preempt_depth-on-RT-in-migh.patch index d0aefceab..5f37aaf8a 100644 --- a/debian/patches-rt/0111-sched-Do-not-account-rcu_preempt_depth-on-RT-in-migh.patch +++ b/debian/patches-rt/0111-sched-Do-not-account-rcu_preempt_depth-on-RT-in-migh.patch @@ -1,9 +1,9 @@ -From ca9a918e12f94cdd5e615f96ac95c5c479f8dd4d Mon Sep 17 00:00:00 2001 +From 26013bccba0816bd1eb6c1f7233f1f3600d89093 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 7 Jun 2011 09:19:06 +0200 -Subject: [PATCH 111/291] sched: Do not account rcu_preempt_depth on RT in +Subject: [PATCH 111/290] sched: Do not account rcu_preempt_depth on RT in might_sleep() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz RT changes the rcu_preempt_depth semantics, so we cannot check for it in might_sleep(). @@ -53,5 +53,5 @@ index d1c564acff76..59d43c084023 100644 return (nested == preempt_offset); } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0112-sched-Use-the-proper-LOCK_OFFSET-for-cond_resched.patch b/debian/patches-rt/0112-sched-Use-the-proper-LOCK_OFFSET-for-cond_resched.patch index d292d0db6..0f9241f18 100644 --- a/debian/patches-rt/0112-sched-Use-the-proper-LOCK_OFFSET-for-cond_resched.patch +++ b/debian/patches-rt/0112-sched-Use-the-proper-LOCK_OFFSET-for-cond_resched.patch @@ -1,8 +1,8 @@ -From 0575ed01ee813bb4fbe9e3a708e51d1ab495028a Mon Sep 17 00:00:00 2001 +From e1018349e034a1bc9768c8870ae436d76d07d3b4 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 22:51:33 +0200 -Subject: [PATCH 112/291] sched: Use the proper LOCK_OFFSET for cond_resched() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 112/290] sched: Use the proper LOCK_OFFSET for cond_resched() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz RT does not increment preempt count when a 'sleeping' spinlock is locked. Update PREEMPT_LOCK_OFFSET for that case. @@ -29,5 +29,5 @@ index f7a17fcc3fec..b7fe717eb1f4 100644 /* * The preempt_count offset needed for things like: -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0113-sched-Disable-TTWU_QUEUE-on-RT.patch b/debian/patches-rt/0113-sched-Disable-TTWU_QUEUE-on-RT.patch index a6a844c2e..3cbbe5fbc 100644 --- a/debian/patches-rt/0113-sched-Disable-TTWU_QUEUE-on-RT.patch +++ b/debian/patches-rt/0113-sched-Disable-TTWU_QUEUE-on-RT.patch @@ -1,8 +1,8 @@ -From c7707b6eed6823af122cdb0cf1e8e59278ed1768 Mon Sep 17 00:00:00 2001 +From 8f8e3eb8db6bc5ae01fe12e677a6e95df0366beb Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 13 Sep 2011 16:42:35 +0200 -Subject: [PATCH 113/291] sched: Disable TTWU_QUEUE on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 113/290] sched: Disable TTWU_QUEUE on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The queued remote wakeup mechanism can introduce rather large latencies if the number of migrated tasks is high. Disable it for RT. @@ -34,5 +34,5 @@ index 85ae8488039c..68de18405857 100644 /* * When doing wakeups, attempt to limit superfluous scans of the LLC domain. -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0114-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch b/debian/patches-rt/0114-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch index dc71e727a..3e157ceec 100644 --- a/debian/patches-rt/0114-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch +++ b/debian/patches-rt/0114-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch @@ -1,9 +1,9 @@ -From e80c0084cdb65189273e995ba6b38105fdd823cc Mon Sep 17 00:00:00 2001 +From 43f8cfb3d7b686b307dbde08375843c434206f95 Mon Sep 17 00:00:00 2001 From: Steven Rostedt Date: Mon, 18 Mar 2013 15:12:49 -0400 -Subject: [PATCH 114/291] sched/workqueue: Only wake up idle workers if not +Subject: [PATCH 114/290] sched/workqueue: Only wake up idle workers if not blocked on sleeping spin lock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In -rt, most spin_locks() turn into mutexes. One of these spin_lock conversions is performed on the workqueue gcwq->lock. When the idle @@ -41,5 +41,5 @@ index 59d43c084023..e792543de8eb 100644 to_wakeup = wq_worker_sleeping(prev); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0115-rt-Increase-decrease-the-nr-of-migratory-tasks-when-.patch b/debian/patches-rt/0115-rt-Increase-decrease-the-nr-of-migratory-tasks-when-.patch index ecb172f78..88dc98d69 100644 --- a/debian/patches-rt/0115-rt-Increase-decrease-the-nr-of-migratory-tasks-when-.patch +++ b/debian/patches-rt/0115-rt-Increase-decrease-the-nr-of-migratory-tasks-when-.patch @@ -1,9 +1,9 @@ -From 212e6309545a661d786334b37ace8b3a42de8a2c Mon Sep 17 00:00:00 2001 +From c53c9ce9f8bc7a16fadae5e065224163e69b07ff Mon Sep 17 00:00:00 2001 From: Daniel Bristot de Oliveira Date: Mon, 26 Jun 2017 17:07:15 +0200 -Subject: [PATCH 115/291] rt: Increase/decrease the nr of migratory tasks when +Subject: [PATCH 115/290] rt: Increase/decrease the nr of migratory tasks when enabling/disabling migration -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz There is a problem in the migrate_disable()/enable() implementation regarding the number of migratory tasks in the rt/dl RQs. The problem @@ -158,5 +158,5 @@ index e792543de8eb..57617777c4ba 100644 if (p->migrate_disable_update) { struct rq *rq; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0116-hotplug-Lightweight-get-online-cpus.patch b/debian/patches-rt/0116-hotplug-Lightweight-get-online-cpus.patch index e37cf9852..6b557bc9f 100644 --- a/debian/patches-rt/0116-hotplug-Lightweight-get-online-cpus.patch +++ b/debian/patches-rt/0116-hotplug-Lightweight-get-online-cpus.patch @@ -1,8 +1,8 @@ -From 6f101b07a78d289ba639b25a3b77a37ab6734073 Mon Sep 17 00:00:00 2001 +From 65664847f66b61a354b87a68ee4538850100b07f Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 15 Jun 2011 12:36:06 +0200 -Subject: [PATCH 116/291] hotplug: Lightweight get online cpus -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 116/290] hotplug: Lightweight get online cpus +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz get_online_cpus() is a heavy weight function which involves a global mutex. migrate_disable() wants a simpler construct which prevents only @@ -97,5 +97,5 @@ index 57617777c4ba..42b42ebf52bc 100644 } EXPORT_SYMBOL(migrate_enable); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0117-trace-Add-migrate-disabled-counter-to-tracing-output.patch b/debian/patches-rt/0117-trace-Add-migrate-disabled-counter-to-tracing-output.patch index 42012348b..5425eda02 100644 --- a/debian/patches-rt/0117-trace-Add-migrate-disabled-counter-to-tracing-output.patch +++ b/debian/patches-rt/0117-trace-Add-migrate-disabled-counter-to-tracing-output.patch @@ -1,8 +1,8 @@ -From 78c63e78542da8c6262129680ae2129d38660fc9 Mon Sep 17 00:00:00 2001 +From b1443b83989e9c493e9d82d8a8a88a3862ea2286 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 21:56:42 +0200 -Subject: [PATCH 117/291] trace: Add migrate-disabled counter to tracing output -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 117/290] trace: Add migrate-disabled counter to tracing output +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Signed-off-by: Thomas Gleixner --- @@ -26,7 +26,7 @@ index 0643c083ed86..1cc4d2da954c 100644 #define TRACE_EVENT_TYPE_MAX \ diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c -index bdd7f3d78724..befe5978a832 100644 +index e61aa1c68e99..5eccf1c201db 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -2149,6 +2149,8 @@ tracing_generic_entry_update(struct trace_entry *entry, unsigned long flags, @@ -53,7 +53,7 @@ index bdd7f3d78724..befe5978a832 100644 static void print_event_info(struct trace_buffer *buf, struct seq_file *m) diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c -index 017f737237e6..62df730c4a2e 100644 +index ec340e1cbffc..1febb0ca4c81 100644 --- a/kernel/trace/trace_events.c +++ b/kernel/trace/trace_events.c @@ -188,6 +188,8 @@ static int trace_define_common_fields(void) @@ -82,5 +82,5 @@ index 6e6cc64faa38..46c96744f09d 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0118-lockdep-Make-it-RT-aware.patch b/debian/patches-rt/0118-lockdep-Make-it-RT-aware.patch index 241a987c4..de5bfdb0b 100644 --- a/debian/patches-rt/0118-lockdep-Make-it-RT-aware.patch +++ b/debian/patches-rt/0118-lockdep-Make-it-RT-aware.patch @@ -1,8 +1,8 @@ -From 9881dc502b2ebaa3d6311b1a4f1d12311d048c3a Mon Sep 17 00:00:00 2001 +From 25df2718875a1f8e4d5fc79fd0720e5000074ccb Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 18:51:23 +0200 -Subject: [PATCH 118/291] lockdep: Make it RT aware -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 118/290] lockdep: Make it RT aware +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz teach lockdep that we don't really do softirqs on -RT. @@ -74,5 +74,5 @@ index 1e272f6a01e7..1938b4bfb098 100644 if (!debug_locks) print_irqtrace_events(current); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0119-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch b/debian/patches-rt/0119-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch index f706aa51f..5a4e64da8 100644 --- a/debian/patches-rt/0119-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch +++ b/debian/patches-rt/0119-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch @@ -1,9 +1,9 @@ -From aca9ae6ff4dbbe91d241282e51602147cba52554 Mon Sep 17 00:00:00 2001 +From 30b45605a910b13cdacec56a13b7715aa4aef8f9 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Tue, 29 Nov 2011 20:18:22 -0500 -Subject: [PATCH 119/291] tasklet: Prevent tasklets from going into infinite +Subject: [PATCH 119/290] tasklet: Prevent tasklets from going into infinite spin in RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz When CONFIG_PREEMPT_RT_FULL is enabled, tasklets run as threads, and spinlocks turn are mutexes. But this can cause issues with @@ -299,5 +299,5 @@ index 6f584861d329..1d3a482246cc 100644 { return local_softirq_pending(); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0120-softirq-Check-preemption-after-reenabling-interrupts.patch b/debian/patches-rt/0120-softirq-Check-preemption-after-reenabling-interrupts.patch index b0861d31a..0f7afb43a 100644 --- a/debian/patches-rt/0120-softirq-Check-preemption-after-reenabling-interrupts.patch +++ b/debian/patches-rt/0120-softirq-Check-preemption-after-reenabling-interrupts.patch @@ -1,8 +1,8 @@ -From a22fec20030156a6f1ca7d20721282f48ec8d12d Mon Sep 17 00:00:00 2001 +From 8e833dc09a89e60167a67518738fc02a174737bd Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 13 Nov 2011 17:17:09 +0100 -Subject: [PATCH 120/291] softirq: Check preemption after reenabling interrupts -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 120/290] softirq: Check preemption after reenabling interrupts +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz raise_softirq_irqoff() disables interrupts and wakes the softirq daemon, but after reenabling interrupts there is no preemption check, @@ -117,10 +117,10 @@ index 86a709954f5a..9c069ef83d6d 100644 return 0; } diff --git a/net/core/dev.c b/net/core/dev.c -index 91179febdeee..b93838047cfd 100644 +index a26d87073f71..f64e9d036915 100644 --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -2726,6 +2726,7 @@ static void __netif_reschedule(struct Qdisc *q) +@@ -2727,6 +2727,7 @@ static void __netif_reschedule(struct Qdisc *q) sd->output_queue_tailp = &q->next_sched; raise_softirq_irqoff(NET_TX_SOFTIRQ); local_irq_restore(flags); @@ -128,7 +128,7 @@ index 91179febdeee..b93838047cfd 100644 } void __netif_schedule(struct Qdisc *q) -@@ -2788,6 +2789,7 @@ void __dev_kfree_skb_irq(struct sk_buff *skb, enum skb_free_reason reason) +@@ -2789,6 +2790,7 @@ void __dev_kfree_skb_irq(struct sk_buff *skb, enum skb_free_reason reason) __this_cpu_write(softnet_data.completion_queue, skb); raise_softirq_irqoff(NET_TX_SOFTIRQ); local_irq_restore(flags); @@ -136,7 +136,7 @@ index 91179febdeee..b93838047cfd 100644 } EXPORT_SYMBOL(__dev_kfree_skb_irq); -@@ -4260,6 +4262,7 @@ static int enqueue_to_backlog(struct sk_buff *skb, int cpu, +@@ -4261,6 +4263,7 @@ static int enqueue_to_backlog(struct sk_buff *skb, int cpu, rps_unlock(sd); local_irq_restore(flags); @@ -144,7 +144,7 @@ index 91179febdeee..b93838047cfd 100644 atomic_long_inc(&skb->dev->rx_dropped); kfree_skb(skb); -@@ -5829,12 +5832,14 @@ static void net_rps_action_and_irq_enable(struct softnet_data *sd) +@@ -5830,12 +5833,14 @@ static void net_rps_action_and_irq_enable(struct softnet_data *sd) sd->rps_ipi_list = NULL; local_irq_enable(); @@ -159,7 +159,7 @@ index 91179febdeee..b93838047cfd 100644 } static bool sd_has_rps_ipi_waiting(struct softnet_data *sd) -@@ -5912,6 +5917,7 @@ void __napi_schedule(struct napi_struct *n) +@@ -5913,6 +5918,7 @@ void __napi_schedule(struct napi_struct *n) local_irq_save(flags); ____napi_schedule(this_cpu_ptr(&softnet_data), n); local_irq_restore(flags); @@ -167,7 +167,7 @@ index 91179febdeee..b93838047cfd 100644 } EXPORT_SYMBOL(__napi_schedule); -@@ -9321,6 +9327,7 @@ static int dev_cpu_dead(unsigned int oldcpu) +@@ -9504,6 +9510,7 @@ static int dev_cpu_dead(unsigned int oldcpu) raise_softirq_irqoff(NET_TX_SOFTIRQ); local_irq_enable(); @@ -176,5 +176,5 @@ index 91179febdeee..b93838047cfd 100644 #ifdef CONFIG_RPS remsd = oldsd->rps_ipi_list; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0121-softirq-Disable-softirq-stacks-for-RT.patch b/debian/patches-rt/0121-softirq-Disable-softirq-stacks-for-RT.patch index c057f15d2..a43e828dc 100644 --- a/debian/patches-rt/0121-softirq-Disable-softirq-stacks-for-RT.patch +++ b/debian/patches-rt/0121-softirq-Disable-softirq-stacks-for-RT.patch @@ -1,8 +1,8 @@ -From aa4a572081534629f124f957fdf9ab2ea0c48601 Mon Sep 17 00:00:00 2001 +From bfa59221785f7f02d4c4439aef840c3c84aeb0b1 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 18 Jul 2011 13:59:17 +0200 -Subject: [PATCH 121/291] softirq: Disable softirq stacks for RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 121/290] softirq: Disable softirq stacks for RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Disable extra stacks for softirqs. We want to preempt softirqs and having them on special IRQ-stack does not make this easier. @@ -20,7 +20,7 @@ Signed-off-by: Thomas Gleixner 8 files changed, 15 insertions(+), 1 deletion(-) diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c -index 916ddc4aac44..833d27f85aea 100644 +index d37704ebccdb..b45a9849b687 100644 --- a/arch/powerpc/kernel/irq.c +++ b/arch/powerpc/kernel/irq.c @@ -766,6 +766,7 @@ void irq_ctx_init(void) @@ -173,5 +173,5 @@ index e74936c7be48..cb2d1384cb0d 100644 #else static inline void do_softirq_own_stack(void) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0122-softirq-Split-softirq-locks.patch b/debian/patches-rt/0122-softirq-Split-softirq-locks.patch index 0cd5b2dcc..affdd5500 100644 --- a/debian/patches-rt/0122-softirq-Split-softirq-locks.patch +++ b/debian/patches-rt/0122-softirq-Split-softirq-locks.patch @@ -1,8 +1,8 @@ -From 1b893fe936ebf4db810829266ed0ff63f17b7653 Mon Sep 17 00:00:00 2001 +From e530715caf9839d15d550ed5ed57d4d928ca3806 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 4 Oct 2012 14:20:47 +0100 -Subject: [PATCH 122/291] softirq: Split softirq locks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 122/290] softirq: Split softirq locks +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The 3.x RT series removed the split softirq implementation in favour of pushing softirq processing into the context of the thread which @@ -828,5 +828,5 @@ index c217af74dddf..6482945f8ae8 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0123-net-core-use-local_bh_disable-in-netif_rx_ni.patch b/debian/patches-rt/0123-net-core-use-local_bh_disable-in-netif_rx_ni.patch index 289c5be17..45b10cd16 100644 --- a/debian/patches-rt/0123-net-core-use-local_bh_disable-in-netif_rx_ni.patch +++ b/debian/patches-rt/0123-net-core-use-local_bh_disable-in-netif_rx_ni.patch @@ -1,8 +1,8 @@ -From 5824c8e9d9b8016de81c6a74616011772a95919e Mon Sep 17 00:00:00 2001 +From 506e743f138f50503ba86a10f91b8d6ee2855e69 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 16 Jun 2017 19:03:16 +0200 -Subject: [PATCH 123/291] net/core: use local_bh_disable() in netif_rx_ni() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 123/290] net/core: use local_bh_disable() in netif_rx_ni() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In 2004 netif_rx_ni() gained a preempt_disable() section around netif_rx() and its do_softirq() + testing for it. The do_softirq() part @@ -19,10 +19,10 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/net/core/dev.c b/net/core/dev.c -index b93838047cfd..d5e2e8834d62 100644 +index f64e9d036915..4926a260bf0e 100644 --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -4540,11 +4540,9 @@ int netif_rx_ni(struct sk_buff *skb) +@@ -4541,11 +4541,9 @@ int netif_rx_ni(struct sk_buff *skb) trace_netif_rx_ni_entry(skb); @@ -37,5 +37,5 @@ index b93838047cfd..d5e2e8834d62 100644 return err; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0124-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch b/debian/patches-rt/0124-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch index 0ebf444ca..248e4e5f4 100644 --- a/debian/patches-rt/0124-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch +++ b/debian/patches-rt/0124-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch @@ -1,9 +1,9 @@ -From 7104571224e2da8d61763d5106f37502c667ba15 Mon Sep 17 00:00:00 2001 +From 393c57f1d000ec029efc1fcedfbacc5a6195d15c Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 31 Jan 2012 13:01:27 +0100 -Subject: [PATCH 124/291] genirq: Allow disabling of softirq processing in irq +Subject: [PATCH 124/290] genirq: Allow disabling of softirq processing in irq thread context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The processing of softirqs in irq thread context is a performance gain for the non-rt workloads of a system, but it's counterproductive for @@ -157,5 +157,5 @@ index fd89f8ab85ac..3e9333d148ad 100644 { return current->flags & PF_IN_SOFTIRQ; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0125-softirq-split-timer-softirqs-out-of-ksoftirqd.patch b/debian/patches-rt/0125-softirq-split-timer-softirqs-out-of-ksoftirqd.patch index cb5594425..fc4a162dd 100644 --- a/debian/patches-rt/0125-softirq-split-timer-softirqs-out-of-ksoftirqd.patch +++ b/debian/patches-rt/0125-softirq-split-timer-softirqs-out-of-ksoftirqd.patch @@ -1,8 +1,8 @@ -From af74ab112bdb15f73e213862c9529004dfa5970d Mon Sep 17 00:00:00 2001 +From 74b99df23856c57791eccaa46030824066095f30 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 20 Jan 2016 16:34:17 +0100 -Subject: [PATCH 125/291] softirq: split timer softirqs out of ksoftirqd -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 125/290] softirq: split timer softirqs out of ksoftirqd +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The softirqd runs in -RT with SCHED_FIFO (prio 1) and deals mostly with timer wakeup which can not happen in hardirq context. The prio has been @@ -211,5 +211,5 @@ index 3e9333d148ad..fe4e59c80a08 100644 } early_initcall(spawn_ksoftirqd); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0126-softirq-Avoid-local_softirq_pending-messages-if-ksof.patch b/debian/patches-rt/0126-softirq-Avoid-local_softirq_pending-messages-if-ksof.patch index dcf16df56..64c3c8c74 100644 --- a/debian/patches-rt/0126-softirq-Avoid-local_softirq_pending-messages-if-ksof.patch +++ b/debian/patches-rt/0126-softirq-Avoid-local_softirq_pending-messages-if-ksof.patch @@ -1,9 +1,9 @@ -From 744e0e23be85f1c4f35a0225d40c38ce17731b9a Mon Sep 17 00:00:00 2001 +From ece86c041648cc912cb0e5f6c921ce25c8ffc506 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 18 Feb 2019 13:19:59 +0100 -Subject: [PATCH 126/291] softirq: Avoid "local_softirq_pending" messages if +Subject: [PATCH 126/290] softirq: Avoid "local_softirq_pending" messages if ksoftirqd is blocked -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz If the ksoftirqd thread has a softirq pending and is blocked on the `local_softirq_locks' lock then softirq_check_pending_idle() won't @@ -108,5 +108,5 @@ index fe4e59c80a08..1920985eeb09 100644 if (warnpending) { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0127-softirq-Avoid-local_softirq_pending-messages-if-task.patch b/debian/patches-rt/0127-softirq-Avoid-local_softirq_pending-messages-if-task.patch index 66e1806c3..cfcbe2339 100644 --- a/debian/patches-rt/0127-softirq-Avoid-local_softirq_pending-messages-if-task.patch +++ b/debian/patches-rt/0127-softirq-Avoid-local_softirq_pending-messages-if-task.patch @@ -1,9 +1,9 @@ -From 7059e135a5d884541e07ca2a6cbcb499c1cb8bf0 Mon Sep 17 00:00:00 2001 +From 7bc071d971f2caab6d8cf678fa51ac0f0f84be57 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 19 Feb 2019 16:49:29 +0100 -Subject: [PATCH 127/291] softirq: Avoid "local_softirq_pending" messages if +Subject: [PATCH 127/290] softirq: Avoid "local_softirq_pending" messages if task is in cpu_chill() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz If the softirq thread enters cpu_chill() then ->state is UNINTERRUPTIBLE and has no ->pi_blocked_on set and so its mask is not taken into account. @@ -37,5 +37,5 @@ index 1920985eeb09..27a4bb2303d0 100644 *pending &= ~(tsk->softirqs_raised); ret = true; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0128-rtmutex-trylock-is-okay-on-RT.patch b/debian/patches-rt/0128-rtmutex-trylock-is-okay-on-RT.patch index dafebb4e9..f01e720f7 100644 --- a/debian/patches-rt/0128-rtmutex-trylock-is-okay-on-RT.patch +++ b/debian/patches-rt/0128-rtmutex-trylock-is-okay-on-RT.patch @@ -1,8 +1,8 @@ -From 49daa757a03c433bc6252051d0126ffdf4295573 Mon Sep 17 00:00:00 2001 +From f883f2d061fa3f01c9c2657223aa1cfb02b9aef3 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 2 Dec 2015 11:34:07 +0100 -Subject: [PATCH 128/291] rtmutex: trylock is okay on -RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 128/290] rtmutex: trylock is okay on -RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz non-RT kernel could deadlock on rt_mutex_trylock() in softirq context. On -RT we don't run softirqs in IRQ context but in thread context so it is @@ -30,5 +30,5 @@ index 9562aaa2afdc..72abe7c121fa 100644 ret = rt_mutex_fasttrylock(lock, rt_mutex_slowtrylock); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0129-fs-nfs-turn-rmdir_sem-into-a-semaphore.patch b/debian/patches-rt/0129-fs-nfs-turn-rmdir_sem-into-a-semaphore.patch index 0aeebf453..e5b7e7ca1 100644 --- a/debian/patches-rt/0129-fs-nfs-turn-rmdir_sem-into-a-semaphore.patch +++ b/debian/patches-rt/0129-fs-nfs-turn-rmdir_sem-into-a-semaphore.patch @@ -1,8 +1,8 @@ -From 1cf6a9d4797ccd1f77e415a6401f5e227c215cc8 Mon Sep 17 00:00:00 2001 +From e3f69c0b583258222d76fafb057b054796b9ad31 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 15 Sep 2016 10:51:27 +0200 -Subject: [PATCH 129/291] fs/nfs: turn rmdir_sem into a semaphore -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 129/290] fs/nfs: turn rmdir_sem into a semaphore +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The RW semaphore had a reader side which used the _non_owner version because it most likely took the reader lock in one thread and released it @@ -147,5 +147,5 @@ index a0831e9d19c9..94b6fefd90b0 100644 #if IS_ENABLED(CONFIG_NFS_V4) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0130-rtmutex-Handle-the-various-new-futex-race-conditions.patch b/debian/patches-rt/0130-rtmutex-Handle-the-various-new-futex-race-conditions.patch index 876cb5d1a..d7256bc40 100644 --- a/debian/patches-rt/0130-rtmutex-Handle-the-various-new-futex-race-conditions.patch +++ b/debian/patches-rt/0130-rtmutex-Handle-the-various-new-futex-race-conditions.patch @@ -1,8 +1,8 @@ -From b0a98e5e095739ea70697048ce6581eaf71f17c7 Mon Sep 17 00:00:00 2001 +From ad0da5a36ccd4cb2f3a320244327b586e3c435c3 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 10 Jun 2011 11:04:15 +0200 -Subject: [PATCH 130/291] rtmutex: Handle the various new futex race conditions -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 130/290] rtmutex: Handle the various new futex race conditions +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz RT opens a few new interesting race conditions in the rtmutex/futex combo due to futex hash bucket lock being a 'sleeping' spinlock and @@ -251,5 +251,5 @@ index d1d62f942be2..f4b6596d224a 100644 extern void rt_mutex_init_proxy_locked(struct rt_mutex *lock, struct task_struct *proxy_owner); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0131-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch b/debian/patches-rt/0131-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch index 066c13528..58ff0f63f 100644 --- a/debian/patches-rt/0131-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch +++ b/debian/patches-rt/0131-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch @@ -1,8 +1,8 @@ -From ace8fcd42dfeb65875a6457f5fe1c2e83f576e24 Mon Sep 17 00:00:00 2001 +From 7edf91c5189d3b406d53b139fd703354cc43dd16 Mon Sep 17 00:00:00 2001 From: Steven Rostedt Date: Tue, 14 Jul 2015 14:26:34 +0200 -Subject: [PATCH 131/291] futex: Fix bug on when a requeued RT task times out -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 131/290] futex: Fix bug on when a requeued RT task times out +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Requeue with timeout causes a bug with PREEMPT_RT_FULL. @@ -117,5 +117,5 @@ index f4b6596d224a..461527f3f7af 100644 extern struct task_struct *rt_mutex_next_owner(struct rt_mutex *lock); extern void rt_mutex_init_proxy_locked(struct rt_mutex *lock, -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0132-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch b/debian/patches-rt/0132-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch index 12d1560f4..7731e3e1d 100644 --- a/debian/patches-rt/0132-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch +++ b/debian/patches-rt/0132-futex-Ensure-lock-unlock-symetry-versus-pi_lock-and-.patch @@ -1,9 +1,9 @@ -From 56b302c84651f96c36c4557bbf3b35b4dca28929 Mon Sep 17 00:00:00 2001 +From 6a2f8ae29dd9f3697e918a18a871efdaa4d919d9 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 1 Mar 2013 11:17:42 +0100 -Subject: [PATCH 132/291] futex: Ensure lock/unlock symetry versus pi_lock and +Subject: [PATCH 132/290] futex: Ensure lock/unlock symetry versus pi_lock and hash bucket lock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In exit_pi_state_list() we have the following locking construct: @@ -46,5 +46,5 @@ index 5ec49f862c53..60be4530c767 100644 continue; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0133-pid.h-include-atomic.h.patch b/debian/patches-rt/0133-pid.h-include-atomic.h.patch index 5218a17e1..eaef5a792 100644 --- a/debian/patches-rt/0133-pid.h-include-atomic.h.patch +++ b/debian/patches-rt/0133-pid.h-include-atomic.h.patch @@ -1,8 +1,8 @@ -From fbe00939d45cb45f9f555f2a4e0c6d7765eaa71c Mon Sep 17 00:00:00 2001 +From 5e16582aa3ade481ac6b23ffe90016f2d285f18a Mon Sep 17 00:00:00 2001 From: Grygorii Strashko Date: Tue, 21 Jul 2015 19:43:56 +0300 -Subject: [PATCH 133/291] pid.h: include atomic.h -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 133/290] pid.h: include atomic.h +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz This patch fixes build error: CC kernel/pid_namespace.o @@ -39,5 +39,5 @@ index 14a9a39da9c7..a9026a5da196 100644 enum pid_type { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0134-arm-include-definition-for-cpumask_t.patch b/debian/patches-rt/0134-arm-include-definition-for-cpumask_t.patch index e7576d908..e9e416999 100644 --- a/debian/patches-rt/0134-arm-include-definition-for-cpumask_t.patch +++ b/debian/patches-rt/0134-arm-include-definition-for-cpumask_t.patch @@ -1,8 +1,8 @@ -From 9ccf9fcb0456c0eca52a57de7a62af394cf5d6ec Mon Sep 17 00:00:00 2001 +From e104dba071027b30e97bc63e57da11ad26516141 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 22 Dec 2016 17:28:33 +0100 -Subject: [PATCH 134/291] arm: include definition for cpumask_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 134/290] arm: include definition for cpumask_t +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz This definition gets pulled in by other files. With the (later) split of RCU and spinlock.h it won't compile anymore. @@ -27,5 +27,5 @@ index 46d41140df27..c421b5b81946 100644 struct pt_regs; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0135-locking-locktorture-Do-NOT-include-rwlock.h-directly.patch b/debian/patches-rt/0135-locking-locktorture-Do-NOT-include-rwlock.h-directly.patch index b761de635..5defd741e 100644 --- a/debian/patches-rt/0135-locking-locktorture-Do-NOT-include-rwlock.h-directly.patch +++ b/debian/patches-rt/0135-locking-locktorture-Do-NOT-include-rwlock.h-directly.patch @@ -1,9 +1,9 @@ -From 3a1c560bb569457a69c1cf76e62a9ab32b3c5c50 Mon Sep 17 00:00:00 2001 +From 002db8d9c11d02194c1e281091b8b577b9f36014 Mon Sep 17 00:00:00 2001 From: "Wolfgang M. Reimer" Date: Tue, 21 Jul 2015 16:20:07 +0200 -Subject: [PATCH 135/291] locking: locktorture: Do NOT include rwlock.h +Subject: [PATCH 135/290] locking: locktorture: Do NOT include rwlock.h directly -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Including rwlock.h directly will cause kernel builds to fail if CONFIG_PREEMPT_RT_FULL is defined. The correct header file @@ -30,5 +30,5 @@ index 7d0b0ed74404..a81e6ef33a04 100644 #include #include -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0136-rtmutex-Add-rtmutex_lock_killable.patch b/debian/patches-rt/0136-rtmutex-Add-rtmutex_lock_killable.patch index 4f0216eef..6ffdb416f 100644 --- a/debian/patches-rt/0136-rtmutex-Add-rtmutex_lock_killable.patch +++ b/debian/patches-rt/0136-rtmutex-Add-rtmutex_lock_killable.patch @@ -1,8 +1,8 @@ -From 44b045240326a58dce30bae336e6a5095d426806 Mon Sep 17 00:00:00 2001 +From bdcf220d6064da9072193b604f5fdaf9f7cf952f Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 9 Jun 2011 11:43:52 +0200 -Subject: [PATCH 136/291] rtmutex: Add rtmutex_lock_killable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 136/290] rtmutex: Add rtmutex_lock_killable() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Add "killable" type to rtmutex. We need this since rtmutex are used as "normal" mutexes which do use this type. @@ -56,5 +56,5 @@ index 1c3f56d3d9b6..a4b2af7718f8 100644 * rt_mutex_timed_lock - lock a rt_mutex interruptible * the timeout structure is provided -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0137-rtmutex-Make-lock_killable-work.patch b/debian/patches-rt/0137-rtmutex-Make-lock_killable-work.patch index 7ddcd5a0c..2f42342f3 100644 --- a/debian/patches-rt/0137-rtmutex-Make-lock_killable-work.patch +++ b/debian/patches-rt/0137-rtmutex-Make-lock_killable-work.patch @@ -1,8 +1,8 @@ -From 926d0ccd5d788a7efd136155df36ce959fce6617 Mon Sep 17 00:00:00 2001 +From 6320c2a328b759909197f3ff76944b43141bc563 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sat, 1 Apr 2017 12:50:59 +0200 -Subject: [PATCH 137/291] rtmutex: Make lock_killable work -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 137/290] rtmutex: Make lock_killable work +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Locking an rt mutex killable does not work because signal handling is restricted to TASK_INTERRUPTIBLE. @@ -47,5 +47,5 @@ index a4b2af7718f8..f058bb976212 100644 raw_spin_unlock_irq(&lock->wait_lock); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0138-spinlock-Split-the-lock-types-header.patch b/debian/patches-rt/0138-spinlock-Split-the-lock-types-header.patch index 8d5b58066..1f3d7394a 100644 --- a/debian/patches-rt/0138-spinlock-Split-the-lock-types-header.patch +++ b/debian/patches-rt/0138-spinlock-Split-the-lock-types-header.patch @@ -1,8 +1,8 @@ -From 3fee99c98bc825a45b08897882faed1a9d5d6d4b Mon Sep 17 00:00:00 2001 +From 575aa1d2041b59a87bb62ae844b43779bb1114e6 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 29 Jun 2011 19:34:01 +0200 -Subject: [PATCH 138/291] spinlock: Split the lock types header -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 138/290] spinlock: Split the lock types header +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Split raw_spinlock into its own file and the remaining spinlock_t into its own non-RT header. The non-RT header will be replaced later by sleeping @@ -217,5 +217,5 @@ index 000000000000..822bf64a61d3 + +#endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0139-rtmutex-Avoid-include-hell.patch b/debian/patches-rt/0139-rtmutex-Avoid-include-hell.patch index 3156796f3..155690753 100644 --- a/debian/patches-rt/0139-rtmutex-Avoid-include-hell.patch +++ b/debian/patches-rt/0139-rtmutex-Avoid-include-hell.patch @@ -1,8 +1,8 @@ -From 12d1dd5aa338d5fabca17f5d7ec37333fd925db2 Mon Sep 17 00:00:00 2001 +From 66e71d123479ba1870a7b7ab6935f7f982379ca8 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 29 Jun 2011 20:06:39 +0200 -Subject: [PATCH 139/291] rtmutex: Avoid include hell -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 139/290] rtmutex: Avoid include hell +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Include only the required raw types. This avoids pulling in the complete spinlock header which in turn requires rtmutex.h at some point. @@ -26,5 +26,5 @@ index 81ece6a8291a..a355289b1fa1 100644 extern int max_lock_depth; /* for sysctl */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0140-rbtree-don-t-include-the-rcu-header.patch b/debian/patches-rt/0140-rbtree-don-t-include-the-rcu-header.patch index ea7504d7a..e2c3288ae 100644 --- a/debian/patches-rt/0140-rbtree-don-t-include-the-rcu-header.patch +++ b/debian/patches-rt/0140-rbtree-don-t-include-the-rcu-header.patch @@ -1,11 +1,11 @@ -From 220bb66b678581d19e17cd7a526441c90d382856 Mon Sep 17 00:00:00 2001 +From a848373d9df624fd8692e4419ae43107453a6ee5 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 26 Feb 2019 16:56:02 +0100 -Subject: [PATCH 140/291] rbtree: don't include the rcu header +Subject: [PATCH 140/290] rbtree: don't include the rcu header MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The RCU header pulls in spinlock.h and fails due not yet defined types: @@ -171,5 +171,5 @@ index 027c58cdbb6e..e6733d7911e9 100644 * rcu_swap_protected() - swap an RCU and a regular pointer * @rcu_ptr: RCU pointer -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0141-rtmutex-Provide-rt_mutex_slowlock_locked.patch b/debian/patches-rt/0141-rtmutex-Provide-rt_mutex_slowlock_locked.patch index 4415ab3b6..b57b0356f 100644 --- a/debian/patches-rt/0141-rtmutex-Provide-rt_mutex_slowlock_locked.patch +++ b/debian/patches-rt/0141-rtmutex-Provide-rt_mutex_slowlock_locked.patch @@ -1,8 +1,8 @@ -From 4ab5b84b89bd12e875a70bc3e00a1746b021b14a Mon Sep 17 00:00:00 2001 +From 0a9e717c46c47cc03fb028892cea5e36feda7230 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 16:14:22 +0200 -Subject: [PATCH 141/291] rtmutex: Provide rt_mutex_slowlock_locked() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 141/290] rtmutex: Provide rt_mutex_slowlock_locked() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz This is the inner-part of rt_mutex_slowlock(), required for rwsem-rt. @@ -141,5 +141,5 @@ index 461527f3f7af..cb9815f0c766 100644 #ifdef CONFIG_DEBUG_RT_MUTEXES # include "rtmutex-debug.h" -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0142-rtmutex-export-lockdep-less-version-of-rt_mutex-s-lo.patch b/debian/patches-rt/0142-rtmutex-export-lockdep-less-version-of-rt_mutex-s-lo.patch index 157f7555b..3a1cfbd8a 100644 --- a/debian/patches-rt/0142-rtmutex-export-lockdep-less-version-of-rt_mutex-s-lo.patch +++ b/debian/patches-rt/0142-rtmutex-export-lockdep-less-version-of-rt_mutex-s-lo.patch @@ -1,9 +1,9 @@ -From 6544c2d98772af5ef3b28ac2177c4c0a1a56208e Mon Sep 17 00:00:00 2001 +From bee16dd12cbcf6b35c16d789870c4b5bd5e26436 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 16:36:39 +0200 -Subject: [PATCH 142/291] rtmutex: export lockdep-less version of rt_mutex's +Subject: [PATCH 142/290] rtmutex: export lockdep-less version of rt_mutex's lock, trylock and unlock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Required for lock implementation ontop of rtmutex. @@ -149,5 +149,5 @@ index cb9815f0c766..5955ad2aa2a8 100644 struct hrtimer_sleeper *timeout, enum rtmutex_chainwalk chwalk, -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0143-rtmutex-add-sleeping-lock-implementation.patch b/debian/patches-rt/0143-rtmutex-add-sleeping-lock-implementation.patch index 2f829fad7..85d548166 100644 --- a/debian/patches-rt/0143-rtmutex-add-sleeping-lock-implementation.patch +++ b/debian/patches-rt/0143-rtmutex-add-sleeping-lock-implementation.patch @@ -1,8 +1,8 @@ -From f8f2487f3cd58b8c4d9949f90c29ba86d0a18e06 Mon Sep 17 00:00:00 2001 +From c156cbabd8b7d07e6ddf840f29799447a47d4758 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 17:11:19 +0200 -Subject: [PATCH 143/291] rtmutex: add sleeping lock implementation -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 143/290] rtmutex: add sleeping lock implementation +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Signed-off-by: Thomas Gleixner Signed-off-by: Sebastian Andrzej Siewior @@ -1204,5 +1204,5 @@ index 42b42ebf52bc..6a0ccaea2b42 100644 } } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0144-rtmutex-add-mutex-implementation-based-on-rtmutex.patch b/debian/patches-rt/0144-rtmutex-add-mutex-implementation-based-on-rtmutex.patch index 8096d3dda..beb16fe26 100644 --- a/debian/patches-rt/0144-rtmutex-add-mutex-implementation-based-on-rtmutex.patch +++ b/debian/patches-rt/0144-rtmutex-add-mutex-implementation-based-on-rtmutex.patch @@ -1,8 +1,8 @@ -From fc06a654c0dd41e503c005d5e4e2eddbe784887f Mon Sep 17 00:00:00 2001 +From 99c5293588e06d70bf0da65917ba3f7ab80dcf30 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 17:17:03 +0200 -Subject: [PATCH 144/291] rtmutex: add mutex implementation based on rtmutex -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 144/290] rtmutex: add mutex implementation based on rtmutex +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Signed-off-by: Thomas Gleixner Signed-off-by: Sebastian Andrzej Siewior @@ -379,5 +379,5 @@ index 000000000000..4f81595c0f52 +} +EXPORT_SYMBOL(atomic_dec_and_mutex_lock); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0145-rtmutex-add-rwsem-implementation-based-on-rtmutex.patch b/debian/patches-rt/0145-rtmutex-add-rwsem-implementation-based-on-rtmutex.patch index 25781fbeb..785ea3aaa 100644 --- a/debian/patches-rt/0145-rtmutex-add-rwsem-implementation-based-on-rtmutex.patch +++ b/debian/patches-rt/0145-rtmutex-add-rwsem-implementation-based-on-rtmutex.patch @@ -1,8 +1,8 @@ -From 5fea347b343152798cddcefd138af8269372f6c8 Mon Sep 17 00:00:00 2001 +From 45c0ef033d0844c47d08e2caf85dc92ab5143eb2 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 17:28:34 +0200 -Subject: [PATCH 145/291] rtmutex: add rwsem implementation based on rtmutex -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 145/290] rtmutex: add rwsem implementation based on rtmutex +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The RT specific R/W semaphore implementation restricts the number of readers to one because a writer cannot block on multiple readers and inherit its @@ -423,5 +423,5 @@ index 000000000000..7d3c5cf3d23d + __up_write_unlock(sem, WRITER_BIAS - 1, flags); +} -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0146-rtmutex-add-rwlock-implementation-based-on-rtmutex.patch b/debian/patches-rt/0146-rtmutex-add-rwlock-implementation-based-on-rtmutex.patch index d2cf6b851..6c9874039 100644 --- a/debian/patches-rt/0146-rtmutex-add-rwlock-implementation-based-on-rtmutex.patch +++ b/debian/patches-rt/0146-rtmutex-add-rwlock-implementation-based-on-rtmutex.patch @@ -1,8 +1,8 @@ -From 01ae9ffde6c5a6ca7ccf6c0475ccdc50fbb2f5ed Mon Sep 17 00:00:00 2001 +From 18ad344168ec1fcb667f20962bfe16c9a7c3e019 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 17:18:06 +0200 -Subject: [PATCH 146/291] rtmutex: add rwlock implementation based on rtmutex -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 146/290] rtmutex: add rwlock implementation based on rtmutex +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The implementation is bias-based, similar to the rwsem implementation. @@ -578,5 +578,5 @@ index 000000000000..aebb7ce25bc6 +} +EXPORT_SYMBOL(__rt_rwlock_init); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0147-rtmutex-rwlock-preserve-state-like-a-sleeping-lock.patch b/debian/patches-rt/0147-rtmutex-rwlock-preserve-state-like-a-sleeping-lock.patch index 8913968fd..561f56ac8 100644 --- a/debian/patches-rt/0147-rtmutex-rwlock-preserve-state-like-a-sleeping-lock.patch +++ b/debian/patches-rt/0147-rtmutex-rwlock-preserve-state-like-a-sleeping-lock.patch @@ -1,8 +1,8 @@ -From c70716f384a74ceca96ce1c3d7a4e92354b9193d Mon Sep 17 00:00:00 2001 +From c4a03078339c1b08038e82f98ad3db155663a23c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 11 Jan 2019 21:16:31 +0100 -Subject: [PATCH 147/291] rtmutex/rwlock: preserve state like a sleeping lock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 147/290] rtmutex/rwlock: preserve state like a sleeping lock +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The rwlock is spinning while acquiring a lock. Therefore it must become a sleeping lock on RT and preserve its task state while sleeping and @@ -29,5 +29,5 @@ index aebb7ce25bc6..8f90afe111ce 100644 /* * The slowlock() above is guaranteed to return with the rtmutex is -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0148-rtmutex-wire-up-RT-s-locking.patch b/debian/patches-rt/0148-rtmutex-wire-up-RT-s-locking.patch index 4ebe82a4c..a5cbf01b2 100644 --- a/debian/patches-rt/0148-rtmutex-wire-up-RT-s-locking.patch +++ b/debian/patches-rt/0148-rtmutex-wire-up-RT-s-locking.patch @@ -1,8 +1,8 @@ -From 46d346b7e744dc8446129e49629fc78feb5e765d Mon Sep 17 00:00:00 2001 +From 9e87c4922c3ae6f3e073a0ecb1dc4b0665c4b4be Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 17:31:14 +0200 -Subject: [PATCH 148/291] rtmutex: wire up RT's locking -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 148/290] rtmutex: wire up RT's locking +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Signed-off-by: Thomas Gleixner Signed-off-by: Sebastian Andrzej Siewior @@ -267,5 +267,5 @@ index 9aa0fccd5d43..76d0b40d9193 100644 + +#endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0149-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch b/debian/patches-rt/0149-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch index f2e5034d4..6daa0e9d1 100644 --- a/debian/patches-rt/0149-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch +++ b/debian/patches-rt/0149-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch @@ -1,8 +1,8 @@ -From c3b2cb6480d8545dfa037812869a768ff3d0901e Mon Sep 17 00:00:00 2001 +From 64764668902a060fa582a410b499d57d0777b24c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 12 Oct 2017 17:34:38 +0200 -Subject: [PATCH 149/291] rtmutex: add ww_mutex addon for mutex-rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 149/290] rtmutex: add ww_mutex addon for mutex-rt +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Signed-off-by: Sebastian Andrzej Siewior --- @@ -441,5 +441,5 @@ index 7d3c5cf3d23d..660e22caf709 100644 * The slowlock() above is guaranteed to return with the rtmutex (for * ret = 0) is now held, so there can't be a writer active. Increment -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0150-kconfig-Add-PREEMPT_RT_FULL.patch b/debian/patches-rt/0150-kconfig-Add-PREEMPT_RT_FULL.patch index e3c2f6557..a783095ce 100644 --- a/debian/patches-rt/0150-kconfig-Add-PREEMPT_RT_FULL.patch +++ b/debian/patches-rt/0150-kconfig-Add-PREEMPT_RT_FULL.patch @@ -1,8 +1,8 @@ -From 5115f211acd5b322506e5c637416c29595c6e73c Mon Sep 17 00:00:00 2001 +From 3df2347f3344f0d953425b31f1bf75d408a4b872 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 29 Jun 2011 14:58:57 +0200 -Subject: [PATCH 150/291] kconfig: Add PREEMPT_RT_FULL -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 150/290] kconfig: Add PREEMPT_RT_FULL +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Introduce the final symbol for PREEMPT_RT_FULL. @@ -65,5 +65,5 @@ index 87f1fc9801d7..f67b15236936 100755 # Truncate to maximum length -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0151-locking-rt-mutex-fix-deadlock-in-device-mapper-block.patch b/debian/patches-rt/0151-locking-rt-mutex-fix-deadlock-in-device-mapper-block.patch index 4956262eb..a6a574a12 100644 --- a/debian/patches-rt/0151-locking-rt-mutex-fix-deadlock-in-device-mapper-block.patch +++ b/debian/patches-rt/0151-locking-rt-mutex-fix-deadlock-in-device-mapper-block.patch @@ -1,9 +1,9 @@ -From 84f942b3adb3f202bbf99cb6213a5b43d96bf300 Mon Sep 17 00:00:00 2001 +From d195cae60a247824d8be07574d6fcc425b35d074 Mon Sep 17 00:00:00 2001 From: Mikulas Patocka Date: Mon, 13 Nov 2017 12:56:53 -0500 -Subject: [PATCH 151/291] locking/rt-mutex: fix deadlock in device mapper / +Subject: [PATCH 151/290] locking/rt-mutex: fix deadlock in device mapper / block-IO -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz When some block device driver creates a bio and submits it to another block device driver, the bio is added to current->bio_list (in order to @@ -77,5 +77,5 @@ index 1f2dc2dfe2e7..b38c3a92dce8 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0152-locking-rt-mutex-Flush-block-plug-on-__down_read.patch b/debian/patches-rt/0152-locking-rt-mutex-Flush-block-plug-on-__down_read.patch index d1a833671..c0c0d2afd 100644 --- a/debian/patches-rt/0152-locking-rt-mutex-Flush-block-plug-on-__down_read.patch +++ b/debian/patches-rt/0152-locking-rt-mutex-Flush-block-plug-on-__down_read.patch @@ -1,8 +1,8 @@ -From 360d5e69ca130e0c1822587c07ac65bce78ce666 Mon Sep 17 00:00:00 2001 +From d501d64d4060f7957c5e2d38cb3b200cf3558c49 Mon Sep 17 00:00:00 2001 From: Scott Wood Date: Fri, 4 Jan 2019 15:33:21 -0500 -Subject: [PATCH 152/291] locking/rt-mutex: Flush block plug on __down_read() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 152/290] locking/rt-mutex: Flush block plug on __down_read() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz __down_read() bypasses the rtmutex frontend to call rt_mutex_slowlock_locked() directly, and thus it needs to call @@ -42,5 +42,5 @@ index 660e22caf709..f518495bd6cc 100644 might_sleep(); raw_spin_lock_irq(&m->wait_lock); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0153-locking-rtmutex-re-init-the-wait_lock-in-rt_mutex_in.patch b/debian/patches-rt/0153-locking-rtmutex-re-init-the-wait_lock-in-rt_mutex_in.patch index 3456e1318..f790e4fcc 100644 --- a/debian/patches-rt/0153-locking-rtmutex-re-init-the-wait_lock-in-rt_mutex_in.patch +++ b/debian/patches-rt/0153-locking-rtmutex-re-init-the-wait_lock-in-rt_mutex_in.patch @@ -1,9 +1,9 @@ -From ca82845be4e7cb3ba263c0e90eac8df3e46f3119 Mon Sep 17 00:00:00 2001 +From d0199e56eaa78d4c3026051cb0281d3a810d1ae3 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 16 Nov 2017 16:48:48 +0100 -Subject: [PATCH 153/291] locking/rtmutex: re-init the wait_lock in +Subject: [PATCH 153/290] locking/rtmutex: re-init the wait_lock in rt_mutex_init_proxy_locked() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz We could provide a key-class for the lockdep (and fixup all callers) or move the init to all callers (like it was) in order to avoid lockdep @@ -35,5 +35,5 @@ index b38c3a92dce8..94788662b2f2 100644 rt_mutex_set_owner(lock, proxy_owner); } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0154-ptrace-fix-ptrace-vs-tasklist_lock-race.patch b/debian/patches-rt/0154-ptrace-fix-ptrace-vs-tasklist_lock-race.patch index c860d2d00..012c74b01 100644 --- a/debian/patches-rt/0154-ptrace-fix-ptrace-vs-tasklist_lock-race.patch +++ b/debian/patches-rt/0154-ptrace-fix-ptrace-vs-tasklist_lock-race.patch @@ -1,8 +1,8 @@ -From 7c8e6b349796c629dcda3584fbe21e74469ffb06 Mon Sep 17 00:00:00 2001 +From e7e712a633a103d1d141dba845f847dcf20a9f47 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 29 Aug 2013 18:21:04 +0200 -Subject: [PATCH 154/291] ptrace: fix ptrace vs tasklist_lock race -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 154/290] ptrace: fix ptrace vs tasklist_lock race +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz As explained by Alexander Fyodorov : @@ -162,5 +162,5 @@ index 6a0ccaea2b42..6bab30347081 100644 task_rq_unlock(rq, p, &rf); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0155-rtmutex-annotate-sleeping-lock-context.patch b/debian/patches-rt/0155-rtmutex-annotate-sleeping-lock-context.patch index c179fc3a2..12b3545fd 100644 --- a/debian/patches-rt/0155-rtmutex-annotate-sleeping-lock-context.patch +++ b/debian/patches-rt/0155-rtmutex-annotate-sleeping-lock-context.patch @@ -1,8 +1,8 @@ -From 1a2bef16f0eae3be74774db4e7dcda547f093d8a Mon Sep 17 00:00:00 2001 +From 73e797275adecb403374a97cd6d6737f6a6f8671 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 21 Sep 2017 14:25:13 +0200 -Subject: [PATCH 155/291] rtmutex: annotate sleeping lock context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 155/290] rtmutex: annotate sleeping lock context +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The RCU code complains on schedule() within a rcu_readlock() section. The valid scenario on -RT is if a sleeping is held. In order to suppress @@ -304,5 +304,5 @@ index 6bab30347081..d49580cb0eb2 100644 +EXPORT_SYMBOL(migrate_enable); #endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0156-sched-migrate_disable-fallback-to-preempt_disable-in.patch b/debian/patches-rt/0156-sched-migrate_disable-fallback-to-preempt_disable-in.patch index 0788cbf0e..a3748cf9b 100644 --- a/debian/patches-rt/0156-sched-migrate_disable-fallback-to-preempt_disable-in.patch +++ b/debian/patches-rt/0156-sched-migrate_disable-fallback-to-preempt_disable-in.patch @@ -1,9 +1,9 @@ -From c01bef50a5377fc576ab0c28621fcdb85265ab5c Mon Sep 17 00:00:00 2001 +From 65a47d500d54261e050d9f73a554a1ad527ea6d7 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 5 Jul 2018 14:44:51 +0200 -Subject: [PATCH 156/291] sched/migrate_disable: fallback to preempt_disable() +Subject: [PATCH 156/290] sched/migrate_disable: fallback to preempt_disable() instead barrier() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On SMP + !RT migrate_disable() is still around. It is not part of spin_lock() anymore so it has almost no users. However the futex code has a workaround for @@ -200,5 +200,5 @@ index 5027158d3908..dd6c364d6f01 100644 #endif P(nr_cpus_allowed); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0157-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch b/debian/patches-rt/0157-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch index 8521f3914..77748c8ef 100644 --- a/debian/patches-rt/0157-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch +++ b/debian/patches-rt/0157-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch @@ -1,9 +1,9 @@ -From 1a57a1a78533f7029a73dbd8251f59097d2f5e45 Mon Sep 17 00:00:00 2001 +From 5b55069e90dd13bbd2376868c9ae8dab6a2e72d1 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 4 Aug 2017 17:40:42 +0200 -Subject: [PATCH 157/291] locking: don't check for __LINUX_SPINLOCK_TYPES_H on +Subject: [PATCH 157/290] locking: don't check for __LINUX_SPINLOCK_TYPES_H on -RT archs -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Upstream uses arch_spinlock_t within spinlock_t and requests that spinlock_types.h header file is included first. @@ -178,5 +178,5 @@ index c09b6407ae1b..b0243ba07fb7 100644 * include/linux/spinlock_types_up.h - spinlock type definitions for UP * -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0158-rcu-Frob-softirq-test.patch b/debian/patches-rt/0158-rcu-Frob-softirq-test.patch index 3e24aeb2e..c586f96ec 100644 --- a/debian/patches-rt/0158-rcu-Frob-softirq-test.patch +++ b/debian/patches-rt/0158-rcu-Frob-softirq-test.patch @@ -1,8 +1,8 @@ -From 5407933bf46acea28469e199610a9bf9ee943fad Mon Sep 17 00:00:00 2001 +From 9baac22c59df91638ab1dacfebd3290c5bfd73ca Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Sat, 13 Aug 2011 00:23:17 +0200 -Subject: [PATCH 158/291] rcu: Frob softirq test -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 158/290] rcu: Frob softirq test +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz With RT_FULL we get the below wreckage: @@ -169,5 +169,5 @@ index 564e3927e7b0..429a2f144e19 100644 "rcu_read_unlock() from irq or softirq with blocking in critical section!!!\n"); pr_alert("->rcu_read_unlock_special: %#x (b: %d, enq: %d nq: %d)\n", -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0159-rcu-Merge-RCU-bh-into-RCU-preempt.patch b/debian/patches-rt/0159-rcu-Merge-RCU-bh-into-RCU-preempt.patch index 7db92b167..11e05a9c4 100644 --- a/debian/patches-rt/0159-rcu-Merge-RCU-bh-into-RCU-preempt.patch +++ b/debian/patches-rt/0159-rcu-Merge-RCU-bh-into-RCU-preempt.patch @@ -1,8 +1,8 @@ -From 085b424d3ad3fddac6f8483d47c7e663580bd0c7 Mon Sep 17 00:00:00 2001 +From 901bc5821a73d1fc6bbfe65cf07194fd04845366 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 5 Oct 2011 11:59:38 -0700 -Subject: [PATCH 159/291] rcu: Merge RCU-bh into RCU-preempt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 159/290] rcu: Merge RCU-bh into RCU-preempt +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The Linux kernel has long RCU-bh read-side critical sections that intolerably increase scheduling latency under mainline's RCU-bh rules, @@ -347,5 +347,5 @@ index 81688a133552..6ffafb1b1584 100644 #endif /* #ifdef CONFIG_DEBUG_LOCK_ALLOC */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0160-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch b/debian/patches-rt/0160-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch index 652f96226..737da3cc1 100644 --- a/debian/patches-rt/0160-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch +++ b/debian/patches-rt/0160-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch @@ -1,8 +1,8 @@ -From da50f514a602e77e56861835b6c01dd5d361d11b Mon Sep 17 00:00:00 2001 +From 8a484b91ae77a0557e92b9e07f3fe82b7ff735cb Mon Sep 17 00:00:00 2001 From: "Paul E. McKenney" Date: Wed, 5 Oct 2011 11:45:18 -0700 -Subject: [PATCH 160/291] rcu: Make ksoftirqd do RCU quiescent states -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 160/290] rcu: Make ksoftirqd do RCU quiescent states +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Implementing RCU-bh in terms of RCU-preempt makes the system vulnerable to network-based denial-of-service attacks. This patch therefore @@ -113,5 +113,5 @@ index 429a2f144e19..bee9bffeb0ce 100644 /* * Prepare a CPU for idle from an RCU perspective. The first major task -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0161-rcu-Eliminate-softirq-processing-from-rcutree.patch b/debian/patches-rt/0161-rcu-Eliminate-softirq-processing-from-rcutree.patch index bc2354f8d..9d396e939 100644 --- a/debian/patches-rt/0161-rcu-Eliminate-softirq-processing-from-rcutree.patch +++ b/debian/patches-rt/0161-rcu-Eliminate-softirq-processing-from-rcutree.patch @@ -1,8 +1,8 @@ -From cc07d4bc06075d6a2442c1b976679ba982043009 Mon Sep 17 00:00:00 2001 +From 5c4e32e88d430654b1f529185331235d5b745a0d Mon Sep 17 00:00:00 2001 From: "Paul E. McKenney" Date: Mon, 4 Nov 2013 13:21:10 -0800 -Subject: [PATCH 161/291] rcu: Eliminate softirq processing from rcutree -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 161/290] rcu: Eliminate softirq processing from rcutree +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Running RCU out of softirq is a problem for some workloads that would like to manage RCU core processing independently of other softirq work, @@ -419,5 +419,5 @@ index bee9bffeb0ce..2e8737f1010f 100644 { return false; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0162-srcu-use-cpu_online-instead-custom-check.patch b/debian/patches-rt/0162-srcu-use-cpu_online-instead-custom-check.patch index 8562b098c..ef0b38af2 100644 --- a/debian/patches-rt/0162-srcu-use-cpu_online-instead-custom-check.patch +++ b/debian/patches-rt/0162-srcu-use-cpu_online-instead-custom-check.patch @@ -1,8 +1,8 @@ -From 2cba2648caec4dbb0181fc50c2634386402bd67e Mon Sep 17 00:00:00 2001 +From 68c6703bb92019392658036dcf0a667b1388a3b0 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 13 Sep 2017 14:43:41 +0200 -Subject: [PATCH 162/291] srcu: use cpu_online() instead custom check -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 162/290] srcu: use cpu_online() instead custom check +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The current check via srcu_online is slightly racy because after looking at srcu_online there could be an interrupt that interrupted us long @@ -92,5 +92,5 @@ index ae716ca783bc..f162a4f54b05 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0163-srcu-replace-local_irqsave-with-a-locallock.patch b/debian/patches-rt/0163-srcu-replace-local_irqsave-with-a-locallock.patch index 351398601..1e77fc316 100644 --- a/debian/patches-rt/0163-srcu-replace-local_irqsave-with-a-locallock.patch +++ b/debian/patches-rt/0163-srcu-replace-local_irqsave-with-a-locallock.patch @@ -1,8 +1,8 @@ -From bedea287f54e9d0ba65048a7c121552709eca316 Mon Sep 17 00:00:00 2001 +From 5bc56052951df498807fec250c48debf7cc3a55b Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 12 Oct 2017 18:37:12 +0200 -Subject: [PATCH 163/291] srcu: replace local_irqsave() with a locallock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 163/290] srcu: replace local_irqsave() with a locallock +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz There are two instances which disable interrupts in order to become a stable this_cpu_ptr() pointer. The restore part is coupled with @@ -73,5 +73,5 @@ index df0375453ba1..0f09a1a9e17c 100644 srcu_funnel_gp_start(sp, sdp, s, do_norm); else if (needexp) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0164-rcu-enable-rcu_normal_after_boot-by-default-for-RT.patch b/debian/patches-rt/0164-rcu-enable-rcu_normal_after_boot-by-default-for-RT.patch index 82a18401e..8557735a2 100644 --- a/debian/patches-rt/0164-rcu-enable-rcu_normal_after_boot-by-default-for-RT.patch +++ b/debian/patches-rt/0164-rcu-enable-rcu_normal_after_boot-by-default-for-RT.patch @@ -1,8 +1,8 @@ -From 8fd95dbe3aeb48841f474edf2952b3c3aaa158cc Mon Sep 17 00:00:00 2001 +From 72d24a41a24c422c75947391b6fb8419bce49da3 Mon Sep 17 00:00:00 2001 From: Julia Cartwright Date: Wed, 12 Oct 2016 11:21:14 -0500 -Subject: [PATCH 164/291] rcu: enable rcu_normal_after_boot by default for RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 164/290] rcu: enable rcu_normal_after_boot by default for RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The forcing of an expedited grace period is an expensive and very RT-application unfriendly operation, as it forcibly preempts all running @@ -33,5 +33,5 @@ index 6ffafb1b1584..16d8dba23329 100644 #endif /* #ifndef CONFIG_TINY_RCU */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0165-tty-serial-omap-Make-the-locking-RT-aware.patch b/debian/patches-rt/0165-tty-serial-omap-Make-the-locking-RT-aware.patch index ef97f5a8d..c7cc4a53f 100644 --- a/debian/patches-rt/0165-tty-serial-omap-Make-the-locking-RT-aware.patch +++ b/debian/patches-rt/0165-tty-serial-omap-Make-the-locking-RT-aware.patch @@ -1,8 +1,8 @@ -From 817ed303e8f93817961372868fbca9c404d7d850 Mon Sep 17 00:00:00 2001 +From d23352f4c6e06f5629a0d48714ac071a78b7669d Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 28 Jul 2011 13:32:57 +0200 -Subject: [PATCH 165/291] tty/serial/omap: Make the locking RT aware -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 165/290] tty/serial/omap: Make the locking RT aware +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The lock is a sleeping lock and local_irq_save() is not the optimsation we are looking for. Redo it to make it work on -RT and @@ -45,5 +45,5 @@ index 6420ae581a80..0f4f41ed9ffa 100644 static int __init -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0166-tty-serial-pl011-Make-the-locking-work-on-RT.patch b/debian/patches-rt/0166-tty-serial-pl011-Make-the-locking-work-on-RT.patch index 267cd0212..b305e2394 100644 --- a/debian/patches-rt/0166-tty-serial-pl011-Make-the-locking-work-on-RT.patch +++ b/debian/patches-rt/0166-tty-serial-pl011-Make-the-locking-work-on-RT.patch @@ -1,8 +1,8 @@ -From 5cf5a0697974de479f13994ffeeef593913d2d78 Mon Sep 17 00:00:00 2001 +From e98f40187d6c4ce468ae727682ccccff520ad931 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 8 Jan 2013 21:36:51 +0100 -Subject: [PATCH 166/291] tty/serial/pl011: Make the locking work on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 166/290] tty/serial/pl011: Make the locking work on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The lock is a sleeping lock and local_irq_save() is not the optimsation we are looking for. Redo it to make it work on -RT and non-RT. @@ -50,5 +50,5 @@ index af21122dfade..183e8b731d6a 100644 clk_disable(uap->clk); } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0167-tty-serial-pl011-explicitly-initialize-the-flags-var.patch b/debian/patches-rt/0167-tty-serial-pl011-explicitly-initialize-the-flags-var.patch index 7da6dcf9d..f1d617046 100644 --- a/debian/patches-rt/0167-tty-serial-pl011-explicitly-initialize-the-flags-var.patch +++ b/debian/patches-rt/0167-tty-serial-pl011-explicitly-initialize-the-flags-var.patch @@ -1,12 +1,12 @@ -From 78bfc3b8653b3e8599d89d728effe5c8b9bdc672 Mon Sep 17 00:00:00 2001 +From af3d56abb15953cb66d7ab6ec70e7289699c06b3 Mon Sep 17 00:00:00 2001 From: Kurt Kanzenbach Date: Mon, 24 Sep 2018 10:29:01 +0200 -Subject: [PATCH 167/291] tty: serial: pl011: explicitly initialize the flags +Subject: [PATCH 167/290] tty: serial: pl011: explicitly initialize the flags variable MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Silence the following gcc warning: @@ -41,5 +41,5 @@ index 183e8b731d6a..2cc6b24bc88d 100644 clk_enable(uap->clk); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0168-rt-Improve-the-serial-console-PASS_LIMIT.patch b/debian/patches-rt/0168-rt-Improve-the-serial-console-PASS_LIMIT.patch index cca8800f8..625b36a12 100644 --- a/debian/patches-rt/0168-rt-Improve-the-serial-console-PASS_LIMIT.patch +++ b/debian/patches-rt/0168-rt-Improve-the-serial-console-PASS_LIMIT.patch @@ -1,11 +1,11 @@ -From 99ba88ac9e4bddf4257077ca8d9060c77418627a Mon Sep 17 00:00:00 2001 +From 8a62565dce3fc35c4f8409e5b790505c56d7488a Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Wed, 14 Dec 2011 13:05:54 +0100 -Subject: [PATCH 168/291] rt: Improve the serial console PASS_LIMIT +Subject: [PATCH 168/290] rt: Improve the serial console PASS_LIMIT MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Beyond the warning: @@ -43,5 +43,5 @@ index 69aaee5d7fe1..cf88317a95fc 100644 #include /* -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0169-tty-serial-8250-don-t-take-the-trylock-during-oops.patch b/debian/patches-rt/0169-tty-serial-8250-don-t-take-the-trylock-during-oops.patch index e3fdcdcfd..0632ac7f7 100644 --- a/debian/patches-rt/0169-tty-serial-8250-don-t-take-the-trylock-during-oops.patch +++ b/debian/patches-rt/0169-tty-serial-8250-don-t-take-the-trylock-during-oops.patch @@ -1,8 +1,8 @@ -From 462dce236f0f131b419f9df7bc1ff5f241677b8c Mon Sep 17 00:00:00 2001 +From cfdff0a4d70b2b13d7088037e29e4795d031a127 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 11 Apr 2016 16:55:02 +0200 -Subject: [PATCH 169/291] tty: serial: 8250: don't take the trylock during oops -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 169/290] tty: serial: 8250: don't take the trylock during oops +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz An oops with irqs off (panic() from irqsafe hrtimer like the watchdog timer) will lead to a lockdep warning on each invocation and as such @@ -31,5 +31,5 @@ index aa4de6907f77..6b1d46c1df3b 100644 spin_lock_irqsave(&port->lock, flags); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0170-locking-percpu-rwsem-Remove-preempt_disable-variants.patch b/debian/patches-rt/0170-locking-percpu-rwsem-Remove-preempt_disable-variants.patch index 1593cdab3..f671ed1e3 100644 --- a/debian/patches-rt/0170-locking-percpu-rwsem-Remove-preempt_disable-variants.patch +++ b/debian/patches-rt/0170-locking-percpu-rwsem-Remove-preempt_disable-variants.patch @@ -1,8 +1,8 @@ -From ced136b4a3a92b5a8ef5ebdcacc93fab73b30c0e Mon Sep 17 00:00:00 2001 +From 5e95b56124341d5c51f1b53b804367a02c4b706b Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Wed, 23 Nov 2016 16:29:32 +0100 -Subject: [PATCH 170/291] locking/percpu-rwsem: Remove preempt_disable variants -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 170/290] locking/percpu-rwsem: Remove preempt_disable variants +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Effective revert commit: @@ -18,7 +18,7 @@ Signed-off-by: Peter Zijlstra (Intel) 2 files changed, 20 insertions(+), 36 deletions(-) diff --git a/fs/locks.c b/fs/locks.c -index 2ecb4db8c840..8259b7c7b5d2 100644 +index 28270e74be34..552476d6f6bb 100644 --- a/fs/locks.c +++ b/fs/locks.c @@ -936,7 +936,7 @@ static int flock_lock_inode(struct inode *inode, struct file_lock *request) @@ -222,5 +222,5 @@ index 79b99d653e03..fb44e237316d 100644 extern void percpu_up_write(struct percpu_rw_semaphore *); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0171-mm-Protect-activate_mm-by-preempt_-disable-enable-_r.patch b/debian/patches-rt/0171-mm-Protect-activate_mm-by-preempt_-disable-enable-_r.patch index c5294b1dc..ce8ee35e3 100644 --- a/debian/patches-rt/0171-mm-Protect-activate_mm-by-preempt_-disable-enable-_r.patch +++ b/debian/patches-rt/0171-mm-Protect-activate_mm-by-preempt_-disable-enable-_r.patch @@ -1,9 +1,9 @@ -From 42ed1c2642ef5414bca4eb0ce987845dc85c761e Mon Sep 17 00:00:00 2001 +From f321beb42f46e0be7912e2d8cc67f922477c4787 Mon Sep 17 00:00:00 2001 From: Yong Zhang Date: Tue, 15 May 2012 13:53:56 +0800 -Subject: [PATCH 171/291] mm: Protect activate_mm() by +Subject: [PATCH 171/290] mm: Protect activate_mm() by preempt_[disable&enable]_rt() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz User preempt_*_rt instead of local_irq_*_rt or otherwise there will be warning on ARM like below: @@ -77,5 +77,5 @@ index 3e612ae748e9..d0ccc070979f 100644 #ifdef finish_arch_post_lock_switch finish_arch_post_lock_switch(); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0172-fs-dcache-bring-back-explicit-INIT_HLIST_BL_HEAD-ini.patch b/debian/patches-rt/0172-fs-dcache-bring-back-explicit-INIT_HLIST_BL_HEAD-ini.patch index 98aebf04b..4b2f06386 100644 --- a/debian/patches-rt/0172-fs-dcache-bring-back-explicit-INIT_HLIST_BL_HEAD-ini.patch +++ b/debian/patches-rt/0172-fs-dcache-bring-back-explicit-INIT_HLIST_BL_HEAD-ini.patch @@ -1,9 +1,9 @@ -From d80bf465170b4bf24223d8015c2c604bfbea67ab Mon Sep 17 00:00:00 2001 +From 6657c7f6ea61fd3fea378532fcae38776afc9fc1 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 13 Sep 2017 12:32:34 +0200 -Subject: [PATCH 172/291] fs/dcache: bring back explicit INIT_HLIST_BL_HEAD +Subject: [PATCH 172/290] fs/dcache: bring back explicit INIT_HLIST_BL_HEAD init -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Commit 3d375d78593c ("mm: update callers to use HASH_ZERO flag") removed INIT_HLIST_BL_HEAD and uses the ZERO flag instead for the init. However @@ -57,5 +57,5 @@ index 6e0022326afe..10225a9135fb 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0173-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch b/debian/patches-rt/0173-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch index 9c3e9acc6..458f1116b 100644 --- a/debian/patches-rt/0173-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch +++ b/debian/patches-rt/0173-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch @@ -1,9 +1,9 @@ -From ba7462ed021a2886a4633fde1864a65fb0da356c Mon Sep 17 00:00:00 2001 +From f7fc6eb795b824aba9a02869fb2f399bb51a880c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 20 Oct 2017 11:29:53 +0200 -Subject: [PATCH 173/291] fs/dcache: disable preemption on i_dir_seq's write +Subject: [PATCH 173/290] fs/dcache: disable preemption on i_dir_seq's write side -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz i_dir_seq is an opencoded seqcounter. Based on the code it looks like we could have two writers in parallel despite the fact that the d_lock is @@ -95,5 +95,5 @@ index 92420009b9bc..9b2b707e9112 100644 __u32 i_generation; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0174-squashfs-make-use-of-local-lock-in-multi_cpu-decompr.patch b/debian/patches-rt/0174-squashfs-make-use-of-local-lock-in-multi_cpu-decompr.patch index 5890643eb..1a7ab171d 100644 --- a/debian/patches-rt/0174-squashfs-make-use-of-local-lock-in-multi_cpu-decompr.patch +++ b/debian/patches-rt/0174-squashfs-make-use-of-local-lock-in-multi_cpu-decompr.patch @@ -1,9 +1,9 @@ -From 62f5675a81b3ef1f938dd06c67bdb6f769e457b1 Mon Sep 17 00:00:00 2001 +From cd5771603fe1942769706821fac18040226fec7c Mon Sep 17 00:00:00 2001 From: Julia Cartwright Date: Mon, 7 May 2018 08:58:57 -0500 -Subject: [PATCH 174/291] squashfs: make use of local lock in multi_cpu +Subject: [PATCH 174/290] squashfs: make use of local lock in multi_cpu decompressor -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Currently, the squashfs multi_cpu decompressor makes use of get_cpu_ptr()/put_cpu_ptr(), which unconditionally disable preemption @@ -68,5 +68,5 @@ index 23a9c28ad8ea..6a73c4fa88e7 100644 if (res < 0) ERROR("%s decompression failed, data probably corrupt\n", -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0175-thermal-Defer-thermal-wakups-to-threads.patch b/debian/patches-rt/0175-thermal-Defer-thermal-wakups-to-threads.patch index 9be0ae465..e1ba3e5a4 100644 --- a/debian/patches-rt/0175-thermal-Defer-thermal-wakups-to-threads.patch +++ b/debian/patches-rt/0175-thermal-Defer-thermal-wakups-to-threads.patch @@ -1,8 +1,8 @@ -From fe21f9e6d6a6bf7dc6be7e0c79b5ea8913b75edb Mon Sep 17 00:00:00 2001 +From 902a47642519ca8ebec20cd12baa43b7985d5d5e Mon Sep 17 00:00:00 2001 From: Daniel Wagner Date: Tue, 17 Feb 2015 09:37:44 +0100 -Subject: [PATCH 175/291] thermal: Defer thermal wakups to threads -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 175/290] thermal: Defer thermal wakups to threads +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On RT the spin lock in pkg_temp_thermal_platfrom_thermal_notify will call schedule while we run in irq context. @@ -133,5 +133,5 @@ index 1ef937d799e4..a5991cbb408f 100644 module_exit(pkg_temp_thermal_exit) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0176-x86-fpu-Disable-preemption-around-local_bh_disable.patch b/debian/patches-rt/0176-x86-fpu-Disable-preemption-around-local_bh_disable.patch index 5683cf3ed..cf39007a5 100644 --- a/debian/patches-rt/0176-x86-fpu-Disable-preemption-around-local_bh_disable.patch +++ b/debian/patches-rt/0176-x86-fpu-Disable-preemption-around-local_bh_disable.patch @@ -1,8 +1,8 @@ -From a88859a42be94e787aa974fc85b1ef31c5fcc18e Mon Sep 17 00:00:00 2001 +From b2c28ae019437b1f5b43bb57a2898cfb0c03397c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 11 Dec 2018 15:10:33 +0100 -Subject: [PATCH 176/291] x86/fpu: Disable preemption around local_bh_disable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 176/290] x86/fpu: Disable preemption around local_bh_disable() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz __fpu__restore_sig() restores the content of the FPU state in the CPUs and in order to avoid concurency it disbles BH. On !RT it also disables @@ -34,5 +34,5 @@ index d99a8ee9e185..5e0274a94133 100644 return err; } else { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0177-fs-epoll-Do-not-disable-preemption-on-RT.patch b/debian/patches-rt/0177-fs-epoll-Do-not-disable-preemption-on-RT.patch index 8ac138149..51c65d9fe 100644 --- a/debian/patches-rt/0177-fs-epoll-Do-not-disable-preemption-on-RT.patch +++ b/debian/patches-rt/0177-fs-epoll-Do-not-disable-preemption-on-RT.patch @@ -1,8 +1,8 @@ -From 7ff343216f97f4a485046ae50e73f90472810bbf Mon Sep 17 00:00:00 2001 +From 5916e5218923335c20252ab8309a16d071a54a80 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 8 Jul 2011 16:35:35 +0200 -Subject: [PATCH 177/291] fs/epoll: Do not disable preemption on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 177/290] fs/epoll: Do not disable preemption on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz ep_call_nested() takes a sleeping lock so we can't disable preemption. The light version is enough since ep_call_nested() doesn't mind beeing @@ -33,5 +33,5 @@ index 58f48ea0db23..a41120a34e6d 100644 #else -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0178-mm-vmalloc-Another-preempt-disable-region-which-suck.patch b/debian/patches-rt/0178-mm-vmalloc-Another-preempt-disable-region-which-suck.patch index 1a02b44e3..15c9bf813 100644 --- a/debian/patches-rt/0178-mm-vmalloc-Another-preempt-disable-region-which-suck.patch +++ b/debian/patches-rt/0178-mm-vmalloc-Another-preempt-disable-region-which-suck.patch @@ -1,9 +1,9 @@ -From a25b898cef8df2e36a17bacfafa0e31523e8d9a4 Mon Sep 17 00:00:00 2001 +From 4b23a47feeb6d6b93de283f0502e0ba095173d0d Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 12 Jul 2011 11:39:36 +0200 -Subject: [PATCH 178/291] mm/vmalloc: Another preempt disable region which +Subject: [PATCH 178/290] mm/vmalloc: Another preempt disable region which sucks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Avoid the preempt disable version of get_cpu_var(). The inner-lock should provide enough serialisation. @@ -69,5 +69,5 @@ index d8e877365f9f..9b7cf993cada 100644 /* Allocate new block if nothing was found */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0179-block-mq-use-cpu_light.patch b/debian/patches-rt/0179-block-mq-use-cpu_light.patch index 81bbecaa7..be41475d8 100644 --- a/debian/patches-rt/0179-block-mq-use-cpu_light.patch +++ b/debian/patches-rt/0179-block-mq-use-cpu_light.patch @@ -1,8 +1,8 @@ -From 991985bed9293ecd19a5362d81c8165261c696cd Mon Sep 17 00:00:00 2001 +From 687c233b2f57dfd618d45830dc9af37e3147e81b Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 9 Apr 2014 10:37:23 +0200 -Subject: [PATCH 179/291] block: mq: use cpu_light() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 179/290] block: mq: use cpu_light() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz there is a might sleep splat because get_cpu() disables preemption and later we grab a lock. As a workaround for this we use get_cpu_light(). @@ -32,5 +32,5 @@ index 5ad9251627f8..5a96c97991b6 100644 struct blk_mq_alloc_data { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0180-block-mq-do-not-invoke-preempt_disable.patch b/debian/patches-rt/0180-block-mq-do-not-invoke-preempt_disable.patch index 3946f7bb4..8ae711184 100644 --- a/debian/patches-rt/0180-block-mq-do-not-invoke-preempt_disable.patch +++ b/debian/patches-rt/0180-block-mq-do-not-invoke-preempt_disable.patch @@ -1,8 +1,8 @@ -From 2882604a181cc5fccb2e4e16e51890a11932f535 Mon Sep 17 00:00:00 2001 +From 4038b2ec5798b7386eb67a895fda6b5c4febfc36 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 14 Jul 2015 14:26:34 +0200 -Subject: [PATCH 180/291] block/mq: do not invoke preempt_disable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 180/290] block/mq: do not invoke preempt_disable() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz preempt_disable() and get_cpu() don't play well together with the sleeping locks it tries to allocate later. @@ -54,5 +54,5 @@ index 4aa3284874f6..376fb90de054 100644 kblockd_mod_delayed_work_on(blk_mq_hctx_next_cpu(hctx), &hctx->run_work, -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0181-block-mq-don-t-complete-requests-via-IPI.patch b/debian/patches-rt/0181-block-mq-don-t-complete-requests-via-IPI.patch index daf3b475e..005a3c011 100644 --- a/debian/patches-rt/0181-block-mq-don-t-complete-requests-via-IPI.patch +++ b/debian/patches-rt/0181-block-mq-don-t-complete-requests-via-IPI.patch @@ -1,8 +1,8 @@ -From 0e7d1e6c6e3b7f2d386943ad33e1c5f8bfed7670 Mon Sep 17 00:00:00 2001 +From 1e4579941a4ae775b14ca02ef717a5bea1608853 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 29 Jan 2015 15:10:08 +0100 -Subject: [PATCH 181/291] block/mq: don't complete requests via IPI -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 181/290] block/mq: don't complete requests via IPI +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The IPI runs in hardirq context and there are sleeping locks. This patch moves the completion into a workqueue. @@ -115,5 +115,5 @@ index d51e10f50e75..f1960add94df 100644 int cpu; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0182-md-raid5-Make-raid5_percpu-handling-RT-aware.patch b/debian/patches-rt/0182-md-raid5-Make-raid5_percpu-handling-RT-aware.patch index 6f32857f8..03b4d9e28 100644 --- a/debian/patches-rt/0182-md-raid5-Make-raid5_percpu-handling-RT-aware.patch +++ b/debian/patches-rt/0182-md-raid5-Make-raid5_percpu-handling-RT-aware.patch @@ -1,8 +1,8 @@ -From 40a927b047107baa836bc15970910c823ff4ba82 Mon Sep 17 00:00:00 2001 +From ea655a0576aff0709c19ff2f8634ac9cb783f0ad Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 6 Apr 2010 16:51:31 +0200 -Subject: [PATCH 182/291] md: raid5: Make raid5_percpu handling RT aware -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 182/290] md: raid5: Make raid5_percpu handling RT aware +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz __raid_run_ops() disables preemption with get_cpu() around the access to the raid5_percpu variables. That causes scheduling while atomic @@ -73,5 +73,5 @@ index 8474c224127b..a3bf907ab2af 100644 struct flex_array *scribble; /* space for constructing buffer * lists and performing address -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0183-rt-Introduce-cpu_chill.patch b/debian/patches-rt/0183-rt-Introduce-cpu_chill.patch index 4a1222821..a2a646f47 100644 --- a/debian/patches-rt/0183-rt-Introduce-cpu_chill.patch +++ b/debian/patches-rt/0183-rt-Introduce-cpu_chill.patch @@ -1,8 +1,8 @@ -From 8e45b9590702e5bc703ef1b4763df882b42ba358 Mon Sep 17 00:00:00 2001 +From c021d3e1d9574028eba2cdd5b6c776e9020a0d9d Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 7 Mar 2012 20:51:03 +0100 -Subject: [PATCH 183/291] rt: Introduce cpu_chill() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 183/290] rt: Introduce cpu_chill() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Retry loops on RT might loop forever when the modifying side was preempted. Add cpu_chill() to replace cpu_relax(). cpu_chill() @@ -77,10 +77,10 @@ index b78bab4395d8..7c4bc414a504 100644 + #endif /* defined(_LINUX_DELAY_H) */ diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c -index cfa3599fa789..851b2134e77f 100644 +index b800efb64238..98a771065818 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c -@@ -1894,6 +1894,27 @@ COMPAT_SYSCALL_DEFINE2(nanosleep, struct compat_timespec __user *, rqtp, +@@ -1897,6 +1897,27 @@ COMPAT_SYSCALL_DEFINE2(nanosleep, struct compat_timespec __user *, rqtp, } #endif @@ -109,5 +109,5 @@ index cfa3599fa789..851b2134e77f 100644 * Functions related to boot-time initialization: */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0184-hrtimer-Don-t-lose-state-in-cpu_chill.patch b/debian/patches-rt/0184-hrtimer-Don-t-lose-state-in-cpu_chill.patch index 95f8941da..278c3ad22 100644 --- a/debian/patches-rt/0184-hrtimer-Don-t-lose-state-in-cpu_chill.patch +++ b/debian/patches-rt/0184-hrtimer-Don-t-lose-state-in-cpu_chill.patch @@ -1,8 +1,8 @@ -From 1e2b7e53acae1e48457df02566d8bcc97a9b3ab7 Mon Sep 17 00:00:00 2001 +From d81a1f846aac209ee8c5c7ccbc613324abeba9c4 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 19 Feb 2019 16:59:15 +0100 -Subject: [PATCH 184/291] hrtimer: Don't lose state in cpu_chill() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 184/290] hrtimer: Don't lose state in cpu_chill() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In cpu_chill() the state is set to TASK_UNINTERRUPTIBLE and a timer is programmed. On return the state is always TASK_RUNNING which means we @@ -20,10 +20,10 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c -index 851b2134e77f..6f2736ec4b8e 100644 +index 98a771065818..21a454557c8a 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c -@@ -1902,15 +1902,18 @@ void cpu_chill(void) +@@ -1905,15 +1905,18 @@ void cpu_chill(void) { ktime_t chill_time; unsigned int freeze_flag = current->flags & PF_NOFREEZE; @@ -44,5 +44,5 @@ index 851b2134e77f..6f2736ec4b8e 100644 EXPORT_SYMBOL(cpu_chill); #endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0185-hrtimer-cpu_chill-save-task-state-in-saved_state.patch b/debian/patches-rt/0185-hrtimer-cpu_chill-save-task-state-in-saved_state.patch index 66f3cf492..db609b70d 100644 --- a/debian/patches-rt/0185-hrtimer-cpu_chill-save-task-state-in-saved_state.patch +++ b/debian/patches-rt/0185-hrtimer-cpu_chill-save-task-state-in-saved_state.patch @@ -1,9 +1,9 @@ -From 3fa982d12dc286e6f2072ff5ed03db14b7451ed8 Mon Sep 17 00:00:00 2001 +From fe55dde1efd56a8afb667d104442861cde103feb Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 26 Feb 2019 12:31:10 +0100 -Subject: [PATCH 185/291] hrtimer: cpu_chill(): save task state in +Subject: [PATCH 185/290] hrtimer: cpu_chill(): save task state in ->saved_state() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In the previous change I saved the current task state on stack. This was bad because while the task is scheduled-out it might receive a wake-up. @@ -21,10 +21,10 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c -index 6f2736ec4b8e..e1040b80362c 100644 +index 21a454557c8a..f16cbc98c47a 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c -@@ -1900,20 +1900,28 @@ COMPAT_SYSCALL_DEFINE2(nanosleep, struct compat_timespec __user *, rqtp, +@@ -1903,20 +1903,28 @@ COMPAT_SYSCALL_DEFINE2(nanosleep, struct compat_timespec __user *, rqtp, */ void cpu_chill(void) { @@ -59,5 +59,5 @@ index 6f2736ec4b8e..e1040b80362c 100644 EXPORT_SYMBOL(cpu_chill); #endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0186-block-blk-mq-move-blk_queue_usage_counter_release-in.patch b/debian/patches-rt/0186-block-blk-mq-move-blk_queue_usage_counter_release-in.patch index a72ab2243..9404344c7 100644 --- a/debian/patches-rt/0186-block-blk-mq-move-blk_queue_usage_counter_release-in.patch +++ b/debian/patches-rt/0186-block-blk-mq-move-blk_queue_usage_counter_release-in.patch @@ -1,9 +1,9 @@ -From ad57862fbdadc1008e33f7431b96f0eb816ea0ef Mon Sep 17 00:00:00 2001 +From a315826e2a7f0937429019a4fc122b56a4a827b9 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 13 Mar 2018 13:49:16 +0100 -Subject: [PATCH 186/291] block: blk-mq: move blk_queue_usage_counter_release() +Subject: [PATCH 186/290] block: blk-mq: move blk_queue_usage_counter_release() into process context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz | BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:914 | in_atomic(): 1, irqs_disabled(): 0, pid: 255, name: kworker/u257:6 @@ -116,5 +116,5 @@ index f1960add94df..7b7c0bc6a514 100644 struct list_head all_q_node; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0187-block-Use-cpu_chill-for-retry-loops.patch b/debian/patches-rt/0187-block-Use-cpu_chill-for-retry-loops.patch index fa75f7d1d..0fca1ed17 100644 --- a/debian/patches-rt/0187-block-Use-cpu_chill-for-retry-loops.patch +++ b/debian/patches-rt/0187-block-Use-cpu_chill-for-retry-loops.patch @@ -1,8 +1,8 @@ -From 51c0015cc794a69ad3d0f6805df6108a39cb09fc Mon Sep 17 00:00:00 2001 +From effa2a0476d7f71cd3c5007874c228db414f3318 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 20 Dec 2012 18:28:26 +0100 -Subject: [PATCH 187/291] block: Use cpu_chill() for retry loops -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 187/290] block: Use cpu_chill() for retry loops +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Retry loops on RT might loop forever when the modifying side was preempted. Steven also observed a live lock when there was a @@ -47,5 +47,5 @@ index 01580f88fcb3..98d87e52ccdc 100644 } } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0188-fs-dcache-Use-cpu_chill-in-trylock-loops.patch b/debian/patches-rt/0188-fs-dcache-Use-cpu_chill-in-trylock-loops.patch index 577fe110d..f072574a6 100644 --- a/debian/patches-rt/0188-fs-dcache-Use-cpu_chill-in-trylock-loops.patch +++ b/debian/patches-rt/0188-fs-dcache-Use-cpu_chill-in-trylock-loops.patch @@ -1,8 +1,8 @@ -From 7351a40e905d1f50f4b9272cb2b391671b17e8ab Mon Sep 17 00:00:00 2001 +From 3757c05ac9fc60a97b20abf3681d7f869c368be6 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 7 Mar 2012 21:00:34 +0100 -Subject: [PATCH 188/291] fs: dcache: Use cpu_chill() in trylock loops -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 188/290] fs: dcache: Use cpu_chill() in trylock loops +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Retry loops on RT might loop forever when the modifying side was preempted. Use cpu_chill() instead of cpu_relax() to let the system @@ -62,5 +62,5 @@ index 1fce41ba3535..5dc970027e30 100644 * After the slowpath clears MNT_WRITE_HOLD, mnt_is_readonly will * be set to match its requirements. So we must not load that until -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0189-net-Use-cpu_chill-instead-of-cpu_relax.patch b/debian/patches-rt/0189-net-Use-cpu_chill-instead-of-cpu_relax.patch index 15d1f6f9e..3770bd3d7 100644 --- a/debian/patches-rt/0189-net-Use-cpu_chill-instead-of-cpu_relax.patch +++ b/debian/patches-rt/0189-net-Use-cpu_chill-instead-of-cpu_relax.patch @@ -1,8 +1,8 @@ -From b36bb09a4195b2a2dffd6de4d5394c30058275c6 Mon Sep 17 00:00:00 2001 +From 8f296bb8916125380ca66e63999aac396f5ab698 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 7 Mar 2012 21:10:04 +0100 -Subject: [PATCH 189/291] net: Use cpu_chill() instead of cpu_relax() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 189/290] net: Use cpu_chill() instead of cpu_relax() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Retry loops on RT might loop forever when the modifying side was preempted. Use cpu_chill() instead of cpu_relax() to let the system @@ -15,7 +15,7 @@ Signed-off-by: Thomas Gleixner 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c -index 7204e7bbebb0..2c22fa8cf9bf 100644 +index ac65e66d1d72..b4267ce1f869 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c @@ -63,6 +63,7 @@ @@ -26,7 +26,7 @@ index 7204e7bbebb0..2c22fa8cf9bf 100644 #include #include #include -@@ -667,7 +668,7 @@ static void prb_retire_rx_blk_timer_expired(struct timer_list *t) +@@ -668,7 +669,7 @@ static void prb_retire_rx_blk_timer_expired(struct timer_list *t) if (BLOCK_NUM_PKTS(pbd)) { while (atomic_read(&pkc->blk_fill_in_prog)) { /* Waiting for skb_copy_bits to finish... */ @@ -35,7 +35,7 @@ index 7204e7bbebb0..2c22fa8cf9bf 100644 } } -@@ -929,7 +930,7 @@ static void prb_retire_current_block(struct tpacket_kbdq_core *pkc, +@@ -930,7 +931,7 @@ static void prb_retire_current_block(struct tpacket_kbdq_core *pkc, if (!(status & TP_STATUS_BLK_TMO)) { while (atomic_read(&pkc->blk_fill_in_prog)) { /* Waiting for skb_copy_bits to finish... */ @@ -66,5 +66,5 @@ index 0b347f46b2f4..f395f06031bc 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0190-fs-dcache-use-swait_queue-instead-of-waitqueue.patch b/debian/patches-rt/0190-fs-dcache-use-swait_queue-instead-of-waitqueue.patch index 55b2cb691..f2d01e43e 100644 --- a/debian/patches-rt/0190-fs-dcache-use-swait_queue-instead-of-waitqueue.patch +++ b/debian/patches-rt/0190-fs-dcache-use-swait_queue-instead-of-waitqueue.patch @@ -1,8 +1,8 @@ -From b9019e0b8a3d6033d086af275340f735c78ece6a Mon Sep 17 00:00:00 2001 +From 558647aa05135aa727be9198f29a041686e683af Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 14 Sep 2016 14:35:49 +0200 -Subject: [PATCH 190/291] fs/dcache: use swait_queue instead of waitqueue -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 190/290] fs/dcache: use swait_queue instead of waitqueue +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz __d_lookup_done() invokes wake_up_all() while holding a hlist_bl_lock() which disables preemption. As a workaround convert it to swait. @@ -237,5 +237,5 @@ index c7cb30cdd1b7..119a56d7f739 100644 list_splice_init(&q->task_list, &tmp); while (!list_empty(&tmp)) { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0191-workqueue-Use-normal-rcu.patch b/debian/patches-rt/0191-workqueue-Use-normal-rcu.patch index 471af9681..8a14b265e 100644 --- a/debian/patches-rt/0191-workqueue-Use-normal-rcu.patch +++ b/debian/patches-rt/0191-workqueue-Use-normal-rcu.patch @@ -1,8 +1,8 @@ -From 85533c397558285a26f773dde3f2757842718fdd Mon Sep 17 00:00:00 2001 +From a65796914416941351ac0cd0271c5da76bed792a Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 24 Jul 2013 15:26:54 +0200 -Subject: [PATCH 191/291] workqueue: Use normal rcu -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 191/290] workqueue: Use normal rcu +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz There is no need for sched_rcu. The undocumented reason why sched_rcu is used is to avoid a few explicit rcu_read_lock()/unlock() pairs by @@ -356,5 +356,5 @@ index 493908464b9e..544007905706 100644 return written; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0192-workqueue-Use-local-irq-lock-instead-of-irq-disable-.patch b/debian/patches-rt/0192-workqueue-Use-local-irq-lock-instead-of-irq-disable-.patch index a7505c0f7..d5f42d921 100644 --- a/debian/patches-rt/0192-workqueue-Use-local-irq-lock-instead-of-irq-disable-.patch +++ b/debian/patches-rt/0192-workqueue-Use-local-irq-lock-instead-of-irq-disable-.patch @@ -1,9 +1,9 @@ -From caea3fa2541977525c13726b88b7456d4678e16b Mon Sep 17 00:00:00 2001 +From 670717ab259111dcf589c98670ff74a206bf87d3 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 21:42:26 +0200 -Subject: [PATCH 192/291] workqueue: Use local irq lock instead of irq disable +Subject: [PATCH 192/290] workqueue: Use local irq lock instead of irq disable regions -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Use a local_irq_lock as a replacement for irq off regions. We keep the semantic of irq-off in regard to the pool->lock and remain preemptible. @@ -182,5 +182,5 @@ index 544007905706..0efb8d25d940 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0193-workqueue-Prevent-workqueue-versus-ata-piix-livelock.patch b/debian/patches-rt/0193-workqueue-Prevent-workqueue-versus-ata-piix-livelock.patch index 6069bb337..b97673193 100644 --- a/debian/patches-rt/0193-workqueue-Prevent-workqueue-versus-ata-piix-livelock.patch +++ b/debian/patches-rt/0193-workqueue-Prevent-workqueue-versus-ata-piix-livelock.patch @@ -1,8 +1,8 @@ -From 8e746abdaaf680bd9667d6123d71bb5fe9858ba3 Mon Sep 17 00:00:00 2001 +From c6d8c462a41a7c4c64ade776387c5b9394464de6 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 1 Jul 2013 11:02:42 +0200 -Subject: [PATCH 193/291] workqueue: Prevent workqueue versus ata-piix livelock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 193/290] workqueue: Prevent workqueue versus ata-piix livelock +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz An Intel i7 system regularly detected rcu_preempt stalls after the kernel was upgraded from 3.6-rt to 3.8-rt. When the stall happened, disk I/O was no @@ -135,5 +135,5 @@ index 0efb8d25d940..34734cdb5cb6 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0194-sched-Distangle-worker-accounting-from-rqlock.patch b/debian/patches-rt/0194-sched-Distangle-worker-accounting-from-rqlock.patch index 4b9560d2b..bd7042d6d 100644 --- a/debian/patches-rt/0194-sched-Distangle-worker-accounting-from-rqlock.patch +++ b/debian/patches-rt/0194-sched-Distangle-worker-accounting-from-rqlock.patch @@ -1,8 +1,8 @@ -From 07075661be98e9ea230392492c8c6a333afa3260 Mon Sep 17 00:00:00 2001 +From 811c45a6eb4df7a785f9fe8b20461bd72fee9d2c Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 22 Jun 2011 19:47:03 +0200 -Subject: [PATCH 194/291] sched: Distangle worker accounting from rqlock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 194/290] sched: Distangle worker accounting from rqlock +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The worker accounting for cpu bound workers is plugged into the core scheduler code and the wakeup code. This is not a hard requirement and @@ -287,5 +287,5 @@ index 66fbb5a9e633..30cfed226b39 100644 #endif /* _KERNEL_WORKQUEUE_INTERNAL_H */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0195-debugobjects-Make-RT-aware.patch b/debian/patches-rt/0195-debugobjects-Make-RT-aware.patch index 75b633ff3..d910a399c 100644 --- a/debian/patches-rt/0195-debugobjects-Make-RT-aware.patch +++ b/debian/patches-rt/0195-debugobjects-Make-RT-aware.patch @@ -1,8 +1,8 @@ -From 6bafa5a09e27a936d38044d6b895c7b4dcbea2d5 Mon Sep 17 00:00:00 2001 +From 0afdb35f56928f5bde82e37d5a90197756bbbc21 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 21:41:35 +0200 -Subject: [PATCH 195/291] debugobjects: Make RT aware -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 195/290] debugobjects: Make RT aware +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Avoid filling the pool / allocating memory with irqs off(). @@ -28,5 +28,5 @@ index 14afeeb7d6ef..e28481c402ae 100644 db = get_bucket((unsigned long) addr); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0196-seqlock-Prevent-rt-starvation.patch b/debian/patches-rt/0196-seqlock-Prevent-rt-starvation.patch index d66ffb80b..adaec45e2 100644 --- a/debian/patches-rt/0196-seqlock-Prevent-rt-starvation.patch +++ b/debian/patches-rt/0196-seqlock-Prevent-rt-starvation.patch @@ -1,8 +1,8 @@ -From a6097de9c1e4ee4b6051e1879d3b3a68c6f916f0 Mon Sep 17 00:00:00 2001 +From 77d71203cae68a6d582b3c05f375bd68caea10e8 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 22 Feb 2012 12:03:30 +0100 -Subject: [PATCH 196/291] seqlock: Prevent rt starvation -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 196/290] seqlock: Prevent rt starvation +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz If a low prio writer gets preempted while holding the seqlock write locked, a high prio reader spins forever on RT. @@ -160,7 +160,7 @@ index bcf4cf26b8c8..689ed53016c7 100644 } diff --git a/include/net/neighbour.h b/include/net/neighbour.h -index c84807c1c5bd..08d4700515da 100644 +index 5ce035984a4d..1166fc17b757 100644 --- a/include/net/neighbour.h +++ b/include/net/neighbour.h @@ -451,7 +451,7 @@ static inline int neigh_hh_bridge(struct hh_cache *hh, struct sk_buff *skb) @@ -191,5 +191,5 @@ index c84807c1c5bd..08d4700515da 100644 { unsigned int seq; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0197-sunrpc-Make-svc_xprt_do_enqueue-use-get_cpu_light.patch b/debian/patches-rt/0197-sunrpc-Make-svc_xprt_do_enqueue-use-get_cpu_light.patch index 903fc35d1..10a6d7a0b 100644 --- a/debian/patches-rt/0197-sunrpc-Make-svc_xprt_do_enqueue-use-get_cpu_light.patch +++ b/debian/patches-rt/0197-sunrpc-Make-svc_xprt_do_enqueue-use-get_cpu_light.patch @@ -1,9 +1,9 @@ -From 56105c9d9bb2433620a6be7bf1a904c06f8474e1 Mon Sep 17 00:00:00 2001 +From 9d2425d84597125b000c785903c4afd36f00673c Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Wed, 18 Feb 2015 16:05:28 +0100 -Subject: [PATCH 197/291] sunrpc: Make svc_xprt_do_enqueue() use +Subject: [PATCH 197/290] sunrpc: Make svc_xprt_do_enqueue() use get_cpu_light() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz |BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:915 |in_atomic(): 1, irqs_disabled(): 0, pid: 3194, name: rpc.nfsd @@ -57,5 +57,5 @@ index 6cf0fd37cbf0..48c0a0b90946 100644 } EXPORT_SYMBOL_GPL(svc_xprt_do_enqueue); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0198-net-Use-skbufhead-with-raw-lock.patch b/debian/patches-rt/0198-net-Use-skbufhead-with-raw-lock.patch index dc5f011ff..80d2401c6 100644 --- a/debian/patches-rt/0198-net-Use-skbufhead-with-raw-lock.patch +++ b/debian/patches-rt/0198-net-Use-skbufhead-with-raw-lock.patch @@ -1,8 +1,8 @@ -From 2ebb51970b0bb3c81888b287e38b5e5606850012 Mon Sep 17 00:00:00 2001 +From fc3e6e30f2ab8454e5d71c17c1893c38785c1271 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 12 Jul 2011 15:38:34 +0200 -Subject: [PATCH 198/291] net: Use skbufhead with raw lock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 198/290] net: Use skbufhead with raw lock +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Use the rps lock as rawlock so we can keep irq-off regions. It looks low latency. However we can't kfree() from this context therefore we defer this @@ -16,10 +16,10 @@ Signed-off-by: Thomas Gleixner 3 files changed, 33 insertions(+), 8 deletions(-) diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h -index 5ada5fd9652d..42bbcb8c1ed1 100644 +index d5527e3828d1..9aba444d7df0 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h -@@ -2973,6 +2973,7 @@ struct softnet_data { +@@ -2982,6 +2982,7 @@ struct softnet_data { unsigned int dropped; struct sk_buff_head input_pkt_queue; struct napi_struct backlog; @@ -28,7 +28,7 @@ index 5ada5fd9652d..42bbcb8c1ed1 100644 }; diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h -index 80c3da1aa8b1..be3bcf2f65a2 100644 +index 25407c206e73..d4d7aea13cc6 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h @@ -287,6 +287,7 @@ struct sk_buff_head { @@ -53,10 +53,10 @@ index 80c3da1aa8b1..be3bcf2f65a2 100644 struct lock_class_key *class) { diff --git a/net/core/dev.c b/net/core/dev.c -index d5e2e8834d62..2d69e0c45ec2 100644 +index 4926a260bf0e..430ca0e79afc 100644 --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -217,14 +217,14 @@ static inline struct hlist_head *dev_index_hash(struct net *net, int ifindex) +@@ -218,14 +218,14 @@ static inline struct hlist_head *dev_index_hash(struct net *net, int ifindex) static inline void rps_lock(struct softnet_data *sd) { #ifdef CONFIG_RPS @@ -73,7 +73,7 @@ index d5e2e8834d62..2d69e0c45ec2 100644 #endif } -@@ -5274,7 +5274,7 @@ static void flush_backlog(struct work_struct *work) +@@ -5275,7 +5275,7 @@ static void flush_backlog(struct work_struct *work) skb_queue_walk_safe(&sd->input_pkt_queue, skb, tmp) { if (skb->dev->reg_state == NETREG_UNREGISTERING) { __skb_unlink(skb, &sd->input_pkt_queue); @@ -82,7 +82,7 @@ index d5e2e8834d62..2d69e0c45ec2 100644 input_queue_head_incr(sd); } } -@@ -5284,11 +5284,14 @@ static void flush_backlog(struct work_struct *work) +@@ -5285,11 +5285,14 @@ static void flush_backlog(struct work_struct *work) skb_queue_walk_safe(&sd->process_queue, skb, tmp) { if (skb->dev->reg_state == NETREG_UNREGISTERING) { __skb_unlink(skb, &sd->process_queue); @@ -98,7 +98,7 @@ index d5e2e8834d62..2d69e0c45ec2 100644 } static void flush_all_backlogs(void) -@@ -5867,7 +5870,9 @@ static int process_backlog(struct napi_struct *napi, int quota) +@@ -5868,7 +5871,9 @@ static int process_backlog(struct napi_struct *napi, int quota) while (again) { struct sk_buff *skb; @@ -108,7 +108,7 @@ index d5e2e8834d62..2d69e0c45ec2 100644 rcu_read_lock(); __netif_receive_skb(skb); rcu_read_unlock(); -@@ -5875,9 +5880,9 @@ static int process_backlog(struct napi_struct *napi, int quota) +@@ -5876,9 +5881,9 @@ static int process_backlog(struct napi_struct *napi, int quota) if (++work >= quota) return work; @@ -119,7 +119,7 @@ index d5e2e8834d62..2d69e0c45ec2 100644 rps_lock(sd); if (skb_queue_empty(&sd->input_pkt_queue)) { /* -@@ -6342,13 +6347,21 @@ static __latent_entropy void net_rx_action(struct softirq_action *h) +@@ -6343,13 +6348,21 @@ static __latent_entropy void net_rx_action(struct softirq_action *h) unsigned long time_limit = jiffies + usecs_to_jiffies(netdev_budget_usecs); int budget = netdev_budget; @@ -141,7 +141,7 @@ index d5e2e8834d62..2d69e0c45ec2 100644 for (;;) { struct napi_struct *n; -@@ -9339,10 +9352,13 @@ static int dev_cpu_dead(unsigned int oldcpu) +@@ -9522,10 +9535,13 @@ static int dev_cpu_dead(unsigned int oldcpu) netif_rx_ni(skb); input_queue_head_incr(oldsd); } @@ -156,7 +156,7 @@ index d5e2e8834d62..2d69e0c45ec2 100644 return 0; } -@@ -9653,8 +9669,9 @@ static int __init net_dev_init(void) +@@ -9836,8 +9852,9 @@ static int __init net_dev_init(void) INIT_WORK(flush, flush_backlog); @@ -169,5 +169,5 @@ index d5e2e8834d62..2d69e0c45ec2 100644 skb_queue_head_init(&sd->xfrm_backlog); #endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0200-net-provide-a-way-to-delegate-processing-a-softirq-t.patch b/debian/patches-rt/0200-net-provide-a-way-to-delegate-processing-a-softirq-t.patch index 8be2a8582..6c14c9d40 100644 --- a/debian/patches-rt/0200-net-provide-a-way-to-delegate-processing-a-softirq-t.patch +++ b/debian/patches-rt/0200-net-provide-a-way-to-delegate-processing-a-softirq-t.patch @@ -1,9 +1,9 @@ -From 5156c9860ab62a9aa82fc8f3a4647eb5bd9faa01 Mon Sep 17 00:00:00 2001 +From 041b49006ea5c90319dd0e5ba91d255eb59ec635 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 20 Jan 2016 15:39:05 +0100 -Subject: [PATCH 200/291] net: provide a way to delegate processing a softirq +Subject: [PATCH 200/290] net: provide a way to delegate processing a softirq to ksoftirqd -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz If the NET_RX uses up all of his budget it moves the following NAPI invocations into the `ksoftirqd`. On -RT it does not do so. Instead it @@ -72,10 +72,10 @@ index 27a4bb2303d0..25bcf2f2714b 100644 * This function must run with irqs disabled! */ diff --git a/net/core/dev.c b/net/core/dev.c -index aab9231a9f3b..2fa5e716c7bc 100644 +index ed1537cc9ab7..7605c7220020 100644 --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -6396,7 +6396,7 @@ static __latent_entropy void net_rx_action(struct softirq_action *h) +@@ -6397,7 +6397,7 @@ static __latent_entropy void net_rx_action(struct softirq_action *h) list_splice_tail(&repoll, &list); list_splice(&list, &sd->poll_list); if (!list_empty(&sd->poll_list)) @@ -85,5 +85,5 @@ index aab9231a9f3b..2fa5e716c7bc 100644 net_rps_action_and_irq_enable(sd); out: -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0201-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch b/debian/patches-rt/0201-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch index 9284a0c39..ebb993b8b 100644 --- a/debian/patches-rt/0201-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch +++ b/debian/patches-rt/0201-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch @@ -1,9 +1,9 @@ -From 439a23e81191bf65d00479d15cdaeefbe31bf754 Mon Sep 17 00:00:00 2001 +From 50cd61533d1b2d579c54d2acbb14c5e7034b1982 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 30 Mar 2016 13:36:29 +0200 -Subject: [PATCH 201/291] net: dev: always take qdisc's busylock in +Subject: [PATCH 201/290] net: dev: always take qdisc's busylock in __dev_xmit_skb() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The root-lock is dropped before dev_hard_start_xmit() is invoked and after setting the __QDISC___STATE_RUNNING bit. If this task is now pushed away @@ -22,10 +22,10 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 4 insertions(+) diff --git a/net/core/dev.c b/net/core/dev.c -index 2fa5e716c7bc..c1f60382b706 100644 +index 7605c7220020..1a30cf641e7c 100644 --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -3465,7 +3465,11 @@ static inline int __dev_xmit_skb(struct sk_buff *skb, struct Qdisc *q, +@@ -3466,7 +3466,11 @@ static inline int __dev_xmit_skb(struct sk_buff *skb, struct Qdisc *q, * This permits qdisc->running owner to get the lock more * often and dequeue packets faster. */ @@ -38,5 +38,5 @@ index 2fa5e716c7bc..c1f60382b706 100644 spin_lock(&q->busylock); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0202-net-Qdisc-use-a-seqlock-instead-seqcount.patch b/debian/patches-rt/0202-net-Qdisc-use-a-seqlock-instead-seqcount.patch index e8fdbe9b4..961f83580 100644 --- a/debian/patches-rt/0202-net-Qdisc-use-a-seqlock-instead-seqcount.patch +++ b/debian/patches-rt/0202-net-Qdisc-use-a-seqlock-instead-seqcount.patch @@ -1,8 +1,8 @@ -From a95e80befc6c8c6b1c30061b86cd9b3bd75d22c1 Mon Sep 17 00:00:00 2001 +From 882fef39240fcd645d3affe57b5f9ed4cfb1aac5 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 14 Sep 2016 17:36:35 +0200 -Subject: [PATCH 202/291] net/Qdisc: use a seqlock instead seqcount -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 202/290] net/Qdisc: use a seqlock instead seqcount +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The seqcount disables preemption on -RT while it is held which can't remove. Also we don't want the reader to spin for ages if the writer is @@ -289,5 +289,5 @@ index 4ab20f1138fd..a9ed58ca3924 100644 sch->ops = ops; sch->flags = ops->static_flags; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0203-net-add-back-the-missing-serialization-in-ip_send_un.patch b/debian/patches-rt/0203-net-add-back-the-missing-serialization-in-ip_send_un.patch index 2ada273f1..5caa39fc0 100644 --- a/debian/patches-rt/0203-net-add-back-the-missing-serialization-in-ip_send_un.patch +++ b/debian/patches-rt/0203-net-add-back-the-missing-serialization-in-ip_send_un.patch @@ -1,12 +1,12 @@ -From e3ee404c33508c0f4bd43f9d6710150aea6ecedf Mon Sep 17 00:00:00 2001 +From a3e432c3b1fd867225b7515a94ca7b0fbd48b913 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 31 Aug 2016 17:21:56 +0200 -Subject: [PATCH 203/291] net: add back the missing serialization in +Subject: [PATCH 203/290] net: add back the missing serialization in ip_send_unicast_reply() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Some time ago Sami Pietikäinen reported a crash on -RT in ip_send_unicast_reply() which was later fixed by Nicholas Mc Guire @@ -43,7 +43,7 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 6 insertions(+) diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c -index bfec48849735..38f3e38dd15c 100644 +index 6da393016c11..105e94ff1095 100644 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c @@ -62,6 +62,7 @@ @@ -95,5 +95,5 @@ index bfec48849735..38f3e38dd15c 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0204-net-add-a-lock-around-icmp_sk.patch b/debian/patches-rt/0204-net-add-a-lock-around-icmp_sk.patch index 1dc93a892..88e3c4809 100644 --- a/debian/patches-rt/0204-net-add-a-lock-around-icmp_sk.patch +++ b/debian/patches-rt/0204-net-add-a-lock-around-icmp_sk.patch @@ -1,8 +1,8 @@ -From 946a05c7ebecb28d3f84cda04771e8ec86948365 Mon Sep 17 00:00:00 2001 +From 4c0fdaffb6e6326c5c6318fcd0feb45d4bf77190 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 31 Aug 2016 17:54:09 +0200 -Subject: [PATCH 204/291] net: add a lock around icmp_sk() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 204/290] net: add a lock around icmp_sk() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz It looks like the this_cpu_ptr() access in icmp_sk() is protected with local_bh_disable(). To avoid missing serialization in -RT I am adding @@ -15,7 +15,7 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 8 insertions(+) diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c -index 0167e23d1c8f..acec420899c5 100644 +index 4efa5e33513e..de67d595e298 100644 --- a/net/ipv4/icmp.c +++ b/net/ipv4/icmp.c @@ -77,6 +77,7 @@ @@ -61,5 +61,5 @@ index 0167e23d1c8f..acec420899c5 100644 int sysctl_icmp_msgs_per_sec __read_mostly = 1000; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0205-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch b/debian/patches-rt/0205-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch index 71365d28a..3b7c800f5 100644 --- a/debian/patches-rt/0205-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch +++ b/debian/patches-rt/0205-net-Have-__napi_schedule_irqoff-disable-interrupts-o.patch @@ -1,9 +1,9 @@ -From 50cb5c3e93b4d52ef9952799ca1f75ecdb4e43fb Mon Sep 17 00:00:00 2001 +From 8da361e596b7594eb5b0f8abea644982a0c9a1d5 Mon Sep 17 00:00:00 2001 From: Steven Rostedt Date: Tue, 6 Dec 2016 17:50:30 -0500 -Subject: [PATCH 205/291] net: Have __napi_schedule_irqoff() disable interrupts +Subject: [PATCH 205/290] net: Have __napi_schedule_irqoff() disable interrupts on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz A customer hit a crash where the napi sd->poll_list became corrupted. The customer had the bnx2x driver, which does a @@ -29,7 +29,7 @@ Signed-off-by: Sebastian Andrzej Siewior 2 files changed, 14 insertions(+) diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h -index c6d5808235f0..9fbfeb432299 100644 +index c76c32aea759..49dc2818713a 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h @@ -422,7 +422,19 @@ typedef enum rx_handler_result rx_handler_result_t; @@ -53,10 +53,10 @@ index c6d5808235f0..9fbfeb432299 100644 static inline bool napi_disable_pending(struct napi_struct *n) { diff --git a/net/core/dev.c b/net/core/dev.c -index c1f60382b706..67df2536d4bf 100644 +index 1a30cf641e7c..950356b8b5b1 100644 --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -5966,6 +5966,7 @@ bool napi_schedule_prep(struct napi_struct *n) +@@ -5967,6 +5967,7 @@ bool napi_schedule_prep(struct napi_struct *n) } EXPORT_SYMBOL(napi_schedule_prep); @@ -64,7 +64,7 @@ index c1f60382b706..67df2536d4bf 100644 /** * __napi_schedule_irqoff - schedule for receive * @n: entry to schedule -@@ -5977,6 +5978,7 @@ void __napi_schedule_irqoff(struct napi_struct *n) +@@ -5978,6 +5979,7 @@ void __napi_schedule_irqoff(struct napi_struct *n) ____napi_schedule(this_cpu_ptr(&softnet_data), n); } EXPORT_SYMBOL(__napi_schedule_irqoff); @@ -73,5 +73,5 @@ index c1f60382b706..67df2536d4bf 100644 bool napi_complete_done(struct napi_struct *n, int work_done) { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0206-irqwork-push-most-work-into-softirq-context.patch b/debian/patches-rt/0206-irqwork-push-most-work-into-softirq-context.patch index b1aae9a3e..e7b6f73ae 100644 --- a/debian/patches-rt/0206-irqwork-push-most-work-into-softirq-context.patch +++ b/debian/patches-rt/0206-irqwork-push-most-work-into-softirq-context.patch @@ -1,8 +1,8 @@ -From a25da65a1a0ec5fa2a97c395ef73d03284be1c6e Mon Sep 17 00:00:00 2001 +From 6b96ba989ad06199b33100cf7469ebeae299a21e Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 23 Jun 2015 15:32:51 +0200 -Subject: [PATCH 206/291] irqwork: push most work into softirq context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 206/290] irqwork: push most work into softirq context +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Initially we defered all irqwork into softirq because we didn't want the latency spikes if perf or another user was busy and delayed the RT task. @@ -260,5 +260,5 @@ index 3fab1c50bf1b..2fcd56aa6092 100644 if (IS_ENABLED(CONFIG_NO_HZ_COMMON)) __run_timers(this_cpu_ptr(&timer_bases[BASE_DEF])); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0207-printk-Make-rt-aware.patch b/debian/patches-rt/0207-printk-Make-rt-aware.patch index 4c35ec294..192a38a37 100644 --- a/debian/patches-rt/0207-printk-Make-rt-aware.patch +++ b/debian/patches-rt/0207-printk-Make-rt-aware.patch @@ -1,8 +1,8 @@ -From 8724ddd9928b0fcc4f46e40fa2bc02c24bda9337 Mon Sep 17 00:00:00 2001 +From ddfc55c94d550664260bd755c4f0ec09f13cfed2 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 19 Sep 2012 14:50:37 +0200 -Subject: [PATCH 207/291] printk: Make rt aware -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 207/290] printk: Make rt aware +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Drop the lock before calling the console driver and do not disable interrupts while printing to a serial console. @@ -110,5 +110,5 @@ index 9a7f259dbb20..83f386175dcc 100644 if (do_cond_resched) cond_resched(); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0208-kernel-printk-Don-t-try-to-print-from-IRQ-NMI-region.patch b/debian/patches-rt/0208-kernel-printk-Don-t-try-to-print-from-IRQ-NMI-region.patch index a6521cef5..fef2ee805 100644 --- a/debian/patches-rt/0208-kernel-printk-Don-t-try-to-print-from-IRQ-NMI-region.patch +++ b/debian/patches-rt/0208-kernel-printk-Don-t-try-to-print-from-IRQ-NMI-region.patch @@ -1,8 +1,8 @@ -From 2a6027addaff7b5c802f19bf3f5f99b555763877 Mon Sep 17 00:00:00 2001 +From ddc0ed9a091fdcda9dba71990fb9300de72e70bf Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 19 May 2016 17:45:27 +0200 -Subject: [PATCH 208/291] kernel/printk: Don't try to print from IRQ/NMI region -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 208/290] kernel/printk: Don't try to print from IRQ/NMI region +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On -RT we try to acquire sleeping locks which might lead to warnings from lockdep or a warn_on() from spin_try_lock() (which is a rtmutex on @@ -44,5 +44,5 @@ index 83f386175dcc..217abc6a53e1 100644 * console_unblank can no longer be called in interrupt context unless * oops_in_progress is set to 1.. -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0209-printk-Drop-the-logbuf_lock-more-often.patch b/debian/patches-rt/0209-printk-Drop-the-logbuf_lock-more-often.patch index 4ba52083c..dcad17e0e 100644 --- a/debian/patches-rt/0209-printk-Drop-the-logbuf_lock-more-often.patch +++ b/debian/patches-rt/0209-printk-Drop-the-logbuf_lock-more-often.patch @@ -1,8 +1,8 @@ -From f7351e4a71b9a3402f9197c5da987c68ccd79a0d Mon Sep 17 00:00:00 2001 +From 369d276b8c46a573a55da8fdf568f3cb6522d075 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 21 Mar 2013 19:01:05 +0100 -Subject: [PATCH 209/291] printk: Drop the logbuf_lock more often -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 209/290] printk: Drop the logbuf_lock more often +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The lock is hold with irgs off. The latency drops 500us+ on my arm bugs with a "full" buffer after executing "dmesg" on the shell. @@ -79,5 +79,5 @@ index 217abc6a53e1..58517c68e896 100644 kfree(text); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0210-ARM-enable-irq-in-translation-section-permission-fau.patch b/debian/patches-rt/0210-ARM-enable-irq-in-translation-section-permission-fau.patch index 64d204428..da66899d7 100644 --- a/debian/patches-rt/0210-ARM-enable-irq-in-translation-section-permission-fau.patch +++ b/debian/patches-rt/0210-ARM-enable-irq-in-translation-section-permission-fau.patch @@ -1,12 +1,12 @@ -From 1f413b2b6eefd089949bdf3f6ffc681c9b7c6811 Mon Sep 17 00:00:00 2001 +From 02d7b4ff5ed37112bbc7cb2cd8ee97f43f8c8800 Mon Sep 17 00:00:00 2001 From: "Yadi.hu" Date: Wed, 10 Dec 2014 10:32:09 +0800 -Subject: [PATCH 210/291] ARM: enable irq in translation/section permission +Subject: [PATCH 210/290] ARM: enable irq in translation/section permission fault handlers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Probably happens on all ARM, with CONFIG_PREEMPT_RT_FULL @@ -92,5 +92,5 @@ index a9ee0d9dc740..20b0e146de98 100644 return 0; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0211-genirq-update-irq_set_irqchip_state-documentation.patch b/debian/patches-rt/0211-genirq-update-irq_set_irqchip_state-documentation.patch index cb6cdda20..6e588df30 100644 --- a/debian/patches-rt/0211-genirq-update-irq_set_irqchip_state-documentation.patch +++ b/debian/patches-rt/0211-genirq-update-irq_set_irqchip_state-documentation.patch @@ -1,8 +1,8 @@ -From 6b0c5545e5e38ded416d0545c720b353f9b460bd Mon Sep 17 00:00:00 2001 +From dd9707b2db096f5af75ee3207ac1ced6a8acec2d Mon Sep 17 00:00:00 2001 From: Josh Cartwright Date: Thu, 11 Feb 2016 11:54:00 -0600 -Subject: [PATCH 211/291] genirq: update irq_set_irqchip_state documentation -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 211/290] genirq: update irq_set_irqchip_state documentation +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On -rt kernels, the use of migrate_disable()/migrate_enable() is sufficient to guarantee a task isn't moved to another CPU. Update the @@ -28,5 +28,5 @@ index 3858ac895777..5701774a6d71 100644 */ int irq_set_irqchip_state(unsigned int irq, enum irqchip_irq_state which, -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0212-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch b/debian/patches-rt/0212-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch index d6aca95e9..60da83c5b 100644 --- a/debian/patches-rt/0212-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch +++ b/debian/patches-rt/0212-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch @@ -1,9 +1,9 @@ -From 9ee21be32cddbf1d32be69f5783a98fe1c7f2584 Mon Sep 17 00:00:00 2001 +From b697d50d198d98ced440f6f1474cb505ff3f70a8 Mon Sep 17 00:00:00 2001 From: Josh Cartwright Date: Thu, 11 Feb 2016 11:54:01 -0600 -Subject: [PATCH 212/291] KVM: arm/arm64: downgrade preempt_disable()d region +Subject: [PATCH 212/290] KVM: arm/arm64: downgrade preempt_disable()d region to migrate_disable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz kvm_arch_vcpu_ioctl_run() disables the use of preemption when updating the vgic and timer states to prevent the calling task from migrating to @@ -55,5 +55,5 @@ index d982650deb33..efe2d6c0201c 100644 ret = handle_exit(vcpu, run, ret); } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0213-arm64-fpsimd-use-preemp_disable-in-addition-to-local.patch b/debian/patches-rt/0213-arm64-fpsimd-use-preemp_disable-in-addition-to-local.patch index b0d449a6c..d01c314e3 100644 --- a/debian/patches-rt/0213-arm64-fpsimd-use-preemp_disable-in-addition-to-local.patch +++ b/debian/patches-rt/0213-arm64-fpsimd-use-preemp_disable-in-addition-to-local.patch @@ -1,9 +1,9 @@ -From 08e350992c0e49b9829385f1aa5c717b674d2826 Mon Sep 17 00:00:00 2001 +From 3fb1b55dbb6832214ae31cb9f5ed08b8360162e7 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 25 Jul 2018 14:02:38 +0200 -Subject: [PATCH 213/291] arm64: fpsimd: use preemp_disable in addition to +Subject: [PATCH 213/290] arm64: fpsimd: use preemp_disable in addition to local_bh_disable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In v4.16-RT I noticed a number of warnings from task_fpsimd_load(). The code disables BH and expects that it is not preemptible. On -RT the @@ -167,5 +167,5 @@ index 58c53bc96928..71252cd8b594 100644 EXPORT_SYMBOL(kernel_neon_begin); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0214-kgdb-serial-Short-term-workaround.patch b/debian/patches-rt/0214-kgdb-serial-Short-term-workaround.patch index 7923ad0c5..0d9118a10 100644 --- a/debian/patches-rt/0214-kgdb-serial-Short-term-workaround.patch +++ b/debian/patches-rt/0214-kgdb-serial-Short-term-workaround.patch @@ -1,8 +1,8 @@ -From 8eaf240133bd25114284ca31f90725e113764a65 Mon Sep 17 00:00:00 2001 +From d1c62c912763a6d7d729f43e63605bb17d7814fe Mon Sep 17 00:00:00 2001 From: Jason Wessel Date: Thu, 28 Jul 2011 12:42:23 -0500 -Subject: [PATCH 214/291] kgdb/serial: Short term workaround -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 214/290] kgdb/serial: Short term workaround +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On 07/27/2011 04:37 PM, Thomas Gleixner wrote: > - KGDB (not yet disabled) is reportedly unusable on -rt right now due @@ -82,5 +82,5 @@ index 6a4b41484afe..197cb422f6e1 100644 return r; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0215-sysfs-Add-sys-kernel-realtime-entry.patch b/debian/patches-rt/0215-sysfs-Add-sys-kernel-realtime-entry.patch index 81d4f984a..ebe096076 100644 --- a/debian/patches-rt/0215-sysfs-Add-sys-kernel-realtime-entry.patch +++ b/debian/patches-rt/0215-sysfs-Add-sys-kernel-realtime-entry.patch @@ -1,8 +1,8 @@ -From e2f7b38ab8a0973aabd3e004020a75856a556ddc Mon Sep 17 00:00:00 2001 +From 1c3cb84e399e50f312537ee0399deefc5557d1ea Mon Sep 17 00:00:00 2001 From: Clark Williams Date: Sat, 30 Jul 2011 21:55:53 -0500 -Subject: [PATCH 215/291] sysfs: Add /sys/kernel/realtime entry -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 215/290] sysfs: Add /sys/kernel/realtime entry +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Add a /sys/kernel entry to indicate that the kernel is a realtime kernel. @@ -50,5 +50,5 @@ index 46ba853656f6..9a23632b6294 100644 NULL }; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0216-mm-rt-kmap_atomic-scheduling.patch b/debian/patches-rt/0216-mm-rt-kmap_atomic-scheduling.patch index 3ae91d051..2a0996feb 100644 --- a/debian/patches-rt/0216-mm-rt-kmap_atomic-scheduling.patch +++ b/debian/patches-rt/0216-mm-rt-kmap_atomic-scheduling.patch @@ -1,8 +1,8 @@ -From dfc6526e0c73a1d77983cc09f798033a897e5b1c Mon Sep 17 00:00:00 2001 +From aff5114bccbb42db5c0f8ada358804caefb8dd8d Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Thu, 28 Jul 2011 10:43:51 +0200 -Subject: [PATCH 216/291] mm, rt: kmap_atomic scheduling -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 216/290] mm, rt: kmap_atomic scheduling +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In fact, with migrate_disable() existing one could play games with kmap_atomic. You could save/restore the kmap_atomic slots on context @@ -321,5 +321,5 @@ index 59db3223a5d6..22aa3ddbd87b 100644 unsigned int nr_free_highpages (void) { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0217-x86-highmem-Add-a-already-used-pte-check.patch b/debian/patches-rt/0217-x86-highmem-Add-a-already-used-pte-check.patch index d5721ec2c..bbcfca1bd 100644 --- a/debian/patches-rt/0217-x86-highmem-Add-a-already-used-pte-check.patch +++ b/debian/patches-rt/0217-x86-highmem-Add-a-already-used-pte-check.patch @@ -1,8 +1,8 @@ -From 3ef6ef962476ff6e178935c66c5933138922fc06 Mon Sep 17 00:00:00 2001 +From 57772c842e1a3a0de1d2490c20afe90c72d8abfb Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 11 Mar 2013 17:09:55 +0100 -Subject: [PATCH 217/291] x86/highmem: Add a "already used pte" check -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 217/290] x86/highmem: Add a "already used pte" check +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz This is a copy from kmap_atomic_prot(). @@ -25,5 +25,5 @@ index d5a48210d0f6..c0ec8d430c02 100644 current->kmap_pte[type] = pte; #endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0218-arm-highmem-Flush-tlb-on-unmap.patch b/debian/patches-rt/0218-arm-highmem-Flush-tlb-on-unmap.patch index 9e59cce8c..2a5401c49 100644 --- a/debian/patches-rt/0218-arm-highmem-Flush-tlb-on-unmap.patch +++ b/debian/patches-rt/0218-arm-highmem-Flush-tlb-on-unmap.patch @@ -1,8 +1,8 @@ -From 7b6cee6bee43921f363faaaed5e16c2d93597c25 Mon Sep 17 00:00:00 2001 +From fded314d1af3bcdfc535e14068010d160ffc940f Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 11 Mar 2013 21:37:27 +0100 -Subject: [PATCH 218/291] arm/highmem: Flush tlb on unmap -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 218/290] arm/highmem: Flush tlb on unmap +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The tlb should be flushed on unmap and thus make the mapping entry invalid. This is only done in the non-debug case which does not look @@ -30,5 +30,5 @@ index d02f8187b1cc..eb4b225d28c9 100644 } else if (vaddr >= PKMAP_ADDR(0) && vaddr < PKMAP_ADDR(LAST_PKMAP)) { /* this address was obtained through kmap_high_get() */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0219-arm-Enable-highmem-for-rt.patch b/debian/patches-rt/0219-arm-Enable-highmem-for-rt.patch index 0419a701d..0a9c4cdfe 100644 --- a/debian/patches-rt/0219-arm-Enable-highmem-for-rt.patch +++ b/debian/patches-rt/0219-arm-Enable-highmem-for-rt.patch @@ -1,8 +1,8 @@ -From ae2f139a2bf98afef1245adea7f33be7a466c997 Mon Sep 17 00:00:00 2001 +From 5fc0ce79ee0183b4033b86d6824ee0463b6cfa3f Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 13 Feb 2013 11:03:11 +0100 -Subject: [PATCH 219/291] arm: Enable highmem for rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 219/290] arm: Enable highmem for rt +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz fixup highmem for ARM. @@ -180,5 +180,5 @@ index 1ac89e4718bf..eaa2ef9bc10e 100644 #include -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0220-scsi-fcoe-Make-RT-aware.patch b/debian/patches-rt/0220-scsi-fcoe-Make-RT-aware.patch index 541841ef1..c7d3be1ab 100644 --- a/debian/patches-rt/0220-scsi-fcoe-Make-RT-aware.patch +++ b/debian/patches-rt/0220-scsi-fcoe-Make-RT-aware.patch @@ -1,8 +1,8 @@ -From 165de32d8c12a4ac567739da96e3bca1e3a6687c Mon Sep 17 00:00:00 2001 +From 8e3f3ca20fb094619a58f24a7503aa7d1e6e8f84 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sat, 12 Nov 2011 14:00:48 +0100 -Subject: [PATCH 220/291] scsi/fcoe: Make RT aware. -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 220/290] scsi/fcoe: Make RT aware. +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Do not disable preemption while taking sleeping locks. All user look safe for migrate_diable() only. @@ -112,5 +112,5 @@ index 42bcf7f3a0f9..2ce045d6860c 100644 /* peek cache of free slot */ if (pool->left != FC_XID_UNKNOWN) { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0221-x86-crypto-Reduce-preempt-disabled-regions.patch b/debian/patches-rt/0221-x86-crypto-Reduce-preempt-disabled-regions.patch index b7e0065fb..fbcb739cc 100644 --- a/debian/patches-rt/0221-x86-crypto-Reduce-preempt-disabled-regions.patch +++ b/debian/patches-rt/0221-x86-crypto-Reduce-preempt-disabled-regions.patch @@ -1,8 +1,8 @@ -From f6cb7284734e9deda1e540f67c404acafe71d2f1 Mon Sep 17 00:00:00 2001 +From 90de79b5b60daade1df8897b30d56b19dea5d83a Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Mon, 14 Nov 2011 18:19:27 +0100 -Subject: [PATCH 221/291] x86: crypto: Reduce preempt disabled regions -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 221/290] x86: crypto: Reduce preempt disabled regions +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Restrict the preempt disabled regions to the actual floating point operations and enable preemption for the administrative actions. @@ -114,5 +114,5 @@ index 917f25e4d0a8..58d8c03fc32d 100644 return err; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0222-crypto-Reduce-preempt-disabled-regions-more-algos.patch b/debian/patches-rt/0222-crypto-Reduce-preempt-disabled-regions-more-algos.patch index 3b95beab3..a5ae6ea59 100644 --- a/debian/patches-rt/0222-crypto-Reduce-preempt-disabled-regions-more-algos.patch +++ b/debian/patches-rt/0222-crypto-Reduce-preempt-disabled-regions-more-algos.patch @@ -1,8 +1,8 @@ -From 803ae9e54f0557495e402725b32fbba0ac4a3501 Mon Sep 17 00:00:00 2001 +From a51e00d991c576ba020f9db8d2c4453cd7f15ecd Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 21 Feb 2014 17:24:04 +0100 -Subject: [PATCH 222/291] crypto: Reduce preempt disabled regions, more algos -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 222/290] crypto: Reduce preempt disabled regions, more algos +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Don Estabrook reported | kernel: WARNING: CPU: 2 PID: 858 at kernel/sched/core.c:2428 migrate_disable+0xed/0x100() @@ -259,5 +259,5 @@ index a78ef99a9981..dac489a1c4da 100644 } EXPORT_SYMBOL_GPL(glue_xts_req_128bit); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0223-crypto-limit-more-FPU-enabled-sections.patch b/debian/patches-rt/0223-crypto-limit-more-FPU-enabled-sections.patch index 9fc5de76d..03b693c97 100644 --- a/debian/patches-rt/0223-crypto-limit-more-FPU-enabled-sections.patch +++ b/debian/patches-rt/0223-crypto-limit-more-FPU-enabled-sections.patch @@ -1,11 +1,11 @@ -From 965ff17b26359891248c1ff854633b874c436d09 Mon Sep 17 00:00:00 2001 +From dc93a0747106cd976c1745561130f7249b2f2447 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 30 Nov 2017 13:40:10 +0100 -Subject: [PATCH 223/291] crypto: limit more FPU-enabled sections +Subject: [PATCH 223/290] crypto: limit more FPU-enabled sections MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Those crypto drivers use SSE/AVX/… for their crypto work and in order to do so in kernel they need to enable the "FPU" in kernel mode which @@ -104,5 +104,5 @@ index 2e5003fef51a..768c53767bb2 100644 * Save the FPU state (mark it for reload if necessary): * -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0224-crypto-scompress-serialize-RT-percpu-scratch-buffer-.patch b/debian/patches-rt/0224-crypto-scompress-serialize-RT-percpu-scratch-buffer-.patch index ab061398b..6383b25cf 100644 --- a/debian/patches-rt/0224-crypto-scompress-serialize-RT-percpu-scratch-buffer-.patch +++ b/debian/patches-rt/0224-crypto-scompress-serialize-RT-percpu-scratch-buffer-.patch @@ -1,9 +1,9 @@ -From 50ec5a85831ae8ef73989b80b9a0b5c889503570 Mon Sep 17 00:00:00 2001 +From 6388ffad9f71b6cc1e7074b010a3c0cd24de1ea7 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Wed, 11 Jul 2018 17:14:47 +0200 -Subject: [PATCH 224/291] crypto: scompress - serialize RT percpu scratch +Subject: [PATCH 224/290] crypto: scompress - serialize RT percpu scratch buffer access with a local lock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz | BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:974 | in_atomic(): 1, irqs_disabled(): 0, pid: 1401, name: cryptomgr_test @@ -79,5 +79,5 @@ index 968bbcf65c94..c2f0077e0801 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0225-crypto-cryptd-add-a-lock-instead-preempt_disable-loc.patch b/debian/patches-rt/0225-crypto-cryptd-add-a-lock-instead-preempt_disable-loc.patch index 3a6779c33..f120dd434 100644 --- a/debian/patches-rt/0225-crypto-cryptd-add-a-lock-instead-preempt_disable-loc.patch +++ b/debian/patches-rt/0225-crypto-cryptd-add-a-lock-instead-preempt_disable-loc.patch @@ -1,9 +1,9 @@ -From 9e661a1515bf59bfc024336bba8ef647d7386a12 Mon Sep 17 00:00:00 2001 +From e154dffb6f88ac74a8ab087c4b884413754e38aa Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 26 Jul 2018 18:52:00 +0200 -Subject: [PATCH 225/291] crypto: cryptd - add a lock instead +Subject: [PATCH 225/290] crypto: cryptd - add a lock instead preempt_disable/local_bh_disable -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz cryptd has a per-CPU lock which protected with local_bh_disable() and preempt_disable(). @@ -81,5 +81,5 @@ index e0c8e907b086..e079f9a70201 100644 if (!req) return; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0226-panic-skip-get_random_bytes-for-RT_FULL-in-init_oops.patch b/debian/patches-rt/0226-panic-skip-get_random_bytes-for-RT_FULL-in-init_oops.patch index 6139b26ed..c28f16c65 100644 --- a/debian/patches-rt/0226-panic-skip-get_random_bytes-for-RT_FULL-in-init_oops.patch +++ b/debian/patches-rt/0226-panic-skip-get_random_bytes-for-RT_FULL-in-init_oops.patch @@ -1,9 +1,9 @@ -From f40da707db8b3b9644a116ed2399c04a158e284b Mon Sep 17 00:00:00 2001 +From 9aa84af05c5298af918741fdd22779fe320edc90 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 14 Jul 2015 14:26:34 +0200 -Subject: [PATCH 226/291] panic: skip get_random_bytes for RT_FULL in +Subject: [PATCH 226/290] panic: skip get_random_bytes for RT_FULL in init_oops_id -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Disable on -RT. If this is invoked from irq-context we will have problems to acquire the sleeping lock. @@ -30,5 +30,5 @@ index 8138a676fb7d..fa114be5c30f 100644 return 0; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0227-x86-stackprotector-Avoid-random-pool-on-rt.patch b/debian/patches-rt/0227-x86-stackprotector-Avoid-random-pool-on-rt.patch index 9f3f00107..aa38b2f63 100644 --- a/debian/patches-rt/0227-x86-stackprotector-Avoid-random-pool-on-rt.patch +++ b/debian/patches-rt/0227-x86-stackprotector-Avoid-random-pool-on-rt.patch @@ -1,8 +1,8 @@ -From ed0288b2b45c87fa0ec3506a1cb4acaf0f114184 Mon Sep 17 00:00:00 2001 +From 54f488a780d046deaf409f393451114571fddc2b Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 16 Dec 2010 14:25:18 +0100 -Subject: [PATCH 227/291] x86: stackprotector: Avoid random pool on rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 227/290] x86: stackprotector: Avoid random pool on rt +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz CPU bringup calls into the random pool to initialize the stack canary. During boot that works nicely even on RT as the might sleep @@ -47,5 +47,5 @@ index 8ec97a62c245..7bc85841fc56 100644 canary += tsc + (tsc << 32UL); canary &= CANARY_MASK; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0228-random-Make-it-work-on-rt.patch b/debian/patches-rt/0228-random-Make-it-work-on-rt.patch index ca358606f..c2565f863 100644 --- a/debian/patches-rt/0228-random-Make-it-work-on-rt.patch +++ b/debian/patches-rt/0228-random-Make-it-work-on-rt.patch @@ -1,8 +1,8 @@ -From ff51be56bfec6a5b0b6c36175914356dd3ba54b3 Mon Sep 17 00:00:00 2001 +From 56f7ebec5cf501075c40f3d7ff1283a3279f88ca Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 21 Aug 2012 20:38:50 +0200 -Subject: [PATCH 228/291] random: Make it work on rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 228/290] random: Make it work on rt +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Delegate the random insertion to the forced threaded interrupt handler. Store the return IP of the hard interrupt handler in the irq @@ -163,5 +163,5 @@ index 5701774a6d71..ce86341a9e19 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0229-cpu-hotplug-Implement-CPU-pinning.patch b/debian/patches-rt/0229-cpu-hotplug-Implement-CPU-pinning.patch index 3a7d9b952..23a96e09c 100644 --- a/debian/patches-rt/0229-cpu-hotplug-Implement-CPU-pinning.patch +++ b/debian/patches-rt/0229-cpu-hotplug-Implement-CPU-pinning.patch @@ -1,8 +1,8 @@ -From 2c7a2d573fcd7764cda4a633e43de6d0dc19c385 Mon Sep 17 00:00:00 2001 +From 42dc365f8f07fc9531d70fcc94605ab25acc2685 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 19 Jul 2017 17:31:20 +0200 -Subject: [PATCH 229/291] cpu/hotplug: Implement CPU pinning -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 229/290] cpu/hotplug: Implement CPU pinning +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Signed-off-by: Thomas Gleixner --- @@ -113,5 +113,5 @@ index cf1f2eb6bb90..e6c2d814f7f9 100644 irq_unlock_sparse(); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0230-sched-Allow-pinned-user-tasks-to-be-awakened-to-the-.patch b/debian/patches-rt/0230-sched-Allow-pinned-user-tasks-to-be-awakened-to-the-.patch index 2249864b5..37cfff4d3 100644 --- a/debian/patches-rt/0230-sched-Allow-pinned-user-tasks-to-be-awakened-to-the-.patch +++ b/debian/patches-rt/0230-sched-Allow-pinned-user-tasks-to-be-awakened-to-the-.patch @@ -1,9 +1,9 @@ -From eff993290f4548c3f1621d6528c177d5c61314e7 Mon Sep 17 00:00:00 2001 +From b4a9b46277740b295834182cfe114d91b0c44e31 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sun, 19 Aug 2018 08:28:35 +0200 -Subject: [PATCH 230/291] sched: Allow pinned user tasks to be awakened to the +Subject: [PATCH 230/290] sched: Allow pinned user tasks to be awakened to the CPU they pinned -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Since commit 7af443ee16976 ("sched/core: Require cpu_active() in select_task_rq(), for user tasks") select_fallback_rq() will BUG() if @@ -35,5 +35,5 @@ index dcf2deedd3f8..6ef0dcea94d7 100644 return cpu_active(cpu); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0231-hotplug-duct-tape-RT-rwlock-usage-for-non-RT.patch b/debian/patches-rt/0231-hotplug-duct-tape-RT-rwlock-usage-for-non-RT.patch index 7a464a93d..128ef01b7 100644 --- a/debian/patches-rt/0231-hotplug-duct-tape-RT-rwlock-usage-for-non-RT.patch +++ b/debian/patches-rt/0231-hotplug-duct-tape-RT-rwlock-usage-for-non-RT.patch @@ -1,8 +1,8 @@ -From 383acff72aa2c980f18f222454d8a81d1358ecc3 Mon Sep 17 00:00:00 2001 +From bd5177f5caaa75365fab66e40f912772cd9da73b Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 4 Aug 2017 18:31:00 +0200 -Subject: [PATCH 231/291] hotplug: duct-tape RT-rwlock usage for non-RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 231/290] hotplug: duct-tape RT-rwlock usage for non-RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz This type is only available on -RT. We need to craft something for non-RT. Since the only migrate_disable() user is -RT only, there is no @@ -98,5 +98,5 @@ index e6c2d814f7f9..c8631e699ce2 100644 irq_unlock_sparse(); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0232-net-Remove-preemption-disabling-in-netif_rx.patch b/debian/patches-rt/0232-net-Remove-preemption-disabling-in-netif_rx.patch index cd6ddb426..8196928b5 100644 --- a/debian/patches-rt/0232-net-Remove-preemption-disabling-in-netif_rx.patch +++ b/debian/patches-rt/0232-net-Remove-preemption-disabling-in-netif_rx.patch @@ -1,8 +1,8 @@ -From 4435f4a65c3e92d4775dff30c178cf1f59eeea71 Mon Sep 17 00:00:00 2001 +From 9dcfd3052899233a5c4b7593793005967d025b3f Mon Sep 17 00:00:00 2001 From: Priyanka Jain Date: Thu, 17 May 2012 09:35:11 +0530 -Subject: [PATCH 232/291] net: Remove preemption disabling in netif_rx() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 232/290] net: Remove preemption disabling in netif_rx() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz 1)enqueue_to_backlog() (called from netif_rx) should be bind to a particluar CPU. This can be achieved by @@ -36,10 +36,10 @@ Signed-off-by: Thomas Gleixner 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/net/core/dev.c b/net/core/dev.c -index 67df2536d4bf..3b86d29da429 100644 +index 950356b8b5b1..ee8cb6d4f6aa 100644 --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -4498,7 +4498,7 @@ static int netif_rx_internal(struct sk_buff *skb) +@@ -4499,7 +4499,7 @@ static int netif_rx_internal(struct sk_buff *skb) struct rps_dev_flow voidflow, *rflow = &voidflow; int cpu; @@ -48,7 +48,7 @@ index 67df2536d4bf..3b86d29da429 100644 rcu_read_lock(); cpu = get_rps_cpu(skb->dev, skb, &rflow); -@@ -4508,14 +4508,14 @@ static int netif_rx_internal(struct sk_buff *skb) +@@ -4509,14 +4509,14 @@ static int netif_rx_internal(struct sk_buff *skb) ret = enqueue_to_backlog(skb, cpu, &rflow->last_qtail); rcu_read_unlock(); @@ -67,5 +67,5 @@ index 67df2536d4bf..3b86d29da429 100644 return ret; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0233-net-Another-local_irq_disable-kmalloc-headache.patch b/debian/patches-rt/0233-net-Another-local_irq_disable-kmalloc-headache.patch index 3e6a6a529..a3bb2533d 100644 --- a/debian/patches-rt/0233-net-Another-local_irq_disable-kmalloc-headache.patch +++ b/debian/patches-rt/0233-net-Another-local_irq_disable-kmalloc-headache.patch @@ -1,8 +1,8 @@ -From 571bb5a2b0cea5aedd166dd28e90cbbae95aa11b Mon Sep 17 00:00:00 2001 +From e6babcfe0fa1248a3e14b455738237a4e13b50eb Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 26 Sep 2012 16:21:08 +0200 -Subject: [PATCH 233/291] net: Another local_irq_disable/kmalloc headache -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 233/290] net: Another local_irq_disable/kmalloc headache +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Replace it by a local lock. Though that's pretty inefficient :( @@ -61,5 +61,5 @@ index 0629ca89ab74..6ca7cb2b4364 100644 if (unlikely(!data)) return NULL; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0234-net-core-protect-users-of-napi_alloc_cache-against-r.patch b/debian/patches-rt/0234-net-core-protect-users-of-napi_alloc_cache-against-r.patch index 9b09af271..771bfdebb 100644 --- a/debian/patches-rt/0234-net-core-protect-users-of-napi_alloc_cache-against-r.patch +++ b/debian/patches-rt/0234-net-core-protect-users-of-napi_alloc_cache-against-r.patch @@ -1,9 +1,9 @@ -From eac7fdf35a9f0818ea573cb05690e17920381c78 Mon Sep 17 00:00:00 2001 +From cf637289b14f736be18788b3ba3160ba35949396 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 15 Jan 2016 16:33:34 +0100 -Subject: [PATCH 234/291] net/core: protect users of napi_alloc_cache against +Subject: [PATCH 234/290] net/core: protect users of napi_alloc_cache against reentrance -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On -RT the code running in BH can not be moved to another CPU so CPU local variable remain local. However the code can be preempted @@ -115,5 +115,5 @@ index 6ca7cb2b4364..c5c0d2095873 100644 void __kfree_skb_defer(struct sk_buff *skb) { -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0235-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch b/debian/patches-rt/0235-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch index 11c55ceb9..4ba4321d3 100644 --- a/debian/patches-rt/0235-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch +++ b/debian/patches-rt/0235-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch @@ -1,9 +1,9 @@ -From b5a38b121397cc80814cbd35b3f9370fdaea2ad8 Mon Sep 17 00:00:00 2001 +From 28b182b074b9bb5ea0707e1f674eae8d576357c7 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 28 Oct 2012 11:18:08 +0100 -Subject: [PATCH 235/291] net: netfilter: Serialize xt_write_recseq sections on +Subject: [PATCH 235/290] net: netfilter: Serialize xt_write_recseq sections on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The netfilter code relies only on the implicit semantics of local_bh_disable() for serializing wt_write_recseq sections. RT breaks @@ -80,5 +80,5 @@ index 93aaec3a54ec..b364cf8e5776 100644 EXPORT_SYMBOL_GPL(nf_ipv6_ops); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0236-net-Add-a-mutex-around-devnet_rename_seq.patch b/debian/patches-rt/0236-net-Add-a-mutex-around-devnet_rename_seq.patch index 907691a0b..6d1b09438 100644 --- a/debian/patches-rt/0236-net-Add-a-mutex-around-devnet_rename_seq.patch +++ b/debian/patches-rt/0236-net-Add-a-mutex-around-devnet_rename_seq.patch @@ -1,8 +1,8 @@ -From 190a26356e77b087b41a4ef502e56aec24b9c598 Mon Sep 17 00:00:00 2001 +From d93ef2fbc7cc016328b4e3cfc2b58960acc4b696 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 20 Mar 2013 18:06:20 +0100 -Subject: [PATCH 236/291] net: Add a mutex around devnet_rename_seq -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 236/290] net: Add a mutex around devnet_rename_seq +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On RT write_seqcount_begin() disables preemption and device_rename() allocates memory with GFP_KERNEL and grabs later the sysfs_mutex @@ -22,10 +22,10 @@ Signed-off-by: Thomas Gleixner 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/net/core/dev.c b/net/core/dev.c -index 3b86d29da429..7b7d1adbd6b9 100644 +index ee8cb6d4f6aa..fd54d56e1e7d 100644 --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -195,6 +195,7 @@ static unsigned int napi_gen_id = NR_CPUS; +@@ -196,6 +196,7 @@ static unsigned int napi_gen_id = NR_CPUS; static DEFINE_READ_MOSTLY_HASHTABLE(napi_hash, 8); static seqcount_t devnet_rename_seq; @@ -33,7 +33,7 @@ index 3b86d29da429..7b7d1adbd6b9 100644 static inline void dev_base_seq_inc(struct net *net) { -@@ -920,7 +921,8 @@ int netdev_get_name(struct net *net, char *name, int ifindex) +@@ -921,7 +922,8 @@ int netdev_get_name(struct net *net, char *name, int ifindex) strcpy(name, dev->name); rcu_read_unlock(); if (read_seqcount_retry(&devnet_rename_seq, seq)) { @@ -43,7 +43,7 @@ index 3b86d29da429..7b7d1adbd6b9 100644 goto retry; } -@@ -1197,20 +1199,17 @@ int dev_change_name(struct net_device *dev, const char *newname) +@@ -1198,20 +1200,17 @@ int dev_change_name(struct net_device *dev, const char *newname) likely(!(dev->priv_flags & IFF_LIVE_RENAME_OK))) return -EBUSY; @@ -70,7 +70,7 @@ index 3b86d29da429..7b7d1adbd6b9 100644 if (oldname[0] && !strchr(oldname, '%')) netdev_info(dev, "renamed from %s\n", oldname); -@@ -1223,11 +1222,12 @@ int dev_change_name(struct net_device *dev, const char *newname) +@@ -1224,11 +1223,12 @@ int dev_change_name(struct net_device *dev, const char *newname) if (ret) { memcpy(dev->name, oldname, IFNAMSIZ); dev->name_assign_type = old_assign_type; @@ -86,7 +86,7 @@ index 3b86d29da429..7b7d1adbd6b9 100644 netdev_adjacent_rename_links(dev, oldname); -@@ -1248,7 +1248,8 @@ int dev_change_name(struct net_device *dev, const char *newname) +@@ -1249,7 +1249,8 @@ int dev_change_name(struct net_device *dev, const char *newname) /* err >= 0 after dev_alloc_name() or stores the first errno */ if (err >= 0) { err = ret; @@ -96,7 +96,7 @@ index 3b86d29da429..7b7d1adbd6b9 100644 memcpy(dev->name, oldname, IFNAMSIZ); memcpy(oldname, newname, IFNAMSIZ); dev->name_assign_type = old_assign_type; -@@ -1261,6 +1262,11 @@ int dev_change_name(struct net_device *dev, const char *newname) +@@ -1262,6 +1263,11 @@ int dev_change_name(struct net_device *dev, const char *newname) } return err; @@ -109,5 +109,5 @@ index 3b86d29da429..7b7d1adbd6b9 100644 /** -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0237-lockdep-selftest-Only-do-hardirq-context-test-for-ra.patch b/debian/patches-rt/0237-lockdep-selftest-Only-do-hardirq-context-test-for-ra.patch index db7511ee0..f35ea3265 100644 --- a/debian/patches-rt/0237-lockdep-selftest-Only-do-hardirq-context-test-for-ra.patch +++ b/debian/patches-rt/0237-lockdep-selftest-Only-do-hardirq-context-test-for-ra.patch @@ -1,9 +1,9 @@ -From bca887b9f774bbd2c46bf349b6ff39708053a1d1 Mon Sep 17 00:00:00 2001 +From d7695d53a9f2bed0ce8208662ba7f099af5b03ea Mon Sep 17 00:00:00 2001 From: Yong Zhang Date: Mon, 16 Apr 2012 15:01:56 +0800 -Subject: [PATCH 237/291] lockdep: selftest: Only do hardirq context test for +Subject: [PATCH 237/290] lockdep: selftest: Only do hardirq context test for raw spinlock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz On -rt there is no softirq context any more and rwlock is sleepable, disable softirq context test and rwlock+irq test. @@ -58,5 +58,5 @@ index 1e1bbf171eca..5cdf3809905e 100644 ww_tests(); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0238-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch b/debian/patches-rt/0238-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch index 61229231e..67abe524e 100644 --- a/debian/patches-rt/0238-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch +++ b/debian/patches-rt/0238-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch @@ -1,9 +1,9 @@ -From b09a15118626b47370a112e1ad12205b27a9194d Mon Sep 17 00:00:00 2001 +From 0bcc13d1f486d89eea4550bd9be5b6607a041a85 Mon Sep 17 00:00:00 2001 From: Josh Cartwright Date: Wed, 28 Jan 2015 13:08:45 -0600 -Subject: [PATCH 238/291] lockdep: selftest: fix warnings due to missing +Subject: [PATCH 238/290] lockdep: selftest: fix warnings due to missing PREEMPT_RT conditionals -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz "lockdep: Selftest: Only do hardirq context test for raw spinlock" disabled the execution of certain tests with PREEMPT_RT_FULL, but did @@ -145,5 +145,5 @@ index 5cdf3809905e..32db9532ddd4 100644 * read-lock / write-lock recursion that is unsafe. */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0239-sched-Add-support-for-lazy-preemption.patch b/debian/patches-rt/0239-sched-Add-support-for-lazy-preemption.patch index a4012f29a..eb7cf0e0c 100644 --- a/debian/patches-rt/0239-sched-Add-support-for-lazy-preemption.patch +++ b/debian/patches-rt/0239-sched-Add-support-for-lazy-preemption.patch @@ -1,8 +1,8 @@ -From f80c58befc5738acca6efae88c7b88807cfe973c Mon Sep 17 00:00:00 2001 +From 0ea3e027332a92b240723b63d08f875461e0c208 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 26 Oct 2012 18:50:54 +0100 -Subject: [PATCH 239/291] sched: Add support for lazy preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 239/290] sched: Add support for lazy preemption +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz It has become an obsession to mitigate the determinism vs. throughput loss of RT. Looking at the mainline semantics of preemption points @@ -530,7 +530,7 @@ index c79e32488940..c90574112bca 100644 extern void init_rt_bandwidth(struct rt_bandwidth *rt_b, u64 period, u64 runtime); diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c -index befe5978a832..d547c6ab0db2 100644 +index 5eccf1c201db..d13b58073bce 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -2137,6 +2137,7 @@ tracing_generic_entry_update(struct trace_entry *entry, unsigned long flags, @@ -667,5 +667,5 @@ index 46c96744f09d..3f78b0afb729 100644 trace_seq_printf(s, "%x", entry->migrate_disable); else -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0240-ftrace-Fix-trace-header-alignment.patch b/debian/patches-rt/0240-ftrace-Fix-trace-header-alignment.patch index d3cd390bf..633e9f6f3 100644 --- a/debian/patches-rt/0240-ftrace-Fix-trace-header-alignment.patch +++ b/debian/patches-rt/0240-ftrace-Fix-trace-header-alignment.patch @@ -1,8 +1,8 @@ -From 05176e2b2c16ec7f9ca57bd48e1d3016e83fe071 Mon Sep 17 00:00:00 2001 +From d41ba5694f1fd54574be4bf3a9d7bc859ca6cb40 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sun, 16 Oct 2016 05:08:30 +0200 -Subject: [PATCH 240/291] ftrace: Fix trace header alignment -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 240/290] ftrace: Fix trace header alignment +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Line up helper arrows to the right column. @@ -15,7 +15,7 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c -index d547c6ab0db2..bdcc8eda152c 100644 +index d13b58073bce..99dde9db6e3e 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -3351,17 +3351,17 @@ get_total_entries(struct trace_buffer *buf, @@ -48,5 +48,5 @@ index d547c6ab0db2..bdcc8eda152c 100644 static void print_event_info(struct trace_buffer *buf, struct seq_file *m) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0241-x86-Support-for-lazy-preemption.patch b/debian/patches-rt/0241-x86-Support-for-lazy-preemption.patch index 86f54cf6a..10f0987cc 100644 --- a/debian/patches-rt/0241-x86-Support-for-lazy-preemption.patch +++ b/debian/patches-rt/0241-x86-Support-for-lazy-preemption.patch @@ -1,8 +1,8 @@ -From b0a8725c972abd18ec9f4fb37c7e23fda28bccae Mon Sep 17 00:00:00 2001 +From e4cba91598b3be3d6bcadce513ffd80041895d70 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 1 Nov 2012 11:03:47 +0100 -Subject: [PATCH 241/291] x86: Support for lazy preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 241/290] x86: Support for lazy preemption +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Implement the x86 pieces for lazy preempt. @@ -236,5 +236,5 @@ index 01de31db300d..ce1c5b9fbd8c 100644 /* TLB state for the entry code */ OFFSET(TLB_STATE_user_pcid_flush_mask, tlb_state, user_pcid_flush_mask); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0242-x86-lazy-preempt-properly-check-against-preempt-mask.patch b/debian/patches-rt/0242-x86-lazy-preempt-properly-check-against-preempt-mask.patch index d6d1c31a4..ec7665d37 100644 --- a/debian/patches-rt/0242-x86-lazy-preempt-properly-check-against-preempt-mask.patch +++ b/debian/patches-rt/0242-x86-lazy-preempt-properly-check-against-preempt-mask.patch @@ -1,9 +1,9 @@ -From 753eeda0671c2b6108f607ec1fe2675c4517e4f5 Mon Sep 17 00:00:00 2001 +From 9c314d19ce79b759d4978179077e8aa59cf1b1df Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 18 Feb 2019 16:57:09 +0100 -Subject: [PATCH 242/291] x86: lazy-preempt: properly check against +Subject: [PATCH 242/290] x86: lazy-preempt: properly check against preempt-mask -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz should_resched() should check against preempt_offset after unmasking the need-resched-bit. Otherwise should_resched() won't work for @@ -29,5 +29,5 @@ index 22992c837795..f66708779274 100644 if (current_thread_info()->preempt_lazy_count) return false; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0243-x86-lazy-preempt-use-proper-return-label-on-32bit-x8.patch b/debian/patches-rt/0243-x86-lazy-preempt-use-proper-return-label-on-32bit-x8.patch index 49ca47eb6..0a676db3f 100644 --- a/debian/patches-rt/0243-x86-lazy-preempt-use-proper-return-label-on-32bit-x8.patch +++ b/debian/patches-rt/0243-x86-lazy-preempt-use-proper-return-label-on-32bit-x8.patch @@ -1,9 +1,9 @@ -From e9888377f4ed8949cb6efee0e4451809425a0dcc Mon Sep 17 00:00:00 2001 +From 45c086ec4e89dcf9194c2b88b5ee38ffa79fe4ec Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 26 Feb 2019 14:53:49 +0100 -Subject: [PATCH 243/291] x86: lazy-preempt: use proper return label on +Subject: [PATCH 243/290] x86: lazy-preempt: use proper return label on 32bit-x86 -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The lazy-preempt uses the wrong return label in case preemption isn't possible. This results crash while returning to the kernel. @@ -41,5 +41,5 @@ index 985988227877..d880352e410c 100644 testl $X86_EFLAGS_IF, PT_EFLAGS(%esp) # interrupts off (exception path) ? jz restore_all_kernel -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0244-arm-Add-support-for-lazy-preemption.patch b/debian/patches-rt/0244-arm-Add-support-for-lazy-preemption.patch index 7185977ac..6ff992bd0 100644 --- a/debian/patches-rt/0244-arm-Add-support-for-lazy-preemption.patch +++ b/debian/patches-rt/0244-arm-Add-support-for-lazy-preemption.patch @@ -1,8 +1,8 @@ -From 935d43627cb20dad8804b2d08f724536e1d8a409 Mon Sep 17 00:00:00 2001 +From 61f1fec1af303a55b098a0228a82f9632f220cd8 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 31 Oct 2012 12:04:11 +0100 -Subject: [PATCH 244/291] arm: Add support for lazy preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 244/290] arm: Add support for lazy preemption +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Implement the arm pieces for lazy preempt. @@ -164,5 +164,5 @@ index b908382b69ff..339fbc281cf1 100644 } else { if (unlikely(!user_mode(regs))) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0246-powerpc-Add-support-for-lazy-preemption.patch b/debian/patches-rt/0245-powerpc-Add-support-for-lazy-preemption.patch similarity index 97% rename from debian/patches-rt/0246-powerpc-Add-support-for-lazy-preemption.patch rename to debian/patches-rt/0245-powerpc-Add-support-for-lazy-preemption.patch index a6540dc90..94c78f91a 100644 --- a/debian/patches-rt/0246-powerpc-Add-support-for-lazy-preemption.patch +++ b/debian/patches-rt/0245-powerpc-Add-support-for-lazy-preemption.patch @@ -1,8 +1,8 @@ -From b144543f29356504a2f225a56546f9756120fb56 Mon Sep 17 00:00:00 2001 +From dbdce4ec0b82c3bbd36c36c374d4f964ecc9f2f1 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 1 Nov 2012 10:14:11 +0100 -Subject: [PATCH 246/291] powerpc: Add support for lazy preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 245/290] powerpc: Add support for lazy preemption +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Implement the powerpc pieces for lazy preempt. @@ -192,5 +192,5 @@ index 58b50967b3e5..ef02e41d5d96 100644 /* -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0247-arch-arm64-Add-lazy-preempt-support.patch b/debian/patches-rt/0246-arch-arm64-Add-lazy-preempt-support.patch similarity index 96% rename from debian/patches-rt/0247-arch-arm64-Add-lazy-preempt-support.patch rename to debian/patches-rt/0246-arch-arm64-Add-lazy-preempt-support.patch index 91b5d5ee4..b3b8928f9 100644 --- a/debian/patches-rt/0247-arch-arm64-Add-lazy-preempt-support.patch +++ b/debian/patches-rt/0246-arch-arm64-Add-lazy-preempt-support.patch @@ -1,8 +1,8 @@ -From f87d8e877b765ec1760124d69d7f644bfdc0b9cd Mon Sep 17 00:00:00 2001 +From f72b8c6debbe5f7e9bd418213de3f00d3c0e7891 Mon Sep 17 00:00:00 2001 From: Anders Roxell Date: Thu, 14 May 2015 17:52:17 +0200 -Subject: [PATCH 247/291] arch/arm64: Add lazy preempt support -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 246/290] arch/arm64: Add lazy preempt support +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz arm64 is missing support for PREEMPT_RT. The main feature which is lacking is support for lazy preemption. The arch-specific entry code, @@ -129,5 +129,5 @@ index 5dcc942906db..4fec251fe147 100644 local_daif_restore(DAIF_PROCCTX_NOIRQ); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0248-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch b/debian/patches-rt/0247-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch similarity index 93% rename from debian/patches-rt/0248-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch rename to debian/patches-rt/0247-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch index a8e9a0460..4baf86d7f 100644 --- a/debian/patches-rt/0248-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch +++ b/debian/patches-rt/0247-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch @@ -1,9 +1,9 @@ -From 9a03ed17896a5431a9f1f93461ba90eefd14c5f5 Mon Sep 17 00:00:00 2001 +From f4dc4bd0a39f63d832830cf52a03dc9fdc628234 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sun, 16 Oct 2016 05:11:54 +0200 -Subject: [PATCH 248/291] connector/cn_proc: Protect send_msg() with a local +Subject: [PATCH 247/290] connector/cn_proc: Protect send_msg() with a local lock on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz |BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:931 |in_atomic(): 1, irqs_disabled(): 0, pid: 31807, name: sleep @@ -70,5 +70,5 @@ index ad48fd52cb53..c5264b3ee0b0 100644 void proc_fork_connector(struct task_struct *task) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0249-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch b/debian/patches-rt/0248-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch similarity index 94% rename from debian/patches-rt/0249-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch rename to debian/patches-rt/0248-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch index e6e211e69..4af43bf0a 100644 --- a/debian/patches-rt/0249-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch +++ b/debian/patches-rt/0248-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch @@ -1,9 +1,9 @@ -From cb8c4311213f5d86437dba441422b2f199d3b5b1 Mon Sep 17 00:00:00 2001 +From 299edbde24f04fa915d7017d674aeee802a4426b Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Thu, 31 Mar 2016 04:08:28 +0200 -Subject: [PATCH 249/291] drivers/block/zram: Replace bit spinlocks with +Subject: [PATCH 248/290] drivers/block/zram: Replace bit spinlocks with rtmutex for -rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz They're nondeterministic, and lead to ___might_sleep() splats in -rt. OTOH, they're a lot less wasteful than an rtmutex per page. @@ -100,5 +100,5 @@ index d1095dfdffa8..144e91061df8 100644 ktime_t ac_time; #endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0250-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch b/debian/patches-rt/0249-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch similarity index 95% rename from debian/patches-rt/0250-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch rename to debian/patches-rt/0249-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch index 6ba79c78a..571c57ee4 100644 --- a/debian/patches-rt/0250-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch +++ b/debian/patches-rt/0249-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch @@ -1,9 +1,9 @@ -From 5f3149538ac9f025fab84569fad1276990e79c07 Mon Sep 17 00:00:00 2001 +From 62ee8af11e220e642012e3364327cd4510578f07 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Thu, 20 Oct 2016 11:15:22 +0200 -Subject: [PATCH 250/291] drivers/zram: Don't disable preemption in +Subject: [PATCH 249/290] drivers/zram: Don't disable preemption in zcomp_stream_get/put() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz In v4.7, the driver switched to percpu compression streams, disabling preemption via get/put_cpu_ptr(). Use a per-zcomp_strm lock here. We @@ -103,5 +103,5 @@ index d6cf9508b80d..71520199226a 100644 /* Should NEVER happen. Return bio error if it does. */ -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0251-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch b/debian/patches-rt/0250-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch similarity index 88% rename from debian/patches-rt/0251-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch rename to debian/patches-rt/0250-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch index 3a16c565b..502302f1f 100644 --- a/debian/patches-rt/0251-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch +++ b/debian/patches-rt/0250-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch @@ -1,9 +1,9 @@ -From c5c85513eb5824e4d4151f720a6aa154261f9b80 Mon Sep 17 00:00:00 2001 +From e68090808bef14283e17ecb7a6549728ffd2240b Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Wed, 23 Aug 2017 11:57:29 +0200 -Subject: [PATCH 251/291] drivers/zram: fix zcomp_stream_get() +Subject: [PATCH 250/290] drivers/zram: fix zcomp_stream_get() smp_processor_id() use in preemptible code -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Use get_local_ptr() instead this_cpu_ptr() to avoid a warning regarding smp_processor_id() in preemptible code. @@ -40,5 +40,5 @@ index dd65a27ae2cc..eece02262000 100644 int zcomp_compress(struct zcomp_strm *zstrm, -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0252-tpm_tis-fix-stall-after-iowrite-s.patch b/debian/patches-rt/0251-tpm_tis-fix-stall-after-iowrite-s.patch similarity index 94% rename from debian/patches-rt/0252-tpm_tis-fix-stall-after-iowrite-s.patch rename to debian/patches-rt/0251-tpm_tis-fix-stall-after-iowrite-s.patch index 484a9c9d1..968dcff93 100644 --- a/debian/patches-rt/0252-tpm_tis-fix-stall-after-iowrite-s.patch +++ b/debian/patches-rt/0251-tpm_tis-fix-stall-after-iowrite-s.patch @@ -1,8 +1,8 @@ -From 164b49bbed423012171fa88f691e0cdf7f60a211 Mon Sep 17 00:00:00 2001 +From fb36406fa8141b155e8ff2b751a13f9607520c2d Mon Sep 17 00:00:00 2001 From: Haris Okanovic Date: Tue, 15 Aug 2017 15:13:08 -0500 -Subject: [PATCH 252/291] tpm_tis: fix stall after iowrite*()s -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 251/290] tpm_tis: fix stall after iowrite*()s +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz ioread8() operations to TPM MMIO addresses can stall the cpu when immediately following a sequence of iowrite*()'s to the same region. @@ -80,5 +80,5 @@ index f08949a5f678..9fefcfcae593 100644 return 0; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0253-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch b/debian/patches-rt/0252-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch similarity index 80% rename from debian/patches-rt/0253-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch rename to debian/patches-rt/0252-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch index 6bb8bbf1e..bcfd991e4 100644 --- a/debian/patches-rt/0253-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch +++ b/debian/patches-rt/0252-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch @@ -1,8 +1,8 @@ -From 652a8167db4502b7d292fea5105b9b1c6b497c5c Mon Sep 17 00:00:00 2001 +From 1a6947443058c0374db28d38e92671731ce32711 Mon Sep 17 00:00:00 2001 From: Julia Cartwright Date: Fri, 28 Sep 2018 21:03:51 +0000 -Subject: [PATCH 253/291] watchdog: prevent deferral of watchdogd wakeup on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 252/290] watchdog: prevent deferral of watchdogd wakeup on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz When PREEMPT_RT_FULL is enabled, all hrtimer expiry functions are deferred for execution into the context of ktimersoftd unless otherwise @@ -36,9 +36,11 @@ Signed-off-by: Sebastian Andrzej Siewior drivers/watchdog/watchdog_dev.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) +diff --git a/drivers/watchdog/watchdog_dev.c b/drivers/watchdog/watchdog_dev.c +index 4b89333e8eb4..ed12734e1e8c 100644 --- a/drivers/watchdog/watchdog_dev.c +++ b/drivers/watchdog/watchdog_dev.c -@@ -146,7 +146,7 @@ +@@ -146,7 +146,7 @@ static inline void watchdog_update_worker(struct watchdog_device *wdd) ktime_t t = watchdog_next_keepalive(wdd); if (t > 0) @@ -47,7 +49,7 @@ Signed-off-by: Sebastian Andrzej Siewior } else { hrtimer_cancel(&wd_data->timer); } -@@ -165,7 +165,7 @@ +@@ -165,7 +165,7 @@ static int __watchdog_ping(struct watchdog_device *wdd) if (ktime_after(earliest_keepalive, now)) { hrtimer_start(&wd_data->timer, ktime_sub(earliest_keepalive, now), @@ -56,7 +58,7 @@ Signed-off-by: Sebastian Andrzej Siewior return 0; } -@@ -948,7 +948,7 @@ +@@ -948,7 +948,7 @@ static int watchdog_cdev_register(struct watchdog_device *wdd) return -ENODEV; kthread_init_work(&wd_data->work, watchdog_ping_work); @@ -65,7 +67,7 @@ Signed-off-by: Sebastian Andrzej Siewior wd_data->timer.function = watchdog_timer_expired; if (wdd->id == 0) { -@@ -1005,7 +1005,7 @@ +@@ -1005,7 +1005,7 @@ static int watchdog_cdev_register(struct watchdog_device *wdd) __module_get(wdd->ops->owner); get_device(&wd_data->dev); if (handle_boot_enabled) @@ -74,3 +76,6 @@ Signed-off-by: Sebastian Andrzej Siewior else pr_info("watchdog%d running and kernel based pre-userspace handler disabled\n", wdd->id); +-- +2.24.1 + diff --git a/debian/patches-rt/0254-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch b/debian/patches-rt/0253-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch similarity index 92% rename from debian/patches-rt/0254-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch rename to debian/patches-rt/0253-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch index 5eeab6917..5c0257ead 100644 --- a/debian/patches-rt/0254-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch +++ b/debian/patches-rt/0253-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch @@ -1,9 +1,9 @@ -From 8d8e5eb6f7fe08c7cd68248e7fd4154ce691610c Mon Sep 17 00:00:00 2001 +From d8adf6f9943f681b148d93d21014e8e41067067e Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sat, 27 Feb 2016 08:09:11 +0100 -Subject: [PATCH 254/291] drm,radeon,i915: Use preempt_disable/enable_rt() +Subject: [PATCH 253/290] drm,radeon,i915: Use preempt_disable/enable_rt() where recommended -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz DRM folks identified the spots, so use them. @@ -57,5 +57,5 @@ index d8e2d7b3b836..072b831aaf4f 100644 /* Decode into vertical and horizontal scanout position. */ *vpos = position & 0x1fff; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0255-drm-i915-Use-local_lock-unlock_irq-in-intel_pipe_upd.patch b/debian/patches-rt/0254-drm-i915-Use-local_lock-unlock_irq-in-intel_pipe_upd.patch similarity index 97% rename from debian/patches-rt/0255-drm-i915-Use-local_lock-unlock_irq-in-intel_pipe_upd.patch rename to debian/patches-rt/0254-drm-i915-Use-local_lock-unlock_irq-in-intel_pipe_upd.patch index 4465880be..3bae7408d 100644 --- a/debian/patches-rt/0255-drm-i915-Use-local_lock-unlock_irq-in-intel_pipe_upd.patch +++ b/debian/patches-rt/0254-drm-i915-Use-local_lock-unlock_irq-in-intel_pipe_upd.patch @@ -1,9 +1,9 @@ -From 785c2be773a136f908fe9a9c79b5a9001d944863 Mon Sep 17 00:00:00 2001 +From f020bb0cd2272c8d908dfd4eba9afb593eff70ab Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sat, 27 Feb 2016 09:01:42 +0100 -Subject: [PATCH 255/291] drm,i915: Use local_lock/unlock_irq() in +Subject: [PATCH 254/290] drm,i915: Use local_lock/unlock_irq() in intel_pipe_update_start/end() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ 8.014039] BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:918 [ 8.014041] in_atomic(): 0, irqs_disabled(): 1, pid: 78, name: kworker/u4:4 @@ -124,5 +124,5 @@ index f7026e887fa9..07e4ddebdd80 100644 if (intel_vgpu_active(dev_priv)) return; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0256-drm-i915-disable-tracing-on-RT.patch b/debian/patches-rt/0255-drm-i915-disable-tracing-on-RT.patch similarity index 90% rename from debian/patches-rt/0256-drm-i915-disable-tracing-on-RT.patch rename to debian/patches-rt/0255-drm-i915-disable-tracing-on-RT.patch index 569a744f5..afbfd357c 100644 --- a/debian/patches-rt/0256-drm-i915-disable-tracing-on-RT.patch +++ b/debian/patches-rt/0255-drm-i915-disable-tracing-on-RT.patch @@ -1,8 +1,8 @@ -From aac61837f742b75e5a5c55a51c5dd1447678ce94 Mon Sep 17 00:00:00 2001 +From 9c63af996fae22f9a543ba63986342b6c6225302 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 6 Dec 2018 09:52:20 +0100 -Subject: [PATCH 256/291] drm/i915: disable tracing on -RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 255/290] drm/i915: disable tracing on -RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Luca Abeni reported this: | BUG: scheduling while atomic: kworker/u8:2/15203/0x00000003 @@ -43,5 +43,5 @@ index b50c6b829715..cc54ec0ef75c 100644 #include #include -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0257-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch b/debian/patches-rt/0256-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch similarity index 86% rename from debian/patches-rt/0257-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch rename to debian/patches-rt/0256-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch index e23aa1440..bb1f4019d 100644 --- a/debian/patches-rt/0257-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch +++ b/debian/patches-rt/0256-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch @@ -1,9 +1,9 @@ -From a2fef8d1d6263aae8da507a9541155c6742d450e Mon Sep 17 00:00:00 2001 +From b34fadffa3608307de6514151f16cdd385c14ad8 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 19 Dec 2018 10:47:02 +0100 -Subject: [PATCH 257/291] drm/i915: skip DRM_I915_LOW_LEVEL_TRACEPOINTS with +Subject: [PATCH 256/290] drm/i915: skip DRM_I915_LOW_LEVEL_TRACEPOINTS with NOTRACE -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The order of the header files is important. If this header file is included after tracepoint.h was included then the NOTRACE here becomes a @@ -29,5 +29,5 @@ index cc54ec0ef75c..33028d8f470e 100644 TP_PROTO(struct i915_request *rq), TP_ARGS(rq) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0258-cgroups-use-simple-wait-in-css_release.patch b/debian/patches-rt/0257-cgroups-use-simple-wait-in-css_release.patch similarity index 95% rename from debian/patches-rt/0258-cgroups-use-simple-wait-in-css_release.patch rename to debian/patches-rt/0257-cgroups-use-simple-wait-in-css_release.patch index 46cfae0d3..b9f117c7a 100644 --- a/debian/patches-rt/0258-cgroups-use-simple-wait-in-css_release.patch +++ b/debian/patches-rt/0257-cgroups-use-simple-wait-in-css_release.patch @@ -1,8 +1,8 @@ -From c784b1f04341a1ba7c35171d718c31a9dab8be55 Mon Sep 17 00:00:00 2001 +From b59ff060d2629b8e98f80af20df9e89d4aa31c5d Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 13 Feb 2015 15:52:24 +0100 -Subject: [PATCH 258/291] cgroups: use simple wait in css_release() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 257/290] cgroups: use simple wait in css_release() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz To avoid: |BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:914 @@ -91,5 +91,5 @@ index 78ef274b036e..30dd5754e62e 100644 } core_initcall(cgroup_wq_init); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0259-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch b/debian/patches-rt/0258-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch similarity index 98% rename from debian/patches-rt/0259-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch rename to debian/patches-rt/0258-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch index 2c6cc8435..aa72ca17e 100644 --- a/debian/patches-rt/0259-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch +++ b/debian/patches-rt/0258-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch @@ -1,8 +1,8 @@ -From 2c047452f365a3b75ac631dc660650c8f1751179 Mon Sep 17 00:00:00 2001 +From 81c16cc87fefa39b56e6c4bca4e83beddf6eac24 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sun, 8 Jan 2017 09:32:25 +0100 -Subject: [PATCH 259/291] cpuset: Convert callback_lock to raw_spinlock_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 258/290] cpuset: Convert callback_lock to raw_spinlock_t +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The two commits below add up to a cpuset might_sleep() splat for RT: @@ -289,5 +289,5 @@ index 7bb129c5b412..92575cb9b493 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0260-apparmor-use-a-locallock-instead-preempt_disable.patch b/debian/patches-rt/0259-apparmor-use-a-locallock-instead-preempt_disable.patch similarity index 93% rename from debian/patches-rt/0260-apparmor-use-a-locallock-instead-preempt_disable.patch rename to debian/patches-rt/0259-apparmor-use-a-locallock-instead-preempt_disable.patch index 02407dbd2..681069791 100644 --- a/debian/patches-rt/0260-apparmor-use-a-locallock-instead-preempt_disable.patch +++ b/debian/patches-rt/0259-apparmor-use-a-locallock-instead-preempt_disable.patch @@ -1,8 +1,8 @@ -From f0bada02f7958bb98141c357108a4b641cb484d8 Mon Sep 17 00:00:00 2001 +From aa1de601999a7958fa83e1dae7b0819b6d5106a9 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 11 Oct 2017 17:43:49 +0200 -Subject: [PATCH 260/291] apparmor: use a locallock instead preempt_disable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 259/290] apparmor: use a locallock instead preempt_disable() +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz get_buffers() disables preemption which acts as a lock for the per-CPU variable. Since we can't disable preemption here on RT, a local_lock is @@ -81,5 +81,5 @@ index 8b8b70620bbe..8330ef57a784 100644 /* * LSM hook functions -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0261-workqueue-Prevent-deadlock-stall-on-RT.patch b/debian/patches-rt/0260-workqueue-Prevent-deadlock-stall-on-RT.patch similarity index 97% rename from debian/patches-rt/0261-workqueue-Prevent-deadlock-stall-on-RT.patch rename to debian/patches-rt/0260-workqueue-Prevent-deadlock-stall-on-RT.patch index f25687394..c6167b6ec 100644 --- a/debian/patches-rt/0261-workqueue-Prevent-deadlock-stall-on-RT.patch +++ b/debian/patches-rt/0260-workqueue-Prevent-deadlock-stall-on-RT.patch @@ -1,8 +1,8 @@ -From fa2376bc9e75fa693838bafeee9e137d15ce156d Mon Sep 17 00:00:00 2001 +From 6b39a01e228fa1dd4b6e4a63ee0948b2e925a4c4 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 27 Jun 2014 16:24:52 +0200 -Subject: [PATCH 261/291] workqueue: Prevent deadlock/stall on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 260/290] workqueue: Prevent deadlock/stall on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Austin reported a XFS deadlock/stall on RT where scheduled work gets never exececuted and tasks are waiting for each other for ever. @@ -203,5 +203,5 @@ index 045b82ca0eb5..714d0cfe4d56 100644 wake_up_process(worker->task); } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0262-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch b/debian/patches-rt/0261-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch similarity index 96% rename from debian/patches-rt/0262-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch rename to debian/patches-rt/0261-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch index dc1ffff1c..3615668ae 100644 --- a/debian/patches-rt/0262-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch +++ b/debian/patches-rt/0261-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch @@ -1,8 +1,8 @@ -From 7f0e567ea4f02992cfca0f9f6a3de374abbfe950 Mon Sep 17 00:00:00 2001 +From 3bbe691ca13a581aeb69342fe32522906eefba3c Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 3 Jul 2009 08:44:56 -0500 -Subject: [PATCH 262/291] signals: Allow rt tasks to cache one sigqueue struct -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 261/290] signals: Allow rt tasks to cache one sigqueue struct +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz To avoid allocation allow rt tasks to cache one sigqueue struct in task struct. @@ -42,7 +42,7 @@ index e4d01469ed60..746dd5d28c54 100644 /* Test if 'sig' is valid signal. Use this instead of testing _NSIG directly */ static inline int valid_signal(unsigned long sig) diff --git a/kernel/exit.c b/kernel/exit.c -index e10de9836dd7..ac4ca468db84 100644 +index 54c3269b8dda..c66f21193cf1 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -160,7 +160,7 @@ static void __exit_signal(struct task_struct *tsk) @@ -209,5 +209,5 @@ index 3565221b4fac..c84f13dd8626 100644 if (q) q->flags |= SIGQUEUE_PREALLOC; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0263-Add-localversion-for-RT-release.patch b/debian/patches-rt/0262-Add-localversion-for-RT-release.patch similarity index 73% rename from debian/patches-rt/0263-Add-localversion-for-RT-release.patch rename to debian/patches-rt/0262-Add-localversion-for-RT-release.patch index 4acd6e0c5..a2fe662cb 100644 --- a/debian/patches-rt/0263-Add-localversion-for-RT-release.patch +++ b/debian/patches-rt/0262-Add-localversion-for-RT-release.patch @@ -1,8 +1,8 @@ -From 788e830ac245b873667e03127778a1e39c081940 Mon Sep 17 00:00:00 2001 +From 1ce039a98b3970742c177d167d323f4a51fa51f0 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 8 Jul 2011 20:25:16 +0200 -Subject: [PATCH 263/291] Add localversion for -RT release -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 262/290] Add localversion for -RT release +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Signed-off-by: Thomas Gleixner --- @@ -18,5 +18,5 @@ index 000000000000..1199ebade17b @@ -0,0 +1 @@ +-rt16 -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0264-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch b/debian/patches-rt/0263-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch similarity index 94% rename from debian/patches-rt/0264-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch rename to debian/patches-rt/0263-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch index 539deb646..0656823fd 100644 --- a/debian/patches-rt/0264-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch +++ b/debian/patches-rt/0263-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch @@ -1,9 +1,9 @@ -From a3c21bc732a9c3cac4e9c5cd71984a23c6245f4b Mon Sep 17 00:00:00 2001 +From 225db3efbd37d13d5f2f72e2371da7d6bd9a2405 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 26 Mar 2019 18:31:54 +0100 -Subject: [PATCH 264/291] powerpc/pseries/iommu: Use a locallock instead +Subject: [PATCH 263/290] powerpc/pseries/iommu: Use a locallock instead local_irq_save() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The locallock protects the per-CPU variable tce_page. The function attempts to allocate memory while tce_page is protected (by disabling @@ -93,5 +93,5 @@ index 06f02960b439..d80d919c78d3 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0265-powerpc-reshuffle-TIF-bits.patch b/debian/patches-rt/0264-powerpc-reshuffle-TIF-bits.patch similarity index 97% rename from debian/patches-rt/0265-powerpc-reshuffle-TIF-bits.patch rename to debian/patches-rt/0264-powerpc-reshuffle-TIF-bits.patch index 4997aea06..405db3a0d 100644 --- a/debian/patches-rt/0265-powerpc-reshuffle-TIF-bits.patch +++ b/debian/patches-rt/0264-powerpc-reshuffle-TIF-bits.patch @@ -1,8 +1,8 @@ -From aff70f8bee94f78bed99e1869e3ad09b2fa46b4f Mon Sep 17 00:00:00 2001 +From aef8aedf3ea12fb22a6f2b340a3f6bd4aacac4e0 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 22 Mar 2019 17:15:58 +0100 -Subject: [PATCH 265/291] powerpc: reshuffle TIF bits -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 264/290] powerpc: reshuffle TIF bits +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Powerpc32/64 does not compile because TIF_SYSCALL_TRACE's bit is higher than 15 and the assembly instructions don't expect that. @@ -148,5 +148,5 @@ index ef02e41d5d96..229cdb04e9b0 100644 3: ldarx r10,0,r12 andc r10,r10,r11 -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0266-tty-sysrq-Convert-show_lock-to-raw_spinlock_t.patch b/debian/patches-rt/0265-tty-sysrq-Convert-show_lock-to-raw_spinlock_t.patch similarity index 92% rename from debian/patches-rt/0266-tty-sysrq-Convert-show_lock-to-raw_spinlock_t.patch rename to debian/patches-rt/0265-tty-sysrq-Convert-show_lock-to-raw_spinlock_t.patch index 6dfa042f4..356db6cc9 100644 --- a/debian/patches-rt/0266-tty-sysrq-Convert-show_lock-to-raw_spinlock_t.patch +++ b/debian/patches-rt/0265-tty-sysrq-Convert-show_lock-to-raw_spinlock_t.patch @@ -1,8 +1,8 @@ -From 115b14d042b6097575cefe15a96484bd8c9645f1 Mon Sep 17 00:00:00 2001 +From 80e49fd34b0d5b3dd5f122c074ce833b9d727ae8 Mon Sep 17 00:00:00 2001 From: Julien Grall Date: Wed, 13 Mar 2019 11:40:34 +0000 -Subject: [PATCH 266/291] tty/sysrq: Convert show_lock to raw_spinlock_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 265/290] tty/sysrq: Convert show_lock to raw_spinlock_t +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Systems which don't provide arch_trigger_cpumask_backtrace() will invoke showacpu() from a smp_call_function() function which is invoked @@ -59,5 +59,5 @@ index 06ed20dd01ba..627517ad55bf 100644 static void sysrq_showregs_othercpus(struct work_struct *dummy) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0267-drm-i915-Don-t-disable-interrupts-independently-of-t.patch b/debian/patches-rt/0266-drm-i915-Don-t-disable-interrupts-independently-of-t.patch similarity index 91% rename from debian/patches-rt/0267-drm-i915-Don-t-disable-interrupts-independently-of-t.patch rename to debian/patches-rt/0266-drm-i915-Don-t-disable-interrupts-independently-of-t.patch index fb5a89c8e..d4f669a9b 100644 --- a/debian/patches-rt/0267-drm-i915-Don-t-disable-interrupts-independently-of-t.patch +++ b/debian/patches-rt/0266-drm-i915-Don-t-disable-interrupts-independently-of-t.patch @@ -1,9 +1,9 @@ -From 1fcf58002fe05189d169ca73b0bd25b86b35a62b Mon Sep 17 00:00:00 2001 +From 7bfefce1f534227fddc8cc519a813c04f7f6c1da Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 10 Apr 2019 11:01:37 +0200 -Subject: [PATCH 267/291] drm/i915: Don't disable interrupts independently of +Subject: [PATCH 266/290] drm/i915: Don't disable interrupts independently of the lock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz The locks (timeline->lock and rq->lock) need to be taken with disabled interrupts. This is done in __retire_engine_request() by disabling the @@ -47,5 +47,5 @@ index 5c2c93cbab12..7124510b9131 100644 /* * The backing object for the context is done after switching to the -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0268-sched-completion-Fix-a-lockup-in-wait_for_completion.patch b/debian/patches-rt/0267-sched-completion-Fix-a-lockup-in-wait_for_completion.patch similarity index 93% rename from debian/patches-rt/0268-sched-completion-Fix-a-lockup-in-wait_for_completion.patch rename to debian/patches-rt/0267-sched-completion-Fix-a-lockup-in-wait_for_completion.patch index 3d0ddeb52..d2a5e8895 100644 --- a/debian/patches-rt/0268-sched-completion-Fix-a-lockup-in-wait_for_completion.patch +++ b/debian/patches-rt/0267-sched-completion-Fix-a-lockup-in-wait_for_completion.patch @@ -1,9 +1,9 @@ -From 0534f5057ab97ba26471e1f0cefe7caa983740cf Mon Sep 17 00:00:00 2001 +From d3bae006e096e47f22baad0a9cdf3f496f2bee6a Mon Sep 17 00:00:00 2001 From: Corey Minyard Date: Thu, 9 May 2019 14:33:20 -0500 -Subject: [PATCH 268/291] sched/completion: Fix a lockup in +Subject: [PATCH 267/290] sched/completion: Fix a lockup in wait_for_completion() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Consider following race: @@ -65,5 +65,5 @@ index 755a58084978..49c14137988e 100644 raw_spin_unlock_irq(&x->wait.lock); timeout = action(timeout); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0269-kthread-add-a-global-worker-thread.patch b/debian/patches-rt/0268-kthread-add-a-global-worker-thread.patch similarity index 96% rename from debian/patches-rt/0269-kthread-add-a-global-worker-thread.patch rename to debian/patches-rt/0268-kthread-add-a-global-worker-thread.patch index 88e8e52ec..5bb594a36 100644 --- a/debian/patches-rt/0269-kthread-add-a-global-worker-thread.patch +++ b/debian/patches-rt/0268-kthread-add-a-global-worker-thread.patch @@ -1,8 +1,8 @@ -From 35414a016c960673ce33fb6fafc6ef9485adbb3d Mon Sep 17 00:00:00 2001 +From 9ec5aac95c498d3cd970b50a838ee738fe3861fc Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 12 Feb 2019 15:09:38 +0100 -Subject: [PATCH 269/291] kthread: add a global worker thread. -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 268/290] kthread: add a global worker thread. +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit 0532e87d9d44795221aa921ba7024bde689cc894 ] @@ -29,7 +29,7 @@ Signed-off-by: Steven Rostedt (VMware) create mode 100644 include/linux/kthread-cgroup.h diff --git a/drivers/block/loop.c b/drivers/block/loop.c -index 126c2c514673..b736cb6c6228 100644 +index 9cd231a27328..351ea22ffb56 100644 --- a/drivers/block/loop.c +++ b/drivers/block/loop.c @@ -70,7 +70,7 @@ @@ -176,5 +176,5 @@ index 5641b55783a6..9db017761a1f 100644 /** * kthread_associate_blkcg - associate blkcg to current kthread -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0270-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch b/debian/patches-rt/0269-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch similarity index 94% rename from debian/patches-rt/0270-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch rename to debian/patches-rt/0269-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch index 3bbb31d8f..54773c817 100644 --- a/debian/patches-rt/0270-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch +++ b/debian/patches-rt/0269-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch @@ -1,9 +1,9 @@ -From ab2c28e7a35c5bf40f4017272bddb9a1fd8b79a0 Mon Sep 17 00:00:00 2001 +From 0fcd7c5cee291d12eb90409cad4636cc17be0973 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 21 Aug 2013 17:48:46 +0200 -Subject: [PATCH 270/291] genirq: Do not invoke the affinity callback via a +Subject: [PATCH 269/290] genirq: Do not invoke the affinity callback via a workqueue on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit 2122adbe011cdc0eb62ad62494e181005b23c76a ] @@ -97,5 +97,5 @@ index ce86341a9e19..d5539e04e00a 100644 INIT_WORK(¬ify->work, irq_affinity_notify); #endif -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0271-genirq-Handle-missing-work_struct-in-irq_set_affinit.patch b/debian/patches-rt/0270-genirq-Handle-missing-work_struct-in-irq_set_affinit.patch similarity index 88% rename from debian/patches-rt/0271-genirq-Handle-missing-work_struct-in-irq_set_affinit.patch rename to debian/patches-rt/0270-genirq-Handle-missing-work_struct-in-irq_set_affinit.patch index e49183a36..043e5fbc5 100644 --- a/debian/patches-rt/0271-genirq-Handle-missing-work_struct-in-irq_set_affinit.patch +++ b/debian/patches-rt/0270-genirq-Handle-missing-work_struct-in-irq_set_affinit.patch @@ -1,9 +1,9 @@ -From 24ce38930a7a5eec5a1e336c5a1728d818a2d85f Mon Sep 17 00:00:00 2001 +From 5f103966da617ccbc58a5db958144f55725dd823 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 28 May 2019 10:42:15 +0200 -Subject: [PATCH 271/291] genirq: Handle missing work_struct in +Subject: [PATCH 270/290] genirq: Handle missing work_struct in irq_set_affinity_notifier() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit bbc4d2a7d6ff54ba923640d9a42c7bef7185fe98 ] @@ -38,5 +38,5 @@ index d5539e04e00a..290cd520dba1 100644 #endif kref_put(&old_notify->kref, old_notify->release); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0272-arm-imx6-cpuidle-Use-raw_spinlock_t.patch b/debian/patches-rt/0271-arm-imx6-cpuidle-Use-raw_spinlock_t.patch similarity index 89% rename from debian/patches-rt/0272-arm-imx6-cpuidle-Use-raw_spinlock_t.patch rename to debian/patches-rt/0271-arm-imx6-cpuidle-Use-raw_spinlock_t.patch index 399448346..2984a46a2 100644 --- a/debian/patches-rt/0272-arm-imx6-cpuidle-Use-raw_spinlock_t.patch +++ b/debian/patches-rt/0271-arm-imx6-cpuidle-Use-raw_spinlock_t.patch @@ -1,8 +1,8 @@ -From 08dc9f6cb9a0b7b837a095e54c495a23baaaa6d7 Mon Sep 17 00:00:00 2001 +From 499b81170e694652eb759044a65b1d2de8a02540 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 14 May 2019 17:07:44 +0200 -Subject: [PATCH 272/291] arm: imx6: cpuidle: Use raw_spinlock_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 271/290] arm: imx6: cpuidle: Use raw_spinlock_t +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit 40d0332ec8312e9c090f0a5414d9c90e12b13611 ] @@ -48,5 +48,5 @@ index 326e870d7123..d9ac80aa1eb0 100644 return index; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0273-rcu-Don-t-allow-to-change-rcu_normal_after_boot-on-R.patch b/debian/patches-rt/0272-rcu-Don-t-allow-to-change-rcu_normal_after_boot-on-R.patch similarity index 86% rename from debian/patches-rt/0273-rcu-Don-t-allow-to-change-rcu_normal_after_boot-on-R.patch rename to debian/patches-rt/0272-rcu-Don-t-allow-to-change-rcu_normal_after_boot-on-R.patch index b62c45d6f..d9dcb7f9d 100644 --- a/debian/patches-rt/0273-rcu-Don-t-allow-to-change-rcu_normal_after_boot-on-R.patch +++ b/debian/patches-rt/0272-rcu-Don-t-allow-to-change-rcu_normal_after_boot-on-R.patch @@ -1,9 +1,9 @@ -From b435ef5b7327df4e3702ecdc5daadbada78f9369 Mon Sep 17 00:00:00 2001 +From 8ffd7db75f55aa4a603b0a6a83eb05fe77ca543c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 24 Jun 2019 18:29:13 +0200 -Subject: [PATCH 273/291] rcu: Don't allow to change rcu_normal_after_boot on +Subject: [PATCH 272/290] rcu: Don't allow to change rcu_normal_after_boot on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit c6c058c10577815a2491ce661876cff00a4c3b15 ] @@ -32,5 +32,5 @@ index 16d8dba23329..ed75addd3ccd 100644 #ifdef CONFIG_DEBUG_LOCK_ALLOC -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0274-pci-switchtec-fix-stream_open.cocci-warnings.patch b/debian/patches-rt/0273-pci-switchtec-fix-stream_open.cocci-warnings.patch similarity index 89% rename from debian/patches-rt/0274-pci-switchtec-fix-stream_open.cocci-warnings.patch rename to debian/patches-rt/0273-pci-switchtec-fix-stream_open.cocci-warnings.patch index a292b5f4f..7a2a1e3bf 100644 --- a/debian/patches-rt/0274-pci-switchtec-fix-stream_open.cocci-warnings.patch +++ b/debian/patches-rt/0273-pci-switchtec-fix-stream_open.cocci-warnings.patch @@ -1,8 +1,8 @@ -From da1d86bd82d486ac0eccf4879375131325cfceeb Mon Sep 17 00:00:00 2001 +From 6c25ddefabb7f6bd4adaa2de6a0fdce865eb4c0c Mon Sep 17 00:00:00 2001 From: kbuild test robot Date: Sat, 13 Apr 2019 11:22:51 +0800 -Subject: [PATCH 274/291] pci/switchtec: fix stream_open.cocci warnings -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 273/290] pci/switchtec: fix stream_open.cocci warnings +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit 9462c69e29307adc95c289f50839d5d683973891 ] @@ -36,5 +36,5 @@ index 77d4fb86d05b..ea70bc0b06e9 100644 dev_dbg(&stdev->dev, "%s: %p\n", __func__, stuser); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0275-sched-core-Drop-a-preempt_disable_rt-statement.patch b/debian/patches-rt/0274-sched-core-Drop-a-preempt_disable_rt-statement.patch similarity index 88% rename from debian/patches-rt/0275-sched-core-Drop-a-preempt_disable_rt-statement.patch rename to debian/patches-rt/0274-sched-core-Drop-a-preempt_disable_rt-statement.patch index c9921cb2f..7dd3be7e2 100644 --- a/debian/patches-rt/0275-sched-core-Drop-a-preempt_disable_rt-statement.patch +++ b/debian/patches-rt/0274-sched-core-Drop-a-preempt_disable_rt-statement.patch @@ -1,8 +1,8 @@ -From 8fd3977bc6d2f1c17d0265e4c6dd068fd92f6496 Mon Sep 17 00:00:00 2001 +From e92a326589d8cf6722dac937b84c265aa10fdf1b Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 24 Jun 2019 19:33:16 +0200 -Subject: [PATCH 275/291] sched/core: Drop a preempt_disable_rt() statement -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 274/290] sched/core: Drop a preempt_disable_rt() statement +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit 761126efdcbe3fa3e99c9079fa0ad6eca2f251f2 ] @@ -46,5 +46,5 @@ index cfde725e1017..678c2c4de4f5 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0276-timers-Redo-the-notification-of-canceling-timers-on-.patch b/debian/patches-rt/0275-timers-Redo-the-notification-of-canceling-timers-on-.patch similarity index 97% rename from debian/patches-rt/0276-timers-Redo-the-notification-of-canceling-timers-on-.patch rename to debian/patches-rt/0275-timers-Redo-the-notification-of-canceling-timers-on-.patch index 7ecf1d8b6..12a650abd 100644 --- a/debian/patches-rt/0276-timers-Redo-the-notification-of-canceling-timers-on-.patch +++ b/debian/patches-rt/0275-timers-Redo-the-notification-of-canceling-timers-on-.patch @@ -1,9 +1,9 @@ -From ae13fb29f5523922e3d9225f77e11438b2e67e5f Mon Sep 17 00:00:00 2001 +From 07d9aaa5917187845b59efdf55fa02d70f35cad2 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 24 Jun 2019 19:39:06 +0200 -Subject: [PATCH 276/291] timers: Redo the notification of canceling timers on +Subject: [PATCH 275/290] timers: Redo the notification of canceling timers on -RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit c71273154c2ad12e13333aada340ff30e826a11b ] @@ -58,7 +58,7 @@ index 82d0f52414a6..f845093466be 100644 /* diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h -index 2bdb047c7656..6c4c38186c99 100644 +index 082147c07831..aee31b1f0cc3 100644 --- a/include/linux/hrtimer.h +++ b/include/linux/hrtimer.h @@ -22,7 +22,6 @@ @@ -114,7 +114,7 @@ index 2bdb047c7656..6c4c38186c99 100644 /* Query timers: */ extern ktime_t __hrtimer_get_remaining(const struct hrtimer *timer, bool adjust); -@@ -475,7 +468,7 @@ static inline int hrtimer_is_queued(struct hrtimer *timer) +@@ -481,7 +474,7 @@ static inline bool hrtimer_is_queued(struct hrtimer *timer) * Helper function to check, whether the timer is running the callback * function */ @@ -149,7 +149,7 @@ index 1d1f077cffb3..61ab2c923579 100644 } EXPORT_SYMBOL_GPL(alarm_cancel); diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c -index e1040b80362c..4534e7871c8c 100644 +index f16cbc98c47a..ed5d8d51ca91 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c @@ -963,33 +963,16 @@ u64 hrtimer_forward(struct hrtimer *timer, ktime_t now, ktime_t interval) @@ -191,7 +191,7 @@ index e1040b80362c..4534e7871c8c 100644 /* * enqueue_hrtimer - internal function to (re)start a timer * -@@ -1224,7 +1207,7 @@ int hrtimer_cancel(struct hrtimer *timer) +@@ -1227,7 +1210,7 @@ int hrtimer_cancel(struct hrtimer *timer) if (ret >= 0) return ret; @@ -200,7 +200,7 @@ index e1040b80362c..4534e7871c8c 100644 } } EXPORT_SYMBOL_GPL(hrtimer_cancel); -@@ -1528,6 +1511,7 @@ static __latent_entropy void hrtimer_run_softirq(struct softirq_action *h) +@@ -1531,6 +1514,7 @@ static __latent_entropy void hrtimer_run_softirq(struct softirq_action *h) unsigned long flags; ktime_t now; @@ -208,7 +208,7 @@ index e1040b80362c..4534e7871c8c 100644 raw_spin_lock_irqsave(&cpu_base->lock, flags); now = hrtimer_update_base(cpu_base); -@@ -1537,7 +1521,7 @@ static __latent_entropy void hrtimer_run_softirq(struct softirq_action *h) +@@ -1540,7 +1524,7 @@ static __latent_entropy void hrtimer_run_softirq(struct softirq_action *h) hrtimer_update_softirq_timer(cpu_base, true); raw_spin_unlock_irqrestore(&cpu_base->lock, flags); @@ -217,7 +217,7 @@ index e1040b80362c..4534e7871c8c 100644 } #ifdef CONFIG_HIGH_RES_TIMERS -@@ -1947,9 +1931,7 @@ int hrtimers_prepare_cpu(unsigned int cpu) +@@ -1950,9 +1934,7 @@ int hrtimers_prepare_cpu(unsigned int cpu) cpu_base->softirq_next_timer = NULL; cpu_base->expires_next = KTIME_MAX; cpu_base->softirq_expires_next = KTIME_MAX; @@ -646,5 +646,5 @@ index 2fcd56aa6092..1c67aab34ff5 100644 } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0277-Revert-futex-Ensure-lock-unlock-symetry-versus-pi_lo.patch b/debian/patches-rt/0276-Revert-futex-Ensure-lock-unlock-symetry-versus-pi_lo.patch similarity index 85% rename from debian/patches-rt/0277-Revert-futex-Ensure-lock-unlock-symetry-versus-pi_lo.patch rename to debian/patches-rt/0276-Revert-futex-Ensure-lock-unlock-symetry-versus-pi_lo.patch index db31da1b9..73ee4e6d6 100644 --- a/debian/patches-rt/0277-Revert-futex-Ensure-lock-unlock-symetry-versus-pi_lo.patch +++ b/debian/patches-rt/0276-Revert-futex-Ensure-lock-unlock-symetry-versus-pi_lo.patch @@ -1,9 +1,9 @@ -From 8c5cb8bd56f374c4c457135d4fcfc381b188ef10 Mon Sep 17 00:00:00 2001 +From 9aa540150db0e795f552585505278527b6011665 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 26 Jun 2019 17:44:13 +0200 -Subject: [PATCH 277/291] Revert "futex: Ensure lock/unlock symetry versus +Subject: [PATCH 276/290] Revert "futex: Ensure lock/unlock symetry versus pi_lock and hash bucket lock" -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit 6a773b70cf105b46298ed3b44e77c102ce31d9ec ] @@ -31,5 +31,5 @@ index 4c448dddce3c..38f53b95e370 100644 continue; } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0278-Revert-futex-Fix-bug-on-when-a-requeued-RT-task-time.patch b/debian/patches-rt/0277-Revert-futex-Fix-bug-on-when-a-requeued-RT-task-time.patch similarity index 94% rename from debian/patches-rt/0278-Revert-futex-Fix-bug-on-when-a-requeued-RT-task-time.patch rename to debian/patches-rt/0277-Revert-futex-Fix-bug-on-when-a-requeued-RT-task-time.patch index cc2850659..4c57cc9c4 100644 --- a/debian/patches-rt/0278-Revert-futex-Fix-bug-on-when-a-requeued-RT-task-time.patch +++ b/debian/patches-rt/0277-Revert-futex-Fix-bug-on-when-a-requeued-RT-task-time.patch @@ -1,9 +1,9 @@ -From af756c450ec6349537450c776e7035c58bafe885 Mon Sep 17 00:00:00 2001 +From 6d3fa5ea1a0500d5a53e8698f6e426785017db89 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 26 Jun 2019 17:44:18 +0200 -Subject: [PATCH 278/291] Revert "futex: Fix bug on when a requeued RT task +Subject: [PATCH 277/290] Revert "futex: Fix bug on when a requeued RT task times out" -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit f1a170cb3289a48df26cae3c60d77608f7a988bb ] @@ -79,5 +79,5 @@ index 546aaf058b9e..a501f3b47081 100644 extern struct task_struct *rt_mutex_next_owner(struct rt_mutex *lock); extern void rt_mutex_init_proxy_locked(struct rt_mutex *lock, -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0279-Revert-rtmutex-Handle-the-various-new-futex-race-con.patch b/debian/patches-rt/0278-Revert-rtmutex-Handle-the-various-new-futex-race-con.patch similarity index 98% rename from debian/patches-rt/0279-Revert-rtmutex-Handle-the-various-new-futex-race-con.patch rename to debian/patches-rt/0278-Revert-rtmutex-Handle-the-various-new-futex-race-con.patch index 08582178c..a738c407c 100644 --- a/debian/patches-rt/0279-Revert-rtmutex-Handle-the-various-new-futex-race-con.patch +++ b/debian/patches-rt/0278-Revert-rtmutex-Handle-the-various-new-futex-race-con.patch @@ -1,9 +1,9 @@ -From fa2cd98252cd50c877bc1ba85328ac3222cc4790 Mon Sep 17 00:00:00 2001 +From 6c64748ffc7a2dbc641b4364267f7218bd29c9c5 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 26 Jun 2019 17:44:21 +0200 -Subject: [PATCH 279/291] Revert "rtmutex: Handle the various new futex race +Subject: [PATCH 278/290] Revert "rtmutex: Handle the various new futex race conditions" -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit 9e0265c21af4d6388d47dcd5ce20f76ec3a2e468 ] @@ -254,5 +254,5 @@ index a501f3b47081..758dc43872e5 100644 extern void rt_mutex_init_proxy_locked(struct rt_mutex *lock, struct task_struct *proxy_owner); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0280-Revert-futex-workaround-migrate_disable-enable-in-di.patch b/debian/patches-rt/0279-Revert-futex-workaround-migrate_disable-enable-in-di.patch similarity index 93% rename from debian/patches-rt/0280-Revert-futex-workaround-migrate_disable-enable-in-di.patch rename to debian/patches-rt/0279-Revert-futex-workaround-migrate_disable-enable-in-di.patch index 65784611c..8fd0baea4 100644 --- a/debian/patches-rt/0280-Revert-futex-workaround-migrate_disable-enable-in-di.patch +++ b/debian/patches-rt/0279-Revert-futex-workaround-migrate_disable-enable-in-di.patch @@ -1,9 +1,9 @@ -From b36c54f0704e987db1b75e2b4a9263d884938e34 Mon Sep 17 00:00:00 2001 +From 5aac8105ead1e975578ef5085e3e1be3721ab3f5 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 26 Jun 2019 17:44:27 +0200 -Subject: [PATCH 280/291] Revert "futex: workaround migrate_disable/enable in +Subject: [PATCH 279/290] Revert "futex: workaround migrate_disable/enable in different context" -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit a71221d81cc4873891ae44f3aa02df596079b786 ] @@ -66,5 +66,5 @@ index 6ee55df4f3de..f636dcc706ec 100644 /* -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0281-futex-Make-the-futex_hash_bucket-lock-raw.patch b/debian/patches-rt/0280-futex-Make-the-futex_hash_bucket-lock-raw.patch similarity index 98% rename from debian/patches-rt/0281-futex-Make-the-futex_hash_bucket-lock-raw.patch rename to debian/patches-rt/0280-futex-Make-the-futex_hash_bucket-lock-raw.patch index fe3a6bd83..760fe96a9 100644 --- a/debian/patches-rt/0281-futex-Make-the-futex_hash_bucket-lock-raw.patch +++ b/debian/patches-rt/0280-futex-Make-the-futex_hash_bucket-lock-raw.patch @@ -1,8 +1,8 @@ -From d73187f5c331f9f934aba2752fc2bd9167b65fa1 Mon Sep 17 00:00:00 2001 +From 61b70039f1df8a7dca7776bf3f15ffb4f07e2fb4 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 26 Jun 2019 11:59:44 +0200 -Subject: [PATCH 281/291] futex: Make the futex_hash_bucket lock raw -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 280/290] futex: Make the futex_hash_bucket lock raw +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit f646521aadedab78801c9befe193e2e8a0c99298 ] @@ -345,5 +345,5 @@ index f636dcc706ec..a9d9283605e5 100644 return 0; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0282-futex-Delay-deallocation-of-pi_state.patch b/debian/patches-rt/0281-futex-Delay-deallocation-of-pi_state.patch similarity index 96% rename from debian/patches-rt/0282-futex-Delay-deallocation-of-pi_state.patch rename to debian/patches-rt/0281-futex-Delay-deallocation-of-pi_state.patch index d6dac91b8..8e8afb4a5 100644 --- a/debian/patches-rt/0282-futex-Delay-deallocation-of-pi_state.patch +++ b/debian/patches-rt/0281-futex-Delay-deallocation-of-pi_state.patch @@ -1,8 +1,8 @@ -From 63bc94c5db7ef86bc33b4a829dfd42cd98d18f62 Mon Sep 17 00:00:00 2001 +From ebba085e584e2dafd1d06328a5d4f3b3f3fc0269 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 26 Jun 2019 13:35:36 +0200 -Subject: [PATCH 282/291] futex: Delay deallocation of pi_state -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 281/290] futex: Delay deallocation of pi_state +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit d7c7cf8cb68b7df17e6e50be1f25f35d83e686c7 ] @@ -179,5 +179,5 @@ index a9d9283605e5..0b8cff8d9162 100644 } else { struct rt_mutex *pi_mutex; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0283-mm-zswap-Do-not-disable-preemption-in-zswap_frontswa.patch b/debian/patches-rt/0282-mm-zswap-Do-not-disable-preemption-in-zswap_frontswa.patch similarity index 96% rename from debian/patches-rt/0283-mm-zswap-Do-not-disable-preemption-in-zswap_frontswa.patch rename to debian/patches-rt/0282-mm-zswap-Do-not-disable-preemption-in-zswap_frontswa.patch index f54b52893..8c83dad30 100644 --- a/debian/patches-rt/0283-mm-zswap-Do-not-disable-preemption-in-zswap_frontswa.patch +++ b/debian/patches-rt/0282-mm-zswap-Do-not-disable-preemption-in-zswap_frontswa.patch @@ -1,9 +1,9 @@ -From a1308f6a02e92b6b455b6b6bcde6d735c79dd596 Mon Sep 17 00:00:00 2001 +From b68bca0d18af8b42c058485dfde37d4acfbabcc5 Mon Sep 17 00:00:00 2001 From: "Luis Claudio R. Goncalves" Date: Tue, 25 Jun 2019 11:28:04 -0300 -Subject: [PATCH 283/291] mm/zswap: Do not disable preemption in +Subject: [PATCH 282/290] mm/zswap: Do not disable preemption in zswap_frontswap_store() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit 4e4cf4be79635e67144632d9135286381acbc95a ] @@ -123,5 +123,5 @@ index cd91fd9d96b8..420225d3ff0b 100644 freepage: zswap_entry_cache_free(entry); -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0284-revert-aio.patch b/debian/patches-rt/0283-revert-aio.patch similarity index 93% rename from debian/patches-rt/0284-revert-aio.patch rename to debian/patches-rt/0283-revert-aio.patch index 0bcb83324..ce26536cd 100644 --- a/debian/patches-rt/0284-revert-aio.patch +++ b/debian/patches-rt/0283-revert-aio.patch @@ -1,8 +1,8 @@ -From 0092d3788162ae23f79da22eee6b007d1e8182d1 Mon Sep 17 00:00:00 2001 +From a127a24d65e5ec18ec4af24df6695fbaccf925ca Mon Sep 17 00:00:00 2001 From: "Steven Rostedt (VMware)" Date: Fri, 20 Sep 2019 17:50:53 -0400 -Subject: [PATCH 284/291] revert-aio -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 283/290] revert-aio +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz revert: fs/aio: simple simple work @@ -67,5 +67,5 @@ index 16dcf8521c2c..911e23087dfb 100644 { unsigned i, new_nr; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0285-fs-aio-simple-simple-work.patch b/debian/patches-rt/0284-fs-aio-simple-simple-work.patch similarity index 94% rename from debian/patches-rt/0285-fs-aio-simple-simple-work.patch rename to debian/patches-rt/0284-fs-aio-simple-simple-work.patch index 7776d8309..4057624ef 100644 --- a/debian/patches-rt/0285-fs-aio-simple-simple-work.patch +++ b/debian/patches-rt/0284-fs-aio-simple-simple-work.patch @@ -1,8 +1,8 @@ -From 666ad455d0e524e934cb8511cd49e719f407cd20 Mon Sep 17 00:00:00 2001 +From fb686d1f8844133f15f617e0effa288bcbef4a18 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 16 Feb 2015 18:49:10 +0100 -Subject: [PATCH 285/291] fs/aio: simple simple work -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 284/290] fs/aio: simple simple work +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit 1a142116f6435ef070ecebb66d2d599507c10601 ] @@ -72,5 +72,5 @@ index 911e23087dfb..0c613d805bf1 100644 { unsigned i, new_nr; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0286-revert-thermal.patch b/debian/patches-rt/0285-revert-thermal.patch similarity index 95% rename from debian/patches-rt/0286-revert-thermal.patch rename to debian/patches-rt/0285-revert-thermal.patch index 24199a123..3aeac5a89 100644 --- a/debian/patches-rt/0286-revert-thermal.patch +++ b/debian/patches-rt/0285-revert-thermal.patch @@ -1,8 +1,8 @@ -From fba0ba87a4ce35205358678456f7d79471f13f83 Mon Sep 17 00:00:00 2001 +From 466a66edbba9ee1f7405d51c674dd3dc11bbdb13 Mon Sep 17 00:00:00 2001 From: "Steven Rostedt (VMware)" Date: Fri, 20 Sep 2019 17:50:53 -0400 -Subject: [PATCH 286/291] revert-thermal -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 285/290] revert-thermal +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Revert: thermal: Defer thermal wakups to threads @@ -116,5 +116,5 @@ index a5991cbb408f..1ef937d799e4 100644 module_exit(pkg_temp_thermal_exit) -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0287-thermal-Defer-thermal-wakups-to-threads.patch b/debian/patches-rt/0286-thermal-Defer-thermal-wakups-to-threads.patch similarity index 94% rename from debian/patches-rt/0287-thermal-Defer-thermal-wakups-to-threads.patch rename to debian/patches-rt/0286-thermal-Defer-thermal-wakups-to-threads.patch index 4d50a3d63..cfe562a53 100644 --- a/debian/patches-rt/0287-thermal-Defer-thermal-wakups-to-threads.patch +++ b/debian/patches-rt/0286-thermal-Defer-thermal-wakups-to-threads.patch @@ -1,8 +1,8 @@ -From e52aa2997c6112b1963e5a66ea9e2399cf47e6f7 Mon Sep 17 00:00:00 2001 +From d68ea3ebd9e76e3a78a5034c6af647c0c948b6a8 Mon Sep 17 00:00:00 2001 From: Daniel Wagner Date: Tue, 17 Feb 2015 09:37:44 +0100 -Subject: [PATCH 287/291] thermal: Defer thermal wakups to threads -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 286/290] thermal: Defer thermal wakups to threads +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit ad2408dc248fe58536eef5b2b5734d8f9d3a280b ] @@ -94,5 +94,5 @@ index 1ef937d799e4..82f21fd4afb0 100644 kfree(packages); } -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0288-revert-block.patch b/debian/patches-rt/0287-revert-block.patch similarity index 94% rename from debian/patches-rt/0288-revert-block.patch rename to debian/patches-rt/0287-revert-block.patch index c8b4870b8..c824bc710 100644 --- a/debian/patches-rt/0288-revert-block.patch +++ b/debian/patches-rt/0287-revert-block.patch @@ -1,8 +1,8 @@ -From 6247f134fb645892c20cc453043839b77507d2a4 Mon Sep 17 00:00:00 2001 +From 5d4341f0df610e341ef6248b72a4d24ea53b7694 Mon Sep 17 00:00:00 2001 From: "Steven Rostedt (VMware)" Date: Fri, 20 Sep 2019 17:50:54 -0400 -Subject: [PATCH 288/291] revert-block -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 287/290] revert-block +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz Revert swork version of: block: blk-mq: move blk_queue_usage_counter_release() into process context @@ -79,5 +79,5 @@ index 7b7c0bc6a514..f1960add94df 100644 struct list_head all_q_node; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0289-block-blk-mq-move-blk_queue_usage_counter_release-in.patch b/debian/patches-rt/0288-block-blk-mq-move-blk_queue_usage_counter_release-in.patch similarity index 96% rename from debian/patches-rt/0289-block-blk-mq-move-blk_queue_usage_counter_release-in.patch rename to debian/patches-rt/0288-block-blk-mq-move-blk_queue_usage_counter_release-in.patch index f24579108..4de9279ef 100644 --- a/debian/patches-rt/0289-block-blk-mq-move-blk_queue_usage_counter_release-in.patch +++ b/debian/patches-rt/0288-block-blk-mq-move-blk_queue_usage_counter_release-in.patch @@ -1,9 +1,9 @@ -From 663591170eaa1262400afb8ed6874d2873ab3975 Mon Sep 17 00:00:00 2001 +From 7de506cb172bfbca14767ae02f0309d70d3c7dcb Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 13 Mar 2018 13:49:16 +0100 -Subject: [PATCH 289/291] block: blk-mq: move blk_queue_usage_counter_release() +Subject: [PATCH 288/290] block: blk-mq: move blk_queue_usage_counter_release() into process context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit 61c928ecf4fe200bda9b49a0813b5ba0f43995b5 ] @@ -110,5 +110,5 @@ index f1960add94df..15a489abfb62 100644 struct list_head all_q_node; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0290-workqueue-rework.patch b/debian/patches-rt/0289-workqueue-rework.patch similarity index 99% rename from debian/patches-rt/0290-workqueue-rework.patch rename to debian/patches-rt/0289-workqueue-rework.patch index f78c773ac..aa415b029 100644 --- a/debian/patches-rt/0290-workqueue-rework.patch +++ b/debian/patches-rt/0289-workqueue-rework.patch @@ -1,8 +1,8 @@ -From ca73629953276e777de933c5bf76f9f8fe5feffe Mon Sep 17 00:00:00 2001 +From b5e4a5ce5478ed6616eec2fed6c13da28cdbb61c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 29 May 2019 18:52:27 +0200 -Subject: [PATCH 290/291] workqueue: rework -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 289/290] workqueue: rework +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz [ Upstream commit d15a862f24df983458533aebd6fa207ecdd1095a ] @@ -68,7 +68,7 @@ index 7d709465876e..752c9e754509 100644 /* * Init percpu_ref in atomic mode so that it's faster to shutdown. diff --git a/drivers/block/loop.c b/drivers/block/loop.c -index b736cb6c6228..126c2c514673 100644 +index 351ea22ffb56..9cd231a27328 100644 --- a/drivers/block/loop.c +++ b/drivers/block/loop.c @@ -70,7 +70,7 @@ @@ -470,7 +470,7 @@ index 678c2c4de4f5..a1c0123e7636 100644 * If a worker went to sleep, notify and ask workqueue whether * it wants to wake up a task to maintain concurrency. diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c -index 4534e7871c8c..67951292df58 100644 +index ed5d8d51ca91..94d97eae0a46 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c @@ -730,29 +730,6 @@ static void hrtimer_switch_to_hres(void) @@ -1565,5 +1565,5 @@ index 714d0cfe4d56..75f59299dd06 100644 attrs->no_numa = true; ordered_wq_attrs[i] = attrs; -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/0291-Linux-4.19.90-rt35-REBASE.patch b/debian/patches-rt/0290-Linux-4.19.94-rt38-REBASE.patch similarity index 62% rename from debian/patches-rt/0291-Linux-4.19.90-rt35-REBASE.patch rename to debian/patches-rt/0290-Linux-4.19.94-rt38-REBASE.patch index cca908ad9..17ae447fc 100644 --- a/debian/patches-rt/0291-Linux-4.19.90-rt35-REBASE.patch +++ b/debian/patches-rt/0290-Linux-4.19.94-rt38-REBASE.patch @@ -1,20 +1,20 @@ -From 224b151ee6089b77b2d3dbf4f66fb90520ba8689 Mon Sep 17 00:00:00 2001 +From dee368fe90e9506b8a4c9948fb611fb77dda153f Mon Sep 17 00:00:00 2001 From: Steven Rostedt Date: Mon, 14 Oct 2019 13:24:30 -0400 -Subject: [PATCH 291/291] Linux 4.19.90-rt35 REBASE -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.90-rt35.tar.xz +Subject: [PATCH 290/290] Linux 4.19.94-rt38 REBASE +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.94-rt38.tar.xz --- localversion-rt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/localversion-rt b/localversion-rt -index 1199ebade17b..366440d74b77 100644 +index 1199ebade17b..49bae8d6aa67 100644 --- a/localversion-rt +++ b/localversion-rt @@ -1 +1 @@ --rt16 -+-rt35 ++-rt38 -- -2.24.0 +2.24.1 diff --git a/debian/patches-rt/series b/debian/patches-rt/series index 9d5cdc6e3..8d124318d 100644 --- a/debian/patches-rt/series +++ b/debian/patches-rt/series @@ -10,6 +10,7 @@ 0010-crypto-caam-qi-simplify-CGR-allocation-freeing.patch 0011-sched-fair-Robustify-CFS-bandwidth-timer-locking.patch 0012-arm-Convert-arm-boot_lock-to-raw.patch +0013-x86-ioapic-Don-t-let-setaffinity-unmask-threaded-EOI.patch 0014-cgroup-use-irqsave-in-cgroup_rstat_flush_locked.patch 0015-fscache-initialize-cookie-hash-table-raw-spinlocks.patch 0016-Drivers-hv-vmbus-include-header-for-get_irq_regs.patch @@ -241,49 +242,49 @@ 0242-x86-lazy-preempt-properly-check-against-preempt-mask.patch 0243-x86-lazy-preempt-use-proper-return-label-on-32bit-x8.patch 0244-arm-Add-support-for-lazy-preemption.patch -0246-powerpc-Add-support-for-lazy-preemption.patch -0247-arch-arm64-Add-lazy-preempt-support.patch -0248-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch -0249-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch -0250-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch -0251-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch -0252-tpm_tis-fix-stall-after-iowrite-s.patch -0253-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch -0254-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch -0255-drm-i915-Use-local_lock-unlock_irq-in-intel_pipe_upd.patch -0256-drm-i915-disable-tracing-on-RT.patch -0257-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch -0258-cgroups-use-simple-wait-in-css_release.patch -0259-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch -0260-apparmor-use-a-locallock-instead-preempt_disable.patch -0261-workqueue-Prevent-deadlock-stall-on-RT.patch -0262-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch -0263-Add-localversion-for-RT-release.patch -0264-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch -0265-powerpc-reshuffle-TIF-bits.patch -0266-tty-sysrq-Convert-show_lock-to-raw_spinlock_t.patch -0267-drm-i915-Don-t-disable-interrupts-independently-of-t.patch -0268-sched-completion-Fix-a-lockup-in-wait_for_completion.patch -0269-kthread-add-a-global-worker-thread.patch -0270-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch -0271-genirq-Handle-missing-work_struct-in-irq_set_affinit.patch -0272-arm-imx6-cpuidle-Use-raw_spinlock_t.patch -0273-rcu-Don-t-allow-to-change-rcu_normal_after_boot-on-R.patch -0274-pci-switchtec-fix-stream_open.cocci-warnings.patch -0275-sched-core-Drop-a-preempt_disable_rt-statement.patch -0276-timers-Redo-the-notification-of-canceling-timers-on-.patch -0277-Revert-futex-Ensure-lock-unlock-symetry-versus-pi_lo.patch -0278-Revert-futex-Fix-bug-on-when-a-requeued-RT-task-time.patch -0279-Revert-rtmutex-Handle-the-various-new-futex-race-con.patch -0280-Revert-futex-workaround-migrate_disable-enable-in-di.patch -0281-futex-Make-the-futex_hash_bucket-lock-raw.patch -0282-futex-Delay-deallocation-of-pi_state.patch -0283-mm-zswap-Do-not-disable-preemption-in-zswap_frontswa.patch -0284-revert-aio.patch -0285-fs-aio-simple-simple-work.patch -0286-revert-thermal.patch -0287-thermal-Defer-thermal-wakups-to-threads.patch -0288-revert-block.patch -0289-block-blk-mq-move-blk_queue_usage_counter_release-in.patch -0290-workqueue-rework.patch -0291-Linux-4.19.90-rt35-REBASE.patch +0245-powerpc-Add-support-for-lazy-preemption.patch +0246-arch-arm64-Add-lazy-preempt-support.patch +0247-connector-cn_proc-Protect-send_msg-with-a-local-lock.patch +0248-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch +0249-drivers-zram-Don-t-disable-preemption-in-zcomp_strea.patch +0250-drivers-zram-fix-zcomp_stream_get-smp_processor_id-u.patch +0251-tpm_tis-fix-stall-after-iowrite-s.patch +0252-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch +0253-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch +0254-drm-i915-Use-local_lock-unlock_irq-in-intel_pipe_upd.patch +0255-drm-i915-disable-tracing-on-RT.patch +0256-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch +0257-cgroups-use-simple-wait-in-css_release.patch +0258-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch +0259-apparmor-use-a-locallock-instead-preempt_disable.patch +0260-workqueue-Prevent-deadlock-stall-on-RT.patch +0261-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch +0262-Add-localversion-for-RT-release.patch +0263-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch +0264-powerpc-reshuffle-TIF-bits.patch +0265-tty-sysrq-Convert-show_lock-to-raw_spinlock_t.patch +0266-drm-i915-Don-t-disable-interrupts-independently-of-t.patch +0267-sched-completion-Fix-a-lockup-in-wait_for_completion.patch +0268-kthread-add-a-global-worker-thread.patch +0269-genirq-Do-not-invoke-the-affinity-callback-via-a-wor.patch +0270-genirq-Handle-missing-work_struct-in-irq_set_affinit.patch +0271-arm-imx6-cpuidle-Use-raw_spinlock_t.patch +0272-rcu-Don-t-allow-to-change-rcu_normal_after_boot-on-R.patch +0273-pci-switchtec-fix-stream_open.cocci-warnings.patch +0274-sched-core-Drop-a-preempt_disable_rt-statement.patch +0275-timers-Redo-the-notification-of-canceling-timers-on-.patch +0276-Revert-futex-Ensure-lock-unlock-symetry-versus-pi_lo.patch +0277-Revert-futex-Fix-bug-on-when-a-requeued-RT-task-time.patch +0278-Revert-rtmutex-Handle-the-various-new-futex-race-con.patch +0279-Revert-futex-workaround-migrate_disable-enable-in-di.patch +0280-futex-Make-the-futex_hash_bucket-lock-raw.patch +0281-futex-Delay-deallocation-of-pi_state.patch +0282-mm-zswap-Do-not-disable-preemption-in-zswap_frontswa.patch +0283-revert-aio.patch +0284-fs-aio-simple-simple-work.patch +0285-revert-thermal.patch +0286-thermal-Defer-thermal-wakups-to-threads.patch +0287-revert-block.patch +0288-block-blk-mq-move-blk_queue_usage_counter_release-in.patch +0289-workqueue-rework.patch +0290-Linux-4.19.94-rt38-REBASE.patch