From f815dc7c72f6dc648656b44094e15529cb95e655 Mon Sep 17 00:00:00 2001 From: Salvatore Bonaccorso Date: Fri, 6 Mar 2020 12:44:27 +0100 Subject: [PATCH] [rt] Update to 4.19.106-rt44 --- debian/changelog | 1 + ...M-at91-add-TCB-registers-definitions.patch | 4 +- ...ers-Add-a-new-driver-for-the-Atmel-A.patch | 4 +- ...ers-timer-atmel-tcb-add-clockevent-d.patch | 4 +- ...drivers-atmel-pit-make-option-silent.patch | 4 +- ...at91-Implement-clocksource-selection.patch | 4 +- ...onfigs-at91-use-new-TCB-timer-driver.patch | 4 +- .../0007-ARM-configs-at91-unselect-PIT.patch | 4 +- ...ts-Move-pending-table-allocation-to-.patch | 6 +-- ...-convert-worker-lock-to-raw-spinlock.patch | 4 +- ...m-qi-simplify-CGR-allocation-freeing.patch | 4 +- ...obustify-CFS-bandwidth-timer-locking.patch | 4 +- ...012-arm-Convert-arm-boot_lock-to-raw.patch | 4 +- ...-let-setaffinity-unmask-threaded-EOI.patch | 4 +- ...irqsave-in-cgroup_rstat_flush_locked.patch | 4 +- ...lize-cookie-hash-table-raw-spinlocks.patch | 4 +- ...mbus-include-header-for-get_irq_regs.patch | 4 +- ...de-irqflags.h-for-raw_local_irq_save.patch | 4 +- .../0018-efi-Allow-efi-runtime.patch | 4 +- ...fi-drop-task_lock-from-efi_switch_mm.patch | 8 ++-- ...e_layout-before-altenates-are-applie.patch | 10 ++--- ...-phandle-cache-outside-of-the-devtre.patch | 4 +- ...ake-quarantine_lock-a-raw_spinlock_t.patch | 4 +- ...xpedited-GP-parallelization-cleverne.patch | 4 +- ...-kmemleak_lock-to-raw-spinlock-on-RT.patch | 4 +- ...-replace-seqcount_t-with-a-seqlock_t.patch | 6 +-- ...vide-a-pointer-to-the-valid-CPU-mask.patch | 12 +++--- ...ernel-sched-core-add-migrate_disable.patch | 4 +- ...sable-Add-export_symbol_gpl-for-__mi.patch | 4 +- ...o-not-disable-enable-clocks-in-a-row.patch | 4 +- ...B-Allow-higher-clock-rates-for-clock.patch | 4 +- ...31-timekeeping-Split-jiffies-seqlock.patch | 4 +- ...2-signal-Revert-ptrace-preempt-magic.patch | 4 +- ...et-sched-Use-msleep-instead-of-yield.patch | 4 +- ...rq-remove-BUG_ON-irqs_disabled-check.patch | 4 +- ...do-no-disable-interrupts-in-giveback.patch | 4 +- ...rovide-PREEMPT_RT_BASE-config-switch.patch | 4 +- ...sable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch | 4 +- ...abel-disable-if-stop_machine-is-used.patch | 6 +-- ...config-options-which-are-not-RT-comp.patch | 4 +- .../0040-lockdep-disable-self-test.patch | 4 +- .../0041-mm-Allow-only-slub-on-RT.patch | 4 +- ...locking-Disable-spin-on-owner-for-RT.patch | 4 +- ...043-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch | 4 +- ...044-rcu-make-RCU_BOOST-default-on-RT.patch | 4 +- ...-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch | 4 +- ...46-net-core-disable-NET_RX_BUSY_POLL.patch | 4 +- ...0047-arm-disable-NEON-in-kernel-mode.patch | 6 +-- ...0048-powerpc-Use-generic-rwsem-on-RT.patch | 4 +- ...ble-in-kernel-MPIC-emulation-for-PRE.patch | 4 +- .../0050-powerpc-Disable-highmem-on-RT.patch | 4 +- .../0051-mips-Disable-highmem-on-RT.patch | 4 +- ...86-Use-generic-rwsem_spinlocks-on-rt.patch | 4 +- ...ds-trigger-disable-CPU-trigger-on-RT.patch | 4 +- ...rop-K8-s-driver-from-beeing-selected.patch | 4 +- .../patches-rt/0055-md-disable-bcache.patch | 4 +- ...6-efi-Disable-runtime-services-on-RT.patch | 4 +- ...0057-printk-Add-a-printk-kill-switch.patch | 4 +- ..._early_printk-boot-param-to-help-wit.patch | 4 +- ...pt-Provide-preempt_-_-no-rt-variants.patch | 4 +- ...-migrate_disable-enable-in-different.patch | 4 +- .../0061-rt-Add-local-irq-locks.patch | 4 +- ...provide-get-put-_locked_ptr-variants.patch | 4 +- ...catterlist-Do-not-disable-irqs-on-RT.patch | 6 +-- ...-x86-Delay-calling-signals-in-atomic.patch | 4 +- ...ignal-delay-calling-signals-on-32bit.patch | 4 +- ...head-Replace-bh_uptodate_lock-for-rt.patch | 4 +- ...-state-lock-and-journal-head-lock-rt.patch | 4 +- ...st_bl-Make-list-head-locking-RT-safe.patch | 4 +- ...-list_bl-fixup-bogus-lockdep-warning.patch | 4 +- .../0070-genirq-Disable-irqpoll-on-rt.patch | 4 +- ...-genirq-Force-interrupt-thread-on-RT.patch | 4 +- ...d-zone-lock-while-freeing-pages-from.patch | 4 +- ...d-zone-lock-while-freeing-pages-from.patch | 4 +- ...B-change-list_lock-to-raw_spinlock_t.patch | 4 +- ...ving-back-empty-slubs-to-IRQ-enabled.patch | 4 +- ...page_alloc-rt-friendly-per-cpu-pages.patch | 4 +- ...077-mm-swap-Convert-to-percpu-locked.patch | 4 +- ...m-perform-lru_add_drain_all-remotely.patch | 4 +- ...t-per-cpu-variables-with-preempt-dis.patch | 4 +- ...plit-page-table-locks-for-vector-pag.patch | 4 +- .../0081-mm-Enable-SLUB-for-RT.patch | 4 +- ...0082-slub-Enable-irqs-for-__GFP_WAIT.patch | 4 +- .../0083-slub-Disable-SLUB_CPU_PARTIAL.patch | 4 +- ...n-t-call-schedule_work_on-in-preempt.patch | 4 +- ...place-local_irq_disable-with-local-l.patch | 4 +- ...oc-copy-with-get_cpu_var-and-locking.patch | 4 +- ...le-preemption-__split_large_page-aft.patch | 6 +-- .../0088-radix-tree-use-local-locks.patch | 4 +- ...9-timers-Prepare-for-full-preemption.patch | 4 +- ...090-x86-kvm-Require-const-tsc-for-RT.patch | 4 +- ...ec-Don-t-use-completion-s-wait-queue.patch | 6 +-- .../0092-wait.h-include-atomic.h.patch | 4 +- ...mple-Simple-work-queue-implemenation.patch | 4 +- ...-a-shit-statement-in-SWORK_EVENT_PEN.patch | 4 +- ...95-completion-Use-simple-wait-queues.patch | 6 +-- .../0096-fs-aio-simple-simple-work.patch | 4 +- ...voke-the-affinity-callback-via-a-wor.patch | 4 +- ...id-schedule_work-with-interrupts-dis.patch | 4 +- ...ate-hrtimer_init-hrtimer_init_sleepe.patch | 4 +- ...100-hrtimers-Prepare-full-preemption.patch | 4 +- ...s-by-default-into-the-softirq-contex.patch | 8 ++-- ...air-Make-the-hrtimers-non-hard-again.patch | 4 +- ...-schedule_work-call-to-helper-thread.patch | 4 +- ...te-change-before-hrtimer_cancel-in-d.patch | 4 +- ...timers-Thread-posix-cpu-timers-on-rt.patch | 4 +- ...ched-Move-task_struct-cleanup-to-RCU.patch | 4 +- ...-number-of-task-migrations-per-batch.patch | 4 +- .../0108-sched-Move-mmdrop-to-RCU-on-RT.patch | 4 +- ...e-stack-kprobe-clean-up-to-__put_tas.patch | 4 +- ...state-for-tasks-blocked-on-sleeping-.patch | 4 +- ...ount-rcu_preempt_depth-on-RT-in-migh.patch | 4 +- ...-proper-LOCK_OFFSET-for-cond_resched.patch | 4 +- .../0113-sched-Disable-TTWU_QUEUE-on-RT.patch | 4 +- ...Only-wake-up-idle-workers-if-not-blo.patch | 4 +- ...ease-the-nr-of-migratory-tasks-when-.patch | 4 +- ...-hotplug-Lightweight-get-online-cpus.patch | 6 +-- ...e-disabled-counter-to-tracing-output.patch | 4 +- .../0118-lockdep-Make-it-RT-aware.patch | 4 +- ...tasklets-from-going-into-infinite-sp.patch | 4 +- ...eemption-after-reenabling-interrupts.patch | 6 +-- ...oftirq-Disable-softirq-stacks-for-RT.patch | 4 +- .../0122-softirq-Split-softirq-locks.patch | 4 +- ...-use-local_bh_disable-in-netif_rx_ni.patch | 6 +-- ...abling-of-softirq-processing-in-irq-.patch | 4 +- ...plit-timer-softirqs-out-of-ksoftirqd.patch | 4 +- ...cal_softirq_pending-messages-if-ksof.patch | 4 +- ...cal_softirq_pending-messages-if-task.patch | 4 +- .../0128-rtmutex-trylock-is-okay-on-RT.patch | 4 +- ...-nfs-turn-rmdir_sem-into-a-semaphore.patch | 4 +- ...he-various-new-futex-race-conditions.patch | 4 +- ...on-when-a-requeued-RT-task-times-out.patch | 4 +- ...k-unlock-symetry-versus-pi_lock-and-.patch | 4 +- .../0133-pid.h-include-atomic.h.patch | 4 +- ...arm-include-definition-for-cpumask_t.patch | 4 +- ...ure-Do-NOT-include-rwlock.h-directly.patch | 4 +- ...36-rtmutex-Add-rtmutex_lock_killable.patch | 4 +- ...0137-rtmutex-Make-lock_killable-work.patch | 4 +- ...spinlock-Split-the-lock-types-header.patch | 4 +- .../0139-rtmutex-Avoid-include-hell.patch | 4 +- ...-rbtree-don-t-include-the-rcu-header.patch | 4 +- ...tex-Provide-rt_mutex_slowlock_locked.patch | 4 +- ...ockdep-less-version-of-rt_mutex-s-lo.patch | 4 +- ...tex-add-sleeping-lock-implementation.patch | 4 +- ...utex-implementation-based-on-rtmutex.patch | 4 +- ...wsem-implementation-based-on-rtmutex.patch | 4 +- ...lock-implementation-based-on-rtmutex.patch | 4 +- ...-preserve-state-like-a-sleeping-lock.patch | 4 +- .../0148-rtmutex-wire-up-RT-s-locking.patch | 4 +- ...utex-add-ww_mutex-addon-for-mutex-rt.patch | 4 +- .../0150-kconfig-Add-PREEMPT_RT_FULL.patch | 4 +- ...-fix-deadlock-in-device-mapper-block.patch | 4 +- ...utex-Flush-block-plug-on-__down_read.patch | 4 +- ...re-init-the-wait_lock-in-rt_mutex_in.patch | 4 +- ...ace-fix-ptrace-vs-tasklist_lock-race.patch | 4 +- ...mutex-annotate-sleeping-lock-context.patch | 4 +- ...sable-fallback-to-preempt_disable-in.patch | 4 +- ...eck-for-__LINUX_SPINLOCK_TYPES_H-on-.patch | 4 +- .../0158-rcu-Frob-softirq-test.patch | 4 +- ...59-rcu-Merge-RCU-bh-into-RCU-preempt.patch | 4 +- ...ke-ksoftirqd-do-RCU-quiescent-states.patch | 4 +- ...nate-softirq-processing-from-rcutree.patch | 4 +- ...-use-cpu_online-instead-custom-check.patch | 4 +- ...place-local_irqsave-with-a-locallock.patch | 4 +- ..._normal_after_boot-by-default-for-RT.patch | 4 +- ...erial-omap-Make-the-locking-RT-aware.patch | 4 +- ...al-pl011-Make-the-locking-work-on-RT.patch | 4 +- ...-explicitly-initialize-the-flags-var.patch | 4 +- ...mprove-the-serial-console-PASS_LIMIT.patch | 4 +- ...0-don-t-take-the-trylock-during-oops.patch | 4 +- ...wsem-Remove-preempt_disable-variants.patch | 4 +- ...ate_mm-by-preempt_-disable-enable-_r.patch | 4 +- ...back-explicit-INIT_HLIST_BL_HEAD-ini.patch | 4 +- ...e-preemption-on-i_dir_seq-s-write-si.patch | 4 +- ...e-of-local-lock-in-multi_cpu-decompr.patch | 4 +- ...rmal-Defer-thermal-wakups-to-threads.patch | 4 +- ...e-preemption-around-local_bh_disable.patch | 4 +- ...poll-Do-not-disable-preemption-on-RT.patch | 4 +- ...er-preempt-disable-region-which-suck.patch | 4 +- .../0179-block-mq-use-cpu_light.patch | 4 +- ...ock-mq-do-not-invoke-preempt_disable.patch | 4 +- ...k-mq-don-t-complete-requests-via-IPI.patch | 4 +- ...-Make-raid5_percpu-handling-RT-aware.patch | 4 +- .../0183-rt-Introduce-cpu_chill.patch | 4 +- ...rtimer-Don-t-lose-state-in-cpu_chill.patch | 4 +- ...chill-save-task-state-in-saved_state.patch | 4 +- ...e-blk_queue_usage_counter_release-in.patch | 4 +- ...-block-Use-cpu_chill-for-retry-loops.patch | 4 +- ...cache-Use-cpu_chill-in-trylock-loops.patch | 4 +- ...t-Use-cpu_chill-instead-of-cpu_relax.patch | 4 +- ...use-swait_queue-instead-of-waitqueue.patch | 4 +- .../0191-workqueue-Use-normal-rcu.patch | 4 +- ...cal-irq-lock-instead-of-irq-disable-.patch | 4 +- ...t-workqueue-versus-ata-piix-livelock.patch | 4 +- ...tangle-worker-accounting-from-rqlock.patch | 4 +- .../0195-debugobjects-Make-RT-aware.patch | 4 +- .../0196-seqlock-Prevent-rt-starvation.patch | 4 +- ...vc_xprt_do_enqueue-use-get_cpu_light.patch | 4 +- ...0198-net-Use-skbufhead-with-raw-lock.patch | 6 +-- ...recursion-to-per-task-variable-on-RT.patch | 8 ++-- ...y-to-delegate-processing-a-softirq-t.patch | 6 +-- ...ake-qdisc-s-busylock-in-__dev_xmit_s.patch | 6 +-- ...Qdisc-use-a-seqlock-instead-seqcount.patch | 4 +- ...-missing-serialization-in-ip_send_un.patch | 4 +- .../0204-net-add-a-lock-around-icmp_sk.patch | 4 +- ...schedule_irqoff-disable-interrupts-o.patch | 6 +-- ...-push-most-work-into-softirq-context.patch | 4 +- .../0207-printk-Make-rt-aware.patch | 4 +- ...n-t-try-to-print-from-IRQ-NMI-region.patch | 4 +- ...intk-Drop-the-logbuf_lock-more-often.patch | 4 +- ...n-translation-section-permission-fau.patch | 4 +- ...-irq_set_irqchip_state-documentation.patch | 4 +- ...wngrade-preempt_disable-d-region-to-.patch | 4 +- ...-preemp_disable-in-addition-to-local.patch | 42 ++++++++++--------- ...14-kgdb-serial-Short-term-workaround.patch | 4 +- ...-sysfs-Add-sys-kernel-realtime-entry.patch | 4 +- .../0216-mm-rt-kmap_atomic-scheduling.patch | 4 +- ...highmem-Add-a-already-used-pte-check.patch | 4 +- .../0218-arm-highmem-Flush-tlb-on-unmap.patch | 4 +- .../0219-arm-Enable-highmem-for-rt.patch | 4 +- .../0220-scsi-fcoe-Make-RT-aware.patch | 4 +- ...ypto-Reduce-preempt-disabled-regions.patch | 4 +- ...-preempt-disabled-regions-more-algos.patch | 4 +- ...ypto-limit-more-FPU-enabled-sections.patch | 4 +- ...-serialize-RT-percpu-scratch-buffer-.patch | 4 +- ...d-a-lock-instead-preempt_disable-loc.patch | 4 +- ...andom_bytes-for-RT_FULL-in-init_oops.patch | 4 +- ...ackprotector-Avoid-random-pool-on-rt.patch | 4 +- .../0228-random-Make-it-work-on-rt.patch | 6 +-- ...29-cpu-hotplug-Implement-CPU-pinning.patch | 12 +++--- ...ed-user-tasks-to-be-awakened-to-the-.patch | 4 +- ...duct-tape-RT-rwlock-usage-for-non-RT.patch | 12 +++--- ...ove-preemption-disabling-in-netif_rx.patch | 6 +-- ...r-local_irq_disable-kmalloc-headache.patch | 4 +- ...-users-of-napi_alloc_cache-against-r.patch | 4 +- ...rialize-xt_write_recseq-sections-on-.patch | 4 +- ...Add-a-mutex-around-devnet_rename_seq.patch | 6 +-- ...-Only-do-hardirq-context-test-for-ra.patch | 4 +- ...-fix-warnings-due-to-missing-PREEMPT.patch | 4 +- ...ched-Add-support-for-lazy-preemption.patch | 6 +-- ...40-ftrace-Fix-trace-header-alignment.patch | 4 +- ...0241-x86-Support-for-lazy-preemption.patch | 8 ++-- ...-properly-check-against-preempt-mask.patch | 4 +- ...-use-proper-return-label-on-32bit-x8.patch | 8 ++-- ...-arm-Add-support-for-lazy-preemption.patch | 6 +-- ...erpc-Add-support-for-lazy-preemption.patch | 4 +- ...-arch-arm64-Add-lazy-preempt-support.patch | 4 +- ...c-Protect-send_msg-with-a-local-lock.patch | 4 +- ...am-Replace-bit-spinlocks-with-rtmute.patch | 4 +- ...-t-disable-preemption-in-zcomp_strea.patch | 4 +- ...-zcomp_stream_get-smp_processor_id-u.patch | 4 +- ...51-tpm_tis-fix-stall-after-iowrite-s.patch | 4 +- ...t-deferral-of-watchdogd-wakeup-on-RT.patch | 4 +- ...Use-preempt_disable-enable_rt-where-.patch | 10 ++--- ...al_lock-unlock_irq-in-intel_pipe_upd.patch | 4 +- .../0255-drm-i915-disable-tracing-on-RT.patch | 4 +- ...M_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch | 4 +- ...roups-use-simple-wait-in-css_release.patch | 4 +- ...vert-callback_lock-to-raw_spinlock_t.patch | 4 +- ...-a-locallock-instead-preempt_disable.patch | 4 +- ...rkqueue-Prevent-deadlock-stall-on-RT.patch | 4 +- ...t-tasks-to-cache-one-sigqueue-struct.patch | 4 +- ...0262-Add-localversion-for-RT-release.patch | 4 +- ...iommu-Use-a-locallock-instead-local_.patch | 24 ++++++----- .../0264-powerpc-reshuffle-TIF-bits.patch | 4 +- ...-Convert-show_lock-to-raw_spinlock_t.patch | 4 +- ...isable-interrupts-independently-of-t.patch | 4 +- ...-Fix-a-lockup-in-wait_for_completion.patch | 4 +- ...8-kthread-add-a-global-worker-thread.patch | 4 +- ...voke-the-affinity-callback-via-a-wor.patch | 4 +- ...ssing-work_struct-in-irq_set_affinit.patch | 4 +- ...-arm-imx6-cpuidle-Use-raw_spinlock_t.patch | 4 +- ...to-change-rcu_normal_after_boot-on-R.patch | 4 +- ...chtec-fix-stream_open.cocci-warnings.patch | 6 +-- ...-Drop-a-preempt_disable_rt-statement.patch | 4 +- ...notification-of-canceling-timers-on-.patch | 4 +- ...ure-lock-unlock-symetry-versus-pi_lo.patch | 4 +- ...-bug-on-when-a-requeued-RT-task-time.patch | 4 +- ...andle-the-various-new-futex-race-con.patch | 4 +- ...karound-migrate_disable-enable-in-di.patch | 4 +- ...-Make-the-futex_hash_bucket-lock-raw.patch | 4 +- ...futex-Delay-deallocation-of-pi_state.patch | 4 +- ...disable-preemption-in-zswap_frontswa.patch | 4 +- debian/patches-rt/0283-revert-aio.patch | 4 +- .../0284-fs-aio-simple-simple-work.patch | 4 +- debian/patches-rt/0285-revert-thermal.patch | 4 +- ...rmal-Defer-thermal-wakups-to-threads.patch | 4 +- debian/patches-rt/0287-revert-block.patch | 4 +- ...e-blk_queue_usage_counter_release-in.patch | 4 +- debian/patches-rt/0289-workqueue-rework.patch | 4 +- ...0290-i2c-exynos5-Remove-IRQF_ONESHOT.patch | 4 +- ...0291-i2c-hix5hd2-Remove-IRQF_ONESHOT.patch | 4 +- ...nsure-inactive_timer-runs-in-hardirq.patch | 4 +- ...temp-make-pkg_temp_lock-a-raw-spinlo.patch | 4 +- ...lock_t-instread-disabling-preemption.patch | 4 +- ...t-the-timer-expire-in-hardirq-contex.patch | 4 +- ...k-preemption-level-before-looking-at.patch | 4 +- ..._ONCE-to-access-timer-base-in-hrimer.patch | 4 +- ...ab-the-expiry-lock-for-non-soft-hrti.patch | 4 +- ...using-hrtimer_grab_expiry_lock-on-mi.patch | 4 +- ...ssing-bracket-and-hide-migration_bas.patch | 4 +- ...lock-expiry-lock-in-the-early-return.patch | 4 +- ...s-enable-Use-sleeping_lock-to-annota.patch | 6 +-- ..._allowed_ptr-Check-cpus_mask-not-cpu.patch | 4 +- ...Remove-dead-__migrate_disabled-check.patch | 4 +- ...e-disable-Protect-cpus_ptr-with-lock.patch | 4 +- ...processor_id-Don-t-use-cpumask_equal.patch | 4 +- ...utex_hash_bucket-spinlock_t-again-an.patch | 4 +- ...Clean-pi_blocked_on-in-the-error-cas.patch | 4 +- ...ib-ubsan-Don-t-seralize-UBSAN-report.patch | 4 +- ...the-lock-of-kmemleak_object-to-raw_s.patch | 4 +- ...igrate_enable-Use-select_fallback_rq.patch | 4 +- ...ched-Lazy-migrate_disable-processing.patch | 14 +++---- ...grate_enable-Use-stop_one_cpu_nowait.patch | 4 +- ...alize-split-page-table-locks-for-vec.patch | 4 +- ...nlock_t-and-rwlock_t-a-RCU-section-o.patch | 4 +- ...te_enable-must-access-takedown_cpu_t.patch | 8 ++-- ...r_id-Adjust-check_preemption_disable.patch | 4 +- ...able-Busy-loop-until-the-migration-r.patch | 4 +- ... => 0319-Linux-4.19.106-rt44-REBASE.patch} | 10 ++--- debian/patches-rt/series | 2 +- 321 files changed, 731 insertions(+), 726 deletions(-) rename debian/patches-rt/{0319-Linux-4.19.103-rt42-REBASE.patch => 0319-Linux-4.19.106-rt44-REBASE.patch} (64%) diff --git a/debian/changelog b/debian/changelog index d118c48a1..5681fc3df 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1050,6 +1050,7 @@ linux (4.19.106-1) UNRELEASED; urgency=medium * [rt] Refresh "arm64: fpsimd: use preemp_disable in addition to local_bh_disable()" for context changes in 4.19.105. * Drop "tools/lib/api/fs/fs.c: Fix misuse of strncpy()" + * [rt] Update to 4.19.106-rt44 [ Ben Hutchings ] * [x86] Drop "Add a SysRq option to lift kernel lockdown" (Closes: #947021) 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 f04322218..49cae1808 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 adb82ae54a91c725fe773b745ff424807228c874 Mon Sep 17 00:00:00 2001 +From d831f2ac120e802a4ff642f48f6b88e543665514 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:18 +0200 Subject: [PATCH 001/319] ARM: at91: add TCB registers definitions -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Add registers and bits definitions for the timer counter blocks found on Atmel ARM SoCs. 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 da9fe47b6..76113b9ae 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 16aff6aa0f31ed7dc6a68735bd65e263810395bc Mon Sep 17 00:00:00 2001 +From a8f6e3cf352d669d8b870469ab3bff8fc64c3367 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:19 +0200 Subject: [PATCH 002/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Add a driver for the Atmel Timer Counter Blocks. This driver provides a clocksource and two clockevent devices. 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 18ec4aedb..5f2576b63 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 11cf60ef1efd769bc725a511c7a4bcdc2f5256cf Mon Sep 17 00:00:00 2001 +From f2e0ea85054574af7f632ca36991c5c1a25a7bfd Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:20 +0200 Subject: [PATCH 003/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Add an other clockevent device that uses a separate TCB channel when available. 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 333cff292..7afab3357 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 7e01ab45bcd7a5cdfeb78da4a89a02fe78225b87 Mon Sep 17 00:00:00 2001 +From 23ef2fe8b6933933fb81af9decf35cfae8c14571 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:21 +0200 Subject: [PATCH 004/319] clocksource/drivers: atmel-pit: make option silent -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz To conform with the other option, make the ATMEL_PIT option silent so it can be selected from the platform 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 2aef5ab70..dae1a4362 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 1f8b901e987ee6fbb0a34495e4095bd064af77d7 Mon Sep 17 00:00:00 2001 +From 56d1624c2b43a84717f237d3c2d58ac52cb37b33 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:22 +0200 Subject: [PATCH 005/319] ARM: at91: Implement clocksource selection -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Allow selecting and unselecting the PIT clocksource driver so it doesn't have to be compile when unused. 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 2bd154887..4588414be 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 ba834da858cfeffa02be54b46249bdccbf9fd309 Mon Sep 17 00:00:00 2001 +From 9591e618026011c31f7275edd0643d390e185e38 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:23 +0200 Subject: [PATCH 006/319] ARM: configs: at91: use new TCB timer driver -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Unselecting ATMEL_TCLIB switches the TCB timer driver from tcb_clksrc to timer-atmel-tcb. 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 933020194..52fc012e2 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 e3b88dcec86a917afae928ccc22d054e19d7f2a1 Mon Sep 17 00:00:00 2001 +From f58179ebd23db67a287e5267a5cbc2c1ae5d75d9 Mon Sep 17 00:00:00 2001 From: Alexandre Belloni Date: Thu, 13 Sep 2018 13:30:24 +0200 Subject: [PATCH 007/319] ARM: configs: at91: unselect PIT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 74089219f..c6b661628 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 6f4c4902f7a8db4d12083c42bc3915b6e85140c7 Mon Sep 17 00:00:00 2001 +From f5fc79f507ee8c22a6f18709552cecbada48d328 Mon Sep 17 00:00:00 2001 From: Marc Zyngier Date: Fri, 27 Jul 2018 13:38:54 +0100 Subject: [PATCH 008/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Signed-off-by: Marc Zyngier Signed-off-by: Sebastian Andrzej Siewior @@ -13,7 +13,7 @@ Signed-off-by: Sebastian Andrzej Siewior 2 files changed, 53 insertions(+), 28 deletions(-) diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c -index 050d6e040128..fc4c319ee1d7 100644 +index bf7b69449b43..f93b8cd5eea2 100644 --- a/drivers/irqchip/irq-gic-v3-its.c +++ b/drivers/irqchip/irq-gic-v3-its.c @@ -179,6 +179,7 @@ static DEFINE_RAW_SPINLOCK(vmovp_lock); 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 6d3df8280..822310207 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 ee9a7655a308cca866723c29779c21d2d6cdd5d7 Mon Sep 17 00:00:00 2001 +From 89b3ba99261e5321ba2276305f817b5c0c9817ad Mon Sep 17 00:00:00 2001 From: Julia Cartwright Date: Fri, 28 Sep 2018 21:03:51 +0000 Subject: [PATCH 009/319] kthread: convert worker lock to raw spinlock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 9c49bb226..2f36be100 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 4a1b145c2c26fba4753a539feef323c721bc37b3 Mon Sep 17 00:00:00 2001 +From 1e7f9f15b5cb5088ac28a0919a2fcc74bfc5f5c7 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/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [Upstream commit 29e83c757006fd751966bdc53392bb22d74179c6] 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 96da2ec57..c9c38cb6b 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 b8bc45a342f3e594019e206b4d7a4a0a740b2b4d Mon Sep 17 00:00:00 2001 +From 2a9fed89a7bea6fbe31e717ab5f277405e20826e Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Mon, 7 Jan 2019 13:52:31 +0100 Subject: [PATCH 011/319] sched/fair: Robustify CFS-bandwidth timer locking -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Traditionally hrtimer callbacks were run with IRQs disabled, but with the introduction of HRTIMER_MODE_SOFT it is possible they run from 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 db2ce8643..5718c2e0a 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 852931124f107be1f8224e3c3ae7a3906e8bce28 Mon Sep 17 00:00:00 2001 +From 7c89d978bdfea369853567288ced4880deddd0b1 Mon Sep 17 00:00:00 2001 From: Frank Rowand Date: Mon, 19 Sep 2011 14:51:14 -0700 Subject: [PATCH 012/319] arm: Convert arm boot_lock to raw -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 index 13e1f7ec1..f8ea6a776 100644 --- 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 @@ -1,9 +1,9 @@ -From 96c91f4fbcd59a2f307356e5204c81d846ba7968 Mon Sep 17 00:00:00 2001 +From 9ecaf2a8f433399cc3fabcfb9fbce9a88fe6f200 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 17 Jul 2018 18:25:31 +0200 Subject: [PATCH 013/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz There is an issue with threaded interrupts which are marked ONESHOT and using the fasteoi handler. 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 641219257..8dd123b86 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 606b2f0a914ecc6c0badb779e346538c22096ceb Mon Sep 17 00:00:00 2001 +From 759e6d7c318bbcff7507641d5a9fb6b5074b2a87 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 3 Jul 2018 18:19:48 +0200 Subject: [PATCH 014/319] cgroup: use irqsave in cgroup_rstat_flush_locked() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz All callers of cgroup_rstat_flush_locked() acquire cgroup_rstat_lock either with spin_lock_irq() or spin_lock_irqsave(). 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 9aee2698c..8b4a33665 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 56cec20764014ac10973058dabf6944a533ee8e7 Mon Sep 17 00:00:00 2001 +From 934128f28dd37073d6513a37f0433df6399c7953 Mon Sep 17 00:00:00 2001 From: Clark Williams Date: Tue, 3 Jul 2018 13:34:30 -0500 Subject: [PATCH 015/319] fscache: initialize cookie hash table raw spinlocks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 03c1e8c71..497e52dd1 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 0f9c9b3757dc490f5d7f8f37432eb2fe10f9c325 Mon Sep 17 00:00:00 2001 +From 2a2f1a8c287a6b6fb14a4a1b5583e043d5897df4 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 29 Aug 2018 21:59:04 +0200 Subject: [PATCH 016/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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: 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 cda59d942..8a674b24c 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 7703034d300cc9f80305b491270093af4772c351 Mon Sep 17 00:00:00 2001 +From d487edd01d698abf2b4f3ea4e3f27897b227250c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 11 Oct 2018 16:39:59 +0200 Subject: [PATCH 017/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 diff --git a/debian/patches-rt/0018-efi-Allow-efi-runtime.patch b/debian/patches-rt/0018-efi-Allow-efi-runtime.patch index 6199c665d..f67a75940 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 4cf70c2e7df43e00fae3048cb79a7f525d8ac3aa Mon Sep 17 00:00:00 2001 +From 5c77a75aaa23c5fc32b5485897d0d14e66fafd37 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 26 Jul 2018 15:06:10 +0200 Subject: [PATCH 018/319] efi: Allow efi=runtime -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 19af2f3bb..1f6f35971 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 c15f388fcff8ec127288af90687c7cf8de854553 Mon Sep 17 00:00:00 2001 +From af50891c552632469b09b7b97abd197545aec804 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 24 Jul 2018 14:48:55 +0200 Subject: [PATCH 019/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 @@ -24,10 +24,10 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/arch/x86/platform/efi/efi_64.c b/arch/x86/platform/efi/efi_64.c -index ee5d08f25ce4..e8da7f492970 100644 +index 6db8f3598c80..c9ccaef8df57 100644 --- a/arch/x86/platform/efi/efi_64.c +++ b/arch/x86/platform/efi/efi_64.c -@@ -619,18 +619,16 @@ void __init efi_dump_pagetable(void) +@@ -620,18 +620,16 @@ void __init efi_dump_pagetable(void) /* * Makes the calling thread switch to/from efi_mm context. Can be used 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 41bbbed96..864780ac4 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 9907d44a7495afb6c6888dab406398a280788ab4 Mon Sep 17 00:00:00 2001 +From c96c598b9bc12e2909dcec0a1bf8f4a1b846107e Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 26 Jul 2018 09:13:42 +0200 Subject: [PATCH 020/319] arm64: KVM: compute_layout before altenates are applied -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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(). @@ -18,7 +18,7 @@ Signed-off-by: Sebastian Andrzej Siewior 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/arch/arm64/include/asm/alternative.h b/arch/arm64/include/asm/alternative.h -index 4b650ec1d7dd..f561ea0ac645 100644 +index 887a8512bf10..376561351bae 100644 --- a/arch/arm64/include/asm/alternative.h +++ b/arch/arm64/include/asm/alternative.h @@ -35,6 +35,12 @@ void apply_alternatives_module(void *start, size_t length); @@ -31,9 +31,9 @@ index 4b650ec1d7dd..f561ea0ac645 100644 +static inline void kvm_compute_layout(void) { } +#endif + - #define ALTINSTR_ENTRY(feature,cb) \ + #define ALTINSTR_ENTRY(feature) \ " .word 661b - .\n" /* label */ \ - " .if " __stringify(cb) " == 0\n" \ + " .word 663f - .\n" /* new instruction */ \ diff --git a/arch/arm64/kernel/alternative.c b/arch/arm64/kernel/alternative.c index b5d603992d40..f92815d56d17 100644 --- a/arch/arm64/kernel/alternative.c 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 bd357ad08..81c219fde 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 7a8711714cf15774878d639964a40203688b74db Mon Sep 17 00:00:00 2001 +From 8779fdd5686d1f9be670c7ee5ea6dfaece9e37d8 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 31 Aug 2018 14:16:30 +0200 Subject: [PATCH 021/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 117ab09a9..a18da9609 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 4434befd6ff3790ce40983f39d70df4585266ad8 Mon Sep 17 00:00:00 2001 +From 7841950d4460ea93ee4ddd6a400ad67cfacee592 Mon Sep 17 00:00:00 2001 From: Clark Williams Date: Tue, 18 Sep 2018 10:29:31 -0500 Subject: [PATCH 022/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The static lock quarantine_lock is used in quarantine.c to protect the quarantine queue datastructures. It is taken inside quarantine queue 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 8ab2f79f6..df03d8b2d 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 546655545a0342a811c432b3fee50ef790f47974 Mon Sep 17 00:00:00 2001 +From c7753a6fd996fcaa0285c1c8285fde721d519a0a Mon Sep 17 00:00:00 2001 From: "Paul E. McKenney" Date: Mon, 29 Oct 2018 11:53:01 +0100 Subject: [PATCH 023/319] EXP rcu: Revert expedited GP parallelization cleverness -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz (Commit 258ba8e089db23f760139266c232f01bad73f85c from linux-rcu) 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 6be4fd38a..24397cac5 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 26a8d93db88cf4afa5468006c102755a94658ffd Mon Sep 17 00:00:00 2001 +From 4b0c7eda4403c5a7146714857bd1abffd2b080f8 Mon Sep 17 00:00:00 2001 From: He Zhe Date: Wed, 19 Dec 2018 16:30:57 +0100 Subject: [PATCH 024/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz kmemleak_lock, as a rwlock on RT, can possibly be held in atomic context and causes the follow BUG. 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 1ff878267..09bc6ca96 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 72ee900a2ae6252f72561df983c8dd464ccadb3c Mon Sep 17 00:00:00 2001 +From 7cb617c6dac1356dfe57b1c4a976ec78ead046a0 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 28 Oct 2016 23:05:11 +0200 Subject: [PATCH 025/319] NFSv4: replace seqcount_t with a seqlock_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 @@ -58,7 +58,7 @@ index 5b61520dce88..2771aafaca19 100644 }; diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c -index 7834b325394f..026164678f37 100644 +index 668b648064b7..187d411668ed 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c @@ -2870,7 +2870,7 @@ static int _nfs4_open_and_get_state(struct nfs4_opendata *opendata, 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 93e7d070c..31f97dce4 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,4 +1,4 @@ -From 489a86a9a99c1385e72e12322642def91e35cadb Mon Sep 17 00:00:00 2001 +From 4906d6c574d916416e92a9de0b959c4d0ed0bc17 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 4 Apr 2017 12:50:16 +0200 Subject: [PATCH 026/319] kernel: sched: Provide a pointer to the valid CPU @@ -6,7 +6,7 @@ Subject: [PATCH 026/319] kernel: sched: Provide a pointer to the valid CPU 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 @@ -179,10 +179,10 @@ index a999a58ca331..d6410d0740ea 100644 return -EINVAL; } diff --git a/drivers/infiniband/hw/hfi1/affinity.c b/drivers/infiniband/hw/hfi1/affinity.c -index bedd5fba33b0..3f4259f11a35 100644 +index 01ed0a667928..2c62de6b5bf1 100644 --- a/drivers/infiniband/hw/hfi1/affinity.c +++ b/drivers/infiniband/hw/hfi1/affinity.c -@@ -1037,7 +1037,7 @@ int hfi1_get_proc_affinity(int node) +@@ -1039,7 +1039,7 @@ int hfi1_get_proc_affinity(int node) struct hfi1_affinity_node *entry; cpumask_var_t diff, hw_thread_mask, available_mask, intrs_mask; const struct cpumask *node_mask, @@ -191,7 +191,7 @@ index bedd5fba33b0..3f4259f11a35 100644 struct hfi1_affinity_node_list *affinity = &node_affinity; struct cpu_mask_set *set = &affinity->proc; -@@ -1045,7 +1045,7 @@ int hfi1_get_proc_affinity(int node) +@@ -1047,7 +1047,7 @@ int hfi1_get_proc_affinity(int node) * check whether process/context affinity has already * been set */ @@ -200,7 +200,7 @@ index bedd5fba33b0..3f4259f11a35 100644 hfi1_cdbg(PROC, "PID %u %s affinity set to CPU %*pbl", current->pid, current->comm, cpumask_pr_args(proc_mask)); -@@ -1056,7 +1056,7 @@ int hfi1_get_proc_affinity(int node) +@@ -1058,7 +1058,7 @@ int hfi1_get_proc_affinity(int node) cpu = cpumask_first(proc_mask); cpumask_set_cpu(cpu, &set->used); goto done; 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 b7a3bab6b..f32436e95 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 c336aaa1bcc073572073c3ce1629aafd37220d87 Mon Sep 17 00:00:00 2001 +From 9f9cd889fa22fc1e25802f565f7210b271d136a2 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Sat, 27 May 2017 19:02:06 +0200 Subject: [PATCH 027/319] kernel/sched/core: add migrate_disable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz --- include/linux/preempt.h | 23 +++++++ 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 cb042f9ba..c7b553bb6 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 d3a1cee03ad56c7b66d8dfab844cff48e8050fd7 Mon Sep 17 00:00:00 2001 +From db2220843fd1c19c7b89db5f6e20382b5622fa05 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 9 Oct 2018 17:34:50 +0200 Subject: [PATCH 028/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Jonathan reported that lttng/modules can't use __migrate_disabled(). This function is only used by sched/core itself and the tracing 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 7ba86bf82..2e316f0f9 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 0ba8ac28e3e8714926e40651b2f898178bdbeec7 Mon Sep 17 00:00:00 2001 +From b978b0a313d26ed5e51a9120c8744385a99e541a Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 9 Mar 2016 10:51:06 +0100 Subject: [PATCH 029/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 3507be01f..7aab16c24 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,4 +1,4 @@ -From a848e5afd3ed780d117cbc41dd8e6656ec93218d Mon Sep 17 00:00:00 2001 +From 8549d4577f0573dddbc34e310c4310920a6bb714 Mon Sep 17 00:00:00 2001 From: Benedikt Spranger Date: Mon, 8 Mar 2010 18:57:04 +0100 Subject: [PATCH 030/319] clocksource: TCLIB: Allow higher clock rates for @@ -6,7 +6,7 @@ Subject: [PATCH 030/319] clocksource: TCLIB: Allow higher clock rates for 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. diff --git a/debian/patches-rt/0031-timekeeping-Split-jiffies-seqlock.patch b/debian/patches-rt/0031-timekeeping-Split-jiffies-seqlock.patch index 52195b294..419c6008f 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 e63f98f50f1d848783a9b8612216ecb52f2f4f2d Mon Sep 17 00:00:00 2001 +From 4948d026b217faebc43bfe4a21cb3c5e781508ad Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 14 Feb 2013 22:36:59 +0100 Subject: [PATCH 031/319] timekeeping: Split jiffies seqlock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Replace jiffies_lock seqlock with a simple seqcounter and a rawlock so it can be taken in atomic context on RT. 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 3d90ead44..4dbf82c25 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 39f1c01a90cdd97225664c5820f5a8032aeff563 Mon Sep 17 00:00:00 2001 +From dad624b7531ae0a0275cab3c82ea0d7c6a29cc7c Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 21 Sep 2011 19:57:12 +0200 Subject: [PATCH 032/319] signal: Revert ptrace preempt magic -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Upstream commit '53da1d9456fe7f8 fix ptrace slowness' is nothing more than a bandaid around the ptrace design trainwreck. It's not a 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 90b43fb74..c3265d462 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 ad9cabe151325834cb53c0535b2954637e40049b Mon Sep 17 00:00:00 2001 +From 5b974aebb7a0797ecc4c47dda6158e8c6788d50b Mon Sep 17 00:00:00 2001 From: Marc Kleine-Budde Date: Wed, 5 Mar 2014 00:49:47 +0100 Subject: [PATCH 033/319] net: sched: Use msleep() instead of yield() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 5221f27d2..87cceb0e2 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 ecafcc326d4a6bde4dbc2cf1a909644d8d47d63e Mon Sep 17 00:00:00 2001 +From 38dbd44808bcdd34f0b973698b0f9bd65d2f2db5 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 27 Mar 2018 16:24:15 +0200 Subject: [PATCH 034/319] dm rq: remove BUG_ON(!irqs_disabled) check -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz In commit 052189a2ec95 ("dm: remove superfluous irq disablement in dm_request_fn") the spin_lock_irq() was replaced with spin_lock() + a 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 acaa7b264..ca8919ad5 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 e9a9bd7f3e0bb4a100f16997d9c754fe1de910b6 Mon Sep 17 00:00:00 2001 +From f31d5f36bfd80c261ba37fe3b8849f2be819c088 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 8 Nov 2013 17:34:54 +0100 Subject: [PATCH 035/319] usb: do no disable interrupts in giveback -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Since commit 94dfd7ed ("USB: HCD: support giveback of URB in tasklet context") the USB code disables interrupts before invoking the complete 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 1b8132c43..00aa41279 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 beb5f2438466a5a0c2b7391e3e397a7d2cfc1bee Mon Sep 17 00:00:00 2001 +From f93f63735dec865d4013677969324e66da7f02c4 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 17 Jun 2011 12:39:57 +0200 Subject: [PATCH 036/319] rt: Provide PREEMPT_RT_BASE config switch -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Introduce PREEMPT_RT_BASE which enables parts of PREEMPT_RT_FULL. Forces interrupt threading and enables some of the RT 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 207759f0d..12e24205d 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 9e4e9344993ae7d8b043f4944b155e9db050c2e4 Mon Sep 17 00:00:00 2001 +From 824fc9b2ae92b317da3e2a42406a49f330e20a6d Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 14 Dec 2011 01:03:49 +0100 Subject: [PATCH 037/319] cpumask: Disable CONFIG_CPUMASK_OFFSTACK for RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz There are "valid" GFP_ATOMIC allocations such as 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 4c573d122..82b3cfa64 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 bc3467535e0c999c0d5478bf7244b540c3b2f53a Mon Sep 17 00:00:00 2001 +From feb8e4e9bfee1c054ec0c83ae2a12897d85da9b3 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 8 Jul 2015 17:14:48 +0200 Subject: [PATCH 038/319] jump-label: disable if stop_machine() is used -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Some architectures are using stop_machine() while switching the opcode which leads to latency spikes. @@ -25,7 +25,7 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 185e552f1461..84f36e47e3ab 100644 +index e2f7c50dbace..91ba9fe945ff 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -51,7 +51,7 @@ config ARM 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 0f827c6b7..978ab5e72 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 a4131809e22423611cf14841a656dec4a8d31d8c Mon Sep 17 00:00:00 2001 +From 521872fd8b19b111a7001f6388912ab9d506f741 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 24 Jul 2011 12:11:43 +0200 Subject: [PATCH 039/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Disable stuff which is known to have issues on RT diff --git a/debian/patches-rt/0040-lockdep-disable-self-test.patch b/debian/patches-rt/0040-lockdep-disable-self-test.patch index 9df4cbeb6..35e908934 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 3f0f41efff4db706c685f8fdcf1ce963c7ac6546 Mon Sep 17 00:00:00 2001 +From 464fd34dd6dc53c357221cff371377ca19601e14 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 17 Oct 2017 16:36:18 +0200 Subject: [PATCH 040/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 8d57bd116..bebc4043d 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 689ef9b6a8d84ed7d24cc353402b0a03d92ece39 Mon Sep 17 00:00:00 2001 +From bb8c948b260e99e7c7ad2dc38ea03a958be18769 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:44:03 -0500 Subject: [PATCH 041/319] mm: Allow only slub on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Disable SLAB and SLOB on -RT. Only SLUB is adopted to -RT needs. 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 530945037..d1c505134 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 08d750263a76c7ab09af4aeda1ab3b8b3986edff Mon Sep 17 00:00:00 2001 +From 6bbedb933d43f1bc2283d96523412298d765b8a2 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 21:51:45 +0200 Subject: [PATCH 042/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Drop spin on owner for mutex / rwsem. We are most likely not using it but… 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 833721a16..e1f9d97dd 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 b17f01bc403bbe89565569ee6907af8b7b6f210b Mon Sep 17 00:00:00 2001 +From 0942d8d1880802a3a19df4dfdff1ec5769d92fe3 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 28 Oct 2012 13:26:09 +0000 Subject: [PATCH 043/319] rcu: Disable RCU_FAST_NO_HZ on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz This uses a timer_list timer from the irq disabled guts of the idle code. Disable it for now to prevent wreckage. 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 a182515cd..70322eaa2 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 a4b5d5ab4d9ebff99f7e0a302a777d94c3087117 Mon Sep 17 00:00:00 2001 +From b784c987142020d5cc32de03823004d362b390ec Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 21 Mar 2014 20:19:05 +0100 Subject: [PATCH 044/319] rcu: make RCU_BOOST default on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 d2bccb7be..fc3240543 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 f43d91c85deca5818a818f255e811f30f66c887b Mon Sep 17 00:00:00 2001 +From 648e8c04474df9ed71c649af1d1e5a161cddaf41 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 18 Jul 2011 17:03:52 +0200 Subject: [PATCH 045/319] sched: Disable CONFIG_RT_GROUP_SCHED on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Carsten reported problems when running: 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 342c3b700..f13e0e06a 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 45e0de2a7b8ff0c0873ab1943f39c63967714de4 Mon Sep 17 00:00:00 2001 +From 0b90609a04c39529c4ff712a4786aecde55a0733 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Sat, 27 May 2017 19:02:06 +0200 Subject: [PATCH 046/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz sk_busy_loop() does preempt_disable() followed by a few operations which can take sleeping locks and may get long. 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 eee89e0d6..17f236214 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 a0fe53af60c195dcff47d175d212866c18ebace5 Mon Sep 17 00:00:00 2001 +From af731f1e8edb7e93c5977a0da70bd61c5d9fa7b1 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 1 Dec 2017 10:42:03 +0100 Subject: [PATCH 047/319] arm*: disable NEON in kernel mode -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 @@ -21,7 +21,7 @@ Signed-off-by: Sebastian Andrzej Siewior 3 files changed, 17 insertions(+), 16 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 84f36e47e3ab..c1cc28f0841f 100644 +index 91ba9fe945ff..bd9d180db5c7 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -2163,7 +2163,7 @@ config NEON 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 4abdcb746..370149cfe 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 6a741e6ad17fc25a2c028c19f37ddd728d93eedb Mon Sep 17 00:00:00 2001 +From c90bc1f0bbce77f2baf2b4213125fb5b7870fc20 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 14 Jul 2015 14:26:34 +0200 Subject: [PATCH 048/319] powerpc: Use generic rwsem on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Use generic code which uses rtmutex 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 b2dd55599..36fcf3932 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 120bdd703c8752d1334c87dc7be94ba631a0e669 Mon Sep 17 00:00:00 2001 +From 3460880af8146f0e3e05acd590e7e52d450bbf80 Mon Sep 17 00:00:00 2001 From: Bogdan Purcareata Date: Fri, 24 Apr 2015 15:53:13 +0000 Subject: [PATCH 049/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 f064c8921..3577c9ab5 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 44f749f4e2ae0932e5919147ad1d62ff0b2a30cb Mon Sep 17 00:00:00 2001 +From 13e6a60aad3edc7b4efd2168abcca0447ff20763 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 18 Jul 2011 17:08:34 +0200 Subject: [PATCH 050/319] powerpc: Disable highmem on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The current highmem handling on -RT is not compatible and needs fixups. 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 006abb89c..9c4d109fd 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 89616a90372ba2105b30f5d698efde918d0ee972 Mon Sep 17 00:00:00 2001 +From 55ff21a4418f35a443f2c210779a9ff4dee33e93 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 18 Jul 2011 17:10:12 +0200 Subject: [PATCH 051/319] mips: Disable highmem on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The current highmem handling on -RT is not compatible and needs fixups. 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 5d32b08f8..2139dc68e 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 5e58540bb847f41f94980f2b5b62c2ff3cb8e0e7 Mon Sep 17 00:00:00 2001 +From d0b5d43931b3de89c64c8a697256eb60eb9c0ebb Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 26 Jul 2009 02:21:32 +0200 Subject: [PATCH 052/319] x86: Use generic rwsem_spinlocks on -rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Simplifies the separation of anon_rw_semaphores and rw_semaphores for -rt. 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 77e78a169..eab4c6a3e 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 328a1184b2668305e4ea7b75ae1c3105f62d1f49 Mon Sep 17 00:00:00 2001 +From 9c164cac4dbebd9bf5376428113db97b366625a0 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 23 Jan 2014 14:45:59 +0100 Subject: [PATCH 053/319] leds: trigger: disable CPU trigger on -RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz as it triggers: |CPU: 0 PID: 0 Comm: swapper Not tainted 3.12.8-rt10 #141 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 e339d36d5..3bca988b8 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 b01df30728ba058ec9fc4cd8fbd97d855c475e02 Mon Sep 17 00:00:00 2001 +From fa67192faa15cd98f554bcf82f0ecc40a26d9165 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 9 Apr 2015 15:23:01 +0200 Subject: [PATCH 054/319] cpufreq: drop K8's driver from beeing selected -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Ralf posted a picture of a backtrace from diff --git a/debian/patches-rt/0055-md-disable-bcache.patch b/debian/patches-rt/0055-md-disable-bcache.patch index ae72def2c..80ea45b4f 100644 --- a/debian/patches-rt/0055-md-disable-bcache.patch +++ b/debian/patches-rt/0055-md-disable-bcache.patch @@ -1,11 +1,11 @@ -From 33f359182904fdbf350968e52fa48df003cba8bc Mon Sep 17 00:00:00 2001 +From 274246f0cc33aabdc562929c114eae24541eb9a3 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 29 Aug 2013 11:48:57 +0200 Subject: [PATCH 055/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz It uses anon semaphores |drivers/md/bcache/request.c: In function ‘cached_dev_write_complete’: 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 63a405de9..acfcba30f 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 0bb85517c3d651d90da560add0e696ace91255a8 Mon Sep 17 00:00:00 2001 +From b453602d0f02b94edf714d46e6293b037ea94b67 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 26 Jul 2018 15:03:16 +0200 Subject: [PATCH 056/319] efi: Disable runtime services on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Based on meassurements the EFI functions get_variable / get_next_variable take up to 2us which looks okay. 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 a57d8403b..c8f7850f4 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 a3847095fefea218fb82623cdfd5a6b0335b093f Mon Sep 17 00:00:00 2001 +From dc16c6a47edf44cb0f69ff6124d6a85ee6dd3dcc Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 22 Jul 2011 17:58:40 +0200 Subject: [PATCH 057/319] printk: Add a printk kill switch -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 87e330e65..f86406f64 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 1dbd77d11f20fdbe5bf369d35834ee37a84a7e24 Mon Sep 17 00:00:00 2001 +From bfe8e0affbc2a1d3f23e9aec43198b31d1115f3d Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Fri, 2 Sep 2011 14:41:29 +0200 Subject: [PATCH 058/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Gives me an option to screw printk and actually see what the machine says. 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 5d5f5d17f..866406b67 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 dbca42bca5dd88a1a80ce20b2b5d45b53abdbf71 Mon Sep 17 00:00:00 2001 +From f3b0b7d6dafcddd6bed43f78535a5494b0e09aa8 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 24 Jul 2009 12:38:56 +0200 Subject: [PATCH 059/319] preempt: Provide preempt_*_(no)rt variants -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz RT needs a few preempt_disable/enable points which are not necessary otherwise. Implement variants to avoid #ifdeffery. 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 5ab72736d..a91388fc3 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 f0fe2fb34e1cf89fa0d726ee8f759af9338802df Mon Sep 17 00:00:00 2001 +From a2a505f1e5d127a2c3b1ee184d27d0f402dcdf63 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 8 Mar 2017 14:23:35 +0100 Subject: [PATCH 060/319] futex: workaround migrate_disable/enable in different context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 bb2e24537..0ec24f7c7 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 f12f8a504f11df9667754f10354c4c74c38f5ec4 Mon Sep 17 00:00:00 2001 +From 4db63a0605ac780bf1525c6a90667aef3f897dc1 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 20 Jun 2011 09:03:47 +0200 Subject: [PATCH 061/319] rt: Add local irq locks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 3a89c3a28..0cef63ece 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 24b3666ecf5a5f8f454c429a10ffe9babeec190f Mon Sep 17 00:00:00 2001 +From 0e057064ed654b5f7fa22cc5f159ed67eeb332dc Mon Sep 17 00:00:00 2001 From: Julia Cartwright Date: Mon, 7 May 2018 08:58:56 -0500 Subject: [PATCH 062/319] locallock: provide {get,put}_locked_ptr() variants -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 7ecaa9fdd..45aa0cbe3 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 41c74791c8608c55cf265e5dc237a224f0c68d9e Mon Sep 17 00:00:00 2001 +From a132d9a98679bcc505c36c80270ddaa741c15cbc Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 3 Jul 2009 08:44:34 -0500 Subject: [PATCH 063/319] mm/scatterlist: Do not disable irqs on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz For -RT it is enough to keep pagefault disabled (which is currently handled by kmap_atomic()). @@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/scatterlist.c b/lib/scatterlist.c -index 8c3036c37ba0..336162c2813f 100644 +index 60e7eca2f4be..aad8b9ecd496 100644 --- a/lib/scatterlist.c +++ b/lib/scatterlist.c @@ -777,7 +777,7 @@ void sg_miter_stop(struct sg_mapping_iter *miter) 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 e53e871f9..d9698199a 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 0702d70f996b678c417b86961eb85c5f54258794 Mon Sep 17 00:00:00 2001 +From f95acea987d23816f8094d7db13ae2afb94136ce Mon Sep 17 00:00:00 2001 From: Oleg Nesterov Date: Tue, 14 Jul 2015 14:26:34 +0200 Subject: [PATCH 064/319] signal/x86: Delay calling signals in atomic -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 b988408c3..a1e5cc787 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 c67616e94cb3a4e226e6e2db6dec9ce3793f228d Mon Sep 17 00:00:00 2001 +From 44575d6c7e6fb548a6bf67f427d151301cd1dfd8 Mon Sep 17 00:00:00 2001 From: Yang Shi Date: Thu, 10 Dec 2015 10:58:51 -0800 Subject: [PATCH 065/319] x86/signal: delay calling signals on 32bit -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz When running some ptrace single step tests on x86-32 machine, the below problem is triggered: 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 83f01921f..c0b6b9b8e 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 95d4bb35411f3e96e84b643295cd03c33e1029e8 Mon Sep 17 00:00:00 2001 +From 6b9121d4d6cf25eabc1b638027345308486f88b1 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 18 Mar 2011 09:18:52 +0100 Subject: [PATCH 066/319] buffer_head: Replace bh_uptodate_lock for -rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Wrap the bit_spin_lock calls into a separate inline and add the RT replacements with a real spinlock. 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 a34ad5a4b..bcff5932e 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 34bc88f1af622442a231c1e5bfc9af3ec2d859ac Mon Sep 17 00:00:00 2001 +From 72ca6594764d9a6523352dc609644bea68a3a74b Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 18 Mar 2011 10:11:25 +0100 Subject: [PATCH 067/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz bit_spin_locks break under RT. 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 2f64bf2de..c7815bf5a 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 84d4197815de2e62162c70c090ac057d09be0c21 Mon Sep 17 00:00:00 2001 +From eb37c3d2df6895d5c86504fdb1a509d075414f52 Mon Sep 17 00:00:00 2001 From: Paul Gortmaker Date: Fri, 21 Jun 2013 15:07:25 -0400 Subject: [PATCH 068/319] list_bl: Make list head locking RT safe -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 e848375f1..89d650064 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 b9cf8dcace585942a12b3cc585dcd52f92b35d44 Mon Sep 17 00:00:00 2001 +From a294373c35c31ae762358146f49c3c48f1429526 Mon Sep 17 00:00:00 2001 From: Josh Cartwright Date: Thu, 31 Mar 2016 00:04:25 -0500 Subject: [PATCH 069/319] list_bl: fixup bogus lockdep warning -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz At first glance, the use of 'static inline' seems appropriate for INIT_HLIST_BL_HEAD(). 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 8f18eedb6..fd2902aa9 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 84aead53ab8e5cce53db13bbfa02bf247630495a Mon Sep 17 00:00:00 2001 +From 974bfebe6d809861b9a25af561668633ef3168a7 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:29:57 -0500 Subject: [PATCH 070/319] genirq: Disable irqpoll on -rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Creates long latencies for no value 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 2582ccf18..78f5bb5e5 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 c5684425630df09b12eb6028c30ec97718eea200 Mon Sep 17 00:00:00 2001 +From 056e2667682c7afa14f71cb6d97ccf2217c0c08b Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 3 Apr 2011 11:57:29 +0200 Subject: [PATCH 071/319] genirq: Force interrupt thread on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Force threaded_irqs and optimize the code (force_irqthreads) in regard to this. 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 50faa0d5f..ac0340b35 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 fe855c70c679d6aea443993cc20a7aa271241120 Mon Sep 17 00:00:00 2001 +From 4c6015fdf87fb7f0f38ce92c85d5630d79c6ae23 Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Mon, 28 May 2018 15:24:20 +0200 Subject: [PATCH 072/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Split the IRQ-off section while accessing the PCP list from zone->lock while freeing pages. 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 82776e528..c80312c85 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 0b4508f1aaaf6bab53ee3f3b4293890a121a4d32 Mon Sep 17 00:00:00 2001 +From dba8e6d7ab200ab5fe544af8c6093bcb3d215320 Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Mon, 28 May 2018 15:24:21 +0200 Subject: [PATCH 073/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Split the IRQ-off section while accessing the PCP list from zone->lock while freeing pages. 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 7a3d370dc..7c87221b5 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 8b7223102188e3162b9ba728d28c2eee2b78a779 Mon Sep 17 00:00:00 2001 +From abbdf6516e6ac19a92a3c08fc7a2f1ecc66c2bc6 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 28 May 2018 15:24:22 +0200 Subject: [PATCH 074/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 d2409f30e..a1fc227fa 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 6b0475b39641e91cc6ef93e8c330948b3b8c8e4a Mon Sep 17 00:00:00 2001 +From b3c42996e1092269d6fac0652b22140250f11b7b Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 21 Jun 2018 17:29:19 +0200 Subject: [PATCH 075/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz __free_slab() is invoked with disabled interrupts which increases the irq-off time while __free_pages() is doing the work. 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 26180603a..ab9b37015 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 0199b47ec0c654066fd33edf7f08b5266817b8b4 Mon Sep 17 00:00:00 2001 +From d3dec69695332f82af11a39b0fd327ad173c4715 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:29:37 -0500 Subject: [PATCH 076/319] mm: page_alloc: rt-friendly per-cpu pages -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz rt-friendly per-cpu pages: convert the irqs-off per-cpu locking method into a preemptible, explicit-per-cpu-locks method. 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 19c2ee0c9..c64323cfa 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 dbcd0cb860fd4d945f06f64b9ec092579871bf5f Mon Sep 17 00:00:00 2001 +From a03a4ee82ac46307acebdfe58e602aea9835a9a1 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:29:51 -0500 Subject: [PATCH 077/319] mm/swap: Convert to percpu locked -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Replace global locks (get_cpu + local_irq_save) with "local_locks()". Currently there is one of for "rotate" and one for "swap". 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 d46165a8e..e81660066 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 b615a51c11738fcd8a09c66740fb603e386875bc Mon Sep 17 00:00:00 2001 +From c48feb8fe1bad2aed0a15440a28da0bca8b5292a Mon Sep 17 00:00:00 2001 From: Luiz Capitulino Date: Fri, 27 May 2016 15:03:28 +0200 Subject: [PATCH 078/319] mm: perform lru_add_drain_all() remotely -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 84f6e17b0..8b9d2288f 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 389837345d64c1c381eca305e828b264327f3ebe Mon Sep 17 00:00:00 2001 +From 4e41266214b4e88cf9fb9d2c20b5bbc83dcfbdcc Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:30:13 -0500 Subject: [PATCH 079/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 1c7a3b0eb..d6ea3d194 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 dc3c6ccd34f3c8de681a9255ed8c2bfbaed18f5e Mon Sep 17 00:00:00 2001 +From 5af4ea849237914c63d3fd50079e6975aa28f9b2 Mon Sep 17 00:00:00 2001 From: Frank Rowand Date: Sat, 1 Oct 2011 18:58:13 -0700 Subject: [PATCH 080/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Without this patch, ARM can not use SPLIT_PTLOCK_CPUS if PREEMPT_RT_FULL=y because vectors_user_mapping() creates a 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 2e901a9c8..8a8ae6468 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 192ae1c9b15aa4c895b203333d6d51d4719fb9f7 Mon Sep 17 00:00:00 2001 +From 5bc9982e129b20ecb8f6c32d3d342af5087ffdae Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 25 Oct 2012 10:32:35 +0100 Subject: [PATCH 081/319] mm: Enable SLUB for RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Avoid the memory allocation in IRQ section 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 580006555..ec0d1ee7e 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 5b3608b4f8a4fa9dcdab2eca0b36234658cc1f08 Mon Sep 17 00:00:00 2001 +From c908b13d5d4d0e1154b41e93d9fb8349b7b7197a Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 9 Jan 2013 12:08:15 +0100 Subject: [PATCH 082/319] slub: Enable irqs for __GFP_WAIT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 a8e3d2a17..ed2644435 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 532e68352d09b125582eb796c2366bcef46c0f44 Mon Sep 17 00:00:00 2001 +From 41e0143022ef4180dafc14f033e72efa7ac652de Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 15 Apr 2015 19:00:47 +0200 Subject: [PATCH 083/319] slub: Disable SLUB_CPU_PARTIAL -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 9c48f2b40..113da1be4 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 24bbef6004d0d445a228dcc3b159314c3e5426b6 Mon Sep 17 00:00:00 2001 +From 5d6ef143b9e65be0cda54dcea9150f3cfa951ffd Mon Sep 17 00:00:00 2001 From: Yang Shi Date: Wed, 30 Oct 2013 11:48:33 -0700 Subject: [PATCH 084/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The following trace is triggered when running ltp oom test cases: 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 2f2f4a979..019abe937 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 f8036a517754394a4ab63db3ad57b3ab574ea19b Mon Sep 17 00:00:00 2001 +From ab73b56574e07b881a37aa1a4b0040a331352d7c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 28 Jan 2015 17:14:16 +0100 Subject: [PATCH 085/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz There are a few local_irq_disable() which then take sleeping locks. This patch converts them local locks. 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 9ee76cbee..c53227312 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 602b3755a425bfb42f9f1b86f8e5e05f9d2b86bb Mon Sep 17 00:00:00 2001 +From c8eeca08279f6363742db822856cc18ae1b7bdbd Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Tue, 22 Mar 2016 11:16:09 +0100 Subject: [PATCH 086/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz get_cpu_var() disables preemption and triggers a might_sleep() splat later. This is replaced with get_locked_var(). 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 7f3a5eab9..b8007fa0d 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 25f3aa370d7aec7ec346e563665a523bb244bc9f Mon Sep 17 00:00:00 2001 +From 58952b3995a060f4fc7fbc02552ac489639d565e Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 11 Dec 2018 21:53:43 +0100 Subject: [PATCH 087/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 @@ -19,7 +19,7 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 8 insertions(+) diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c -index e2d4b25c7aa4..9626ebb9e3c8 100644 +index 101f3ad0d6ad..0b0396261ca1 100644 --- a/arch/x86/mm/pageattr.c +++ b/arch/x86/mm/pageattr.c @@ -687,12 +687,18 @@ __split_large_page(struct cpa_data *cpa, pte_t *kpte, unsigned long address, 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 6019f6867..53db72628 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 bb781f6555553a52a39b4d589c88d1a4a1721164 Mon Sep 17 00:00:00 2001 +From 7f7e6402ea1895f3d2197122d4379c46a3a7fe14 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 25 Jan 2017 16:34:27 +0100 Subject: [PATCH 088/319] radix-tree: use local locks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 c023fb55e..11fcde42d 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 cef1d4f498e86d36b7c7b5290432ec0c089b842a Mon Sep 17 00:00:00 2001 +From bb113ab4c9dea8e53db84af84d34864c4f3e9b2d Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:29:34 -0500 Subject: [PATCH 089/319] timers: Prepare for full preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 708323a6c..d0490b50a 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 0b5b5f3f20cd3eafe3b93c1ef1d18b9306d0ed78 Mon Sep 17 00:00:00 2001 +From c87615728aaaf5a59575f49682ed6339a9cb116f Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 6 Nov 2011 12:26:18 +0100 Subject: [PATCH 090/319] x86: kvm Require const tsc for RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Non constant TSC is a nightmare on bare metal already, but with virtualization it becomes a complete disaster because the workarounds 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 a3bf27ede..6ad53d77b 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 2b09f96c8a4fe11260aa67ee49b63d7698fafe42 Mon Sep 17 00:00:00 2001 +From d46161e1a4fa5ff7b32deb64ac2e7698d0a56e49 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 4 Oct 2017 10:24:23 +0200 Subject: [PATCH 091/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 @@ -24,7 +24,7 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/drivers/pci/switch/switchtec.c b/drivers/pci/switch/switchtec.c -index ceb7ab3ba3d0..f4c39feb5c04 100644 +index 43431816412c..a8df847bedee 100644 --- a/drivers/pci/switch/switchtec.c +++ b/drivers/pci/switch/switchtec.c @@ -43,10 +43,11 @@ struct switchtec_user { 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 dc28321f2..2b99e854b 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 87862c5a8832825e1b19b5c84d8468beb37d38d7 Mon Sep 17 00:00:00 2001 +From 5048f6148f091b822260d482639172336a66cbc3 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 28 Oct 2013 12:19:57 +0100 Subject: [PATCH 092/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz | CC init/main.o |In file included from include/linux/mmzone.h:9:0, 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 763d1de6f..abd799170 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 58fa131cdf3f847c6724a688b161843bf3cbb2b2 Mon Sep 17 00:00:00 2001 +From 370c2439db620266b1bb104cc624841eec515e5c Mon Sep 17 00:00:00 2001 From: Daniel Wagner Date: Fri, 11 Jul 2014 15:26:11 +0200 Subject: [PATCH 093/319] work-simple: Simple work queue implemenation -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Provides a framework for enqueuing callbacks from irq context PREEMPT_RT_FULL safe. The callbacks are executed in kthread context. 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 46a78d361..f420c9fdc 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 56f5a7f5be4f4eab4701de1fad53f7d06a347549 Mon Sep 17 00:00:00 2001 +From 8c88098a7081d7cd354fb9e2a64598e6e10ce525 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 10 Sep 2018 18:00:31 +0200 Subject: [PATCH 094/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Dan Carpenter reported | smatch warnings: 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 a8b930eca..141e4d2ed 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 fdcca4158ad138c54f6be04b6843aa4116876cee Mon Sep 17 00:00:00 2001 +From ae24940034c02ed671e3a5cc9c4cf31ebfc24fed Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 11 Jan 2013 11:23:51 +0100 Subject: [PATCH 095/319] completion: Use simple wait queues -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Completions have no long lasting callbacks and therefor do not need the complex waitqueue variant. Use simple waitqueues which reduces the @@ -40,7 +40,7 @@ index e7075aaff1bb..1580464a9d5b 100644 res = -EINTR; if (res) { diff --git a/drivers/net/wireless/intersil/orinoco/orinoco_usb.c b/drivers/net/wireless/intersil/orinoco/orinoco_usb.c -index 2c7dd2a7350c..0e5cde31d9ac 100644 +index b704e4bce171..c364abaac548 100644 --- a/drivers/net/wireless/intersil/orinoco/orinoco_usb.c +++ b/drivers/net/wireless/intersil/orinoco/orinoco_usb.c @@ -697,8 +697,8 @@ static void ezusb_req_ctx_wait(struct ezusb_priv *upriv, 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 1b369a711..f94d1dc2f 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 1f99427b2635d8a0157544e26dde28cca81c5b84 Mon Sep 17 00:00:00 2001 +From 4ab27b1ec5f678a5dd444c6e1d3cdff6eeabfa12 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 16 Feb 2015 18:49:10 +0100 Subject: [PATCH 096/319] fs/aio: simple simple work -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 ab56b69fe..6ec519a36 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 252be885793422121dda4aec9e2219180d14e18e Mon Sep 17 00:00:00 2001 +From d349b691ea7fdefe94bb546a0533b63786c1857d Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 21 Aug 2013 17:48:46 +0200 Subject: [PATCH 097/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Joe Korty reported, that __irq_set_affinity_locked() schedules a workqueue while holding a rawlock which results in a might_sleep() 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 46b89e7b4..89cdc220d 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 1360063740900a626633ffbd74f1ecc99cc7111f Mon Sep 17 00:00:00 2001 +From 059e9b393e1838e4ad06a521a8e11c21e7ea7919 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 15 Nov 2017 17:29:51 +0100 Subject: [PATCH 098/319] time/hrtimer: avoid schedule_work() with interrupts disabled -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 de17f4a65..1f7f4b611 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 71c999b8882a041039be2f3dcdaa16c217ddfcfb Mon Sep 17 00:00:00 2001 +From 10f79182845e34e88499d6ef178e5a7e79a1f0b5 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 3 Jul 2018 11:25:41 +0200 Subject: [PATCH 099/319] hrtimer: consolidate hrtimer_init() + hrtimer_init_sleeper() calls -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz hrtimer_init_sleeper() calls require a prior initialisation of the hrtimer object with hrtimer_init(). Lets make the initialisation of diff --git a/debian/patches-rt/0100-hrtimers-Prepare-full-preemption.patch b/debian/patches-rt/0100-hrtimers-Prepare-full-preemption.patch index 9acc326b9..393c43d1e 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 a04b0dfa026adab75ac8797547ef368264245993 Mon Sep 17 00:00:00 2001 +From 46ce0d2ba1077d583aa36bef4e8ffb712246bf2e Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Fri, 3 Jul 2009 08:29:34 -0500 Subject: [PATCH 100/319] hrtimers: Prepare full preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Make cancellation of a running callback in softirq context safe against preemption. 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 8fb97395d..671b2ecc6 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 f4a30ca23f3c352dd834d9cd398022ece0fadd1e Mon Sep 17 00:00:00 2001 +From 11c94409951908175bc4fab549d79ee48bcbc102 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 3 Jul 2009 08:44:31 -0500 Subject: [PATCH 101/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. @@ -220,10 +220,10 @@ index e774a49176cc..012bc81879bf 100644 /* Get the next period (per-CPU) */ diff --git a/kernel/watchdog.c b/kernel/watchdog.c -index bbc4940f21af..defd493ba967 100644 +index 6d60701dc636..328620fe85f6 100644 --- a/kernel/watchdog.c +++ b/kernel/watchdog.c -@@ -483,7 +483,7 @@ static void watchdog_enable(unsigned int cpu) +@@ -485,7 +485,7 @@ static void watchdog_enable(unsigned int cpu) * Start the timer first to prevent the NMI watchdog triggering * before the timer has a chance to fire. */ 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 343edeeae..7ce7e2cc1 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 fe966abd3c6bb417ca4bac41124f80c76414f7d4 Mon Sep 17 00:00:00 2001 +From 80511ff61a43b8db5ac26d665ef32b73cbc03471 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 8 Jan 2019 12:31:06 +0100 Subject: [PATCH 102/319] sched/fair: Make the hrtimers non-hard again -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Since commit "sched/fair: Robustify CFS-bandwidth timer locking" both hrtimer can run in softirq context because now interrupts are disabled 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 23149f852..906996654 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 1829af263afc43931c3868ff77a4dab2dad625be Mon Sep 17 00:00:00 2001 +From 78baf86e1ae9ffb52fdbd93f63afc3fb3ecc3f26 Mon Sep 17 00:00:00 2001 From: Yang Shi Date: Mon, 16 Sep 2013 14:09:19 -0700 Subject: [PATCH 103/319] hrtimer: Move schedule_work call to helper thread -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz When run ltp leapsec_timer test, the following call trace is caught: 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 ab142a46b..32c03484c 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 43ee0863a6c13ad3494587d570d0bf286210f33f Mon Sep 17 00:00:00 2001 +From 4cb6829518eaf4e33821ad23eca2672efd3c8292 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 6 Dec 2018 10:15:13 +0100 Subject: [PATCH 104/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 23677641e..001d3f9a0 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 ed0602a145e7fef5837c80d42f2f236c9114683f Mon Sep 17 00:00:00 2001 +From 502c5fa30dc1a4c295e2f42049d7c79b0245db74 Mon Sep 17 00:00:00 2001 From: John Stultz Date: Fri, 3 Jul 2009 08:29:58 -0500 Subject: [PATCH 105/319] posix-timers: Thread posix-cpu-timers on -rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz posix-cpu-timer code takes non -rt safe locks in hard irq context. Move it to a thread. 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 406bce97e..890a802ba 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 f831a4cdf836e6ecd9d579c32b5cf7af54df9b89 Mon Sep 17 00:00:00 2001 +From 11ee26b0db121f202fdb0adaea13a37ae4ee31f9 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 31 May 2011 16:59:16 +0200 Subject: [PATCH 106/319] sched: Move task_struct cleanup to RCU -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz __put_task_struct() does quite some expensive work. We don't want to burden random tasks with that. 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 888d7d39b..2854c6f20 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 704aa74a16b788832e386e06e697ce337661026e Mon Sep 17 00:00:00 2001 +From 1ecb69a3b71549668399060338d4e216c3886d67 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 6 Jun 2011 12:12:51 +0200 Subject: [PATCH 107/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Put an upper limit on the number of tasks which are migrated per batch to avoid large latencies. 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 814ea4b6d..df1f96c6a 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 55e6ee67814ee43c99e6a18d88a36cc734a01258 Mon Sep 17 00:00:00 2001 +From 81ab4eb4f9ca9097217f44a6961e60ebb82725b1 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 6 Jun 2011 12:20:33 +0200 Subject: [PATCH 108/319] sched: Move mmdrop to RCU on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Takes sleeping locks and calls into the memory allocator, so nothing we want to do in task switch and oder atomic contexts. 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 c76be9916..325c8e7c1 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 9460855fbfc3ee2b111fb877befd65304f028290 Mon Sep 17 00:00:00 2001 +From 375e6c07eb8de47fab60360d59bbeb611508c54c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 21 Nov 2016 19:31:08 +0100 Subject: [PATCH 109/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 e8d148a84..ce2019e16 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 bfe1d3e5e10a87b70762389b764f620cedf66c2e Mon Sep 17 00:00:00 2001 +From 713f8459593a71106384c1a9ba33189561ea892e Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sat, 25 Jun 2011 09:21:04 +0200 Subject: [PATCH 110/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 448400cf5..678191a78 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 ea6144ee0e293f29e410ee033d98b2801ab73600 Mon Sep 17 00:00:00 2001 +From d8deeba7aff8ef76350524de5c15b1c12563e91d Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 7 Jun 2011 09:19:06 +0200 Subject: [PATCH 111/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz RT changes the rcu_preempt_depth semantics, so we cannot check for it in might_sleep(). 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 f58bb1101..de0361517 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 ca9ca6366a49a742e9144dc778e211e8777b2665 Mon Sep 17 00:00:00 2001 +From 875b7c458428cc65b17950157a9e804383864d31 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 22:51:33 +0200 Subject: [PATCH 112/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz RT does not increment preempt count when a 'sleeping' spinlock is locked. Update PREEMPT_LOCK_OFFSET for that case. 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 78cfe4ec7..f6f201703 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 e99a74a38d0c9a494df787b282c53fe333f2d92c Mon Sep 17 00:00:00 2001 +From 365d52b7071fa4453be6483864c31584995053b6 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 13 Sep 2011 16:42:35 +0200 Subject: [PATCH 113/319] sched: Disable TTWU_QUEUE on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The queued remote wakeup mechanism can introduce rather large latencies if the number of migrated tasks is high. Disable it for RT. 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 c29a1b5d7..c5f33a974 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 9178362c1367d35e1c7f618e8bd6f85ea42ff923 Mon Sep 17 00:00:00 2001 +From eb876f743020816179d1fc4b036e540d72c771f4 Mon Sep 17 00:00:00 2001 From: Steven Rostedt Date: Mon, 18 Mar 2013 15:12:49 -0400 Subject: [PATCH 114/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 28d9bb459..850483ad1 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 87a2398e611289d3a257ae0c0b11c9cdcba8a9c5 Mon Sep 17 00:00:00 2001 +From d5c888e692b5c34315ee9d6c6019dc054bb3650c Mon Sep 17 00:00:00 2001 From: Daniel Bristot de Oliveira Date: Mon, 26 Jun 2017 17:07:15 +0200 Subject: [PATCH 115/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 017a40bda..dc491a07b 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 0481fa6108576bced438b2d4ac9e5afaaf6b85c8 Mon Sep 17 00:00:00 2001 +From 54abe9a86c78a78b978f91e21929db155fc9f342 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 15 Jun 2011 12:36:06 +0200 Subject: [PATCH 116/319] hotplug: Lightweight get online cpus -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz get_online_cpus() is a heavy weight function which involves a global mutex. migrate_disable() wants a simpler construct which prevents only @@ -43,7 +43,7 @@ index aab4273810e3..e67645924404 100644 /* Wrappers which go away once all code is converted */ diff --git a/kernel/cpu.c b/kernel/cpu.c -index 8d6b8b5493f9..cf1f2eb6bb90 100644 +index 2d850eaaf82e..328d7bf67d2f 100644 --- a/kernel/cpu.c +++ b/kernel/cpu.c @@ -281,6 +281,21 @@ static int cpu_hotplug_disabled; 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 8bec95cc1..65754e25f 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 81a929dd2254c032daedf2ad8d9d8d3eb7b90397 Mon Sep 17 00:00:00 2001 +From b04beb8ffbac46b3e231d5032cabf43bb8638052 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 21:56:42 +0200 Subject: [PATCH 117/319] trace: Add migrate-disabled counter to tracing output -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Signed-off-by: Thomas Gleixner --- 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 8b8b8e396..2a2b9702a 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 10a72db76daf156c9b80018007e459c9280b61e5 Mon Sep 17 00:00:00 2001 +From b65e89f6b27831323b600bce37aa38ce596bdcd3 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 18:51:23 +0200 Subject: [PATCH 118/319] lockdep: Make it RT aware -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz teach lockdep that we don't really do softirqs on -RT. 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 3e121d553..085098d5f 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 7c86de325540ff5042f16a794a489107b8b1e1fd Mon Sep 17 00:00:00 2001 +From 7d6dc49f4a2794dc14d0fb1bb4f669616ac12d88 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Tue, 29 Nov 2011 20:18:22 -0500 Subject: [PATCH 119/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz When CONFIG_PREEMPT_RT_FULL is enabled, tasklets run as threads, and spinlocks turn are mutexes. But this can cause issues with 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 a6d32440e..95eeb85c2 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 5fa29130b2defd1c01e16ed8ac99aa31c6564dc9 Mon Sep 17 00:00:00 2001 +From 4f7f72bc0ff5be0e440cf01595c7b333d8f27f70 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 13 Nov 2011 17:17:09 +0100 Subject: [PATCH 120/319] softirq: Check preemption after reenabling interrupts -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz raise_softirq_irqoff() disables interrupts and wakes the softirq daemon, but after reenabling interrupts there is no preemption check, @@ -117,7 +117,7 @@ index 86a709954f5a..9c069ef83d6d 100644 return 0; } diff --git a/net/core/dev.c b/net/core/dev.c -index 1c0224e8fc78..77a757b363d1 100644 +index c1a3baf16957..45ff62d35a1f 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -2727,6 +2727,7 @@ static void __netif_reschedule(struct Qdisc *q) 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 45e20e8b5..ef4e03208 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 dda6c899e80d750a9cf7bf388cd0283d5a479bc7 Mon Sep 17 00:00:00 2001 +From 72daa94331fe79e1c1b596147ec920920f1cd87a Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 18 Jul 2011 13:59:17 +0200 Subject: [PATCH 121/319] softirq: Disable softirq stacks for RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Disable extra stacks for softirqs. We want to preempt softirqs and having them on special IRQ-stack does not make this easier. diff --git a/debian/patches-rt/0122-softirq-Split-softirq-locks.patch b/debian/patches-rt/0122-softirq-Split-softirq-locks.patch index 51bd7cf35..a1137d292 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 d4f1824f0a5dd2cc42903658466ff80436616fc7 Mon Sep 17 00:00:00 2001 +From d9b80fda665aeecc128e15d7771a29dcf01f3e36 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 4 Oct 2012 14:20:47 +0100 Subject: [PATCH 122/319] softirq: Split softirq locks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 2d0ece11f..53ee3bd93 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 4e1827d4c8a215eabba854198f63f395e9a86177 Mon Sep 17 00:00:00 2001 +From afeabb59361466c6e88b4e95603508d7375f4aeb Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 16 Jun 2017 19:03:16 +0200 Subject: [PATCH 123/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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,7 +19,7 @@ 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 77a757b363d1..c9e199232f21 100644 +index 45ff62d35a1f..b754adb14205 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -4529,11 +4529,9 @@ int netif_rx_ni(struct sk_buff *skb) 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 364bc4dac..e77f047ca 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 71036023dc35e2af50596bee6375aaae9fb33b45 Mon Sep 17 00:00:00 2001 +From a6531b867486fabcd2c6edc5ee1148497582e2b1 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 31 Jan 2012 13:01:27 +0100 Subject: [PATCH 124/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 425688a27..a83c42701 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 62f68fbe67a9142457a30320d7f0515287db58a9 Mon Sep 17 00:00:00 2001 +From e106eea6c2a414edbf8c47e0df2db6ea5a462c7f Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 20 Jan 2016 16:34:17 +0100 Subject: [PATCH 125/319] softirq: split timer softirqs out of ksoftirqd -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 fa8181662..4277ce32e 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 29faaa554b2303ff65a5a3e720f88a7eaf0460d8 Mon Sep 17 00:00:00 2001 +From aa3841d4115d3530ea77a590bbd13940881f5d37 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 18 Feb 2019 13:19:59 +0100 Subject: [PATCH 126/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 a4a2ca595..0fd2f85fe 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 013ad065472c892496cf826d70802dc88c44d86b Mon Sep 17 00:00:00 2001 +From cbcc7f169a523a3b55877cb01d10cd2e96654d3a Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 19 Feb 2019 16:49:29 +0100 Subject: [PATCH 127/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 31fc33e35..1780b725d 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 c686d579a73a3b4a061b8b4729ff581efe3da75f Mon Sep 17 00:00:00 2001 +From 0666dfeb48e54032c73ac843af0c02be5353c0dc Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 2 Dec 2015 11:34:07 +0100 Subject: [PATCH 128/319] rtmutex: trylock is okay on -RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 5a6767457..9405c765d 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 b9742e6bc784e27b49af5a584442a38d89587e2f Mon Sep 17 00:00:00 2001 +From 8b0d3978951a7ad39608fdcbfd291e6ba717f86a Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 15 Sep 2016 10:51:27 +0200 Subject: [PATCH 129/319] fs/nfs: turn rmdir_sem into a semaphore -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 672c58beb..412b4edbf 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 ed2e9afc28b9ab6676bee532a91b6f8cd6ac4fd6 Mon Sep 17 00:00:00 2001 +From 1ed0026aa6e48c934e7c081a04d36fe44b9b7fa1 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 10 Jun 2011 11:04:15 +0200 Subject: [PATCH 130/319] rtmutex: Handle the various new futex race conditions -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 2ae95da0a..3194ea960 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 0cd3c25ec5ed8f44777abcd60b992fd55f5a5dd6 Mon Sep 17 00:00:00 2001 +From 73f0f3253d80c3fc291c3198becd7054215494e3 Mon Sep 17 00:00:00 2001 From: Steven Rostedt Date: Tue, 14 Jul 2015 14:26:34 +0200 Subject: [PATCH 131/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Requeue with timeout causes a bug with PREEMPT_RT_FULL. 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 1c4e61269..4c5bfc28d 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 1e391bda4007233d76d225b9e6e4fdd465fab8e4 Mon Sep 17 00:00:00 2001 +From d85ad9d88f2afd388a77f8652da86554c45e9bc2 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 1 Mar 2013 11:17:42 +0100 Subject: [PATCH 132/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz In exit_pi_state_list() we have the following locking construct: 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 97770536a..28f0a22ee 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 3a12e37a58075cd73b24e5d10ecfedda0bb55d84 Mon Sep 17 00:00:00 2001 +From 7706f24354f883b341ed0ed1535167264b7e2315 Mon Sep 17 00:00:00 2001 From: Grygorii Strashko Date: Tue, 21 Jul 2015 19:43:56 +0300 Subject: [PATCH 133/319] pid.h: include atomic.h -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz This patch fixes build error: CC kernel/pid_namespace.o 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 34d823bc2..f0a2ba620 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 f35c6e11a94c7484c2aa30fc64b63b5a11fc8dfb Mon Sep 17 00:00:00 2001 +From b7f97d2d6bca4bbc87c6aaaac3847a6bb96d8221 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 22 Dec 2016 17:28:33 +0100 Subject: [PATCH 134/319] arm: include definition for cpumask_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz This definition gets pulled in by other files. With the (later) split of RCU and spinlock.h it won't compile anymore. 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 b7c8e1f9c..5dfa9ec65 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 a5680695b591e9138b6ddad150a8a375f7dd3dd8 Mon Sep 17 00:00:00 2001 +From df43e09336267ae6fd3e9e0f754a1c13bc90dabc Mon Sep 17 00:00:00 2001 From: "Wolfgang M. Reimer" Date: Tue, 21 Jul 2015 16:20:07 +0200 Subject: [PATCH 135/319] locking: locktorture: Do NOT include rwlock.h directly -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Including rwlock.h directly will cause kernel builds to fail if CONFIG_PREEMPT_RT_FULL is defined. The correct header file 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 e966be4bd..07f8a5452 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 3084b89e004344a1e78fdc772c45479dab746489 Mon Sep 17 00:00:00 2001 +From 8d29fec3b1d6060351dadfed4d8e4555ee42ada2 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 9 Jun 2011 11:43:52 +0200 Subject: [PATCH 136/319] rtmutex: Add rtmutex_lock_killable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Add "killable" type to rtmutex. We need this since rtmutex are used as "normal" mutexes which do use this type. 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 419662032..6e1df75dc 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 956d097b23e3e2a88975189bf2fc9cb264f048c7 Mon Sep 17 00:00:00 2001 +From 3543c69b949257b8409b0ebb45b2e369afcbeb9b Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sat, 1 Apr 2017 12:50:59 +0200 Subject: [PATCH 137/319] rtmutex: Make lock_killable work -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Locking an rt mutex killable does not work because signal handling is restricted to TASK_INTERRUPTIBLE. 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 5da0bf7cb..f38a46e5c 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 d813c8be52aa936f41b4cdd2ac8c3f32fbac1166 Mon Sep 17 00:00:00 2001 +From 144cea745b056040b555dc8819e31a8ae76714c2 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 29 Jun 2011 19:34:01 +0200 Subject: [PATCH 138/319] spinlock: Split the lock types header -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 diff --git a/debian/patches-rt/0139-rtmutex-Avoid-include-hell.patch b/debian/patches-rt/0139-rtmutex-Avoid-include-hell.patch index cac598643..3653623cf 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 31d43fa8c5ffd110ebe5501c6dfa154d6f280979 Mon Sep 17 00:00:00 2001 +From 20ec86befc19cae2065e4b8e3dcda396081489eb Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 29 Jun 2011 20:06:39 +0200 Subject: [PATCH 139/319] rtmutex: Avoid include hell -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 d0cb51434..6e2f42121 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 ebe0774f3283782a6e2b45ef217624fea787efdd Mon Sep 17 00:00:00 2001 +From 0c9090c07884c6d1e32a8def9f3c7fa5e889f4e3 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 26 Feb 2019 16:56:02 +0100 Subject: [PATCH 140/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The RCU header pulls in spinlock.h and fails due not yet defined types: 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 6cd4afc1c..266f69470 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 bd8fa60c2d5fbdb72d940ea494db255342022b7b Mon Sep 17 00:00:00 2001 +From 3340a41255c128e25956abc1370f0e5d1b702dda Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 16:14:22 +0200 Subject: [PATCH 141/319] rtmutex: Provide rt_mutex_slowlock_locked() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz This is the inner-part of rt_mutex_slowlock(), required for rwsem-rt. 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 f3a85c78e..adc99f4ca 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 775ff55569e9c312593ff9dab042f609f9eb66f0 Mon Sep 17 00:00:00 2001 +From e6cb2f5352cc7339044142820ecdc55d45f97ce5 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 16:36:39 +0200 Subject: [PATCH 142/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Required for lock implementation ontop of rtmutex. 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 c1ecce496..7a2c12f98 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 49d6c96f9a4e33031497734adba2275935eada9a Mon Sep 17 00:00:00 2001 +From 4972c101326c6e36a9f541deeab9b56e3bef9932 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 17:11:19 +0200 Subject: [PATCH 143/319] rtmutex: add sleeping lock implementation -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Signed-off-by: Thomas Gleixner Signed-off-by: Sebastian Andrzej Siewior 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 fa4e70962..7e9fa40d7 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 e2b6310d709604f0b4521118eebf64a2109bee5f Mon Sep 17 00:00:00 2001 +From ac391538d1f4dff13baf839ada70bb001c1462dd Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 17:17:03 +0200 Subject: [PATCH 144/319] rtmutex: add mutex implementation based on rtmutex -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Signed-off-by: Thomas Gleixner Signed-off-by: Sebastian Andrzej Siewior 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 55fbe6f5c..b4ab68dea 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 4129defdfb91febbac91b10c48acde5ee137c9a7 Mon Sep 17 00:00:00 2001 +From b0c41a7abe90071ea550299c767852ba0d55a41f Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 17:28:34 +0200 Subject: [PATCH 145/319] rtmutex: add rwsem implementation based on rtmutex -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 c90502704..053651ba5 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 08c9fd49c85c7d0a7e16fab4636e010ab107ad0d Mon Sep 17 00:00:00 2001 +From c4d9a03dadd2e41e7670cbd53f91f7c08e3a3ce6 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 17:18:06 +0200 Subject: [PATCH 146/319] rtmutex: add rwlock implementation based on rtmutex -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The implementation is bias-based, similar to the rwsem implementation. 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 af553cda6..28aac0439 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 5afbc726a0f6712cdcb25f4f8f7d51b5d70acf40 Mon Sep 17 00:00:00 2001 +From 997abbcc33dcad79e5670265b72051ddc3cfdce7 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 11 Jan 2019 21:16:31 +0100 Subject: [PATCH 147/319] rtmutex/rwlock: preserve state like a sleeping lock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 8c7a8925b..5149f0a12 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 39c84b2a950c19cdc5f92a2e3cf5ad888c385e35 Mon Sep 17 00:00:00 2001 +From c55bc0df82ccf91b888e73d888a1afb8c8cbc581 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 12 Oct 2017 17:31:14 +0200 Subject: [PATCH 148/319] rtmutex: wire up RT's locking -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Signed-off-by: Thomas Gleixner Signed-off-by: Sebastian Andrzej Siewior 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 9d9f250e9..d8e36a9f5 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 ce20b77d7a96117cc50cf64c753ad122b284615c Mon Sep 17 00:00:00 2001 +From 01d5bbd35ae2a2b3350c42e526b0199fb3836e48 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 12 Oct 2017 17:34:38 +0200 Subject: [PATCH 149/319] rtmutex: add ww_mutex addon for mutex-rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Signed-off-by: Sebastian Andrzej Siewior --- 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 5dab60b9e..0e95f339e 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 64941e7799938ddb759928a74bd4e40f5eee2443 Mon Sep 17 00:00:00 2001 +From c924e85c609186a184aecf090ef2251090f84d6b Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 29 Jun 2011 14:58:57 +0200 Subject: [PATCH 150/319] kconfig: Add PREEMPT_RT_FULL -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Introduce the final symbol for PREEMPT_RT_FULL. 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 87db2e889..66c6615cb 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 e56a3ddda95173ad3acab9e9d3880dfcf5288934 Mon Sep 17 00:00:00 2001 +From a0a7e75d70aae3240d9a6514b4fcfa1d7e1c9c1b Mon Sep 17 00:00:00 2001 From: Mikulas Patocka Date: Mon, 13 Nov 2017 12:56:53 -0500 Subject: [PATCH 151/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 3e443e999..ffcc9433a 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 86cac26a702227800c53ab6583cd396151de9b8e Mon Sep 17 00:00:00 2001 +From ea61ac000de8f214ddfdf1ac240ea9776c84c5db Mon Sep 17 00:00:00 2001 From: Scott Wood Date: Fri, 4 Jan 2019 15:33:21 -0500 Subject: [PATCH 152/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz __down_read() bypasses the rtmutex frontend to call rt_mutex_slowlock_locked() directly, and thus it needs to call 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 a753fd1c2..4d859c03c 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 03e2d66f2ae87a596892829b69b92763f74f4c04 Mon Sep 17 00:00:00 2001 +From a6f0c5a56834d5fe16591a7fe6e5586f35ca6a00 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 16 Nov 2017 16:48:48 +0100 Subject: [PATCH 153/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 73fb53e19..52b40723e 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 8d74d6f05755783b08058cf62506b794116f4d92 Mon Sep 17 00:00:00 2001 +From e5ddc20b573d59f3760489cedf7080c8634ae241 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 29 Aug 2013 18:21:04 +0200 Subject: [PATCH 154/319] ptrace: fix ptrace vs tasklist_lock race -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz As explained by Alexander Fyodorov : 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 d9990f3f4..e16caa11f 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 ac8b43984252b61d87433b2664f1225135a6ae51 Mon Sep 17 00:00:00 2001 +From f030909005b15efe1f934a507d10971242608d81 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 21 Sep 2017 14:25:13 +0200 Subject: [PATCH 155/319] rtmutex: annotate sleeping lock context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 0d39fa1aa..addd15583 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 e2610a2a0fb6fb2138336d411c65ec23f1c963e9 Mon Sep 17 00:00:00 2001 +From 517e8491cd9ecd425b48019a9303e744ed3200b6 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 5 Jul 2018 14:44:51 +0200 Subject: [PATCH 156/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 1df15490f..e66967ea2 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 5b9c8f815e46c5ac20c8663a7e01e2a546e11037 Mon Sep 17 00:00:00 2001 +From f4b5fe79d518718706341e443c11b7c5fd0f7bd4 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 4 Aug 2017 17:40:42 +0200 Subject: [PATCH 157/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Upstream uses arch_spinlock_t within spinlock_t and requests that spinlock_types.h header file is included first. diff --git a/debian/patches-rt/0158-rcu-Frob-softirq-test.patch b/debian/patches-rt/0158-rcu-Frob-softirq-test.patch index b8058dcf4..007cc497b 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 f85218846b07974817abd1dd361a01207911133a Mon Sep 17 00:00:00 2001 +From 2e1b076839800d30698ad2fdfad982acb9acaac9 Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Sat, 13 Aug 2011 00:23:17 +0200 Subject: [PATCH 158/319] rcu: Frob softirq test -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz With RT_FULL we get the below wreckage: 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 056ed58b4..a174296a2 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 efa94839087590d84d45a6c77b1ba0714f8a8a8f Mon Sep 17 00:00:00 2001 +From 4e202b7ae394bcf87490c85f7edf3c528a9e93ed Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 5 Oct 2011 11:59:38 -0700 Subject: [PATCH 159/319] rcu: Merge RCU-bh into RCU-preempt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The Linux kernel has long RCU-bh read-side critical sections that intolerably increase scheduling latency under mainline's RCU-bh rules, 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 03ef518de..897a4371f 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 e2468ac4518753aa765f669dc553126ab5ed8372 Mon Sep 17 00:00:00 2001 +From 2342184568653d14130d3ce56aec7fcf39e5bf5e Mon Sep 17 00:00:00 2001 From: "Paul E. McKenney" Date: Wed, 5 Oct 2011 11:45:18 -0700 Subject: [PATCH 160/319] rcu: Make ksoftirqd do RCU quiescent states -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Implementing RCU-bh in terms of RCU-preempt makes the system vulnerable to network-based denial-of-service attacks. This patch therefore 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 470a0cf74..c56c114ce 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 47dd0d466654b4e15710c38340022485c2f5cc15 Mon Sep 17 00:00:00 2001 +From 7f9bb7afbe82ac923286da26040cd1aea23359aa Mon Sep 17 00:00:00 2001 From: "Paul E. McKenney" Date: Mon, 4 Nov 2013 13:21:10 -0800 Subject: [PATCH 161/319] rcu: Eliminate softirq processing from rcutree -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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, 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 d092f5e6d..55bbf193b 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 799124bea9ca6de248f6295282fb5b6f925db812 Mon Sep 17 00:00:00 2001 +From 720a2bda656758067e8cf4f33a33a4e3900133e0 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 13 Sep 2017 14:43:41 +0200 Subject: [PATCH 162/319] srcu: use cpu_online() instead custom check -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 663efc91f..d3827e82a 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 27c41d1644ba6495be3b4ed8c7e466cf309116f4 Mon Sep 17 00:00:00 2001 +From 35f458b1ba68a97ce57a87ae2cf6947b271abad2 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 12 Oct 2017 18:37:12 +0200 Subject: [PATCH 163/319] srcu: replace local_irqsave() with a locallock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 790f0ba6c..f4b2c8a39 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 22f6bb02afdf2907e79656e8aeff7941d69688a3 Mon Sep 17 00:00:00 2001 +From 266bcdc7bf5bb5736cd2b6896166438f40cf815a Mon Sep 17 00:00:00 2001 From: Julia Cartwright Date: Wed, 12 Oct 2016 11:21:14 -0500 Subject: [PATCH 164/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The forcing of an expedited grace period is an expensive and very RT-application unfriendly operation, as it forcibly preempts all running 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 f372af8fb..9d702b581 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 5b341a3d891d21f25f350ff8eb30ba2e80de4ed4 Mon Sep 17 00:00:00 2001 +From 3d60ca27280fe12e0b29927dad783e20bcc391df Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 28 Jul 2011 13:32:57 +0200 Subject: [PATCH 165/319] tty/serial/omap: Make the locking RT aware -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 5e9e669e3..7bfe94d06 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 f4135db75c4faa91667301a294948874aafce06b Mon Sep 17 00:00:00 2001 +From 8122f816435704dfd2fdd2ca02b8399ee22d626c Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 8 Jan 2013 21:36:51 +0100 Subject: [PATCH 166/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 502d0aaa7..5ffd08bdf 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,4 +1,4 @@ -From 66efa8efe10d5249b886ba981b6a0225f5c92598 Mon Sep 17 00:00:00 2001 +From f5a9aefa5442ede43dbf4fa85d3673483e866d61 Mon Sep 17 00:00:00 2001 From: Kurt Kanzenbach Date: Mon, 24 Sep 2018 10:29:01 +0200 Subject: [PATCH 167/319] tty: serial: pl011: explicitly initialize the flags @@ -6,7 +6,7 @@ Subject: [PATCH 167/319] tty: serial: pl011: explicitly initialize the flags 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Silence the following gcc warning: 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 66dd67805..b0fe0de80 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 41cfb37745af85f9b8e385a0d1b79148e599089c Mon Sep 17 00:00:00 2001 +From d8240c961e33c6da86bdbd96a67440a5d944c415 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Wed, 14 Dec 2011 13:05:54 +0100 Subject: [PATCH 168/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Beyond the warning: 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 3f24b7906..b8189cdeb 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 8ed21eef043e64b2df5e6fc12408c07e22278278 Mon Sep 17 00:00:00 2001 +From 67a72f4debbad523744a56e90d284d809e830f82 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 11 Apr 2016 16:55:02 +0200 Subject: [PATCH 169/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 081db79db..ea1b0e079 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 eca9904f0437bf12bcf97c50157a8609c76e0c2d Mon Sep 17 00:00:00 2001 +From fb0e4a895ad79687d4a90cf901ac9ce349f6818c Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Wed, 23 Nov 2016 16:29:32 +0100 Subject: [PATCH 170/319] locking/percpu-rwsem: Remove preempt_disable variants -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Effective revert commit: 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 d066126ac..45d5dd5b7 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 0c558dcf23a7c38a5b708271c1a5f27a46dc431b Mon Sep 17 00:00:00 2001 +From 9be3653b65220de706317fe352f73449254b0884 Mon Sep 17 00:00:00 2001 From: Yong Zhang Date: Tue, 15 May 2012 13:53:56 +0800 Subject: [PATCH 171/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz User preempt_*_rt instead of local_irq_*_rt or otherwise there will be warning on ARM like below: 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 c994c9f70..76fe30cb4 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 3e9ea8f396df9728ed7114c51326a58498a21490 Mon Sep 17 00:00:00 2001 +From e78e0f017d742dada34166305b5b965bc26ddef0 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 13 Sep 2017 12:32:34 +0200 Subject: [PATCH 172/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 26ecd0a0d..3eaa6d55c 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 f127aa0f4e6708ea9a7a25d0b6a7948476ec8628 Mon Sep 17 00:00:00 2001 +From 01e7eacd56ecebd6290b2fa1bf421cf2669b3916 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 20 Oct 2017 11:29:53 +0200 Subject: [PATCH 173/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 4901e856b..7216e5dff 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 4f4518ed98107afff0e736ec18ef34cbcaf3fc63 Mon Sep 17 00:00:00 2001 +From 78a2f867f7f382fe3a1c20d4be00588e54d47242 Mon Sep 17 00:00:00 2001 From: Julia Cartwright Date: Mon, 7 May 2018 08:58:57 -0500 Subject: [PATCH 174/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Currently, the squashfs multi_cpu decompressor makes use of get_cpu_ptr()/put_cpu_ptr(), which unconditionally disable preemption 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 4973395c7..3efea3e14 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 abe00f50ce5d7caf0101ac496ee633e60fbb9cdf Mon Sep 17 00:00:00 2001 +From 472de6450cf587e0ada3ba8fb8e2944c605981aa Mon Sep 17 00:00:00 2001 From: Daniel Wagner Date: Tue, 17 Feb 2015 09:37:44 +0100 Subject: [PATCH 175/319] thermal: Defer thermal wakups to threads -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz On RT the spin lock in pkg_temp_thermal_platfrom_thermal_notify will call schedule while we run in irq context. 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 b9cf78edc..5ca427ed2 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 fc0eb24ab46ff0b84d3ce15fe081bdc42b5c2854 Mon Sep 17 00:00:00 2001 +From 50d08167a197542caf75d7b8885fc7b4cf32f3e5 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 11 Dec 2018 15:10:33 +0100 Subject: [PATCH 176/319] x86/fpu: Disable preemption around local_bh_disable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 e188b9c91..a7e89fd39 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 4c460987a7977a9f54c174eac82230d282d9ba78 Mon Sep 17 00:00:00 2001 +From 55f9cf79b55c65f9e7858b99be1e12635c64a990 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 8 Jul 2011 16:35:35 +0200 Subject: [PATCH 177/319] fs/epoll: Do not disable preemption on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 1bb131b0e..522e49aa8 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 92026444f278a09f16c6c29598ae56bc62653358 Mon Sep 17 00:00:00 2001 +From 32e65f9533004d40e52f6a101ac651c16392f178 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 12 Jul 2011 11:39:36 +0200 Subject: [PATCH 178/319] mm/vmalloc: Another preempt disable region which sucks -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Avoid the preempt disable version of get_cpu_var(). The inner-lock should provide enough serialisation. 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 f3e652438..8df63dc91 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 75e61163121da99d7139f346674c9e5b0f340d35 Mon Sep 17 00:00:00 2001 +From 736284010de7d42e40ecf1250dfb1f45e5a94d4e Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 9 Apr 2014 10:37:23 +0200 Subject: [PATCH 179/319] block: mq: use cpu_light() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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(). 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 b254bd776..6e0c22cf5 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 d56abf7a0fea61d827e0de458b0e0af80655873d Mon Sep 17 00:00:00 2001 +From 76fb1c9c1652d4dec489aa1611a9071f1b42b5b0 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 14 Jul 2015 14:26:34 +0200 Subject: [PATCH 180/319] block/mq: do not invoke preempt_disable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz preempt_disable() and get_cpu() don't play well together with the sleeping locks it tries to allocate later. 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 904aab651..938b3a98f 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 a5c48a726c23c81ad7510537e97d40f32f00cd75 Mon Sep 17 00:00:00 2001 +From eb88fbf4264f3c4776aeeec310568e4bc79ced80 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 29 Jan 2015 15:10:08 +0100 Subject: [PATCH 181/319] block/mq: don't complete requests via IPI -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The IPI runs in hardirq context and there are sleeping locks. This patch moves the completion into a workqueue. 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 01d5e97eb..28a8c07a6 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 a2f3a7844fe2a2602eadb79ac50141113e94f19e Mon Sep 17 00:00:00 2001 +From 283bc898b7a8aeb35a5022147d72342a7b77170c Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 6 Apr 2010 16:51:31 +0200 Subject: [PATCH 182/319] md: raid5: Make raid5_percpu handling RT aware -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz __raid_run_ops() disables preemption with get_cpu() around the access to the raid5_percpu variables. That causes scheduling while atomic diff --git a/debian/patches-rt/0183-rt-Introduce-cpu_chill.patch b/debian/patches-rt/0183-rt-Introduce-cpu_chill.patch index 70f29d575..c6916eb8f 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 ba70887d86b2aadc1a78d2c649b6dcc2db9ba9e4 Mon Sep 17 00:00:00 2001 +From e495449b207a0278e1ea08626dbea152b9cfa1ca Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 7 Mar 2012 20:51:03 +0100 Subject: [PATCH 183/319] rt: Introduce cpu_chill() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Retry loops on RT might loop forever when the modifying side was preempted. Add cpu_chill() to replace cpu_relax(). cpu_chill() 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 2c6bdbeb8..5dfa97d86 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 2adab83a434fa5f5bba59cfb60e4da7da2910062 Mon Sep 17 00:00:00 2001 +From 85650b9854b0d27ec65285b4f60cc63bb100669f Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 19 Feb 2019 16:59:15 +0100 Subject: [PATCH 184/319] hrtimer: Don't lose state in cpu_chill() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 2d0451607..ebb4e5f7f 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 0a0d701dd9255c4b04994a2248b8d3751e31e950 Mon Sep 17 00:00:00 2001 +From c5e6ba548ce7b077f2c912fa506401cccf68d85d Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 26 Feb 2019 12:31:10 +0100 Subject: [PATCH 185/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 fc238cbac..9aadab797 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 816ac51c679faf08419006a8995b97c87e0c5c46 Mon Sep 17 00:00:00 2001 +From 57df777639aebaef79d278a5dfa3d749c5884099 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 13 Mar 2018 13:49:16 +0100 Subject: [PATCH 186/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 2b2187d0e..b1c90d228 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 292e48d01d48932d99df9e83852d69bfb61a6886 Mon Sep 17 00:00:00 2001 +From b86763e1cdbb47e8674463b0be6daf0c5c09cabf Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 20 Dec 2012 18:28:26 +0100 Subject: [PATCH 187/319] block: Use cpu_chill() for retry loops -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 8a36093bb..fd5101feb 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 5dc500bf23f6371abc21bd10dc41f3202f0597ed Mon Sep 17 00:00:00 2001 +From e4c2d46c06d5e1181e6ab26038689d1c112b9d0b Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 7 Mar 2012 21:00:34 +0100 Subject: [PATCH 188/319] fs: dcache: Use cpu_chill() in trylock loops -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 f59ae30e0..7f2dcc1a2 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 b8141f1c760ea975d899cf29b5d218f2dddacbda Mon Sep 17 00:00:00 2001 +From cef4fa5aa7e55b664ae92cd88f7e09b2214c5d7f Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 7 Mar 2012 21:10:04 +0100 Subject: [PATCH 189/319] net: Use cpu_chill() instead of cpu_relax() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 f3aabbd69..052b5126d 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 0c8cd26ab04b1cb1503429536154336d3a92f1b5 Mon Sep 17 00:00:00 2001 +From fc8e48cfb7705d33f133b8b927ec35a1c95af05d Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 14 Sep 2016 14:35:49 +0200 Subject: [PATCH 190/319] fs/dcache: use swait_queue instead of waitqueue -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. diff --git a/debian/patches-rt/0191-workqueue-Use-normal-rcu.patch b/debian/patches-rt/0191-workqueue-Use-normal-rcu.patch index 362da8e28..d52e96e14 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 9e10a8e692e112f54a451f9c0e2ec35bdc9fd4fd Mon Sep 17 00:00:00 2001 +From 10e5e4ecf5dab22ad4b607ba4222dce12d256c0e Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 24 Jul 2013 15:26:54 +0200 Subject: [PATCH 191/319] workqueue: Use normal rcu -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 e069f8e65..260434ac7 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 5dd89977f6471e9dd1a807f1c6063bb6384ec3cf Mon Sep 17 00:00:00 2001 +From 9c52df57d5e211043c5a5b6820933f14bdc83525 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 21:42:26 +0200 Subject: [PATCH 192/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 89f57c094..8807a918d 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 4d853bb1de88920f53a2ce4b1588cf25a112d6c1 Mon Sep 17 00:00:00 2001 +From e86a6ec786f05699d6e5490129ae8e2ede3bbe5e Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Mon, 1 Jul 2013 11:02:42 +0200 Subject: [PATCH 193/319] workqueue: Prevent workqueue versus ata-piix livelock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 67f564cae..811160d97 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 5368851a09ec1c6318e839214f7edcdf21b3a961 Mon Sep 17 00:00:00 2001 +From 297b2be7a99ed420743272591f3bc082f5d0bd6f Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 22 Jun 2011 19:47:03 +0200 Subject: [PATCH 194/319] sched: Distangle worker accounting from rqlock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 diff --git a/debian/patches-rt/0195-debugobjects-Make-RT-aware.patch b/debian/patches-rt/0195-debugobjects-Make-RT-aware.patch index b79e780aa..44955ce22 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 f21322916ff581c43b89885c1271ba24f86cc2e5 Mon Sep 17 00:00:00 2001 +From 5240d73278022cb45b35b96e5c56752146bc1b17 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 17 Jul 2011 21:41:35 +0200 Subject: [PATCH 195/319] debugobjects: Make RT aware -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Avoid filling the pool / allocating memory with irqs off(). diff --git a/debian/patches-rt/0196-seqlock-Prevent-rt-starvation.patch b/debian/patches-rt/0196-seqlock-Prevent-rt-starvation.patch index 71a9b8688..18e33be65 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 20bfbd138f08356f255e87a13b4f3f1d1588d845 Mon Sep 17 00:00:00 2001 +From 8495d9ef448ef2ad328ed925e41605778ee51cd4 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 22 Feb 2012 12:03:30 +0100 Subject: [PATCH 196/319] seqlock: Prevent rt starvation -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz If a low prio writer gets preempted while holding the seqlock write locked, a high prio reader spins forever on RT. 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 aa526bd84..97373ba08 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 166f76bae8984db2f7b0a75215a214cffc29fb89 Mon Sep 17 00:00:00 2001 +From 2ca7937e235cfe226669eea396294adeee79c34e Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Wed, 18 Feb 2015 16:05:28 +0100 Subject: [PATCH 197/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 794ee290e..56f2f7fee 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 c2a100b10eef0a1804cbc466d4d900c5fa02b31c Mon Sep 17 00:00:00 2001 +From ac577d42ef159cea2e3512a52c9dbc43de1c7c5d Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 12 Jul 2011 15:38:34 +0200 Subject: [PATCH 198/319] net: Use skbufhead with raw lock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 @@ -53,7 +53,7 @@ index 25407c206e73..d4d7aea13cc6 100644 struct lock_class_key *class) { diff --git a/net/core/dev.c b/net/core/dev.c -index c9e199232f21..0e70f9a8dcc9 100644 +index b754adb14205..985d1f703383 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -218,14 +218,14 @@ static inline struct hlist_head *dev_index_hash(struct net *net, int ifindex) diff --git a/debian/patches-rt/0199-net-move-xmit_recursion-to-per-task-variable-on-RT.patch b/debian/patches-rt/0199-net-move-xmit_recursion-to-per-task-variable-on-RT.patch index 41c9b468e..c42012160 100644 --- a/debian/patches-rt/0199-net-move-xmit_recursion-to-per-task-variable-on-RT.patch +++ b/debian/patches-rt/0199-net-move-xmit_recursion-to-per-task-variable-on-RT.patch @@ -1,8 +1,8 @@ -From 3c6601516d097cea1fe870fe8fa399bc99f02f76 Mon Sep 17 00:00:00 2001 +From 2b3882e6dc68a87b4b958396528cf0ccf1d9c5b4 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 13 Jan 2016 15:55:02 +0100 Subject: [PATCH 199/319] net: move xmit_recursion to per-task variable on -RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz A softirq on -RT can be preempted. That means one task is in __dev_queue_xmit(), gets preempted and another task may enter @@ -198,7 +198,7 @@ index a38a2c2a8fe4..756fed8f5994 100644 int pagefault_disabled; #ifdef CONFIG_MMU diff --git a/net/core/dev.c b/net/core/dev.c -index 0e70f9a8dcc9..176a3c9531c7 100644 +index 985d1f703383..b5dc8a521fd2 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -3538,8 +3538,10 @@ static void skb_update_prio(struct sk_buff *skb) @@ -249,7 +249,7 @@ index 0e70f9a8dcc9..176a3c9531c7 100644 queue->dev = dev; #ifdef CONFIG_BQL diff --git a/net/core/filter.c b/net/core/filter.c -index 9daf1a4118b5..48140f8c010a 100644 +index 40b3af05c883..205cd1bb9bc2 100644 --- a/net/core/filter.c +++ b/net/core/filter.c @@ -2000,7 +2000,7 @@ static inline int __bpf_tx_skb(struct net_device *dev, struct sk_buff *skb) 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 1bc78bdef..b3dc692ce 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 f29055094f4f6c99c2223a8ab25e89061f9a23f3 Mon Sep 17 00:00:00 2001 +From 621f9c07474a04eaee9cbb799a037e462a5b692c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 20 Jan 2016 15:39:05 +0100 Subject: [PATCH 200/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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,7 +72,7 @@ index 27a4bb2303d0..25bcf2f2714b 100644 * This function must run with irqs disabled! */ diff --git a/net/core/dev.c b/net/core/dev.c -index 176a3c9531c7..2dad518c625a 100644 +index b5dc8a521fd2..ecdf7534ef13 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -6368,7 +6368,7 @@ static __latent_entropy void net_rx_action(struct softirq_action *h) 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 7268ee064..a11724088 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 a3dbf5473d5aa93714aa123eea6140993e5d47bd Mon Sep 17 00:00:00 2001 +From 136dfe4108059e637cdcc04f03dbca6637386429 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 30 Mar 2016 13:36:29 +0200 Subject: [PATCH 201/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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,7 +22,7 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 4 insertions(+) diff --git a/net/core/dev.c b/net/core/dev.c -index 2dad518c625a..cb0cdd4daf02 100644 +index ecdf7534ef13..6c6c1c6d534b 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -3466,7 +3466,11 @@ static inline int __dev_xmit_skb(struct sk_buff *skb, struct Qdisc *q, 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 26e944cf1..7b706582d 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 3a53ba169527a1d52a7d427ad5907f7d4b176ad2 Mon Sep 17 00:00:00 2001 +From 41d62c0f01ed3d5b94cee9c89dba5a3ba0947e42 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 14 Sep 2016 17:36:35 +0200 Subject: [PATCH 202/319] net/Qdisc: use a seqlock instead seqcount -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 82756991a..976df7b9e 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,4 +1,4 @@ -From 3e37649a09f99ac729e8b3f827f89ac46a1a3f6b Mon Sep 17 00:00:00 2001 +From 7ddcdec24f0b8d364eed41710f1a2a821979e5a1 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 31 Aug 2016 17:21:56 +0200 Subject: [PATCH 203/319] net: add back the missing serialization in @@ -6,7 +6,7 @@ Subject: [PATCH 203/319] net: add back the missing serialization in 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 eb5e8c15f..544ba2714 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 91ab1a173c2ca89ea2d1badb638766bdca1354a2 Mon Sep 17 00:00:00 2001 +From abcb99faf244ae2e089bd1933e80f0d8216e00b8 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 31 Aug 2016 17:54:09 +0200 Subject: [PATCH 204/319] net: add a lock around icmp_sk() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 87a102c34..deee352e1 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 8d7d1348452665b2d25f8960b189bce86ebacdab Mon Sep 17 00:00:00 2001 +From 6da7a2e74d33df8e51178520e3945133a97ee419 Mon Sep 17 00:00:00 2001 From: Steven Rostedt Date: Tue, 6 Dec 2016 17:50:30 -0500 Subject: [PATCH 205/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz A customer hit a crash where the napi sd->poll_list became corrupted. The customer had the bnx2x driver, which does a @@ -53,7 +53,7 @@ index 5de4b66e11fe..1d6bb0ab437f 100644 static inline bool napi_disable_pending(struct napi_struct *n) { diff --git a/net/core/dev.c b/net/core/dev.c -index cb0cdd4daf02..31d51ebff238 100644 +index 6c6c1c6d534b..19e2cd0897b3 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -5938,6 +5938,7 @@ bool napi_schedule_prep(struct napi_struct *n) 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 a5fd779eb..749665e3c 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 adff1f0eed6261cb8fac1f3d4db49d51021df637 Mon Sep 17 00:00:00 2001 +From 6151f6a5fa3c014525a6c18524e092f1e47fb1e1 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 23 Jun 2015 15:32:51 +0200 Subject: [PATCH 206/319] irqwork: push most work into softirq context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. diff --git a/debian/patches-rt/0207-printk-Make-rt-aware.patch b/debian/patches-rt/0207-printk-Make-rt-aware.patch index bce4db790..f024bf472 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 efdf9180869e6fe025fd2b98552fbef32fca3971 Mon Sep 17 00:00:00 2001 +From e06507e6c3956ece840a3de1c8124c035609a1fb Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 19 Sep 2012 14:50:37 +0200 Subject: [PATCH 207/319] printk: Make rt aware -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Drop the lock before calling the console driver and do not disable interrupts while printing to a serial console. 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 1d6310150..a980ee519 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 000dbd85cc1f2101a2339b74fd57071e48338307 Mon Sep 17 00:00:00 2001 +From 0347ee41cebcbf76b3456e71c25eebd52611cdb9 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 19 May 2016 17:45:27 +0200 Subject: [PATCH 208/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 2d74aa7e2..3b7e70eee 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 f4a7ce2d260ded876500c4dd8df56e6a81683cc2 Mon Sep 17 00:00:00 2001 +From defb111e7019c8c65c85ce7a673ffe3d4b4a1338 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 21 Mar 2013 19:01:05 +0100 Subject: [PATCH 209/319] printk: Drop the logbuf_lock more often -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. 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 0d90037da..6d0325828 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,4 +1,4 @@ -From c444418c13055a4ad5e3490c84e769cb5fb9de8e Mon Sep 17 00:00:00 2001 +From b991f2d263f639e8c4aa1a70ff0d979e6245a5b2 Mon Sep 17 00:00:00 2001 From: "Yadi.hu" Date: Wed, 10 Dec 2014 10:32:09 +0800 Subject: [PATCH 210/319] ARM: enable irq in translation/section permission @@ -6,7 +6,7 @@ Subject: [PATCH 210/319] ARM: enable irq in translation/section permission 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Probably happens on all ARM, with CONFIG_PREEMPT_RT_FULL 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 1cef2c8b6..403a40e6c 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 fb8dce6fdf3eb522996555b08f6b53cee8c51514 Mon Sep 17 00:00:00 2001 +From 4324fc16ee37a4f6f8e0e6fc46cdaa6e16a5747a Mon Sep 17 00:00:00 2001 From: Josh Cartwright Date: Thu, 11 Feb 2016 11:54:00 -0600 Subject: [PATCH 211/319] genirq: update irq_set_irqchip_state documentation -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 77b642b80..b33aa1a2b 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 32a33089c1cf0f0221c409175841c6fce57a8906 Mon Sep 17 00:00:00 2001 +From 25e170a4bdc1953a46e60f3551c0ffd1f2b7b3aa Mon Sep 17 00:00:00 2001 From: Josh Cartwright Date: Thu, 11 Feb 2016 11:54:01 -0600 Subject: [PATCH 212/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 ce9859b7e..fdcab7a11 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 18e844b559c80f565f74604742cb39a7c4c05b85 Mon Sep 17 00:00:00 2001 +From 033bb93a0515b9df4593fbfcf93ea5ede830532c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 25 Jul 2018 14:02:38 +0200 Subject: [PATCH 213/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 @@ -14,16 +14,15 @@ saving/restoring those registers. Add preempt_disable()/enable() to enfore the required semantic on -RT. Signed-off-by: Sebastian Andrzej Siewior -[Salvatore Bonaccorso: Update for context changes in 4.19.105 due to -e074c64a27b5 ("arm64: nofpsmid: Handle TIF_FOREIGN_FPSTATE flag -cleanly")] --- arch/arm64/kernel/fpsimd.c | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) +diff --git a/arch/arm64/kernel/fpsimd.c b/arch/arm64/kernel/fpsimd.c +index 14fdbaa6ee3a..7d572175682a 100644 --- a/arch/arm64/kernel/fpsimd.c +++ b/arch/arm64/kernel/fpsimd.c -@@ -159,6 +159,16 @@ +@@ -159,6 +159,16 @@ static void sve_free(struct task_struct *task) __sve_free(task); } @@ -40,7 +39,7 @@ cleanly")] /* * TIF_SVE controls whether a task can use SVE without trapping while * in userspace, and also the way a task's FPSIMD/SVE state is stored -@@ -549,6 +559,7 @@ +@@ -549,6 +559,7 @@ int sve_set_vector_length(struct task_struct *task, * non-SVE thread. */ if (task == current) { @@ -48,7 +47,7 @@ cleanly")] local_bh_disable(); fpsimd_save(); -@@ -559,8 +570,10 @@ +@@ -559,8 +570,10 @@ int sve_set_vector_length(struct task_struct *task, if (test_and_clear_tsk_thread_flag(task, TIF_SVE)) sve_to_fpsimd(task); @@ -60,7 +59,7 @@ cleanly")] /* * Force reallocation of task SVE state to the correct size -@@ -815,6 +828,7 @@ +@@ -815,6 +828,7 @@ asmlinkage void do_sve_acc(unsigned int esr, struct pt_regs *regs) sve_alloc(current); @@ -68,7 +67,7 @@ cleanly")] local_bh_disable(); fpsimd_save(); -@@ -828,6 +842,7 @@ +@@ -828,6 +842,7 @@ asmlinkage void do_sve_acc(unsigned int esr, struct pt_regs *regs) WARN_ON(1); /* SVE access shouldn't have trapped */ local_bh_enable(); @@ -76,7 +75,7 @@ cleanly")] } /* -@@ -894,10 +909,12 @@ +@@ -894,10 +909,12 @@ void fpsimd_thread_switch(struct task_struct *next) void fpsimd_flush_thread(void) { int vl, supported_vl; @@ -89,7 +88,7 @@ cleanly")] local_bh_disable(); memset(¤t->thread.uw.fpsimd_state, 0, -@@ -906,7 +923,7 @@ +@@ -906,7 +923,7 @@ void fpsimd_flush_thread(void) if (system_supports_sve()) { clear_thread_flag(TIF_SVE); @@ -98,7 +97,7 @@ cleanly")] /* * Reset the task vector length as required. -@@ -942,6 +959,8 @@ +@@ -942,6 +959,8 @@ void fpsimd_flush_thread(void) set_thread_flag(TIF_FOREIGN_FPSTATE); local_bh_enable(); @@ -107,7 +106,7 @@ cleanly")] } /* -@@ -953,9 +972,11 @@ +@@ -953,9 +972,11 @@ void fpsimd_preserve_current_state(void) if (!system_supports_fpsimd()) return; @@ -119,7 +118,7 @@ cleanly")] } /* -@@ -1026,6 +1047,7 @@ +@@ -1026,6 +1047,7 @@ void fpsimd_restore_current_state(void) return; } @@ -127,7 +126,7 @@ cleanly")] local_bh_disable(); if (test_and_clear_thread_flag(TIF_FOREIGN_FPSTATE)) { -@@ -1034,6 +1056,7 @@ +@@ -1034,6 +1056,7 @@ void fpsimd_restore_current_state(void) } local_bh_enable(); @@ -135,7 +134,7 @@ cleanly")] } /* -@@ -1046,6 +1069,7 @@ +@@ -1046,6 +1069,7 @@ void fpsimd_update_current_state(struct user_fpsimd_state const *state) if (WARN_ON(!system_supports_fpsimd())) return; @@ -143,7 +142,7 @@ cleanly")] local_bh_disable(); current->thread.uw.fpsimd_state = *state; -@@ -1058,6 +1082,7 @@ +@@ -1058,6 +1082,7 @@ void fpsimd_update_current_state(struct user_fpsimd_state const *state) clear_thread_flag(TIF_FOREIGN_FPSTATE); local_bh_enable(); @@ -151,7 +150,7 @@ cleanly")] } /* -@@ -1104,6 +1129,7 @@ +@@ -1104,6 +1129,7 @@ void kernel_neon_begin(void) BUG_ON(!may_use_simd()); @@ -159,7 +158,7 @@ cleanly")] local_bh_disable(); __this_cpu_write(kernel_neon_busy, true); -@@ -1117,6 +1143,7 @@ +@@ -1117,6 +1143,7 @@ void kernel_neon_begin(void) preempt_disable(); local_bh_enable(); @@ -167,3 +166,6 @@ cleanly")] } EXPORT_SYMBOL(kernel_neon_begin); +-- +2.25.0 + 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 5cb79de17..0e37bbc9a 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 ab7ce891fbdc5a21eaae726fb2ce7dd240c33c70 Mon Sep 17 00:00:00 2001 +From c5d74bf61d048136c3ebff3f2d803d4eba474db7 Mon Sep 17 00:00:00 2001 From: Jason Wessel Date: Thu, 28 Jul 2011 12:42:23 -0500 Subject: [PATCH 214/319] kgdb/serial: Short term workaround -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz On 07/27/2011 04:37 PM, Thomas Gleixner wrote: > - KGDB (not yet disabled) is reportedly unusable on -rt right now due 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 b3013f878..b83ae4fc1 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 b3e1d341094a10d4fecef1589e403390b7873691 Mon Sep 17 00:00:00 2001 +From f69088aeda4b17cc974e451f18f7f10d999a6f57 Mon Sep 17 00:00:00 2001 From: Clark Williams Date: Sat, 30 Jul 2011 21:55:53 -0500 Subject: [PATCH 215/319] sysfs: Add /sys/kernel/realtime entry -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Add a /sys/kernel entry to indicate that the kernel is a realtime kernel. 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 bc4857b9b..0a1242afc 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 17638e5e920fd7ea1e08812f53fbc2070344bf75 Mon Sep 17 00:00:00 2001 +From 5f53510a53551468cacc7dc39a067e4890082c6a Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Thu, 28 Jul 2011 10:43:51 +0200 Subject: [PATCH 216/319] mm, rt: kmap_atomic scheduling -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 117c0308a..9913d6ac9 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 1c72f5b8223730db5075d0aee9e9097f03f078cd Mon Sep 17 00:00:00 2001 +From 4f31bac9ada3535606eaa6e9031a6a9e747afc5b Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 11 Mar 2013 17:09:55 +0100 Subject: [PATCH 217/319] x86/highmem: Add a "already used pte" check -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz This is a copy from kmap_atomic_prot(). 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 be3c5dd84..5ac9d17bf 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 78a8cefa72899cf2f2dca96bc087f490d77e8d54 Mon Sep 17 00:00:00 2001 +From c0391198894b60a1860f751474ac15e89392d396 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 11 Mar 2013 21:37:27 +0100 Subject: [PATCH 218/319] arm/highmem: Flush tlb on unmap -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 0ebbf499e..1b9f68ca4 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 21c74b05acdd54c23dc85d4cfaa7a63d8052e071 Mon Sep 17 00:00:00 2001 +From 9f06896a55a5320c0037ed6d57ccc188f39b46d9 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 13 Feb 2013 11:03:11 +0100 Subject: [PATCH 219/319] arm: Enable highmem for rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz fixup highmem for ARM. 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 57aba470c..fb788072b 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 d6a4bcaae8a666545dd241364b9051c2ae48da2f Mon Sep 17 00:00:00 2001 +From 340c12c894a65dfd465a251f6f7f795746c803a0 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sat, 12 Nov 2011 14:00:48 +0100 Subject: [PATCH 220/319] scsi/fcoe: Make RT aware. -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Do not disable preemption while taking sleeping locks. All user look safe for migrate_diable() only. 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 938568136..5f2972d55 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 630856f6dcbb9cb6e3e5a20f11a7de9dfd6013bb Mon Sep 17 00:00:00 2001 +From 9fcdeeff46696ee50f5a524dd11bc61aad38cfc1 Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Mon, 14 Nov 2011 18:19:27 +0100 Subject: [PATCH 221/319] x86: crypto: Reduce preempt disabled regions -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Restrict the preempt disabled regions to the actual floating point operations and enable preemption for the administrative actions. 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 3473eaa81..102496a39 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 84e90e53a2a793092583a0aa9d2909cc6469f827 Mon Sep 17 00:00:00 2001 +From 6cb63cbf25a36339685aae48f066fc80cbf5cd7f Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 21 Feb 2014 17:24:04 +0100 Subject: [PATCH 222/319] crypto: Reduce preempt disabled regions, more algos -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Don Estabrook reported | kernel: WARNING: CPU: 2 PID: 858 at kernel/sched/core.c:2428 migrate_disable+0xed/0x100() 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 261e2c157..dfc480dda 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 b37b2852c94fee4a529a3b90a77a9010d404cdef Mon Sep 17 00:00:00 2001 +From c69a6e5b35d956f1788a112244952e84fc27296a Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 30 Nov 2017 13:40:10 +0100 Subject: [PATCH 223/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 e578b780c..f6ae00dd1 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 5035f90916e5526fc3ce79c419ce0ef3cf6ddadd Mon Sep 17 00:00:00 2001 +From 08367a7b181f94abaeb6bb4c827db639c56e8ea6 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Wed, 11 Jul 2018 17:14:47 +0200 Subject: [PATCH 224/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 b7b690835..870e7bd16 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 f595ab5e665480b98f04964b2dffc01dd153deb3 Mon Sep 17 00:00:00 2001 +From 850e714cfa9823eea1841d36cb29b28434d6ac2d Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 26 Jul 2018 18:52:00 +0200 Subject: [PATCH 225/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz cryptd has a per-CPU lock which protected with local_bh_disable() and preempt_disable(). 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 af41f8fa2..ea4ad7d2a 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 f5c9952be8c9b6cd5c5a310f3f73e7c666a1bfc8 Mon Sep 17 00:00:00 2001 +From faa87d948486f3da759dc841ad7e5d983e94691a Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 14 Jul 2015 14:26:34 +0200 Subject: [PATCH 226/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Disable on -RT. If this is invoked from irq-context we will have problems to acquire the sleeping lock. 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 7d0388ff9..a9479bd1d 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 27f7938ca3c0f226f85745ad8e52b00b26d60612 Mon Sep 17 00:00:00 2001 +From fdddc5f9de75c797965fbb4c41826941313f97e3 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 16 Dec 2010 14:25:18 +0100 Subject: [PATCH 227/319] x86: stackprotector: Avoid random pool on rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 d34ea7404..bbaab9339 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 10f49438cce794e7cf27b9393c94adf9ee9fa5dc Mon Sep 17 00:00:00 2001 +From 5f480f8b688aa96212f301664644d53b0d3a3e95 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 21 Aug 2012 20:38:50 +0200 Subject: [PATCH 228/319] random: Make it work on rt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Delegate the random insertion to the forced threaded interrupt handler. Store the return IP of the hard interrupt handler in the irq @@ -21,7 +21,7 @@ Signed-off-by: Thomas Gleixner 7 files changed, 26 insertions(+), 10 deletions(-) diff --git a/drivers/char/random.c b/drivers/char/random.c -index 53e822793d46..5f359b9d248b 100644 +index 28b110cd3977..d15dd08a92e2 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c @@ -1232,28 +1232,27 @@ static __u32 get_reg(struct fast_pool *f, struct pt_regs *regs) 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 ba5ad4ff5..7ba06c2e0 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 42a2638abd83cbeb0f35b4a4213f76339442c514 Mon Sep 17 00:00:00 2001 +From cdd389d22cc7f273f3d955eeacc80bda55db5bb8 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 19 Jul 2017 17:31:20 +0200 Subject: [PATCH 229/319] cpu/hotplug: Implement CPU pinning -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Signed-off-by: Thomas Gleixner --- @@ -23,7 +23,7 @@ index dc668524ccff..fc9300d0787d 100644 int migrate_disable_atomic; # endif diff --git a/kernel/cpu.c b/kernel/cpu.c -index cf1f2eb6bb90..e6c2d814f7f9 100644 +index 328d7bf67d2f..e005e64ae30f 100644 --- a/kernel/cpu.c +++ b/kernel/cpu.c @@ -75,6 +75,11 @@ static DEFINE_PER_CPU(struct cpuhp_cpu_state, cpuhp_state) = { @@ -81,7 +81,7 @@ index cf1f2eb6bb90..e6c2d814f7f9 100644 } DEFINE_STATIC_PERCPU_RWSEM(cpu_hotplug_lock); -@@ -854,6 +887,7 @@ static int take_cpu_down(void *_param) +@@ -853,6 +886,7 @@ static int take_cpu_down(void *_param) static int takedown_cpu(unsigned int cpu) { @@ -89,7 +89,7 @@ index cf1f2eb6bb90..e6c2d814f7f9 100644 struct cpuhp_cpu_state *st = per_cpu_ptr(&cpuhp_state, cpu); int err; -@@ -866,11 +900,14 @@ static int takedown_cpu(unsigned int cpu) +@@ -865,11 +899,14 @@ static int takedown_cpu(unsigned int cpu) */ irq_lock_sparse(); @@ -104,7 +104,7 @@ index cf1f2eb6bb90..e6c2d814f7f9 100644 /* CPU refused to die */ irq_unlock_sparse(); /* Unpark the hotplug thread so we can rollback there */ -@@ -889,6 +926,7 @@ static int takedown_cpu(unsigned int cpu) +@@ -888,6 +925,7 @@ static int takedown_cpu(unsigned int cpu) wait_for_ap_thread(st, false); BUG_ON(st->state != CPUHP_AP_IDLE_DEAD); 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 3b7fd0e3a..9cb7a32e0 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 937dbf87879ba74afa9aa5850f2491b5669783a5 Mon Sep 17 00:00:00 2001 +From 9c0e36957da69450658952d7d76b7fe79d8e52ac Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sun, 19 Aug 2018 08:28:35 +0200 Subject: [PATCH 230/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Since commit 7af443ee16976 ("sched/core: Require cpu_active() in select_task_rq(), for user tasks") select_fallback_rq() will BUG() if 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 cbf0b7c01..b70eaf79d 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 1c0db07bc0ea85302c4b3868933f4042f470d19e Mon Sep 17 00:00:00 2001 +From 678bc8b1f66cac6073d0272788cb512333ae36a2 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 4 Aug 2017 18:31:00 +0200 Subject: [PATCH 231/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 @@ -14,7 +14,7 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/kernel/cpu.c b/kernel/cpu.c -index e6c2d814f7f9..c8631e699ce2 100644 +index e005e64ae30f..948fbcc4d63c 100644 --- a/kernel/cpu.c +++ b/kernel/cpu.c @@ -75,7 +75,7 @@ static DEFINE_PER_CPU(struct cpuhp_cpu_state, cpuhp_state) = { @@ -58,7 +58,7 @@ index e6c2d814f7f9..c8631e699ce2 100644 } DEFINE_STATIC_PERCPU_RWSEM(cpu_hotplug_lock); -@@ -887,7 +891,9 @@ static int take_cpu_down(void *_param) +@@ -886,7 +890,9 @@ static int take_cpu_down(void *_param) static int takedown_cpu(unsigned int cpu) { @@ -68,7 +68,7 @@ index e6c2d814f7f9..c8631e699ce2 100644 struct cpuhp_cpu_state *st = per_cpu_ptr(&cpuhp_state, cpu); int err; -@@ -900,14 +906,18 @@ static int takedown_cpu(unsigned int cpu) +@@ -899,14 +905,18 @@ static int takedown_cpu(unsigned int cpu) */ irq_lock_sparse(); @@ -87,7 +87,7 @@ index e6c2d814f7f9..c8631e699ce2 100644 /* CPU refused to die */ irq_unlock_sparse(); /* Unpark the hotplug thread so we can rollback there */ -@@ -926,7 +936,9 @@ static int takedown_cpu(unsigned int cpu) +@@ -925,7 +935,9 @@ static int takedown_cpu(unsigned int cpu) wait_for_ap_thread(st, false); BUG_ON(st->state != CPUHP_AP_IDLE_DEAD); 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 055ce7f36..7ddb52b6a 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 944dad5de7431597c62ed6aa089f68af00e2a681 Mon Sep 17 00:00:00 2001 +From e55d9a3613381070dbd9c5e107501fb3c8b87b0b Mon Sep 17 00:00:00 2001 From: Priyanka Jain Date: Thu, 17 May 2012 09:35:11 +0530 Subject: [PATCH 232/319] net: Remove preemption disabling in netif_rx() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz 1)enqueue_to_backlog() (called from netif_rx) should be bind to a particluar CPU. This can be achieved by @@ -36,7 +36,7 @@ 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 31d51ebff238..aba305d459be 100644 +index 19e2cd0897b3..935156f1c5d4 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -4487,7 +4487,7 @@ static int netif_rx_internal(struct sk_buff *skb) 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 002f2a4d7..2aa2a8242 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 3cb21dc1f1615fa795ab14c7d9165d4d5be63fdc Mon Sep 17 00:00:00 2001 +From 8e642bd4b1957e712c99588e4b172ffb6ea77cad Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 26 Sep 2012 16:21:08 +0200 Subject: [PATCH 233/319] net: Another local_irq_disable/kmalloc headache -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Replace it by a local lock. Though that's pretty inefficient :( 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 b95784857..234ee7727 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 e5062bfc16de2dddb27bd5ff547d7d0c46d199f7 Mon Sep 17 00:00:00 2001 +From ad95e785998d05c5e60430c272511a05a2cf65ca Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 15 Jan 2016 16:33:34 +0100 Subject: [PATCH 234/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 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 a451c3962..1597f3145 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 5ecec03d0ccfb0186e960a5c77674726374ea656 Mon Sep 17 00:00:00 2001 +From 36ec80a84528a6adb376007baf97560835f37d79 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 28 Oct 2012 11:18:08 +0100 Subject: [PATCH 235/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The netfilter code relies only on the implicit semantics of local_bh_disable() for serializing wt_write_recseq sections. RT breaks 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 23e978d62..ed1778aca 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 c1525de855b108b767798072986139f55e8aadb2 Mon Sep 17 00:00:00 2001 +From b93f55390ad8ab8d74d16b0d67fcfdbf8be92dae Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 20 Mar 2013 18:06:20 +0100 Subject: [PATCH 236/319] net: Add a mutex around devnet_rename_seq -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz On RT write_seqcount_begin() disables preemption and device_rename() allocates memory with GFP_KERNEL and grabs later the sysfs_mutex @@ -22,7 +22,7 @@ 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 aba305d459be..28a3d0683f4b 100644 +index 935156f1c5d4..dbd9bdffafff 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -196,6 +196,7 @@ static unsigned int napi_gen_id = NR_CPUS; 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 0763872dd..71d08fe13 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 87a54cc8a1aefbbfc2a9f58aaae0a36580aba9ea Mon Sep 17 00:00:00 2001 +From 144e32e34a0d8338cf7a1ae7cf884ed905481732 Mon Sep 17 00:00:00 2001 From: Yong Zhang Date: Mon, 16 Apr 2012 15:01:56 +0800 Subject: [PATCH 237/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz On -rt there is no softirq context any more and rwlock is sleepable, disable softirq context test and rwlock+irq test. 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 fc678985a..4de8788da 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 c5d6a6cc6dbbfa1b5366a916a67fb7f5e9ac403b Mon Sep 17 00:00:00 2001 +From f2f9a4e47d0dc6f3817bba4c178048da4763b0c6 Mon Sep 17 00:00:00 2001 From: Josh Cartwright Date: Wed, 28 Jan 2015 13:08:45 -0600 Subject: [PATCH 238/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz "lockdep: Selftest: Only do hardirq context test for raw spinlock" disabled the execution of certain tests with PREEMPT_RT_FULL, but did 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 05faa0275..66a5b6a56 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 0ad958c36369da7e5c381970cd63af00b313454f Mon Sep 17 00:00:00 2001 +From b4aa63613da31452e5bf88d2a20f1349070b9c9e Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 26 Oct 2012 18:50:54 +0100 Subject: [PATCH 239/319] sched: Add support for lazy preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz It has become an obsession to mitigate the determinism vs. throughput loss of RT. Looking at the mainline semantics of preemption points @@ -245,7 +245,7 @@ index 907d72b3ba95..306567f72a3e 100644 prompt "Preemption Model" default PREEMPT_NONE diff --git a/kernel/cpu.c b/kernel/cpu.c -index c8631e699ce2..00dac381da2e 100644 +index 948fbcc4d63c..1541189f417b 100644 --- a/kernel/cpu.c +++ b/kernel/cpu.c @@ -304,11 +304,13 @@ void pin_current_cpu(void) 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 edaad7112..ff9613696 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 a55fa48e31843f56553ccfaf3bbeb88de95df322 Mon Sep 17 00:00:00 2001 +From 9f97e04e5ea92015801bab08af99228bbe2f4085 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sun, 16 Oct 2016 05:08:30 +0200 Subject: [PATCH 240/319] ftrace: Fix trace header alignment -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Line up helper arrows to the right column. 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 57f080401..99487555e 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 bcd492d8695d089a482a25d88de7628040f2c5c3 Mon Sep 17 00:00:00 2001 +From 963f0a5965bbcac189d89f4501cdd7a26bd823df Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 1 Nov 2012 11:03:47 +0100 Subject: [PATCH 241/319] x86: Support for lazy preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Implement the x86 pieces for lazy preempt. @@ -52,10 +52,10 @@ index 91676b0d2d4c..3b5e41d9b29d 100644 #ifdef ARCH_RT_DELAYS_SIGNAL_SEND diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S -index 8059d4fd915c..985988227877 100644 +index d07432062ee6..d44f446a0e74 100644 --- a/arch/x86/entry/entry_32.S +++ b/arch/x86/entry/entry_32.S -@@ -766,8 +766,25 @@ END(ret_from_exception) +@@ -750,8 +750,25 @@ END(ret_from_exception) ENTRY(resume_kernel) DISABLE_INTERRUPTS(CLBR_ANY) .Lneed_resched: 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 e6f3df0d0..bc7e972dc 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 43dad4b3508d88984e9b459d8bacd14fa92a3e73 Mon Sep 17 00:00:00 2001 +From 9e04eb54c312d0436d51e83306de05517b13d458 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 18 Feb 2019 16:57:09 +0100 Subject: [PATCH 242/319] x86: lazy-preempt: properly check against preempt-mask -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz should_resched() should check against preempt_offset after unmasking the need-resched-bit. Otherwise should_resched() won't work for 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 3c1ef73c7..429727b43 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 329c0ad94ef5c8da4e717fb5ba079f82bb5ccd63 Mon Sep 17 00:00:00 2001 +From 95f51ccaa646d290d44e1c6a6fece8cebcce7f82 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 26 Feb 2019 14:53:49 +0100 Subject: [PATCH 243/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The lazy-preempt uses the wrong return label in case preemption isn't possible. This results crash while returning to the kernel. @@ -17,10 +17,10 @@ Signed-off-by: Sebastian Andrzej Siewior 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S -index 985988227877..d880352e410c 100644 +index d44f446a0e74..56398b07211b 100644 --- a/arch/x86/entry/entry_32.S +++ b/arch/x86/entry/entry_32.S -@@ -775,15 +775,15 @@ ENTRY(resume_kernel) +@@ -759,15 +759,15 @@ ENTRY(resume_kernel) # atleast preempt count == 0 ? cmpl $_PREEMPT_ENABLED,PER_CPU_VAR(__preempt_count) 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 ea4df2860..9c1e3d55f 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 70b648cf82896ef25a1e979f31cb667c0d19549f Mon Sep 17 00:00:00 2001 +From 36713bb8882eef3bd06bc3de88d56fcaa0d968c8 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 31 Oct 2012 12:04:11 +0100 Subject: [PATCH 244/319] arm: Add support for lazy preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Implement the arm pieces for lazy preempt. @@ -17,7 +17,7 @@ Signed-off-by: Thomas Gleixner 6 files changed, 33 insertions(+), 8 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index c1cc28f0841f..26b1cdc94210 100644 +index bd9d180db5c7..9945e699e0a4 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -90,6 +90,7 @@ config ARM diff --git a/debian/patches-rt/0245-powerpc-Add-support-for-lazy-preemption.patch b/debian/patches-rt/0245-powerpc-Add-support-for-lazy-preemption.patch index 071da471d..8e87e32bc 100644 --- a/debian/patches-rt/0245-powerpc-Add-support-for-lazy-preemption.patch +++ b/debian/patches-rt/0245-powerpc-Add-support-for-lazy-preemption.patch @@ -1,8 +1,8 @@ -From 4e426ca152bccf37f6d3d892d9c15777c0cbb6b0 Mon Sep 17 00:00:00 2001 +From e02242904650a778f562757a77e406336000d790 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Thu, 1 Nov 2012 10:14:11 +0100 Subject: [PATCH 245/319] powerpc: Add support for lazy preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Implement the powerpc pieces for lazy preempt. diff --git a/debian/patches-rt/0246-arch-arm64-Add-lazy-preempt-support.patch b/debian/patches-rt/0246-arch-arm64-Add-lazy-preempt-support.patch index db2fcbf08..823b5597c 100644 --- a/debian/patches-rt/0246-arch-arm64-Add-lazy-preempt-support.patch +++ b/debian/patches-rt/0246-arch-arm64-Add-lazy-preempt-support.patch @@ -1,8 +1,8 @@ -From d54fea06e07469d71862f3fa8ff84d0a0a1d3a4d Mon Sep 17 00:00:00 2001 +From c5e73ec6d12a2a6a7b3da8b83afdd210570489c7 Mon Sep 17 00:00:00 2001 From: Anders Roxell Date: Thu, 14 May 2015 17:52:17 +0200 Subject: [PATCH 246/319] arch/arm64: Add lazy preempt support -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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, diff --git a/debian/patches-rt/0247-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 index 7e2bf3f09..77c3230f8 100644 --- a/debian/patches-rt/0247-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 b27b8bc87bed66cafef6d28f28e3d599331c109b Mon Sep 17 00:00:00 2001 +From 8d0546a63b1afa99131c556d9f273f8865eaf480 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sun, 16 Oct 2016 05:11:54 +0200 Subject: [PATCH 247/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 diff --git a/debian/patches-rt/0248-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch b/debian/patches-rt/0248-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch index 42206560c..478241727 100644 --- a/debian/patches-rt/0248-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 a49d401a1598ffda5dc7255df4cf12078d9d9563 Mon Sep 17 00:00:00 2001 +From 50ea98cbb28042ef353cdb79d52d70d051d45c50 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Thu, 31 Mar 2016 04:08:28 +0200 Subject: [PATCH 248/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. diff --git a/debian/patches-rt/0249-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 index c1a70176d..0d56181db 100644 --- a/debian/patches-rt/0249-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 f7439c3631a8a3418de84e5f8152c2365f97000e Mon Sep 17 00:00:00 2001 +From 88b91a35eb7f80af3482c12cfcb4ceebca3a88d8 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Thu, 20 Oct 2016 11:15:22 +0200 Subject: [PATCH 249/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 diff --git a/debian/patches-rt/0250-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 index c42775d69..6dfb8de84 100644 --- a/debian/patches-rt/0250-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 24583db925f3b6091bd76ebcc5ebdc612bee0ba1 Mon Sep 17 00:00:00 2001 +From 4423c47dc0bff765fc58fb223ef9d4cd3b23c634 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Wed, 23 Aug 2017 11:57:29 +0200 Subject: [PATCH 250/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Use get_local_ptr() instead this_cpu_ptr() to avoid a warning regarding smp_processor_id() in preemptible code. diff --git a/debian/patches-rt/0251-tpm_tis-fix-stall-after-iowrite-s.patch b/debian/patches-rt/0251-tpm_tis-fix-stall-after-iowrite-s.patch index 990965508..3ca393b2b 100644 --- a/debian/patches-rt/0251-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 c1270c10c34f78939acfd298cefedaf1ac6497a0 Mon Sep 17 00:00:00 2001 +From fb812057ed5c5dbdbdd983f9d261dcce58bc7376 Mon Sep 17 00:00:00 2001 From: Haris Okanovic Date: Tue, 15 Aug 2017 15:13:08 -0500 Subject: [PATCH 251/319] tpm_tis: fix stall after iowrite*()s -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz ioread8() operations to TPM MMIO addresses can stall the cpu when immediately following a sequence of iowrite*()'s to the same region. diff --git a/debian/patches-rt/0252-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch b/debian/patches-rt/0252-watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch index b324707fa..b3f15adc0 100644 --- a/debian/patches-rt/0252-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 9f23a68af6bf36d1a1f3bb1773e001b459b940c0 Mon Sep 17 00:00:00 2001 +From e0da41ef4940b26cb433c9598a4940e2476d3dbe Mon Sep 17 00:00:00 2001 From: Julia Cartwright Date: Fri, 28 Sep 2018 21:03:51 +0000 Subject: [PATCH 252/319] watchdog: prevent deferral of watchdogd wakeup on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz When PREEMPT_RT_FULL is enabled, all hrtimer expiry functions are deferred for execution into the context of ktimersoftd unless otherwise diff --git a/debian/patches-rt/0253-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 index d70edbd55..c20a4f6eb 100644 --- a/debian/patches-rt/0253-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 c3c6f6b7964e76c362ef62b4e7d49d5f8968fa16 Mon Sep 17 00:00:00 2001 +From e3f6a9293311449cca5306673eae21802410ed18 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sat, 27 Feb 2016 08:09:11 +0100 Subject: [PATCH 253/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz DRM folks identified the spots, so use them. @@ -37,10 +37,10 @@ index 29877969310d..f65817c51c2a 100644 spin_unlock_irqrestore(&dev_priv->uncore.lock, irqflags); diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c -index d8e2d7b3b836..072b831aaf4f 100644 +index 7d1e14f0140a..bcc3456749d6 100644 --- a/drivers/gpu/drm/radeon/radeon_display.c +++ b/drivers/gpu/drm/radeon/radeon_display.c -@@ -1813,6 +1813,7 @@ int radeon_get_crtc_scanoutpos(struct drm_device *dev, unsigned int pipe, +@@ -1815,6 +1815,7 @@ int radeon_get_crtc_scanoutpos(struct drm_device *dev, unsigned int pipe, struct radeon_device *rdev = dev->dev_private; /* preempt_disable_rt() should go right here in PREEMPT_RT patchset. */ @@ -48,7 +48,7 @@ index d8e2d7b3b836..072b831aaf4f 100644 /* Get optional system timestamp before query. */ if (stime) -@@ -1905,6 +1906,7 @@ int radeon_get_crtc_scanoutpos(struct drm_device *dev, unsigned int pipe, +@@ -1907,6 +1908,7 @@ int radeon_get_crtc_scanoutpos(struct drm_device *dev, unsigned int pipe, *etime = ktime_get(); /* preempt_enable_rt() should go right here in PREEMPT_RT patchset. */ diff --git a/debian/patches-rt/0254-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 index ccffa274d..07104b439 100644 --- a/debian/patches-rt/0254-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 48dd47af9e1720307129aaa4b5890713aa5039c5 Mon Sep 17 00:00:00 2001 +From ae86e298bae75579cf4bc0009251aad847d4d4a2 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sat, 27 Feb 2016 09:01:42 +0100 Subject: [PATCH 254/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 diff --git a/debian/patches-rt/0255-drm-i915-disable-tracing-on-RT.patch b/debian/patches-rt/0255-drm-i915-disable-tracing-on-RT.patch index e0e3f1a62..6c4279891 100644 --- a/debian/patches-rt/0255-drm-i915-disable-tracing-on-RT.patch +++ b/debian/patches-rt/0255-drm-i915-disable-tracing-on-RT.patch @@ -1,8 +1,8 @@ -From 3a1aeaa3d5b520717819dfa703e2b84db9260481 Mon Sep 17 00:00:00 2001 +From 3aed1fe6522f79b259e8106ff18e0c8324020675 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 6 Dec 2018 09:52:20 +0100 Subject: [PATCH 255/319] drm/i915: disable tracing on -RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Luca Abeni reported this: | BUG: scheduling while atomic: kworker/u8:2/15203/0x00000003 diff --git a/debian/patches-rt/0256-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 index c1131afa8..4c6f1e4c5 100644 --- a/debian/patches-rt/0256-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 5ba7788159b2d2b475203bf064224daa907ea545 Mon Sep 17 00:00:00 2001 +From 3d4557d91951a9964b97c806777b13cca8e11dee Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 19 Dec 2018 10:47:02 +0100 Subject: [PATCH 256/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 diff --git a/debian/patches-rt/0257-cgroups-use-simple-wait-in-css_release.patch b/debian/patches-rt/0257-cgroups-use-simple-wait-in-css_release.patch index e74f2942c..cc1acece9 100644 --- a/debian/patches-rt/0257-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 f6bb44ce35eea6fa1f5c4734f2a308eb779fc5d5 Mon Sep 17 00:00:00 2001 +From 33ef8c81b2c33d47247da6b0b5d534c41dd7359a Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 13 Feb 2015 15:52:24 +0100 Subject: [PATCH 257/319] cgroups: use simple wait in css_release() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz To avoid: |BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:914 diff --git a/debian/patches-rt/0258-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch b/debian/patches-rt/0258-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch index b0564f3f3..5984d80ea 100644 --- a/debian/patches-rt/0258-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 48fb150a079be3445e14143191b40b20d3dc0789 Mon Sep 17 00:00:00 2001 +From 86e3ee73627056c1c97053b2201b942bfad09b26 Mon Sep 17 00:00:00 2001 From: Mike Galbraith Date: Sun, 8 Jan 2017 09:32:25 +0100 Subject: [PATCH 258/319] cpuset: Convert callback_lock to raw_spinlock_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The two commits below add up to a cpuset might_sleep() splat for RT: diff --git a/debian/patches-rt/0259-apparmor-use-a-locallock-instead-preempt_disable.patch b/debian/patches-rt/0259-apparmor-use-a-locallock-instead-preempt_disable.patch index e13b721be..301c5dda8 100644 --- a/debian/patches-rt/0259-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 f3878cc087bc8c9cb09fe47ddbf28be5918b696b Mon Sep 17 00:00:00 2001 +From 7d1cc83845fbfeae6cbe51a05849c8934e40bc56 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 11 Oct 2017 17:43:49 +0200 Subject: [PATCH 259/319] apparmor: use a locallock instead preempt_disable() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 diff --git a/debian/patches-rt/0260-workqueue-Prevent-deadlock-stall-on-RT.patch b/debian/patches-rt/0260-workqueue-Prevent-deadlock-stall-on-RT.patch index eb3876421..7e6e12d36 100644 --- a/debian/patches-rt/0260-workqueue-Prevent-deadlock-stall-on-RT.patch +++ b/debian/patches-rt/0260-workqueue-Prevent-deadlock-stall-on-RT.patch @@ -1,8 +1,8 @@ -From 506dcbf0558561548a478d23395bfbfa1fa9aa62 Mon Sep 17 00:00:00 2001 +From 3a793fb8d0b6d6f02988068bdba2a88b42d6c9c7 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 27 Jun 2014 16:24:52 +0200 Subject: [PATCH 260/319] workqueue: Prevent deadlock/stall on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. diff --git a/debian/patches-rt/0261-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 index 6dd439368..21750be48 100644 --- a/debian/patches-rt/0261-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 2a7f4ae2436b078eef6ad6a6bd8b54bec6b6bc30 Mon Sep 17 00:00:00 2001 +From e35585fe22932e9eb9cf60dc1080b05935cc99ce Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 3 Jul 2009 08:44:56 -0500 Subject: [PATCH 261/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz To avoid allocation allow rt tasks to cache one sigqueue struct in task struct. diff --git a/debian/patches-rt/0262-Add-localversion-for-RT-release.patch b/debian/patches-rt/0262-Add-localversion-for-RT-release.patch index d89a155ff..4aa456281 100644 --- a/debian/patches-rt/0262-Add-localversion-for-RT-release.patch +++ b/debian/patches-rt/0262-Add-localversion-for-RT-release.patch @@ -1,8 +1,8 @@ -From 72f6593fc6e2e72b93484a7d2c03077aa6c32e4e Mon Sep 17 00:00:00 2001 +From ae23509557da3f7ee876249340937db31d277915 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Fri, 8 Jul 2011 20:25:16 +0200 Subject: [PATCH 262/319] Add localversion for -RT release -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Signed-off-by: Thomas Gleixner --- diff --git a/debian/patches-rt/0263-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch b/debian/patches-rt/0263-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch index 00334c34f..94d08d751 100644 --- a/debian/patches-rt/0263-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 6a4420cb88ab99177938a2bc6e7f62e605812133 Mon Sep 17 00:00:00 2001 +From b84964140e4a5f15b5710e2ddd99a6560411542d Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 26 Mar 2019 18:31:54 +0100 Subject: [PATCH 263/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz The locallock protects the per-CPU variable tce_page. The function attempts to allocate memory while tce_page is protected (by disabling @@ -14,13 +14,12 @@ Use local_irq_save() instead of local_irq_disable(). Cc: stable-rt@vger.kernel.org Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Steven Rostedt (VMware) -[Salvatore Bonaccorso: Update for context changes in 4.19.104 due to -9ed7b9085e13 ("powerpc/pseries: Allow not having ibm, -hypertas-functions::hcall-multi-tce for DDW")] --- arch/powerpc/platforms/pseries/iommu.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) +diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c +index b1a08cb760e0..8ef818ad83ec 100644 --- a/arch/powerpc/platforms/pseries/iommu.c +++ b/arch/powerpc/platforms/pseries/iommu.c @@ -38,6 +38,7 @@ @@ -31,7 +30,7 @@ hypertas-functions::hcall-multi-tce for DDW")] #include #include #include -@@ -212,6 +213,7 @@ +@@ -212,6 +213,7 @@ static int tce_build_pSeriesLP(unsigned long liobn, long tcenum, long tceshift, } static DEFINE_PER_CPU(__be64 *, tce_page); @@ -39,7 +38,7 @@ hypertas-functions::hcall-multi-tce for DDW")] static int tce_buildmulti_pSeriesLP(struct iommu_table *tbl, long tcenum, long npages, unsigned long uaddr, -@@ -233,7 +235,8 @@ +@@ -233,7 +235,8 @@ static int tce_buildmulti_pSeriesLP(struct iommu_table *tbl, long tcenum, direction, attrs); } @@ -49,7 +48,7 @@ hypertas-functions::hcall-multi-tce for DDW")] tcep = __this_cpu_read(tce_page); -@@ -244,7 +247,7 @@ +@@ -244,7 +247,7 @@ static int tce_buildmulti_pSeriesLP(struct iommu_table *tbl, long tcenum, tcep = (__be64 *)__get_free_page(GFP_ATOMIC); /* If allocation fails, fall back to the loop implementation */ if (!tcep) { @@ -58,7 +57,7 @@ hypertas-functions::hcall-multi-tce for DDW")] return tce_build_pSeriesLP(tbl->it_index, tcenum, tbl->it_page_shift, npages, uaddr, direction, attrs); -@@ -279,7 +282,7 @@ +@@ -279,7 +282,7 @@ static int tce_buildmulti_pSeriesLP(struct iommu_table *tbl, long tcenum, tcenum += limit; } while (npages > 0 && !rc); @@ -67,7 +66,7 @@ hypertas-functions::hcall-multi-tce for DDW")] if (unlikely(rc == H_NOT_ENOUGH_RESOURCES)) { ret = (int)rc; -@@ -450,13 +453,14 @@ +@@ -450,13 +453,14 @@ static int tce_setrange_multi_pSeriesLP(unsigned long start_pfn, DMA_BIDIRECTIONAL, 0); } @@ -84,7 +83,7 @@ hypertas-functions::hcall-multi-tce for DDW")] return -ENOMEM; } __this_cpu_write(tce_page, tcep); -@@ -502,7 +506,7 @@ +@@ -502,7 +506,7 @@ static int tce_setrange_multi_pSeriesLP(unsigned long start_pfn, /* error cleanup: caller will clear whole range */ @@ -93,3 +92,6 @@ hypertas-functions::hcall-multi-tce for DDW")] return rc; } +-- +2.25.0 + diff --git a/debian/patches-rt/0264-powerpc-reshuffle-TIF-bits.patch b/debian/patches-rt/0264-powerpc-reshuffle-TIF-bits.patch index 765c7c7da..7dd30295f 100644 --- a/debian/patches-rt/0264-powerpc-reshuffle-TIF-bits.patch +++ b/debian/patches-rt/0264-powerpc-reshuffle-TIF-bits.patch @@ -1,8 +1,8 @@ -From 3bd9572a57b123ca2ba4349d8aed67d96e248e50 Mon Sep 17 00:00:00 2001 +From a42bc60446357a00c18c446a7600b5b7fd090069 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 22 Mar 2019 17:15:58 +0100 Subject: [PATCH 264/319] powerpc: reshuffle TIF bits -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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. diff --git a/debian/patches-rt/0265-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 index 15a724ed9..3909ab1cf 100644 --- a/debian/patches-rt/0265-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 9958c5dc997969983c6d2cce116fc8628e3f802d Mon Sep 17 00:00:00 2001 +From ee919711fd01ec12c0d389243a78631d57c83e60 Mon Sep 17 00:00:00 2001 From: Julien Grall Date: Wed, 13 Mar 2019 11:40:34 +0000 Subject: [PATCH 265/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Systems which don't provide arch_trigger_cpumask_backtrace() will invoke showacpu() from a smp_call_function() function which is invoked diff --git a/debian/patches-rt/0266-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 index cc44b40b5..dc33a9566 100644 --- a/debian/patches-rt/0266-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 ef267547d87ddb45e423131cd3ac2575f11bf9a9 Mon Sep 17 00:00:00 2001 +From ed7f01fba8a5fbc0d32f5bab0fa3fca250530999 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 10 Apr 2019 11:01:37 +0200 Subject: [PATCH 266/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.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 diff --git a/debian/patches-rt/0267-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 index 9696f356b..60212dc30 100644 --- a/debian/patches-rt/0267-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 4f45596ee19784503b688216ac94613529dac495 Mon Sep 17 00:00:00 2001 +From 62aaf2e45d6bc981cec8335fd58bfe5216343cce Mon Sep 17 00:00:00 2001 From: Corey Minyard Date: Thu, 9 May 2019 14:33:20 -0500 Subject: [PATCH 267/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Consider following race: diff --git a/debian/patches-rt/0268-kthread-add-a-global-worker-thread.patch b/debian/patches-rt/0268-kthread-add-a-global-worker-thread.patch index 61fc269ad..14032cf5c 100644 --- a/debian/patches-rt/0268-kthread-add-a-global-worker-thread.patch +++ b/debian/patches-rt/0268-kthread-add-a-global-worker-thread.patch @@ -1,8 +1,8 @@ -From 466a14f58ab0b24e8700e7ac61660f180af4934c Mon Sep 17 00:00:00 2001 +From e63273e590c9d2a348ac876a3e0a86fe0053be88 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 12 Feb 2019 15:09:38 +0100 Subject: [PATCH 268/319] kthread: add a global worker thread. -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 0532e87d9d44795221aa921ba7024bde689cc894 ] diff --git a/debian/patches-rt/0269-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 index b92c904e7..ec1de8bf5 100644 --- a/debian/patches-rt/0269-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 cf34fbf2667256851c65700b7fa4c21d15aaabe5 Mon Sep 17 00:00:00 2001 +From ea09ce2ccce72c0a8abbd8c5971aee290b24b222 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 21 Aug 2013 17:48:46 +0200 Subject: [PATCH 269/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 2122adbe011cdc0eb62ad62494e181005b23c76a ] diff --git a/debian/patches-rt/0270-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 index 1cd25b553..edb4e1081 100644 --- a/debian/patches-rt/0270-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 8515c7b5a09be607644b2ebf10631a79b10d8a65 Mon Sep 17 00:00:00 2001 +From 2c123db44d2e5daa7c6012fa43715d99706c84a5 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 28 May 2019 10:42:15 +0200 Subject: [PATCH 270/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit bbc4d2a7d6ff54ba923640d9a42c7bef7185fe98 ] diff --git a/debian/patches-rt/0271-arm-imx6-cpuidle-Use-raw_spinlock_t.patch b/debian/patches-rt/0271-arm-imx6-cpuidle-Use-raw_spinlock_t.patch index 4ecc413b3..fa597ebcb 100644 --- a/debian/patches-rt/0271-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 77b3e06a7e9564031e217fb4cb6fa0b0896a1654 Mon Sep 17 00:00:00 2001 +From 0db2daea3de433d6d516bde0bd855fc8be716a8c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 14 May 2019 17:07:44 +0200 Subject: [PATCH 271/319] arm: imx6: cpuidle: Use raw_spinlock_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 40d0332ec8312e9c090f0a5414d9c90e12b13611 ] diff --git a/debian/patches-rt/0272-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 index a5c4a7449..387ed7140 100644 --- a/debian/patches-rt/0272-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 417fabbbbde4e5460a9bd8ae574cd34f989c3c27 Mon Sep 17 00:00:00 2001 +From 63e76d2c0af10f033768782de397bb94afd9c20b Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 24 Jun 2019 18:29:13 +0200 Subject: [PATCH 272/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit c6c058c10577815a2491ce661876cff00a4c3b15 ] diff --git a/debian/patches-rt/0273-pci-switchtec-fix-stream_open.cocci-warnings.patch b/debian/patches-rt/0273-pci-switchtec-fix-stream_open.cocci-warnings.patch index b8c3424e0..a170a03ef 100644 --- a/debian/patches-rt/0273-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 ab7b3b8cf695f51443b693840a6bee8c1ea43f1d Mon Sep 17 00:00:00 2001 +From 57434065eaa488e6dc4ab73d2e0915a3e6bc3992 Mon Sep 17 00:00:00 2001 From: kbuild test robot Date: Sat, 13 Apr 2019 11:22:51 +0800 Subject: [PATCH 273/319] pci/switchtec: fix stream_open.cocci warnings -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 9462c69e29307adc95c289f50839d5d683973891 ] @@ -23,7 +23,7 @@ Signed-off-by: Steven Rostedt (VMware) 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/switch/switchtec.c b/drivers/pci/switch/switchtec.c -index f4c39feb5c04..821ac3ecca80 100644 +index a8df847bedee..25d1f96cddc1 100644 --- a/drivers/pci/switch/switchtec.c +++ b/drivers/pci/switch/switchtec.c @@ -356,7 +356,7 @@ static int switchtec_dev_open(struct inode *inode, struct file *filp) diff --git a/debian/patches-rt/0274-sched-core-Drop-a-preempt_disable_rt-statement.patch b/debian/patches-rt/0274-sched-core-Drop-a-preempt_disable_rt-statement.patch index a9b805bd7..62cc69a90 100644 --- a/debian/patches-rt/0274-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 bad6ac527d386a70c4b5a95d03a74e4c89ce53fc Mon Sep 17 00:00:00 2001 +From c373cd893601a19b54d0926c87daa939d6953f47 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 24 Jun 2019 19:33:16 +0200 Subject: [PATCH 274/319] sched/core: Drop a preempt_disable_rt() statement -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 761126efdcbe3fa3e99c9079fa0ad6eca2f251f2 ] diff --git a/debian/patches-rt/0275-timers-Redo-the-notification-of-canceling-timers-on-.patch b/debian/patches-rt/0275-timers-Redo-the-notification-of-canceling-timers-on-.patch index fd7f00ca3..3bbe28892 100644 --- a/debian/patches-rt/0275-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 48208e1517299d3fbf42d883134397f72b714027 Mon Sep 17 00:00:00 2001 +From b624498d8a6db63e6d6390bbd5f560f37929a500 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 24 Jun 2019 19:39:06 +0200 Subject: [PATCH 275/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit c71273154c2ad12e13333aada340ff30e826a11b ] diff --git a/debian/patches-rt/0276-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 index cbde4c6f6..214ab9239 100644 --- a/debian/patches-rt/0276-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 ae24f173efdb746dc26c4870eef5b32f280f864e Mon Sep 17 00:00:00 2001 +From b53286215979d7a0944e4d1e7483b8ef3b91d1d4 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 26 Jun 2019 17:44:13 +0200 Subject: [PATCH 276/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 6a773b70cf105b46298ed3b44e77c102ce31d9ec ] diff --git a/debian/patches-rt/0277-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 index e783916a7..ce81aa00f 100644 --- a/debian/patches-rt/0277-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 01842de36028d1d6d0ce577688095649be41f4dc Mon Sep 17 00:00:00 2001 +From 72c47093b9b237534280c6953d3cc0c635a96d3c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 26 Jun 2019 17:44:18 +0200 Subject: [PATCH 277/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit f1a170cb3289a48df26cae3c60d77608f7a988bb ] diff --git a/debian/patches-rt/0278-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 index 064c4012b..bc03538c8 100644 --- a/debian/patches-rt/0278-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 6bd085d87346c9263a8ef219dc3ee0311f33a710 Mon Sep 17 00:00:00 2001 +From a5fc42329ec8c08a961d8bc3f1a6d565ec867bcc Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 26 Jun 2019 17:44:21 +0200 Subject: [PATCH 278/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 9e0265c21af4d6388d47dcd5ce20f76ec3a2e468 ] diff --git a/debian/patches-rt/0279-Revert-futex-workaround-migrate_disable-enable-in-di.patch b/debian/patches-rt/0279-Revert-futex-workaround-migrate_disable-enable-in-di.patch index 643b2659a..885ca26c9 100644 --- a/debian/patches-rt/0279-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 1d7f8dfb51963c7dcf985b8c08da5cc52029b8fc Mon Sep 17 00:00:00 2001 +From af703381dea29f442e4b3a7c4d8998379034f59a Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 26 Jun 2019 17:44:27 +0200 Subject: [PATCH 279/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit a71221d81cc4873891ae44f3aa02df596079b786 ] diff --git a/debian/patches-rt/0280-futex-Make-the-futex_hash_bucket-lock-raw.patch b/debian/patches-rt/0280-futex-Make-the-futex_hash_bucket-lock-raw.patch index e484d877c..8aebbfa7d 100644 --- a/debian/patches-rt/0280-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 ea4d2e52e3eb65ec1cd26e6fc01f5ddfeb4ea2ab Mon Sep 17 00:00:00 2001 +From 44953b81eb56f8bf4910a8d447d7e3695c25370e Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 26 Jun 2019 11:59:44 +0200 Subject: [PATCH 280/319] futex: Make the futex_hash_bucket lock raw -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit f646521aadedab78801c9befe193e2e8a0c99298 ] diff --git a/debian/patches-rt/0281-futex-Delay-deallocation-of-pi_state.patch b/debian/patches-rt/0281-futex-Delay-deallocation-of-pi_state.patch index b7c6bd939..22f5d9b4e 100644 --- a/debian/patches-rt/0281-futex-Delay-deallocation-of-pi_state.patch +++ b/debian/patches-rt/0281-futex-Delay-deallocation-of-pi_state.patch @@ -1,8 +1,8 @@ -From da369f30fa974bf526f11f2fe15d3599eee108a9 Mon Sep 17 00:00:00 2001 +From b4da585eac644bd89c26ced3290b61d735d50481 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 26 Jun 2019 13:35:36 +0200 Subject: [PATCH 281/319] futex: Delay deallocation of pi_state -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit d7c7cf8cb68b7df17e6e50be1f25f35d83e686c7 ] diff --git a/debian/patches-rt/0282-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 index 92b39889d..966e3da19 100644 --- a/debian/patches-rt/0282-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 f87bee2082697ae481818a08252986e3612e30aa Mon Sep 17 00:00:00 2001 +From 4ae018a1f3fabfd075da5e5e1c764d47df47c191 Mon Sep 17 00:00:00 2001 From: "Luis Claudio R. Goncalves" Date: Tue, 25 Jun 2019 11:28:04 -0300 Subject: [PATCH 282/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 4e4cf4be79635e67144632d9135286381acbc95a ] diff --git a/debian/patches-rt/0283-revert-aio.patch b/debian/patches-rt/0283-revert-aio.patch index 4c5303835..50455ed5c 100644 --- a/debian/patches-rt/0283-revert-aio.patch +++ b/debian/patches-rt/0283-revert-aio.patch @@ -1,8 +1,8 @@ -From c0017598befb0c2a932866db38f3e73429ddc141 Mon Sep 17 00:00:00 2001 +From ab2dc29034ff92024537b768305a45a2d4b138fb Mon Sep 17 00:00:00 2001 From: "Steven Rostedt (VMware)" Date: Fri, 20 Sep 2019 17:50:53 -0400 Subject: [PATCH 283/319] revert-aio -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz revert: fs/aio: simple simple work diff --git a/debian/patches-rt/0284-fs-aio-simple-simple-work.patch b/debian/patches-rt/0284-fs-aio-simple-simple-work.patch index b93d80532..ea07c2602 100644 --- a/debian/patches-rt/0284-fs-aio-simple-simple-work.patch +++ b/debian/patches-rt/0284-fs-aio-simple-simple-work.patch @@ -1,8 +1,8 @@ -From aa2189aadb7a124991d1667f986da7fcec17caaa Mon Sep 17 00:00:00 2001 +From 81433e7d902d1cc6192315d52f22c51ab06a2e63 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 16 Feb 2015 18:49:10 +0100 Subject: [PATCH 284/319] fs/aio: simple simple work -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 1a142116f6435ef070ecebb66d2d599507c10601 ] diff --git a/debian/patches-rt/0285-revert-thermal.patch b/debian/patches-rt/0285-revert-thermal.patch index 774bfaa39..ac81da8e6 100644 --- a/debian/patches-rt/0285-revert-thermal.patch +++ b/debian/patches-rt/0285-revert-thermal.patch @@ -1,8 +1,8 @@ -From bfc122d2b025c85b6ab82e81c0ae29a24074dd73 Mon Sep 17 00:00:00 2001 +From c02161642bb7a1a67a5deeca8370d86f1901a30c Mon Sep 17 00:00:00 2001 From: "Steven Rostedt (VMware)" Date: Fri, 20 Sep 2019 17:50:53 -0400 Subject: [PATCH 285/319] revert-thermal -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Revert: thermal: Defer thermal wakups to threads diff --git a/debian/patches-rt/0286-thermal-Defer-thermal-wakups-to-threads.patch b/debian/patches-rt/0286-thermal-Defer-thermal-wakups-to-threads.patch index b090e6dfb..4dc00fc0a 100644 --- a/debian/patches-rt/0286-thermal-Defer-thermal-wakups-to-threads.patch +++ b/debian/patches-rt/0286-thermal-Defer-thermal-wakups-to-threads.patch @@ -1,8 +1,8 @@ -From 19f0f635eecfedc7102da094cef1cd6361d01e2b Mon Sep 17 00:00:00 2001 +From 6ce01aa7368b545641a370a0dde81ac0d4c5ba41 Mon Sep 17 00:00:00 2001 From: Daniel Wagner Date: Tue, 17 Feb 2015 09:37:44 +0100 Subject: [PATCH 286/319] thermal: Defer thermal wakups to threads -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit ad2408dc248fe58536eef5b2b5734d8f9d3a280b ] diff --git a/debian/patches-rt/0287-revert-block.patch b/debian/patches-rt/0287-revert-block.patch index 634918460..b97b5ef54 100644 --- a/debian/patches-rt/0287-revert-block.patch +++ b/debian/patches-rt/0287-revert-block.patch @@ -1,8 +1,8 @@ -From b3070acdd10cdfc4be8230473c0c8894910d20f6 Mon Sep 17 00:00:00 2001 +From ffad188bfa63fa513c05850bf64eebe5e519c14d Mon Sep 17 00:00:00 2001 From: "Steven Rostedt (VMware)" Date: Fri, 20 Sep 2019 17:50:54 -0400 Subject: [PATCH 287/319] revert-block -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz Revert swork version of: block: blk-mq: move blk_queue_usage_counter_release() into process context diff --git a/debian/patches-rt/0288-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 index 6667c47fa..523df72e9 100644 --- a/debian/patches-rt/0288-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 5e98a6d50f9efe451e93a38a87a852e1a8f11744 Mon Sep 17 00:00:00 2001 +From 2793f1c2fe23bf8db5eb818139db6bdc8c0d0ff3 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 13 Mar 2018 13:49:16 +0100 Subject: [PATCH 288/319] 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 61c928ecf4fe200bda9b49a0813b5ba0f43995b5 ] diff --git a/debian/patches-rt/0289-workqueue-rework.patch b/debian/patches-rt/0289-workqueue-rework.patch index 15f815f97..a5cee96d0 100644 --- a/debian/patches-rt/0289-workqueue-rework.patch +++ b/debian/patches-rt/0289-workqueue-rework.patch @@ -1,8 +1,8 @@ -From c633a466375b6a537f79cffe84eac9271bc5b020 Mon Sep 17 00:00:00 2001 +From 30d6766aa0a5077a70137d4bb9b044aa73fe9f7e Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 29 May 2019 18:52:27 +0200 Subject: [PATCH 289/319] workqueue: rework -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit d15a862f24df983458533aebd6fa207ecdd1095a ] diff --git a/debian/patches-rt/0290-i2c-exynos5-Remove-IRQF_ONESHOT.patch b/debian/patches-rt/0290-i2c-exynos5-Remove-IRQF_ONESHOT.patch index 4b0406d75..9c102f4fe 100644 --- a/debian/patches-rt/0290-i2c-exynos5-Remove-IRQF_ONESHOT.patch +++ b/debian/patches-rt/0290-i2c-exynos5-Remove-IRQF_ONESHOT.patch @@ -1,8 +1,8 @@ -From b275478a0e595eda55ed29d8c1ad9aad9d2a010a Mon Sep 17 00:00:00 2001 +From 7c3f8afe7bf7bfc55e4dd00b2cdc0471d7fa56b4 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 13 Aug 2019 12:30:12 +0200 Subject: [PATCH 290/319] i2c: exynos5: Remove IRQF_ONESHOT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 4b217df0ab3f7910c96e42091cc7d9f221d05f01 ] diff --git a/debian/patches-rt/0291-i2c-hix5hd2-Remove-IRQF_ONESHOT.patch b/debian/patches-rt/0291-i2c-hix5hd2-Remove-IRQF_ONESHOT.patch index f93044db6..ef48064b5 100644 --- a/debian/patches-rt/0291-i2c-hix5hd2-Remove-IRQF_ONESHOT.patch +++ b/debian/patches-rt/0291-i2c-hix5hd2-Remove-IRQF_ONESHOT.patch @@ -1,8 +1,8 @@ -From 6ac99b9a074232546f3ca080c4b44b1331ef4613 Mon Sep 17 00:00:00 2001 +From d1b1f2e9ff0c025196d564544a0b808fdb73cc16 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 13 Aug 2019 12:30:37 +0200 Subject: [PATCH 291/319] i2c: hix5hd2: Remove IRQF_ONESHOT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit e88b481f3f86f11e3243e0808a830e5ca5782a9d ] diff --git a/debian/patches-rt/0292-sched-deadline-Ensure-inactive_timer-runs-in-hardirq.patch b/debian/patches-rt/0292-sched-deadline-Ensure-inactive_timer-runs-in-hardirq.patch index 16df9ccd9..5163ac111 100644 --- a/debian/patches-rt/0292-sched-deadline-Ensure-inactive_timer-runs-in-hardirq.patch +++ b/debian/patches-rt/0292-sched-deadline-Ensure-inactive_timer-runs-in-hardirq.patch @@ -1,9 +1,9 @@ -From c3919e76704a2f2c0bf2e0bddbed37a8627e25b6 Mon Sep 17 00:00:00 2001 +From adb807c2fbd6d2f64515708367de2cae2b106925 Mon Sep 17 00:00:00 2001 From: Juri Lelli Date: Wed, 31 Jul 2019 12:37:15 +0200 Subject: [PATCH 292/319] sched/deadline: Ensure inactive_timer runs in hardirq context -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit ba94e7aed7405c58251b1380e6e7d73aa8284b41 ] diff --git a/debian/patches-rt/0293-thermal-x86_pkg_temp-make-pkg_temp_lock-a-raw-spinlo.patch b/debian/patches-rt/0293-thermal-x86_pkg_temp-make-pkg_temp_lock-a-raw-spinlo.patch index 1b08ecd73..871c01d5d 100644 --- a/debian/patches-rt/0293-thermal-x86_pkg_temp-make-pkg_temp_lock-a-raw-spinlo.patch +++ b/debian/patches-rt/0293-thermal-x86_pkg_temp-make-pkg_temp_lock-a-raw-spinlo.patch @@ -1,9 +1,9 @@ -From 949a5710e9cef5b8071c8ec81b7e02efe3216e25 Mon Sep 17 00:00:00 2001 +From 40e46d2cf474897d209be74b3c6471dbdf4f2aea Mon Sep 17 00:00:00 2001 From: Clark Williams Date: Mon, 15 Jul 2019 15:25:00 -0500 Subject: [PATCH 293/319] thermal/x86_pkg_temp: make pkg_temp_lock a raw spinlock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 8b03bb3ea7861b70b506199a69b1c8f81fe2d4d0 ] diff --git a/debian/patches-rt/0294-dma-buf-Use-seqlock_t-instread-disabling-preemption.patch b/debian/patches-rt/0294-dma-buf-Use-seqlock_t-instread-disabling-preemption.patch index 154c6a950..5e8c90d23 100644 --- a/debian/patches-rt/0294-dma-buf-Use-seqlock_t-instread-disabling-preemption.patch +++ b/debian/patches-rt/0294-dma-buf-Use-seqlock_t-instread-disabling-preemption.patch @@ -1,8 +1,8 @@ -From ba6019c487e8d5455335d67b65afd82ca50a4589 Mon Sep 17 00:00:00 2001 +From fb3773dcd97159de33e77ec876a5ec0f3d70d576 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 14 Aug 2019 16:38:43 +0200 Subject: [PATCH 294/319] dma-buf: Use seqlock_t instread disabling preemption -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 240610aa31094f51f299f06eb8dae8d4cd8d4500 ] diff --git a/debian/patches-rt/0295-KVM-arm-arm64-Let-the-timer-expire-in-hardirq-contex.patch b/debian/patches-rt/0295-KVM-arm-arm64-Let-the-timer-expire-in-hardirq-contex.patch index be120d9af..4c0a941e4 100644 --- a/debian/patches-rt/0295-KVM-arm-arm64-Let-the-timer-expire-in-hardirq-contex.patch +++ b/debian/patches-rt/0295-KVM-arm-arm64-Let-the-timer-expire-in-hardirq-contex.patch @@ -1,9 +1,9 @@ -From ddc93ca5505342645b197c99b2a040d3be8b348b Mon Sep 17 00:00:00 2001 +From 616f33b56d89956d43be1ee3a48873012a5e01f2 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 13 Aug 2019 14:29:41 +0200 Subject: [PATCH 295/319] KVM: arm/arm64: Let the timer expire in hardirq context on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 719cc080c914045a6e35787bf4dc3ba91cfd3efb ] diff --git a/debian/patches-rt/0296-x86-preempt-Check-preemption-level-before-looking-at.patch b/debian/patches-rt/0296-x86-preempt-Check-preemption-level-before-looking-at.patch index 78287dd38..d31428f18 100644 --- a/debian/patches-rt/0296-x86-preempt-Check-preemption-level-before-looking-at.patch +++ b/debian/patches-rt/0296-x86-preempt-Check-preemption-level-before-looking-at.patch @@ -1,9 +1,9 @@ -From 19a2e03459ead700d7fd53c47677511bbd27d48f Mon Sep 17 00:00:00 2001 +From 3ff694fd2d9a9eeb03196cbfbb4dd353a83d680e Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 14 Aug 2019 17:08:58 +0200 Subject: [PATCH 296/319] x86: preempt: Check preemption level before looking at lazy-preempt -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 19fc8557f2323c52b26561651ed4d51fc688a740 ] diff --git a/debian/patches-rt/0297-hrtimer-Use-READ_ONCE-to-access-timer-base-in-hrimer.patch b/debian/patches-rt/0297-hrtimer-Use-READ_ONCE-to-access-timer-base-in-hrimer.patch index 96307ec39..b6c072f43 100644 --- a/debian/patches-rt/0297-hrtimer-Use-READ_ONCE-to-access-timer-base-in-hrimer.patch +++ b/debian/patches-rt/0297-hrtimer-Use-READ_ONCE-to-access-timer-base-in-hrimer.patch @@ -1,9 +1,9 @@ -From 442b496afde51592914e85fc0d0d00970944a460 Mon Sep 17 00:00:00 2001 +From 20fa662be972ae5c608f2e5c919aedc9bbdc8930 Mon Sep 17 00:00:00 2001 From: Julien Grall Date: Wed, 21 Aug 2019 10:24:07 +0100 Subject: [PATCH 297/319] hrtimer: Use READ_ONCE to access timer->base in hrimer_grab_expiry_lock() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 2c8fdbe7ef0ad06c1a326886c5954e117b5657d6 ] diff --git a/debian/patches-rt/0298-hrtimer-Don-t-grab-the-expiry-lock-for-non-soft-hrti.patch b/debian/patches-rt/0298-hrtimer-Don-t-grab-the-expiry-lock-for-non-soft-hrti.patch index aa4961313..36a7e3be2 100644 --- a/debian/patches-rt/0298-hrtimer-Don-t-grab-the-expiry-lock-for-non-soft-hrti.patch +++ b/debian/patches-rt/0298-hrtimer-Don-t-grab-the-expiry-lock-for-non-soft-hrti.patch @@ -1,9 +1,9 @@ -From ac0fd05d6de78b52ea2a788a75c20f59c23325bd Mon Sep 17 00:00:00 2001 +From 3097c6c64c15f7942c9b280325c27db70de41d04 Mon Sep 17 00:00:00 2001 From: Julien Grall Date: Wed, 21 Aug 2019 10:24:08 +0100 Subject: [PATCH 298/319] hrtimer: Don't grab the expiry lock for non-soft hrtimer -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit fd420354bea2f57c11f3de191dffdeea76531e76 ] diff --git a/debian/patches-rt/0299-hrtimer-Prevent-using-hrtimer_grab_expiry_lock-on-mi.patch b/debian/patches-rt/0299-hrtimer-Prevent-using-hrtimer_grab_expiry_lock-on-mi.patch index aba50764c..4bf2710a2 100644 --- a/debian/patches-rt/0299-hrtimer-Prevent-using-hrtimer_grab_expiry_lock-on-mi.patch +++ b/debian/patches-rt/0299-hrtimer-Prevent-using-hrtimer_grab_expiry_lock-on-mi.patch @@ -1,9 +1,9 @@ -From 80ffe312fe52287d041ec16ba9d4906f39a5ad72 Mon Sep 17 00:00:00 2001 +From 0167d3fb02b4f30f0f219f65726e5344ad871f9f Mon Sep 17 00:00:00 2001 From: Julien Grall Date: Wed, 21 Aug 2019 10:24:09 +0100 Subject: [PATCH 299/319] hrtimer: Prevent using hrtimer_grab_expiry_lock() on migration_base -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit cef1b87f98823af923a386f3f69149acb212d4a1 ] diff --git a/debian/patches-rt/0300-hrtimer-Add-a-missing-bracket-and-hide-migration_bas.patch b/debian/patches-rt/0300-hrtimer-Add-a-missing-bracket-and-hide-migration_bas.patch index 43a063c0c..27eced2e2 100644 --- a/debian/patches-rt/0300-hrtimer-Add-a-missing-bracket-and-hide-migration_bas.patch +++ b/debian/patches-rt/0300-hrtimer-Add-a-missing-bracket-and-hide-migration_bas.patch @@ -1,9 +1,9 @@ -From 0ab2c6f2dc6d8c42c0a68d5f63725b68b68dbeb7 Mon Sep 17 00:00:00 2001 +From 6aecd0ba09e1dbf7afd6d646c65f732654892d29 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 4 Sep 2019 16:55:27 +0200 Subject: [PATCH 300/319] hrtimer: Add a missing bracket and hide `migration_base' on !SMP -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 47b6de0b7f22c28b40275aeede3993d807668c3b ] diff --git a/debian/patches-rt/0301-posix-timers-Unlock-expiry-lock-in-the-early-return.patch b/debian/patches-rt/0301-posix-timers-Unlock-expiry-lock-in-the-early-return.patch index d33efe79b..1ac39240c 100644 --- a/debian/patches-rt/0301-posix-timers-Unlock-expiry-lock-in-the-early-return.patch +++ b/debian/patches-rt/0301-posix-timers-Unlock-expiry-lock-in-the-early-return.patch @@ -1,8 +1,8 @@ -From b8e6a62c4429fb11e7e9332bfdbe914fba024216 Mon Sep 17 00:00:00 2001 +From ae0252a9cd108b1f72aa0d7ff0dfc9a888a05d81 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 16 Sep 2019 12:33:59 +0200 Subject: [PATCH 301/319] posix-timers: Unlock expiry lock in the early return -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 356a2781375ec58521a9bc3f500488745990c242 ] diff --git a/debian/patches-rt/0302-sched-migrate_dis-enable-Use-sleeping_lock-to-annota.patch b/debian/patches-rt/0302-sched-migrate_dis-enable-Use-sleeping_lock-to-annota.patch index 77bc5bd11..a8cd5c1cc 100644 --- a/debian/patches-rt/0302-sched-migrate_dis-enable-Use-sleeping_lock-to-annota.patch +++ b/debian/patches-rt/0302-sched-migrate_dis-enable-Use-sleeping_lock-to-annota.patch @@ -1,4 +1,4 @@ -From 8f12a178508fbd42268f68a093bb590cac046816 Mon Sep 17 00:00:00 2001 +From 1e2e07b7ee887a2c15a4b686358602b5316d3002 Mon Sep 17 00:00:00 2001 From: Scott Wood Date: Tue, 24 Sep 2019 14:36:41 +0200 Subject: [PATCH 302/319] =?UTF-8?q?sched:=20migrate=5Fdis/enable:=20Use=20?= @@ -6,7 +6,7 @@ Subject: [PATCH 302/319] =?UTF-8?q?sched:=20migrate=5Fdis/enable:=20Use=20?= 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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 4230dd3824c3e1785504e6f757ce79a4b55651fa ] @@ -25,7 +25,7 @@ Signed-off-by: Sebastian Andrzej Siewior 2 files changed, 5 insertions(+) diff --git a/kernel/cpu.c b/kernel/cpu.c -index 00dac381da2e..7170fbd35a22 100644 +index 1541189f417b..0d50ae262898 100644 --- a/kernel/cpu.c +++ b/kernel/cpu.c @@ -307,7 +307,9 @@ void pin_current_cpu(void) diff --git a/debian/patches-rt/0303-sched-__set_cpus_allowed_ptr-Check-cpus_mask-not-cpu.patch b/debian/patches-rt/0303-sched-__set_cpus_allowed_ptr-Check-cpus_mask-not-cpu.patch index 199aaebe1..fc3a173e6 100644 --- a/debian/patches-rt/0303-sched-__set_cpus_allowed_ptr-Check-cpus_mask-not-cpu.patch +++ b/debian/patches-rt/0303-sched-__set_cpus_allowed_ptr-Check-cpus_mask-not-cpu.patch @@ -1,9 +1,9 @@ -From b69f6ca67cc7f82f3da3d4a9885488058a12c1ed Mon Sep 17 00:00:00 2001 +From ee49bec178fb001b6bc6d6db36cc4832f1c635c3 Mon Sep 17 00:00:00 2001 From: Scott Wood Date: Sat, 27 Jul 2019 00:56:32 -0500 Subject: [PATCH 303/319] sched: __set_cpus_allowed_ptr: Check cpus_mask, not cpus_ptr -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit e5606fb7b042db634ed62b4dd733d62e050e468f ] diff --git a/debian/patches-rt/0304-sched-Remove-dead-__migrate_disabled-check.patch b/debian/patches-rt/0304-sched-Remove-dead-__migrate_disabled-check.patch index a921fb04f..1459a41bf 100644 --- a/debian/patches-rt/0304-sched-Remove-dead-__migrate_disabled-check.patch +++ b/debian/patches-rt/0304-sched-Remove-dead-__migrate_disabled-check.patch @@ -1,8 +1,8 @@ -From 9db4f95e41cb7ff1db6ba93a503ea922ba3aaedf Mon Sep 17 00:00:00 2001 +From 0f49b94879548ccd41d4518afa7cf6b88b578656 Mon Sep 17 00:00:00 2001 From: Scott Wood Date: Sat, 27 Jul 2019 00:56:33 -0500 Subject: [PATCH 304/319] sched: Remove dead __migrate_disabled() check -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 14d9272d534ea91262e15db99443fc5995c7c016 ] diff --git a/debian/patches-rt/0305-sched-migrate-disable-Protect-cpus_ptr-with-lock.patch b/debian/patches-rt/0305-sched-migrate-disable-Protect-cpus_ptr-with-lock.patch index 928158ffc..8963c43e7 100644 --- a/debian/patches-rt/0305-sched-migrate-disable-Protect-cpus_ptr-with-lock.patch +++ b/debian/patches-rt/0305-sched-migrate-disable-Protect-cpus_ptr-with-lock.patch @@ -1,8 +1,8 @@ -From da6f82ad4f67dec908c062d597063a072883c771 Mon Sep 17 00:00:00 2001 +From db5f1e12f85243ff54296bf28fa3cd8d0b01dac6 Mon Sep 17 00:00:00 2001 From: Scott Wood Date: Sat, 27 Jul 2019 00:56:34 -0500 Subject: [PATCH 305/319] sched: migrate disable: Protect cpus_ptr with lock -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 27ee52a891ed2c7e2e2c8332ccae0de7c2674b09 ] diff --git a/debian/patches-rt/0306-lib-smp_processor_id-Don-t-use-cpumask_equal.patch b/debian/patches-rt/0306-lib-smp_processor_id-Don-t-use-cpumask_equal.patch index 4d608ac37..ec7ea2dc5 100644 --- a/debian/patches-rt/0306-lib-smp_processor_id-Don-t-use-cpumask_equal.patch +++ b/debian/patches-rt/0306-lib-smp_processor_id-Don-t-use-cpumask_equal.patch @@ -1,8 +1,8 @@ -From f8fd574326b570c47250ec0cd6f908d23574a5d1 Mon Sep 17 00:00:00 2001 +From 053a5be342cf9ab6925975f8ce90e62bf13c81b1 Mon Sep 17 00:00:00 2001 From: Waiman Long Date: Thu, 3 Oct 2019 16:36:08 -0400 Subject: [PATCH 306/319] lib/smp_processor_id: Don't use cpumask_equal() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 659252061477862f45b79e1de169e6030f5c8918 ] diff --git a/debian/patches-rt/0307-futex-Make-the-futex_hash_bucket-spinlock_t-again-an.patch b/debian/patches-rt/0307-futex-Make-the-futex_hash_bucket-spinlock_t-again-an.patch index a3c183471..b1bbab260 100644 --- a/debian/patches-rt/0307-futex-Make-the-futex_hash_bucket-spinlock_t-again-an.patch +++ b/debian/patches-rt/0307-futex-Make-the-futex_hash_bucket-spinlock_t-again-an.patch @@ -1,9 +1,9 @@ -From 3112f6410209b71e4cdbe79c78d6477658fd885a Mon Sep 17 00:00:00 2001 +From 4e0a2787e8d6edaa2dcec8a204194283253d8247 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Mon, 7 Oct 2019 16:45:18 +0200 Subject: [PATCH 307/319] futex: Make the futex_hash_bucket spinlock_t again and bring back its old state -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 954ad80c23edfe71f4e8ce70b961eac884320c3a ] diff --git a/debian/patches-rt/0308-locking-rtmutex-Clean-pi_blocked_on-in-the-error-cas.patch b/debian/patches-rt/0308-locking-rtmutex-Clean-pi_blocked_on-in-the-error-cas.patch index 4d4d377c6..7258f4ea2 100644 --- a/debian/patches-rt/0308-locking-rtmutex-Clean-pi_blocked_on-in-the-error-cas.patch +++ b/debian/patches-rt/0308-locking-rtmutex-Clean-pi_blocked_on-in-the-error-cas.patch @@ -1,9 +1,9 @@ -From 3a13f9e1ba717755553c85395a53cafd46cb9b5c Mon Sep 17 00:00:00 2001 +From 7a083b11dea5905627872e0986c532a3e11716cf Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Mon, 30 Sep 2019 18:15:44 +0200 Subject: [PATCH 308/319] locking/rtmutex: Clean ->pi_blocked_on in the error case -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 0be4ea6e3ce693101be0fbd55a0cc7ce238ab2eb ] diff --git a/debian/patches-rt/0309-lib-ubsan-Don-t-seralize-UBSAN-report.patch b/debian/patches-rt/0309-lib-ubsan-Don-t-seralize-UBSAN-report.patch index 123b8fb1a..8569ae0ec 100644 --- a/debian/patches-rt/0309-lib-ubsan-Don-t-seralize-UBSAN-report.patch +++ b/debian/patches-rt/0309-lib-ubsan-Don-t-seralize-UBSAN-report.patch @@ -1,8 +1,8 @@ -From c7a35250787bb30ab831087e4ea1485eda891680 Mon Sep 17 00:00:00 2001 +From 63329ddc5674e1b5c0837ed4a5db590246ba0835 Mon Sep 17 00:00:00 2001 From: Julien Grall Date: Fri, 20 Sep 2019 11:08:35 +0100 Subject: [PATCH 309/319] lib/ubsan: Don't seralize UBSAN report -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 4702c28ac777b27acb499cbd5e8e787ce1a7d82d ] diff --git a/debian/patches-rt/0310-kmemleak-Change-the-lock-of-kmemleak_object-to-raw_s.patch b/debian/patches-rt/0310-kmemleak-Change-the-lock-of-kmemleak_object-to-raw_s.patch index 32043da19..442fd405c 100644 --- a/debian/patches-rt/0310-kmemleak-Change-the-lock-of-kmemleak_object-to-raw_s.patch +++ b/debian/patches-rt/0310-kmemleak-Change-the-lock-of-kmemleak_object-to-raw_s.patch @@ -1,9 +1,9 @@ -From ece6093ebeeab9ee10748cd45b5b9a1408bace4e Mon Sep 17 00:00:00 2001 +From fab900cc4385877aa0753a74950d86a8e88a9cec Mon Sep 17 00:00:00 2001 From: Liu Haitao Date: Fri, 27 Sep 2019 16:22:30 +0800 Subject: [PATCH 310/319] kmemleak: Change the lock of kmemleak_object to raw_spinlock_t -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 217847f57119b5fdd377bfa3d344613ddb98d9fc ] diff --git a/debian/patches-rt/0311-sched-migrate_enable-Use-select_fallback_rq.patch b/debian/patches-rt/0311-sched-migrate_enable-Use-select_fallback_rq.patch index 9bd7d4796..f436fc7d2 100644 --- a/debian/patches-rt/0311-sched-migrate_enable-Use-select_fallback_rq.patch +++ b/debian/patches-rt/0311-sched-migrate_enable-Use-select_fallback_rq.patch @@ -1,8 +1,8 @@ -From f6209eaaf4b8446932a9fa6c0738b6e6ec19fd72 Mon Sep 17 00:00:00 2001 +From 84ff174f45e1a55c38d87b15d8d35cccc0bc9d93 Mon Sep 17 00:00:00 2001 From: Scott Wood Date: Sat, 12 Oct 2019 01:52:12 -0500 Subject: [PATCH 311/319] sched: migrate_enable: Use select_fallback_rq() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit adfa969d4cfcc995a9d866020124e50f1827d2d1 ] diff --git a/debian/patches-rt/0312-sched-Lazy-migrate_disable-processing.patch b/debian/patches-rt/0312-sched-Lazy-migrate_disable-processing.patch index b2e7d6cc3..e608f6663 100644 --- a/debian/patches-rt/0312-sched-Lazy-migrate_disable-processing.patch +++ b/debian/patches-rt/0312-sched-Lazy-migrate_disable-processing.patch @@ -1,8 +1,8 @@ -From 42a1f80a938e51bf524f063180ef2bca3a4ed31b Mon Sep 17 00:00:00 2001 +From 56caa7a47c76572041391ca1b27a68b637539aa3 Mon Sep 17 00:00:00 2001 From: Scott Wood Date: Sat, 12 Oct 2019 01:52:13 -0500 Subject: [PATCH 312/319] sched: Lazy migrate_disable processing -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 425c5b38779a860062aa62219dc920d374b13c17 ] @@ -121,7 +121,7 @@ index 9e3362748214..4e5af4616dbd 100644 .active_mm = &init_mm, .restart_block = { diff --git a/kernel/cpu.c b/kernel/cpu.c -index 7170fbd35a22..5366c8c69c2f 100644 +index 0d50ae262898..2834eed32b55 100644 --- a/kernel/cpu.c +++ b/kernel/cpu.c @@ -75,11 +75,6 @@ static DEFINE_PER_CPU(struct cpuhp_cpu_state, cpuhp_state) = { @@ -194,7 +194,7 @@ index 7170fbd35a22..5366c8c69c2f 100644 DEFINE_STATIC_PERCPU_RWSEM(cpu_hotplug_lock); void cpus_read_lock(void) -@@ -866,6 +810,15 @@ static int take_cpu_down(void *_param) +@@ -865,6 +809,15 @@ static int take_cpu_down(void *_param) int err, cpu = smp_processor_id(); int ret; @@ -210,7 +210,7 @@ index 7170fbd35a22..5366c8c69c2f 100644 /* Ensure this CPU doesn't handle any more interrupts. */ err = __cpu_disable(); if (err < 0) -@@ -893,11 +846,10 @@ static int take_cpu_down(void *_param) +@@ -892,11 +845,10 @@ static int take_cpu_down(void *_param) return 0; } @@ -224,7 +224,7 @@ index 7170fbd35a22..5366c8c69c2f 100644 struct cpuhp_cpu_state *st = per_cpu_ptr(&cpuhp_state, cpu); int err; -@@ -910,17 +862,38 @@ static int takedown_cpu(unsigned int cpu) +@@ -909,17 +861,38 @@ static int takedown_cpu(unsigned int cpu) */ irq_lock_sparse(); @@ -267,7 +267,7 @@ index 7170fbd35a22..5366c8c69c2f 100644 #endif /* CPU refused to die */ irq_unlock_sparse(); -@@ -940,8 +913,8 @@ static int takedown_cpu(unsigned int cpu) +@@ -939,8 +912,8 @@ static int takedown_cpu(unsigned int cpu) wait_for_ap_thread(st, false); BUG_ON(st->state != CPUHP_AP_IDLE_DEAD); diff --git a/debian/patches-rt/0313-sched-migrate_enable-Use-stop_one_cpu_nowait.patch b/debian/patches-rt/0313-sched-migrate_enable-Use-stop_one_cpu_nowait.patch index 8b695bf79..4c472a1d3 100644 --- a/debian/patches-rt/0313-sched-migrate_enable-Use-stop_one_cpu_nowait.patch +++ b/debian/patches-rt/0313-sched-migrate_enable-Use-stop_one_cpu_nowait.patch @@ -1,8 +1,8 @@ -From 5c24a957f345bc33f4ab1637d199224dfecaee0b Mon Sep 17 00:00:00 2001 +From 1e6b41517e56302ffcac82be49722031f005e97c Mon Sep 17 00:00:00 2001 From: Scott Wood Date: Sat, 12 Oct 2019 01:52:14 -0500 Subject: [PATCH 313/319] sched: migrate_enable: Use stop_one_cpu_nowait() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 6b39a1fa8c53cae08dc03afdae193b7d3a78a173 ] diff --git a/debian/patches-rt/0314-Revert-ARM-Initialize-split-page-table-locks-for-vec.patch b/debian/patches-rt/0314-Revert-ARM-Initialize-split-page-table-locks-for-vec.patch index 39a0fa302..e6ce41eb4 100644 --- a/debian/patches-rt/0314-Revert-ARM-Initialize-split-page-table-locks-for-vec.patch +++ b/debian/patches-rt/0314-Revert-ARM-Initialize-split-page-table-locks-for-vec.patch @@ -1,9 +1,9 @@ -From a3ce35e84633343c7341a0a6be4ebfa7e9c0000f Mon Sep 17 00:00:00 2001 +From 782db84c043ebd020312649d976fe1c74178ea34 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 18 Oct 2019 13:04:15 +0200 Subject: [PATCH 314/319] Revert "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.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 247074c44d8c3e619dfde6404a52295d8d671d38 ] diff --git a/debian/patches-rt/0315-locking-Make-spinlock_t-and-rwlock_t-a-RCU-section-o.patch b/debian/patches-rt/0315-locking-Make-spinlock_t-and-rwlock_t-a-RCU-section-o.patch index ebb7c49b9..ca1e3eff1 100644 --- a/debian/patches-rt/0315-locking-Make-spinlock_t-and-rwlock_t-a-RCU-section-o.patch +++ b/debian/patches-rt/0315-locking-Make-spinlock_t-and-rwlock_t-a-RCU-section-o.patch @@ -1,9 +1,9 @@ -From 4c69294b303a42d5c6d759ac3ca1512a59b01c44 Mon Sep 17 00:00:00 2001 +From 14da0cff2bdb4c5c183a38c223f4d0b03532852a Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Tue, 19 Nov 2019 09:25:04 +0100 Subject: [PATCH 315/319] locking: Make spinlock_t and rwlock_t a RCU section on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 84440022a0e1c8c936d61f8f97593674a295d409 ] diff --git a/debian/patches-rt/0316-sched-core-migrate_enable-must-access-takedown_cpu_t.patch b/debian/patches-rt/0316-sched-core-migrate_enable-must-access-takedown_cpu_t.patch index a48f05e71..78bcc2337 100644 --- a/debian/patches-rt/0316-sched-core-migrate_enable-must-access-takedown_cpu_t.patch +++ b/debian/patches-rt/0316-sched-core-migrate_enable-must-access-takedown_cpu_t.patch @@ -1,9 +1,9 @@ -From b26bb167211f678c47b2ffc0376aa357c4d506d1 Mon Sep 17 00:00:00 2001 +From 459ffc40b777727525726563ee2522a82ecfa12c Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 29 Nov 2019 17:24:55 +0100 Subject: [PATCH 316/319] sched/core: migrate_enable() must access takedown_cpu_task on !HOTPLUG_CPU -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit a61d1977f692e46bad99a100f264981ba08cb4bd ] @@ -21,10 +21,10 @@ Signed-off-by: Steven Rostedt (VMware) 2 files changed, 4 insertions(+) diff --git a/kernel/cpu.c b/kernel/cpu.c -index 5366c8c69c2f..b9d7ac61d707 100644 +index 2834eed32b55..d28254597f59 100644 --- a/kernel/cpu.c +++ b/kernel/cpu.c -@@ -846,7 +846,9 @@ static int take_cpu_down(void *_param) +@@ -845,7 +845,9 @@ static int take_cpu_down(void *_param) return 0; } diff --git a/debian/patches-rt/0317-lib-smp_processor_id-Adjust-check_preemption_disable.patch b/debian/patches-rt/0317-lib-smp_processor_id-Adjust-check_preemption_disable.patch index 9dcfc59e5..8c942468f 100644 --- a/debian/patches-rt/0317-lib-smp_processor_id-Adjust-check_preemption_disable.patch +++ b/debian/patches-rt/0317-lib-smp_processor_id-Adjust-check_preemption_disable.patch @@ -1,9 +1,9 @@ -From d61aff5dff024476104365ca6dfa862e241d6be4 Mon Sep 17 00:00:00 2001 +From 9280cd27ed3c962fd0a1c6b2337bdbdd097a7466 Mon Sep 17 00:00:00 2001 From: Daniel Wagner Date: Mon, 16 Dec 2019 16:15:57 +0100 Subject: [PATCH 317/319] lib/smp_processor_id: Adjust check_preemption_disabled() -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit af3c1c5fdf177870fb5e6e16b24e374696ab28f5 ] diff --git a/debian/patches-rt/0318-sched-migrate_enable-Busy-loop-until-the-migration-r.patch b/debian/patches-rt/0318-sched-migrate_enable-Busy-loop-until-the-migration-r.patch index ad0107ae8..aeff1cddc 100644 --- a/debian/patches-rt/0318-sched-migrate_enable-Busy-loop-until-the-migration-r.patch +++ b/debian/patches-rt/0318-sched-migrate_enable-Busy-loop-until-the-migration-r.patch @@ -1,9 +1,9 @@ -From ce6105c1e1149f6a8272acf267011edcf92ba778 Mon Sep 17 00:00:00 2001 +From 7c90df1e8e20e69467cf37d9fafb5a6993f7bf65 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 12 Dec 2019 10:53:59 +0100 Subject: [PATCH 318/319] sched: migrate_enable: Busy loop until the migration request is completed -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz [ Upstream commit 140d7f54a5fff02898d2ca9802b39548bf7455f1 ] diff --git a/debian/patches-rt/0319-Linux-4.19.103-rt42-REBASE.patch b/debian/patches-rt/0319-Linux-4.19.106-rt44-REBASE.patch similarity index 64% rename from debian/patches-rt/0319-Linux-4.19.103-rt42-REBASE.patch rename to debian/patches-rt/0319-Linux-4.19.106-rt44-REBASE.patch index 443bbdeb3..c9487d6b9 100644 --- a/debian/patches-rt/0319-Linux-4.19.103-rt42-REBASE.patch +++ b/debian/patches-rt/0319-Linux-4.19.106-rt44-REBASE.patch @@ -1,20 +1,20 @@ -From 921dad4d00b430b1d8849cf6498e8a1af6220762 Mon Sep 17 00:00:00 2001 +From a6d1a49f390f3915e6fdb0ce1f61b0e3240d7cde Mon Sep 17 00:00:00 2001 From: "Steven Rostedt (VMware)" Date: Fri, 17 Jan 2020 11:55:15 -0500 -Subject: [PATCH 319/319] Linux 4.19.103-rt42 REBASE -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.103-rt42.tar.xz +Subject: [PATCH 319/319] Linux 4.19.106-rt44 REBASE +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.106-rt44.tar.xz --- localversion-rt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/localversion-rt b/localversion-rt -index 1199ebade17b..8bdfb9a04683 100644 +index 1199ebade17b..ac4d836a809d 100644 --- a/localversion-rt +++ b/localversion-rt @@ -1 +1 @@ --rt16 -+-rt42 ++-rt44 -- 2.25.0 diff --git a/debian/patches-rt/series b/debian/patches-rt/series index 5b96c4dc2..ad779c1b9 100644 --- a/debian/patches-rt/series +++ b/debian/patches-rt/series @@ -316,4 +316,4 @@ 0316-sched-core-migrate_enable-must-access-takedown_cpu_t.patch 0317-lib-smp_processor_id-Adjust-check_preemption_disable.patch 0318-sched-migrate_enable-Busy-loop-until-the-migration-r.patch -0319-Linux-4.19.103-rt42-REBASE.patch +0319-Linux-4.19.106-rt44-REBASE.patch