Re: [announce] split-up -rt patch-queue, v2.6.22.1-rt2
From: Daniel Walker <hidden>
Date: 2007-07-12 15:49:48
Also in:
lkml
On Thu, 2007-07-12 at 17:37 +0200, Ingo Molnar wrote:
We are pleased to announce something we've been working on for some time: a finegrained, split-up patch queue of the -rt kernel patch. From now on (as of 2.6.22.1-rt2) it will be part of every upstream -rt release and it is available from the -rt download site: http://redhat.com/~mingo/realtime-preempt/ the -rt patch-queue consists of 374 patches at the moment, which do: 698 files changed, 27920 insertions(+), 9603 deletions(-) which is impressive as we moved a huge chunk of -rt into mainline already ;-) The series file is attached below. the splitup work has been done by Thomas and me, and we completed it during the recent merge of -rt to 2.6.22. (what we had before was pretty monolithic, messy and hard to merge, not really suitable for general consumption.)
Thank you!
the purpose of this finegrained splitup is to foster (even ;-) quicker upstream integration of various -rt features, and to see the full -rt tree integrated upstream. We also hope that this split-up queue helps various vendors standardize their (currently quite splintered) real-time implementations to the upstream -rt patchset.
I haven't really been submitting much to -rt mainly because there was no broken out set .. Every time I had to download that one big patch I would clinch my fists ..
the queue is not (yet) bisectable at every point, and many of the splits are thematic, to allow the simpler future handling of updates. more info about the -rt patchset in general can be found in the RT wiki: http://rt.wiki.kernel.org Ingo, Thomas -----------------> # # base tree: 2.6.22.1 # # # Linus latest # # # CFS queue: # sched-cfs-v2.6.22.1-v19.patch sched-cfs-latest.patch # # Futex-fixes in -mm # futex-tidy-up-the-code-v2.patch # # hrt: 2.6.22-hrt4 queue # # Basic cpuidle patches cpuidle_take2_core_cpuidle_infrastructure.patch cpuidle_take2_hookup_acpi_c-states_driver_with_cpuidle.patch cpuidle_take2_basic_documentation_for_cpuidle.patch cpuidle_build_fix_for_not_CPU_IDLE.patch cpuidle_fix_build_break.patch cpuidle_make_code_static.patch cpuidle_ladder_does_not_depend_on_ACPI.patch cpuidle_fix_boot_hang.patch cpuidle_1_bit_field_must_be_unsigned.patch cpuidle_fix_sysfs_related_issue.patch cpuidle_add_cpuidle_force_redetect_devices_api.patch cpuidle_add_support_for_max_cstate_limit.patch cpuidle_hang_fix.patch #cpuidle_basic_into_test_branch.patch #cpuidle menu governor patches cpuidle_governor_api_change.patch cpuidle_export_time_until_next_timer_interrupt_using_no_hz.patch cpuidle_add_menu_governor.patch #cpuidle_menu_into_test_branch.patch cpuidle_build_fix_cpuidle_vs_ipw2100_module.patch #cpuidle most recent changes menu_hrt_compile_fix_001.patch keep_proc_acpi_power_around_001.patch cpuidle_warning_fix_002.patch cpuidle_last_measured_004.patch cpuidle_developer_switch_04.patch cpuidle_governor_ratings_04.patch cpuidle_documentation_update_04.patch cpuidle-fix-modular-build.patch # # Generic hrtimer/time/clockevent/source patches # i386-hpet-check-if-the-counter-works.patch clockevents-remove-unused-code.patch nohz-fix-nohz-x86-dyntick-idle-handling.patch acpi-move-timer-broadcast-and-pmtimer-access-before-c3-arbiter-shutdown.patch clockevents-fix-typo-in-acpi_pmc.patch timekeeping-fixup-shadow-variable-argument.patch timerc-cleanup-recently-introduced-whitespace-damage.patch clockevents-remove-prototypes-of-removed-functions.patch clockevents-fix-resume-logic.patch clockevents-fix-device-replacement.patch tick-management-spread-timer-interrupt.patch highres-improve-debug-output.patch highres-improve-debug-output-fix.patch hrtimer-speedup-hrtimer_enqueue.patch pcspkr-use-the-global-pit-lock.patch ntp-move-the-cmos-update-code-into-ntpc.patch ntp-move-the-cmos-update-code-into-ntpc-fix.patch ntp-move-the-cmos-update-code-into-ntpc-fix-fix.patch i386-pit-stop-only-when-in-periodic-or-oneshot-mode.patch i386-remove-volatile-in-apicc.patch i386-hpet-assumes-boot-cpu-is-0.patch i386-move-pit-function-declarations-and-constants-to-correct-header-file.patch # # x86-64 # x86_64-untangle-asm-hpeth-from-asm-timexh.patch x86_64-use-generic-cmos-update.patch x86_64-remove-dead-code-and-other-janitor-work-in-tscc.patch x86_64-fix-apic-typo.patch x86_64-fix-irq-regs-leftovers.patch x86_64-share-hpet-h.patch x86_64-i8259-remove-useless-forward-declaration.patch i386-prepare-sharing-hpet-code.patch i386-prepare-sharing-pit-code.patch x86_64-apic-whitespace-comment-and-remove-unused-code.patch x86_64-timec-fix-whitespace-wreckage.patch x86_64-consolidate-tsc-calibration.patch x86_64-preparatory-apic-set-lvtt.patch x86_64-convert-to-cleckevents.patch x86_64-remove-now-useless-hpet-code.patch acpi-remove-the-useless-ifdef-code.patch i386-pit-remove-the-useless-ifdefs.patch x86_64-prep-idle-loop-for-dynticks.patch x86_64-enable-high-resolution-timers-and-dynticks.patch # # Venki's HPET series # ich-force-hpet-make-generic-time-capable-of-switching-broadcast-timer.patch ich-force-hpet-restructure-hpet-generic-clock-code.patch ich-force-hpet-ich7-or-later-quirk-to-force-detect-enable.patch ich-force-hpet-ich7-or-later-quirk-to-force-detect-enable-fix.patch ich-force-hpet-late-initialization-of-hpet-after-quirk.patch ich-force-hpet-ich5-quirk-to-force-detect-enable.patch ich-force-hpet-ich5-quirk-to-force-detect-enable-fix.patch ich-force-hpet-ich5-fix-a-bug-with-suspend-resume.patch ich-force-hpet-add-ich7_0-pciid-to-quirk-list.patch hpet-force-enable-on-ich34.patch hpet-force-enable-on-vt8235-37-chipsets.patch # # end of the -hrt queue # # # ARM clock events & co # ep93xx-timer-accuracy.patch ep93xx-clockevents.patch ep93xx-clockevents-fix.patch arm-imx.patch # CHECKME arm-leds-timer.patch # Upstream submitted changes cdrom-use-mdelay-instead-of-jiffies-loop.patch spinlock-init-cleanup.patch # # Check what's in mainline / mm or might be # upstream material. # spinlock-trylock-cleanup-sungem.patch x86_64-tsc-sync-irqflags-fix.patch neptune-no-at-keyboard.patch rtmutex-debug.h-cleanup.patch netpoll-8139too-fix.patch kprobes-preempt-fix.patch replace-bugon-by-warn-on.patch # Suspend / resume fixups i386-mark-atomic-irq-ops-raw.patch msi-suspend-resume-workaround.patch floppy-resume-fix.patch # # assorted fixlets from -mm: # # Check if they are really in -mm or should be submitted # hrtimers-overrun-api.patch slob-scale-no-bigblock-list.patch slob-scale-break-out-caches.patch mm-fix-latency.patch ioapic-fix-too-fast-clocks.patch fix-acpi-build-weirdness.patch write-try-lock-irqsave.patch use-write_trylock_irqsave-in-ptrace_attach.patch move-native-irq.patch dont-unmask-io_apic.patch # # misc build beautification patches: # x86-64-smpboot-whitespace.patch gcc-warnings-shut-up.patch # # Various fixlets # # # Debugging patches # apic-dumpstack.patch netfilter-more-debugging.patch # # Latency tracer # nmi-profiling-base.patch add-notrace.patch redo-regparm-option.patch latency-tracing.patch latency-tracing-remove-trace-array.patch latency-tracer-disable-across-trace-cmdline.patch ns2cyc-result-fix.patch latency-tracing-i386-paravirt-fastcall.patch latency-tracing-i386.patch latency-tracing-x86_64.patch latency-tracing-ppc.patch ppc-remove-last-cpukhz.patch ppc-rename-xmon-mcount.patch ppc-add-mcount.patch ppc-mcount-dummy-functions.patch ppc-mark-notrace-mainline.patch ppc-add-ppc32-mcount.patch latency-tracer-printk-fix.patch latency-tracing-arm.patch latency-tracing-exclude-printk.patch latency-tracing-prctl-api-hack.patch latency-tracing-raw-spinlock-hack.patch latency-tracer-one-off-fix.patch smaller-trace.patch trace-name-plus.patch trace-with-caller-addr.patch trace-sti-mwait.patch latency-tracer-optimize-a-bit.patch idle-stop-critical-timing.patch arm-latency-tracer-support.patch latency-tracer-variable-threshold.patch # Needs to be rewritten to trigger on the procfs variable ! reset-latency-histogram.patch # # x86-64 unwinder # # not applied - it's a large chunk of code and Linus is very sceptical about it # #redo-unwinder.patch #unwinder-fix.patch # # lockdep queue: # lockdep-show-held-locks.patch lockdep-lock_set_subclass.patch lockdep-prettify.patch lockdep-more-entries.patch # # Revert loopback bh assumption patch # loopback-revert.patch # # hrtimer # hrtimer-trace.patch hrtimer-no-getnstimeofday.patch time-warp-detect.patch # # PPC gtod and highres support # ppc-gtod-support.patch ppc-gtod-support-fix.patch ppc-a-2.patch ppc-fix-clocksource-timebase-shift.patch ppc-remove-broken-vsyscall.patch ppc-read-persistent-clock.patch ppc-gtod-notrace-fix.patch ppc-clockevents.patch ppc-clockevents-fix.patch ppc-highres-dyntick.patch # # -rt queue: # inet_hash_bits.patch # tracing inet-hash-bits-ipv6-fix.patch undo-latency-tracing-raw-spinlock-hack.patch random-driver-latency-fix.patch latency-measurement-drivers.patch latency-measurement-drivers-fix.patch # # RCU preempt patches from Paul: # rcu-1.patch rcu-2.patch rcu-3.patch rcu-4.patch rcu-preempt-fix-nmi-watchdog.patch rcu-preempt-fix-rcu-torture.patch rcu-hrt-fixups.patch dynticks-rcu-rt-fixlet.patch rcu-tasklet-softirq.patch rcu-classic-fixup.patch # # ARM preperatory patches # arm-cmpxchg.patch arm-fix-atomic-cmpxchg.patch arm-cmpxchg-support-armv6.patch arm-preempt-config.patch # # IRQ threading # preempt-irqs-core.patch preempt-irqs-timer.patch preempt-irqs-hrtimer.patch preempt-irqs-i386.patch preempt-irqs-mips.patch preempt-irqs-x86-64.patch preempt-irqs-x86-64-ioapic-mask-quirk.patch preempt-irqs-i386-ioapic-mask-quirk.patch preempt-irqs-arm.patch preempt-irqs-arm-fix-oprofile.patch preempt-irqs-ppc.patch preempt-irqs-ppc-ack-irq-fixups.patch preempt-irqs-ppc-fix-b5.patch preempt-irqs-ppc-fix-b6.patch preempt-irqs-ppc-celleb-beatic-eoi.patch preempt-irqs-ppc-fix-more-fasteoi.patch preempt-irqs-ppc-preempt-schedule-irq-entry-fix.patch preempt-irqs-Kconfig.patch # # Real real time stuff :) # rt-apis.patch rt-slab-new.patch rt-page_alloc.patch # # rt-mutexes # rt-mutex-core.patch rt-mutex-trylock-export.patch rt-mutex-spinlock-might-sleep.patch rt-mutex-spinlock-nested-export-fix.patch rt-mutex-i386.patch rt-mutex-mips.patch rt-mutex-ppc.patch rt-mtex-ppc-fix-a5.patch rt-mutex-x86-64.patch rt-mutex-arm.patch rt-mutex-arm-fix.patch rt-mutex-compat-semaphores.patch # # Per-CPU locking assumption cleanups: # percpu-locked-mm.patch percpu-locked-netfilter.patch percpu-locked-netfilter2.patch percpu-locked-powerpc-fixups.patch percpu-locked-powerpc-fixups-a6.patch # # Various preempt fixups # net-core-preempt-fix.patch bh-uptodate-lock.patch bh-state-lock.patch jbd_assertions_smp_only.patch # # Tasklet redesign # tasklet-redesign.patch tasklet-busy-loop-hack.patch # # Diable irq poll on -rt # tasklet-fix-preemption-race.patch tasklet-more-fixes.patch disable-irqpoll.patch # # Inaccurate -rt stats (should be replaced by CFS) # kstat-add-rt-stats.patch # # Posix-cpu-timers in a thread # cputimer-thread-rt_A0.patch cputimer-thread-rt-fix.patch posix-cpu-timers-fix.patch # # Various broken drivers # preempt-rt-cs5530-lock-ide-fix.patch vortex-fix.patch serial-locking-rt-cleanup.patch fix-emac-locking-2.6.16.patch # # Serial optimizing # serial-slow-machines.patch # # Realtime patches # # ARM: preempt-realtime-arm.patch preempt-realtime-arm-bagde4.patch preempt-realtime-arm-footbridge.patch preempt-realtime-arm-integrator.patch preempt-realtime-arm-ixp4xx.patch preempt-realtime-arm-pxa.patch preempt-realtime-arm-shark.patch # MIPS: needs splitting preempt-realtime-mips.patch mips-gtod_clocksource.patch # X86-64: needs splitting preempt-realtime-x86_64.patch # IA64: needs splitting preempt-realtime-ia64.patch # PowerPC preempt-realtime-ppc-need-resched-delayed.patch preempt-realtime-ppc-more-resched-fixups.patch preempt-realtime-powerpc.patch preempt-realtime-powerpc-update.patch preempt-realtime-powerpc-a7.patch preempt-realtime-powerpc-b2.patch preempt-realtime-powerpc-b3.patch preempt-realtime-powerpc-b4.patch preempt-realtime-powerpc-add-raw-relax-macros.patch preempt-realtime-powerpc-tlb-batching.patch preempt-realtime-powerpc-celleb-raw-spinlocks.patch # # SuperH: needs splitting # preempt-realtime-powerpc-missing-raw-spinlocks.patch preempt-realtime-sh.patch # # i386 # preempt-realtime-i386.patch preempt-irqs-i386-idle-poll-loop-fix.patch # # Core patch # # Note this is a convenience split up it is not supposed to compile # step by step. Needs some care, but it is way easier to handle than # the previous touch all in one patch # preempt-realtime-sched.patch preempt-realtime-prevent-idle-boosting.patch preempt-realtime-cfs-accounting-fix.patch preempt-realtime-core.patch preempt-realtime-fs-block.patch preempt-realtime-acpi.patch preempt-realtime-ipc.patch preempt-realtime-sound.patch preempt-realtime-mm.patch preempt-realtime-init-show-enabled-debugs.patch preempt-realtime-compile-fixes.patch preempt-realtime-console.patch preempt-realtime-debug-sysctl.patch preempt-realtime-ide.patch preempt-realtime-input.patch preempt-realtime-irqs.patch preempt-realtime-net-drivers.patch preempt-realtime-netconsole.patch preempt-realtime-printk.patch preempt-realtime-profiling.patch preempt-realtime-rawlocks.patch preempt-realtime-rcu.patch preempt-realtime-timer.patch preempt-realtime-usb.patch preempt-realtime-warn-and-bug-on.patch preempt-realtime-warn-and-bug-on-fix.patch # # Various -rt fixups # preempt-realtime-gtod-fixups.patch preempt-realtime-supress-cpulock-warning.patch preempt-realtime-supress-nohz-softirq-warning.patch preempt-realtime-net.patch preempt-realtime-net-softirq-fixups.patch preempt-realtime-loopback.patch preempt-realtime-drivers-pci-hotplug.patch preempt-realtime-8139too-rt-irq-flags-fix.patch # # Utility patches (not for upstream inclusion): # preempt-realtime-supress-rtc-printk.patch softlockup-print-regs.patch hrtimer-no-printk.patch nmi-profiling.patch panic-dont-stop-box.patch nmi-watchdog-disable.patch # # Not yet reviewed # gtod-optimize.patch realtime-lsm.patch # # Futex updates # rcu-various-fixups.patch futex-performance-hack.patch futex-performance-hack-sysctl-fix.patch # # Pete's file locking scalability changes: # lock_list.patch barrier.patch s_files.patch s_files-proc-generic-fix.patch s_files-barrier.patch s_files-per_cpu-rt.patch s_files-schedule_on_each_cpu_wq.patch s_files-per_cpu-flush-fix.patch s_files-pipe-fix.patch # # Pete's lockless pagecache port: # radix-tree-use-indirect-bit.patch radix-tree-gang_lookup_slot.patch mm-speculative-get-page.patch mm-lockless-pagecache-lookups.patch mm-lockless-preempt-fixup.patch mm-lockless-preempt-rt-fixup.patch # # kmap atomix fixes # kmap-atomic-prepare.patch pagefault-disable-cleanup.patch kmap-atomic-i386-fix.patch # # Not yet reviewed # select-error-leak-fix.patch module-pde-race-fixes.patch fix-emergency-reboot.patch timer-freq-tweaks.patch # # Highmem modifications # highmem-revert-mainline.patch highmem_rewrite.patch highmem-redo-mainline.patch rt-kmap-scale-fix.patch # # Debug patches: # pause-on-oops-head-tail.patch i386-nmi-watchdog-show-regs.patch x86-64-traps-move-held-locks-output.patch # # x86-64 vsyscall modifications # x86-64-tscless-vgettimeofday.patch rt-time-starvation-fix.patch # # RT-Java testing stuff # Add-dev-rmem-device-driver-for-real-time-JVM-testing.patch Allocate-RTSJ-memory-for-TCK-conformance-test.patch # # Softirq modifications # new-softirq-code.patch new-softirq-code-fixlets.patch softirq-per-cpu-assumptions-fixes.patch smp-processor-id-fixups.patch fix-migrating-softirq.patch vsyscall-add-notrace.patch disable-gtod-functions-if-gtod-is-not-there.patch fix-softirq-checks-for-non-rt-preempt-hardirq.patch # # Weird crap unearthed by -rt which needs to be investigated # irda-fix.patch nf_conntrack-weird-crash-fix.patch # # Needs proper fix # nf_conntrack-fix-smp-processor-id.patch print-might-sleep-hack.patch # # Lockstat: # lockdep-prove-locking.patch lockdep-rt-mutex.patch lockstat-core.patch lockstat-output.patch lockstat-hooks.patch lockstat-rt-hooks.patch lockstat_bounce.patch lockstat_bounce_rt.patch lockdep_fixups.patch lockstat_class_name.patch lockdep_fixup_annotate.patch # # KVM: # kvm-rt.patch # # Add RT to uname and apply the version # RT_utsname.patch # # not yet backmerged tail patches: # hrt-rt-fix-merge-artifact.patch preempt-rt-no-slub.patch rfkill-input-fix.patch fork.c-takeover-tasklets-warning-fix.patch paravirt-function-pointer-fix.patch hpet-build-fix.patch rtc.c-build-fix.patch version.patch - To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html