[linux] 02/02: Update to 3.2.78

debian-kernel at lists.debian.org debian-kernel at lists.debian.org
Wed Mar 2 23:04:39 UTC 2016


This is an automated email from the git hooks/post-receive script.

benh pushed a commit to branch wheezy
in repository linux.

commit d476de127d1d4699b56270f81805e5f53dc39879
Author: Ben Hutchings <ben at decadent.org.uk>
Date:   Wed Mar 2 15:58:28 2016 +0000

    Update to 3.2.78
    
    [rt] Update to 3.2.77-rt111
    
    Fix/ignore ABI changes in af_alg, crypto, dm-snapshot, hrtimer, snd-rawmidi.
---
 debian/changelog                                   | 168 +++-
 debian/config/defines                              |   3 +
 .../alsa-hrtimer-fix-stall-by-hrtimer_cancel.patch |  49 --
 ...missing-null-check-at-remove_events-ioctl.patch |  29 -
 ...lsa-seq-fix-race-at-timer-setup-and-close.patch |  33 -
 ...sa-timer-fix-double-unlink-of-active_list.patch |  32 -
 .../alsa-timer-fix-race-among-timer-ioctls.patch   | 117 ---
 ...sa-timer-harden-slave-timer-list-handling.patch |  96 ---
 ...sb-audio-avoid-freeing-umidi-object-twice.patch |  29 -
 ...ix-incorrectly-returning-error-on-success.patch |  36 -
 ...sion-fix-crash-on-detecting-device-with-i.patch |  45 -
 ...sion-fix-leak-of-usb_dev-on-failure-paths.patch |  88 --
 ...sion-video-fix-memory-leak-of-alt_max_pkt.patch |  41 -
 ...buffer-offset-after-partially-failed-read.patch |  51 --
 ...the-per-user-amount-of-pages-allocated-in.patch | 238 ------
 ...-t-finish-a-td-if-we-get-a-short-transfer.patch |  37 -
 ...t-soft-lockup-when-sctp_accept-is-called-.patch | 180 ----
 ...unsafe-ldisc-reference-via-ioctl-tiocgetd.patch |  63 --
 ...flight-fds-in-sending-process-user_struct.patch | 148 ----
 ...ly-account-for-FDs-passed-over-unix-socke.patch | 129 ---
 ...sh-on-detecting-device-without-write_urbs.patch |  31 -
 ...sbvision-fix-overflow-of-interfaces-array.patch |  34 -
 ...barriers-and-document-switch_mm-vs-flush-.patch | 138 ---
 ...x86-mm-Improve-switch_mm-barrier-comments.patch |  62 --
 .../debian/crypto-fix-abi-change-in-3.2.77.patch   | 137 +++
 .../debian/hrtimer-fix-abi-change-in-3.2.78.patch  |  58 ++
 debian/patches/features/all/drm/drm-3.4.patch      | 937 +++++++++++----------
 .../features/all/fs-add-link-restrictions.patch    |  18 +-
 ...queue-skip-nr_running-sanity-check-in-wor.patch |   6 +-
 ...02-x86-Call-idle-notifier-after-irq_enter.patch |  14 +-
 ...003-slab-lockdep-Annotate-all-slab-caches.patch |   6 +-
 ...probes-Remove-remove-bogus-preempt_enable.patch |   6 +-
 .../0005-x86-hpet-Disable-MSI-on-Lenovo-W510.patch |   6 +-
 ...-block-Shorten-interrupt-disabled-regions.patch |   6 +-
 ...istangle-worker-accounting-from-rq-3Elock.patch |  20 +-
 ...08-mips-enable-interrupts-in-signal.patch.patch |   6 +-
 ...rm-enable-interrupts-in-signal-code.patch.patch |   6 +-
 ...erpc-85xx-Mark-cascade-irq-IRQF_NO_THREAD.patch |   6 +-
 ...p-Mark-opb-cascade-handler-IRQF_NO_THREAD.patch |   6 +-
 ...owerpc-Mark-IPI-interrupts-IRQF_NO_THREAD.patch |  10 +-
 .../all/rt/0013-powerpc-Allow-irq-threading.patch  |   4 +-
 ...period-timer-ticking-when-throttling-acti.patch |   6 +-
 ...-sched-Do-not-throttle-due-to-PI-boosting.patch |   6 +-
 .../all/rt/0016-time-Remove-bogus-comments.patch   |   6 +-
 ...emove-bogus-locking-in-update_vsyscall_tz.patch |   6 +-
 ...-x86-vdso-Use-seqcount-instead-of-seqlock.patch |  10 +-
 ...-vsyscall-Use-seqcount-instead-of-seqlock.patch |  12 +-
 .../rt/0020-seqlock-Remove-unused-functions.patch  |   6 +-
 .../all/rt/0021-seqlock-Use-seqcount.patch         |   6 +-
 ...ct-Move-code-out-of-seqcount-write-sectio.patch |   6 +-
 .../all/rt/0023-timekeeping-Split-xtime_lock.patch |  16 +-
 ...e-Convert-i7300_idle_lock-to-raw-spinlock.patch |   6 +-
 ...orten-preempt-disabled-section-around-eve.patch |   6 +-
 ...count-for-preempt-off-in-preempt_schedule.patch |   8 +-
 ...-signal-revert-ptrace-preempt-magic.patch.patch |   6 +-
 ...0028-arm-Mark-pmu-interupt-IRQF_NO_THREAD.patch |   6 +-
 .../rt/0029-arm-Allow-forced-irq-threading.patch   |   4 +-
 ...0-preempt-rt-Convert-arm-boot_lock-to-raw.patch |  16 +-
 ...31-sched-Create-schedule_preempt_disabled.patch |  10 +-
 .../0032-sched-Use-schedule_preempt_disabled.patch |  60 +-
 .../all/rt/0033-signals-Do-not-wakeup-self.patch   |   6 +-
 ...34-posix-timers-Prevent-broadcast-signals.patch |   6 +-
 ...low-rt-tasks-to-cache-one-sigqueue-struct.patch |  14 +-
 ...ignal-x86-Delay-calling-signals-in-atomic.patch |  12 +-
 ...-raw-local-irq-variant-for-generic-cmpxch.patch |   6 +-
 ...ers-random-Reduce-preempt-disabled-region.patch |   6 +-
 ...T-Remove-irq-handler-when-clock-event-is-.patch |   8 +-
 ...-TCLIB-Allow-higher-clock-rates-for-clock.patch |   8 +-
 ...-tulip_remove_one-needs-to-call-pci_disab.patch |   6 +-
 ...ers-net-Use-disable_irq_nosync-in-8139too.patch |   6 +-
 ...-ehea-Make-rx-irq-handler-non-threaded-IR.patch |   6 +-
 ...t-at91_ether-Make-mdio-protection-rt-safe.patch |   6 +-
 ...t-mark-legitimated-no-resched-sites.patch.patch |  20 +-
 ...decoupling-the-page-fault-disabling-logic.patch |  12 +-
 ...l-fault-handlers-to-check-current-pagefau.patch |  48 +-
 .../all/rt/0048-mm-pagefault_disabled.patch        |  52 +-
 .../all/rt/0049-mm-raw_pagefault_disable.patch     |   8 +-
 .../all/rt/0050-filemap-fix-up.patch.patch         |   6 +-
 ...reempt-count-from-pagefault-disable-enabl.patch |   6 +-
 ...052-x86-highmem-Replace-BUG_ON-by-WARN_ON.patch |   6 +-
 .../0053-suspend-Prevent-might-sleep-splats.patch  |  10 +-
 ...054-OF-Fixup-resursive-locking-code-paths.patch |   6 +-
 .../rt/0055-of-convert-devtree-lock.patch.patch    |  10 +-
 .../rt/0056-list-add-list-last-entry.patch.patch   |   6 +-
 ...7-mm-page-alloc-use-list-last-entry.patch.patch |   6 +-
 .../all/rt/0058-mm-slab-move-debug-out.patch.patch |   6 +-
 .../all/rt/0059-rwsem-inlcude-fix.patch.patch      |   6 +-
 .../all/rt/0060-sysctl-include-fix.patch.patch     |   6 +-
 .../rt/0061-net-flip-lock-dep-thingy.patch.patch   |   6 +-
 .../rt/0062-softirq-thread-do-softirq.patch.patch  |   8 +-
 .../all/rt/0063-softirq-split-out-code.patch.patch |   6 +-
 ...unmask-io_apic-when-interrupt-is-in-progr.patch |   6 +-
 .../all/rt/0065-x86-32-fix-signal-crap.patch.patch |   6 +-
 ...o-not-disable-preemption-in-int3-on-32bit.patch |   6 +-
 .../all/rt/0067-rcu-Reduce-lock-section.patch      |  10 +-
 .../rt/0068-locking-various-init-fixes.patch.patch |  14 +-
 .../0069-wait-Provide-__wake_up_all_locked.patch   |  10 +-
 ...ake_up_all_locked-pci_unblock_user_cfg_ac.patch |   8 +-
 .../features/all/rt/0071-latency-hist.patch.patch  |  22 +-
 .../features/all/rt/0072-hwlatdetect.patch.patch   |  14 +-
 .../features/all/rt/0073-localversion.patch.patch  |   6 +-
 .../rt/0074-early-printk-consolidate.patch.patch   |  40 +-
 .../features/all/rt/0075-printk-kill.patch.patch   |  12 +-
 ...e_early_printk-boot-param-to-help-with-de.patch |   6 +-
 .../all/rt/0077-rt-preempt-base-config.patch.patch |   6 +-
 ...UG_ON-WARN_ON-variants-dependend-on-RT-RT.patch |   6 +-
 ...rt-local_irq_-variants-depending-on-RT-RT.patch |   8 +-
 ...preempt-Provide-preempt_-_-no-rt-variants.patch |   6 +-
 ...disable-interrupts-in-ide-code-for-preemp.patch |   6 +-
 ...-Do-not-disable-interrupts-for-PREEMPT-RT.patch |  18 +-
 ...Mellanox-IB-driver-patch-use-_nort-primit.patch |   6 +-
 ...ort-Do-not-disable-interrupts-on-PREEMPT_.patch |   6 +-
 ...i-Do-not-disable-interrupts-on-PREEMPT_RT.patch |   6 +-
 ...-disable-interrupts-on-RT-in-kernel-users.patch |   6 +-
 ...-disable-interrupts-on-RT-in-res_counter..patch |   6 +-
 .../0088-usb-Use-local_irq_-_nort-variants.patch   |   6 +-
 ...not-disable-interrupts-in-put_ldisc-on-rt.patch |   6 +-
 ...90-mm-scatterlist-dont-disable-irqs-on-RT.patch |   6 +-
 .../rt/0091-signal-fix-up-rcu-wreckage.patch.patch |   6 +-
 .../all/rt/0092-net-wireless-warn-nort.patch.patch |   6 +-
 .../0093-mm-Replace-cgroup_page-bit-spinlock.patch |   8 +-
 ...ffer_head-Replace-bh_uptodate_lock-for-rt.patch |  10 +-
 ...-Make-state-lock-and-journal-head-lock-rt.patch |   8 +-
 .../0096-genirq-Disable-DEBUG_SHIRQ-for-rt.patch   |   6 +-
 ...-genirq-Disable-random-call-on-preempt-rt.patch |   6 +-
 .../all/rt/0098-genirq-disable-irqpoll-on-rt.patch |   6 +-
 .../all/rt/0099-genirq-force-threading.patch.patch |   8 +-
 .../rt/0100-drivers-net-fix-livelock-issues.patch  |  20 +-
 ...101-drivers-net-vortex-fix-locking-issues.patch |   6 +-
 .../0102-drivers-net-gianfar-Make-RT-aware.patch   |   6 +-
 ...-mouse-problem-when-copying-large-amounts.patch |   6 +-
 .../features/all/rt/0104-local-var.patch.patch     |   6 +-
 .../all/rt/0105-rt-local-irq-lock.patch.patch      |   6 +-
 .../all/rt/0106-cpu-rt-variants.patch.patch        |   6 +-
 .../all/rt/0107-mm-slab-wrap-functions.patch.patch |   6 +-
 ...x-__do_drain-to-use-the-right-array-cache.patch |   6 +-
 .../rt/0109-mm-More-lock-breaks-in-slab.c.patch    |   6 +-
 ...0-mm-page_alloc-rt-friendly-per-cpu-pages.patch |   6 +-
 ...m-page_alloc-reduce-lock-sections-further.patch |   6 +-
 .../all/rt/0112-mm-page-alloc-fix.patch.patch      |   6 +-
 .../rt/0113-mm-convert-swap-to-percpu-locked.patch |   4 +-
 ...mm-vmstat-fix-the-irq-lock-asymetry.patch.patch |   6 +-
 .../all/rt/0115-mm-make-vmstat-rt-aware.patch      |   8 +-
 .../0116-mm-shrink-the-page-frame-to-rt-size.patch |  10 +-
 ...7-ARM-Initialize-ptl-lock-for-vector-page.patch |   6 +-
 .../all/rt/0118-mm-Allow-only-slab-on-RT.patch     |   6 +-
 .../all/rt/0119-radix-tree-rt-aware.patch.patch    |   8 +-
 .../all/rt/0120-panic-disable-random-on-rt.patch   |   6 +-
 .../rt/0121-ipc-Make-the-ipc-code-rt-aware.patch   |   8 +-
 ...Add-a-critical-section-to-avoid-a-deadloc.patch |   6 +-
 .../all/rt/0123-relay-fix-timer-madness.patch      |   6 +-
 ...4-net-ipv4-route-use-locks-on-up-rt.patch.patch |   6 +-
 ...rkqueue-avoid-the-lock-in-cpu-dying.patch.patch |   6 +-
 .../0126-timers-prepare-for-full-preemption.patch  |   8 +-
 .../all/rt/0127-timers-preempt-rt-support.patch    |   6 +-
 .../rt/0128-timers-fix-timer-hotplug-on-rt.patch   |   6 +-
 ...-timers-mov-printk_tick-to-soft-interrupt.patch |   6 +-
 ...delay-waking-softirqs-from-the-jiffy-tick.patch |   6 +-
 ...d-the-switch-timers-base-set-to-NULL-tric.patch |   6 +-
 ...t-call-printk_tick-in-printk_needs_cpu-on.patch |   6 +-
 .../rt/0133-hrtimers-prepare-full-preemption.patch |  32 +-
 ...up-hrtimer-callback-changes-for-preempt-r.patch |  65 +-
 ...-t-call-the-timer-handler-from-hrtimer_st.patch |   6 +-
 .../0136-hrtimer-fix-reprogram-madness.patch.patch |   6 +-
 .../all/rt/0137-timer-fd-Prevent-live-lock.patch   |   6 +-
 ...osix-timers-thread-posix-cpu-timers-on-rt.patch |  14 +-
 ...s-Shorten-posix_cpu_timers-CPU-kernel-thr.patch |   6 +-
 ...s-Avoid-wakeups-when-no-timers-are-active.patch |   6 +-
 .../all/rt/0141-sched-delay-put-task.patch.patch   |   6 +-
 .../all/rt/0142-sched-limit-nr-migrate.patch.patch |   6 +-
 .../all/rt/0143-sched-mmdrop-delayed.patch.patch   |  31 +-
 .../all/rt/0144-sched-rt-mutex-wakeup.patch.patch  |  12 +-
 .../rt/0145-sched-prevent-idle-boost.patch.patch   |  10 +-
 ...ight-sleep-do-not-account-rcu-depth.patch.patch |  10 +-
 ...-out-from-load_balancing-on-rq_lock-conte.patch |   6 +-
 .../all/rt/0148-sched-cond-resched.patch.patch     |   8 +-
 .../rt/0149-cond-resched-softirq-fix.patch.patch   |  12 +-
 .../0150-sched-no-work-when-pi-blocked.patch.patch |  12 +-
 .../rt/0151-cond-resched-lock-rt-tweak.patch.patch |   6 +-
 .../rt/0152-sched-disable-ttwu-queue.patch.patch   |   6 +-
 ...sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch |   6 +-
 ...Return-success-when-only-changing-the-sav.patch |   8 +-
 ...ne-convert-stop_machine_run-to-PREEMPT_RT.patch |   6 +-
 ...6-stomp-machine-mark-stomper-thread.patch.patch |   8 +-
 .../all/rt/0157-stomp-machine-raw-lock.patch.patch |   6 +-
 .../0158-hotplug-Lightweight-get-online-cpus.patch |   8 +-
 .../all/rt/0159-hotplug-sync_unplug-No.patch       |   6 +-
 ...read-hotplug_pcp-on-pin_current_cpu-retry.patch |   6 +-
 .../all/rt/0161-sched-migrate-disable.patch.patch  |  20 +-
 .../0162-hotplug-use-migrate-disable.patch.patch   |   6 +-
 ...Call-cpu_unplug_begin-before-DOWN_PREPARE.patch |   6 +-
 ...0164-ftrace-migrate-disable-tracing.patch.patch |  12 +-
 ...65-tracing-Show-padding-as-unsigned-short.patch |   6 +-
 .../rt/0166-migrate-disable-rt-variant.patch.patch |   6 +-
 .../rt/0167-sched-Optimize-migrate_disable.patch   |  14 +-
 .../rt/0168-sched-Generic-migrate_disable.patch    |  24 +-
 .../0169-sched-rt-Fix-migrate_enable-thinko.patch  |  10 +-
 ...ach-migrate_disable-about-atomic-contexts.patch |  12 +-
 ...pone-actual-migration-disalbe-to-schedule.patch |  14 +-
 ...hed-Do-not-compare-cpu-masks-in-scheduler.patch |   8 +-
 ...ve-migrate_disable-ignore-bounded-threads.patch |  12 +-
 ...lear-pf-thread-bound-on-fallback-rq.patch.patch |   8 +-
 .../features/all/rt/0175-ftrace-crap.patch.patch   |   8 +-
 ...-Convert-reader_lock-from-raw_spin_lock-i.patch |  44 +-
 ...177-net-netif_rx_ni-migrate-disable.patch.patch |   6 +-
 ...tirq-Sanitize-softirq-pending-for-NOHZ-RT.patch |  10 +-
 .../features/all/rt/0179-lockdep-rt.patch.patch    |   8 +-
 .../all/rt/0180-mutex-no-spin-on-rt.patch.patch    |   6 +-
 .../all/rt/0181-softirq-local-lock.patch.patch     |  14 +-
 .../0182-softirq-Export-in_serving_softirq.patch   |   6 +-
 ...efine-softirq_count-as-OUL-to-kill-build-.patch |   6 +-
 .../all/rt/0184-softirq-Fix-unplug-deadlock.patch  |   6 +-
 ...ftirq-disable-softirq-stacks-for-rt.patch.patch |  22 +-
 .../all/rt/0186-softirq-make-fifo.patch.patch      |   6 +-
 ...vent-tasklets-from-going-into-infinite-sp.patch |   8 +-
 ...w-disabling-of-softirq-processing-in-irq-.patch |  14 +-
 .../rt/0189-local-vars-migrate-disable.patch.patch |   6 +-
 ...raid5-Make-raid5_percpu-handling-RT-aware.patch |   8 +-
 .../all/rt/0191-rtmutex-lock-killable.patch.patch  |   8 +-
 .../rt/0192-rtmutex-futex-prepare-rt.patch.patch   |  19 +-
 ...-bug-on-when-a-requeued-RT-task-times-out.patch |   8 +-
 ...utex-add-sleeping-spinlocks-support.patch.patch |  12 +-
 .../0195-spinlock-types-separate-raw.patch.patch   |  12 +-
 .../rt/0196-rtmutex-avoid-include-hell.patch.patch |   6 +-
 .../all/rt/0197-rt-add-rt-spinlocks.patch.patch    |  10 +-
 .../rt/0198-rt-add-rt-to-mutex-headers.patch.patch |   8 +-
 .../all/rt/0199-rwsem-add-rt-variant.patch.patch   |  10 +-
 ...-Add-the-preempt-rt-lock-replacement-APIs.patch |  20 +-
 .../all/rt/0201-rwlocks-Fix-section-mismatch.patch |   8 +-
 ...e-idle-trylock-in-get-next-timer-irq.patc.patch |  10 +-
 ...0203-RCU-Force-PREEMPT_RCU-for-PREEMPT-RT.patch |   6 +-
 .../all/rt/0204-rcu-Frob-softirq-test.patch        |   6 +-
 .../0205-rcu-Merge-RCU-bh-into-RCU-preempt.patch   |  12 +-
 ...ro-substitution-for-synchronize_rcu_bh-on.patch |   6 +-
 .../all/rt/0207-rcu-more-fallout.patch.patch       |   6 +-
 ...cu-Make-ksoftirqd-do-RCU-quiescent-states.patch |  14 +-
 .../0209-rt-rcutree-Move-misplaced-prototype.patch |   8 +-
 .../features/all/rt/0210-lglocks-rt.patch.patch    |   6 +-
 ...1-serial-8250-Clean-up-the-locking-for-rt.patch |   6 +-
 ...-Call-flush_to_ldisc-when-the-irq-is-thre.patch |  10 +-
 ...0213-drivers-tty-fix-omap-lock-crap.patch.patch |   6 +-
 ...-rt-Improve-the-serial-console-PASS_LIMIT.patch |   6 +-
 .../all/rt/0215-fs-namespace-preemption-fix.patch  |   6 +-
 .../0216-mm-protect-activate-switch-mm.patch.patch |   8 +-
 .../all/rt/0217-fs-block-rt-support.patch.patch    |   8 +-
 ...0218-fs-ntfs-disable-interrupt-only-on-RT.patch |   6 +-
 .../rt/0219-x86-Convert-mce-timer-to-hrtimer.patch |   6 +-
 ...86-stackprotector-Avoid-random-pool-on-rt.patch |   6 +-
 ...221-x86-Use-generic-rwsem_spinlocks-on-rt.patch |   6 +-
 .../0222-workqueue-use-get-cpu-light.patch.patch   |   6 +-
 .../patches/features/all/rt/0223-epoll.patch.patch |   6 +-
 .../features/all/rt/0224-mm-vmalloc.patch.patch    |   6 +-
 .../all/rt/0225-debugobjects-rt.patch.patch        |   6 +-
 .../features/all/rt/0226-jump-label-rt.patch.patch |   6 +-
 .../all/rt/0227-skbufhead-raw-lock.patch.patch     |  14 +-
 .../rt/0228-x86-no-perf-irq-work-rt.patch.patch    |  10 +-
 .../rt/0229-console-make-rt-friendly.patch.patch   |   6 +-
 ...k-Disable-migration-instead-of-preemption.patch |   6 +-
 .../rt/0231-power-use-generic-rwsem-on-rt.patch    |   6 +-
 .../0232-power-disable-highmem-on-rt.patch.patch   |   6 +-
 .../rt/0233-arm-disable-highmem-on-rt.patch.patch  |   6 +-
 ...-at91-tclib-Default-to-tclib-timer-for-RT.patch |   6 +-
 .../rt/0235-mips-disable-highmem-on-rt.patch.patch |   6 +-
 ...net-Avoid-livelock-in-net_tx_action-on-RT.patch |   6 +-
 .../features/all/rt/0237-ping-sysrq.patch.patch    |  12 +-
 .../0238-kgdb-serial-Short-term-workaround.patch   |  10 +-
 .../rt/0239-add-sys-kernel-realtime-entry.patch    |   6 +-
 .../all/rt/0240-mm-rt-kmap_atomic-scheduling.patch |  10 +-
 .../rt/0241-ipc-sem-Rework-semaphore-wakeups.patch |   6 +-
 ...-immediate-Magic-SysRq-output-for-PREEMPT.patch |  12 +-
 ...43-x86-kvm-require-const-tsc-for-rt.patch.patch |   8 +-
 .../all/rt/0244-scsi-fcoe-rt-aware.patch.patch     |  10 +-
 ...86-crypto-Reduce-preempt-disabled-regions.patch |   6 +-
 .../features/all/rt/0246-dm-Make-rt-aware.patch    |   6 +-
 ...sk-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch |   8 +-
 .../rt/0248-seqlock-Prevent-rt-starvation.patch    |   8 +-
 .../all/rt/0249-timer-Fix-hotplug-for-rt.patch     |   6 +-
 ...x-possible-lockup-when-taking-pi_lock-in-.patch |   6 +-
 ...-rt-Check-for-irqs-disabled-before-grabbi.patch |   6 +-
 ...x-wait_task_interactive-to-test-rt_spin_l.patch |  10 +-
 ...ock-rt-Use-non-rt-for_each_cpu-in-rt-code.patch |   6 +-
 ...ke-hotplug.lock-a-sleeping-spinlock-on-RT.patch |   6 +-
 ...ck-preemption-after-reenabling-interrupts.patch |  14 +-
 .../all/rt/0256-rt-Introduce-cpu_chill.patch       |   6 +-
 ...-fs-dcache-Use-cpu_chill-in-trylock-loops.patch |  12 +-
 ...58-net-Use-cpu_chill-instead-of-cpu_relax.patch |   8 +-
 ...59-kconfig-disable-a-few-options-rt.patch.patch |  10 +-
 .../rt/0260-kconfig-preempt-rt-full.patch.patch    |  10 +-
 ...rate_disable-enable-and-__rt_mutex_init-n.patch |  12 +-
 ...x-Use-local_irq_save_nort-in-qla2x00_poll.patch |   6 +-
 ...T-REmove-preemption-disabling-in-netif_rx.patch |   6 +-
 .../0264-mips-remove-smp-reserve-lock.patch.patch  |   6 +-
 ...togramms-Cope-with-backwards-running-loca.patch |   8 +-
 ...tograms-Adjust-timer-if-already-elapsed-w.patch |  20 +-
 ...Disable-RT_GROUP_SCHED-in-PREEMPT_RT_FULL.patch |   6 +-
 ...tograms-Detect-another-yet-overlooked-sha.patch |   6 +-
 .../rt/0269-slab-Prevent-local-lock-deadlock.patch |   6 +-
 ...jbd-pull-your-plug-when-waiting-for-space.patch |   6 +-
 ...wevent-hrtimer-run-in-irq-instead-of-soft.patch |   8 +-
 ...272-cpu-rt-Rework-cpu-down-for-PREEMPT_RT.patch |  16 +-
 ...t-Fix-cpu_hotplug-variable-initialization.patch |   6 +-
 ...ix-up-leap-second-backport-for-RT-changes.patch |   8 +-
 .../all/rt/0275-fix-printk-flush-of-messages.patch |   6 +-
 .../all/rt/0276-fix-printk-flush-of-messages.patch |  12 +-
 .../all/rt/0277-random-Make-it-work-on-rt.patch    |  12 +-
 ...t-softirq-local-lock-after-per-cpu-sectio.patch |   6 +-
 .../rt/0279-mm-slab-Fix-potential-deadlock.patch   |   8 +-
 ...oc-Use-local_lock_on-instead-of-plain-spi.patch |   8 +-
 .../0281-rt-rwsem-rwlock-lockdep-annotations.patch |   6 +-
 ...sched-Better-debug-output-for-might-sleep.patch |  14 +-
 ...ne-Use-mutex_trylock-when-called-from-ina.patch |   6 +-
 ...ix-up-stable-merge-of-slab-init_lock_keys.patch |   6 +-
 ...imer-Raise-softirq-if-hrtimer-irq-stalled.patch |   6 +-
 .../rt/0286-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch |   6 +-
 ...er-Serialize-xt_write_recseq-sections-on-.patch |  10 +-
 ...t-sched_reset_on_fork-when-nothing-else-c.patch |   8 +-
 ...ed-Queue-RT-tasks-to-head-when-prio-drops.patch |   8 +-
 ...ched-Consider-pi-boosting-in-setscheduler.patch |  20 +-
 ...ivers-tty-pl011-irq-disable-madness.patch.patch |   6 +-
 .../rt/0292-mmci-Remove-bogus-local_irq_save.patch |   6 +-
 .../0293-sched-Init-idle-on_rq-in-init_idle.patch  |   8 +-
 ...-sched-Check-for-idle-task-in-might_sleep.patch |   8 +-
 ...0295-mm-swap-Initialize-local-locks-early.patch |   6 +-
 ...2-Use-kmap-switch-for-non-highmem-as-well.patch |   8 +-
 ...vert-acpi_gbl_hardware-lock-back-to-a-raw.patch |  14 +-
 ...0298-serial-Imx-Fix-recursive-locking-bug.patch |   6 +-
 ...it-simple-Simple-waitqueue-implementation.patch |  10 +-
 .../all/rt/0300-rcutiny-Use-simple-waitqueue.patch |   6 +-
 ...-typo-of-using-swake_up-instead-of-swait_.patch |   6 +-
 ...fer-mce-wakeups-to-threads-for-PREEMPT_RT.patch |   6 +-
 ...-Use-unique-local-lock-name-for-swap_lock.patch |   6 +-
 ...s_idle_task-to-handle-invalidated-uses-of.patch |   6 +-
 ...ueue-Only-wake-up-idle-workers-if-not-blo.patch |   8 +-
 .../rt/0306-x86-mce-fix-mce-timer-interval.patch   |   6 +-
 ...Set-irq-thread-to-RT-priority-on-creation.patch |   6 +-
 ...-list_bl.h-make-list-head-locking-RT-safe.patch |   6 +-
 ...st_bl.h-fix-it-for-for-SMP-DEBUG_SPINLOCK.patch |   6 +-
 ...imers-prepare-for-full-preemption-improve.patch |   6 +-
 ...fix-cpu-down-problem-if-kthread-s-cpu-is-.patch |   6 +-
 ...plug-restore-original-cpu-mask-oncpu-down.patch |   6 +-
 ...5-drop-trace_i915_gem_ring_dispatch-on-rt.patch |   4 +-
 ...-call-to-schedule_delayed_work-to-helper-.patch |   6 +-
 ...tor-Update-hwlat_detector-to-add-outer-lo.patch |   6 +-
 ...t-trace-Export-trace_clock_local-for-hwla.patch |   6 +-
 ...tector-Use-trace_clock_local-if-available.patch |   6 +-
 ...tector-Use-thread-instead-of-stop-machine.patch |   6 +-
 ...ot-invoke-the-affinity-callback-via-a-wor.patch |   8 +-
 ...the-irq-thread-policy-without-checking-CA.patch |   6 +-
 ...tor-Don-t-ignore-threshold-module-paramet.patch |   6 +-
 ...ol-Don-t-call-schedule_work_on-in-preempt.patch |   6 +-
 ...preempt_disable-from-drm_calc_vbltimestam.patch |   6 +-
 .../0324-cpu_down-move-migrate_enable-back.patch   |   6 +-
 .../all/rt/0325-swait-Add-a-few-more-users.patch   |  10 +-
 ...rectly-annotate-hardirq-context-in-irq_ex.patch |   6 +-
 ...-use-a-trylock-for-waiter-lock-in-trylock.patch |  10 +-
 ...oduce-a-generic-on_each_cpu_mask-function.patch |  14 +-
 ...-func-to-IPI-cpus-based-on-parameter-func.patch |   8 +-
 ...send-IPI-to-invalidate-LRU-BH-when-needed.patch |   6 +-
 ..._bh_qs-disable-irq-while-calling-rcu_pree.patch |   6 +-
 ...e-cpu_chill-use-hrtimer-instead-of-msleep.patch |   8 +-
 ...el-hrtimer-be-non-freezeable-in-cpu_chill.patch |   6 +-
 .../rt/0334-arm-unwind-use-a-raw_spin_lock.patch   |   6 +-
 .../0335-Revert-swait-Add-a-few-more-users.patch   |  10 +-
 ...ev_deactivate_many-use-msleep-1-instead-o.patch |   6 +-
 ...bd2-pull-your-plug-when-waiting-for-space.patch |   6 +-
 ...l-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch |   6 +-
 ...339-net-gianfar-do-not-disable-interrupts.patch |  10 +-
 .../rt/0340-rcu-make-RCU_BOOST-default-on-RT.patch |   6 +-
 ...-histogram-after-hrtimer-Set-expiry-time-.patch |  14 +-
 ...t-clear-PF_NO_SETAFFINITY-flag-in-select_.patch |   8 +-
 ...43-workqueue-Prevent-deadlock-stall-on-RT.patch |  14 +-
 ...-the-miss-of-hrtimer_peek_ahead_timers-in.patch |   6 +-
 ...-backport-of-Correctly-annotate-hardirq-c.patch |   6 +-
 .../0346-gpio-omap-use-raw-locks-for-locking.patch |   6 +-
 .../features/all/rt/0347-create-rt-enqueue.patch   |   6 +-
 ...0348-rtmutex-Simplify-rtmutex_slowtrylock.patch |   6 +-
 ...Simplify-and-document-try_to_take_rtmutex.patch |   6 +-
 ...need-to-keep-task-ref-for-lock-owner-chec.patch |   6 +-
 ...51-rtmutex-Clarify-the-boost-deboost-part.patch |   6 +-
 .../rt/0352-rtmutex-Document-pi-chain-walk.patch   |   6 +-
 .../rt/0353-rtmutex-Simplify-remove_waiter.patch   |   6 +-
 ...4-rtmutex-Confine-deadlock-logic-to-futex.patch |  18 +-
 ...tex-Cleanup-deadlock-detector-debug-logic.patch |  14 +-
 ...id-pointless-requeueing-in-the-deadlock-d.patch |   6 +-
 .../rt/0357-futex-Make-unlock_pi-more-robust.patch |   6 +-
 ...x-Use-futex_top_waiter-in-lookup_pi_state.patch |   6 +-
 ...-out-the-waiter-check-from-lookup_pi_stat.patch |   6 +-
 ...-out-the-first-waiter-attachment-from-loo.patch |   6 +-
 ...ify-futex_lock_pi_atomic-and-make-it-more.patch |   6 +-
 ...oid-a-NULL-pointer-dereference-on-deadloc.patch |   6 +-
 .../rt/0363-x86-UV-raw_spinlock-conversion.patch   |  14 +-
 ...irq-in-translation-section-permission-fau.patch |   6 +-
 ...isable-preemption-during-futex_atomic_cmp.patch |   6 +-
 ...66-scheduling-while-atomic-in-cgroup-code.patch |   6 +-
 ...rk-simple-Simple-work-queue-implemenation.patch |  10 +-
 ...ake-svc_xprt_do_enqueue-use-get_cpu_light.patch |   6 +-
 ...ftest-fix-warnings-due-to-missing-PREEMPT.patch |   6 +-
 ...rfs-fix-rt-deadlock-on-extent_buffer-lock.patch |   6 +-
 ...lapic-mark-LAPIC-timer-handler-as-irqsafe.patch |   6 +-
 ...e-slab-initialization-into-irq-enabled-re.patch |   6 +-
 ...-xfs-Disable-percpu-SB-on-PREEMPT_RT_FULL.patch |   6 +-
 ...ex-Handle-non-enqueued-waiters-gracefully.patch |  35 +
 ...375-rtmutex-Use-chainwalking-control-enum.patch |  31 +
 ...ack-don-t-disable-preemption-during-trace.patch |  60 ++
 ...nchronize_rcu_expedited-conditional-on-RT.patch |  40 +
 ...troduce-the-trace_sched_waking-tracepoint.patch | 170 ++++
 ...e-slowfn-of-rt_mutex_timed_fastlock-use-e.patch |  29 +
 ....patch => 0380-Linux-3.2.77-rt111-REBASE.patch} |  10 +-
 debian/patches/series                              |  25 +-
 debian/patches/series-rt                           |   8 +-
 410 files changed, 2865 insertions(+), 3829 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 6a29982..8349e0d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-linux (3.2.76-1) UNRELEASED; urgency=medium
+linux (3.2.78-1) UNRELEASED; urgency=medium
 
   * New upstream stable update:
     http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.74
@@ -143,12 +143,174 @@ linux (3.2.76-1) UNRELEASED; urgency=medium
     - [x86] kvm: only channel 0 of the i8254 is linked to the HPET
     - vmstat: allocate vmstat_wq before it is used
     - cdrom: Random writing support for BD-RE media
+    http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.77
+    - gspca: ov534/topro: prevent a division by 0
+    - media: dvb-core: Don't force CAN_INVERSION_AUTO in oneshot mode
+    - rc: allow rc modules to be loaded if rc-main is not a module
+    - SCSI: initio: remove duplicate module device table
+    - [x86] KVM: expose MSR_TSC_AUX to userspace
+    - [x86] KVM: correctly print #AC in traces
+    - ath9k_htc: check for underflow in ath9k_htc_rx_msg()
+    - mtd: nand: fix ONFI parameter page layout
+    - drm/radeon: call hpd_irq_event on resume
+    - xhci: refuse loading if nousb is used
+    - rtlwifi: fix memory leak for USB device
+    - wlcore: SPI - fix spi transfer_list
+    - wlcore/wl12xx: spi: fix oops on firmware load
+    - EDAC: Robustify workqueues destruction
+    - powerpc: Make value-returning atomics fully ordered
+    - powerpc: Make {cmp}xchg* and their atomic_ versions fully ordered
+    - asix: silence log message from oversize packet
+    - futex: Drop refcount if requeue_pi() acquired the rtmutex
+    - ALSA: fm801: propagate TUNER_ONLY bit when autodetected
+    - drm/radeon: clean up fujitsu quirks
+    - udf: limit the maximum number of indirect extents in a row
+    - USB: cp210x: add ID for ELV Marble Sound Board 1
+    - posix-clock: Fix return code on the poll method's error path
+    - [x86] LDT: Print the real LDT base address
+    - rtlwifi: rtl8192de: Fix incorrect module parameter descriptions
+    - rtlwifi: rtl8192se: Fix module parameter initialization
+    - rtlwifi: rtl8192ce: Fix handling of module parameters
+    - rtlwifi: rtl8192cu: Add missing parameter setup
+    - NFS: Fix attribute cache revalidation
+    - Input: i8042 - add Fujitsu Lifebook U745 to the nomux list
+    - [x86] xen: don't reset vcpu_info on a cancelled suspend
+    - udf: Prevent buffer overrun with multi-byte characters
+    - udf: Check output buffer length when converting name to CS0
+    - power: test_power: correctly handle empty writes
+    - locks: fix unlock when fcntl_setlk races with a close
+    - dm snapshot: fix hung bios when copy error occurs
+    - ipv6: tcp: add rcu locking in tcp_v6_send_synack()
+    - [x86] mm: Add barriers and document switch_mm()-vs-flush synchronization
+    - [x86] boot: Double BOOT_HEAP_SIZE to 64KB
+    - [x86] reboot/quirks: Add iMac10,1 to pci_reboot_dmi_table[]
+    - ALSA: seq: Fix missing NULL check at remove_events ioctl
+    - ALSA: seq: Fix race at timer setup and close
+    - [hppa] Fix __ARCH_SI_PREAMBLE_SIZE
+    - [x86] mm: Improve switch_mm() barrier comments
+    - ALSA: timer: Fix double unlink of active_list
+    - ALSA: timer: Fix race among timer ioctls
+    - [sparc64] fix incorrect sign extension in sys_sparc64_personality
+    - cifs: Ratelimit kernel log messages
+    - cifs: fix race between call_async() and reconnect()
+    - cifs_dbg() outputs an uninitialized buffer in cifs_readdir()
+    - dma-debug: switch check from _text to _stext
+    - ocfs2/dlm: ignore cleaning the migration mle that is inuse
+    - ALSA: timer: Harden slave timer list handling
+    - memcg: only free spare array when readers are done
+    - printk: help pr_debug and pr_devel to optimize out arguments
+    - crypto: af_alg - Fix socket double-free when accept fails
+    - ALSA: hrtimer: Fix stall by hrtimer_cancel()
+    - ALSA: pcm: Fix snd_pcm_hw_params struct copy in compat mode
+    - ALSA: seq: Fix snd_seq_call_port_info_ioctl in compat mode
+    - ALSA: control: Avoid kernel warnings from tlv ioctl with numid 0
+    - IB/qib: fix mcast detach when qp not attached
+    - IB/mlx4: Initialize hop_limit when creating address handle
+    - ocfs2: NFS hangs in __ocfs2_cluster_lock due to race with
+      ocfs2_unblock_lock
+    - crypto: algif_skcipher - Require setkey before accept(2)
+    - crypto: af_alg - Disallow bind/setkey/... after accept(2)
+    - crypto: af_alg - Add nokey compatibility path
+    - crypto: algif_skcipher - Add nokey compatibility path
+    - crypto: hash - Add crypto_ahash_has_setkey
+    - crypto: algif_hash - Require setkey before accept(2)
+    - crypto: skcipher - Add crypto_skcipher_has_setkey
+    - crypto: algif_skcipher - Add key check exception for cipher_null
+    - crypto: af_alg - Allow af_af_alg_release_parent to be called on nokey path
+    - crypto: algif_hash - Remove custom release parent function
+    - crypto: algif_skcipher - Remove custom release parent function
+    - crypto: af_alg - Forbid bind(2) when nokey child sockets are present
+    - crypto: algif_hash - Fix race condition in hash_check_key
+    - crypto: algif_skcipher - Fix race condition in skcipher_check_key
+    - crypto: algif_skcipher - Load TX SG list after waiting
+    - sctp: Prevent soft lockup when sctp_accept() is called during a timeout
+      event
+    - usbvision-video: fix memory leak of alt_max_pkt_size
+    - usbvision: fix leak of usb_dev on failure paths in usbvision_probe()
+    - usbvision fix overflow of interfaces array
+    - usbvision: fix crash on detecting device with invalid configuration
+    http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.78
+    - [x86] KVM: vmx: fix MPX detection
+    - hrtimer: Handle remaining time proper for TIME_LOW_RES
+    - timerfd: Handle relative timers with CONFIG_TIME_LOW_RES proper
+    - posix-timers: Handle relative timers with CONFIG_TIME_LOW_RES proper
+    - itimers: Handle relative timers with CONFIG_TIME_LOW_RES proper
+    - usb: cdc-acm: send zero packet for intel 7260 modem
+    - cdc-acm:exclude Samsung phone 04e8:685d
+    - af_unix: fix struct pid memory leak
+    - pptp: fix illegal memory access caused by multiple bind()s
+    - sctp: allow setting SCTP_SACK_IMMEDIATELY by the application
+    - USB: cp210x: add ID for IAI USB to RS485 adaptor
+    - USB: visor: fix null-deref at probe
+    - USB: serial: visor: fix crash on detecting device without write_urbs
+    - USB: serial: option: Adding support for Telit LE922
+    - ALSA: seq: Fix incorrect sanity check at snd_seq_oss_synth_cleanup()
+    - ALSA: seq: Degrade the error message for too many opens
+    - USB: serial: ftdi_sio: add support for Yaesu SCU-18 cable
+    - PCI/AER: Flush workqueue on device remove to avoid use-after-free
+    - libata: disable forced PORTS_IMPL for >= AHCI 1.3
+    - virtio_pci: fix use after free on release
+    - rfkill: fix rfkill_fop_read wait_event usage
+    - SCSI: fix crashes in sd and sr runtime PM
+    - tty: Fix unsafe ldisc reference via ioctl(TIOCGETD)
+    - crypto: shash - Fix has_key setting
+    - ALSA: dummy: Disable switching timer backend via sysfs
+    - [x86] drm/vmwgfx: respect 'nomodeset'
+    - [x86] mm/pat: Avoid truncation when converting cpa->numpages to address
+    - crypto: algif_hash - wait for crypto_ahash_init() to complete
+    - [x86] intel_scu_ipcutil: underflow in scu_reg_access()
+    - ALSA: seq: Fix race at closing in virmidi driver
+    - ALSA: rawmidi: Remove kernel WARNING for NULL user-space buffer check
+    - ALSA: pcm: Fix potential deadlock in OSS emulation
+    - ALSA: seq: Fix yet another races among ALSA timer accesses
+    - ALSA: timer: Fix link corruption due to double start or stop
+    - libata: fix sff host state machine locking while polling
+    - ALSA: rawmidi: Make snd_rawmidi_transmit() race-free
+    - ALSA: rawmidi: Fix race at copying & updating the position
+    - ALSA: seq: Fix lockdep warnings due to double mutex locks
+    - Revert "xhci: don't finish a TD if we get a short-transfer event mid TD"
+    - [x86] usb: xhci: apply XHCI_PME_STUCK_QUIRK to Intel Broxton-M platforms
+    - xhci: Fix list corruption in urb dequeue at host removal
+    - tda1004x: only update the frontend properties if locked
+    - ALSA: timer: Fix leftover link at closing
+    - saa7134-alsa: Only frees registered sound cards
+    - scsi_dh_rdac: always retry MODE SELECT on command lock violation
+    - mm, vmstat: fix wrong WQ sleep when memory reclaim doesn't make any
+      progress
+    - ocfs2/dlm: clear refmap bit of recovery lock while doing local
+      recovery cleanup
+    - crypto: user - lock crypto_alg_list on alg dump
+    - crypto: algif_skcipher - Do not dereference ctx without socket lock
+    - klist: fix starting point removed bug in klist iterators
+    - ALSA: dummy: Implement timer backend switching more safely
+    - ALSA: timer: Fix wrong instance passed to slave callbacks
+    - [arm*] 8517/1: ICST: avoid arithmetic overflow in icst_hz()
+    - sctp: translate network order to host order when users get a hmacid
+    - ALSA: timer: Fix race between stop and interrupt
+    - ALSA: timer: Fix race at concurrent reads
+    - [x86] ahci: Intel DNV device IDs SATA
+    - [arm*] 8519/1: ICST: try other dividends than 1
+    - btrfs: properly set the termination value of ctx->pos in readdir
+    - ALSA: usb-audio: avoid freeing umidi object twice
+    - unix: properly account for FDs passed over unix sockets
+    - unix: correctly track in-flight fds in sending process user_struct
+    - pipe: limit the per-user amount of pages allocated in pipes
+    - iw_cxgb3: Fix incorrectly returning error on success
+    - pipe: Fix buffer offset after partially failed read
+    - sched: fix __sched_setscheduler() vs load balancing race
 
   [ Ben Hutchings ]
   * net: Ignore ABI changes due to "ipv6: add complete rcu protection around
     np->opt", which don't appear to affect out-of-tree modules
-
- -- Ben Hutchings <ben at decadent.org.uk>  Sat, 23 Jan 2016 23:02:51 +0000
+  * [rt] Update to 3.2.77-rt111:
+    - rtmutex: Handle non enqueued waiters gracefully
+    - rtmutex: Use chainwalking control enum
+    - dump stack: don't disable preemption during trace
+    - net: Make synchronize_rcu_expedited() conditional on
+    - sched: Introduce the trace_sched_waking tracepoint
+    - rtmutex: Have slowfn of rt_mutex_timed_fastlock() use
+
+ -- Ben Hutchings <ben at decadent.org.uk>  Wed, 02 Mar 2016 15:02:45 +0000
 
 linux (3.2.73-2+deb7u3) wheezy-security; urgency=high
 
diff --git a/debian/config/defines b/debian/config/defines
index 7e9ea91..0b430f4 100644
--- a/debian/config/defines
+++ b/debian/config/defines
@@ -75,6 +75,8 @@ ignore-changes:
  module:net/netfilter/ipvs/*
  module:net/netfilter/nf_conntrac*
  module:sound/pci/emu10k1/*
+ module:drivers/md/dm-snapshot
+ module:sound/core/snd-rawmidi
 # Apparently not used from OOT
  skb_copy_and_csum_datagram_iovec
  module:net/dccp/dccp
@@ -93,6 +95,7 @@ ignore-changes:
  __scm_send
  scm_detach_fds
  scm_fp_dup
+ af_alg_*
 
 [base]
 arches:
diff --git a/debian/patches/bugfix/all/alsa-hrtimer-fix-stall-by-hrtimer_cancel.patch b/debian/patches/bugfix/all/alsa-hrtimer-fix-stall-by-hrtimer_cancel.patch
deleted file mode 100644
index df4b6e7..0000000
--- a/debian/patches/bugfix/all/alsa-hrtimer-fix-stall-by-hrtimer_cancel.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From: Takashi Iwai <tiwai at suse.de>
-Date: Mon, 18 Jan 2016 13:52:47 +0100
-Subject: ALSA: hrtimer: Fix stall by hrtimer_cancel()
-Origin: https://git.kernel.org/linus/2ba1fe7a06d3624f9a7586d672b55f08f7c670f3
-
-hrtimer_cancel() waits for the completion from the callback, thus it
-must not be called inside the callback itself.  This was already a
-problem in the past with ALSA hrtimer driver, and the early commit
-[fcfdebe70759: ALSA: hrtimer - Fix lock-up] tried to address it.
-
-However, the previous fix is still insufficient: it may still cause a
-lockup when the ALSA timer instance reprograms itself in its callback.
-Then it invokes the start function even in snd_timer_interrupt() that
-is called in hrtimer callback itself, results in a CPU stall.  This is
-no hypothetical problem but actually triggered by syzkaller fuzzer.
-
-This patch tries to fix the issue again.  Now we call
-hrtimer_try_to_cancel() at both start and stop functions so that it
-won't fall into a deadlock, yet giving some chance to cancel the queue
-if the functions have been called outside the callback.  The proper
-hrtimer_cancel() is called in anyway at closing, so this should be
-enough.
-
-Reported-and-tested-by: Dmitry Vyukov <dvyukov at google.com>
-Signed-off-by: Takashi Iwai <tiwai at suse.de>
-Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
----
- sound/core/hrtimer.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
---- a/sound/core/hrtimer.c
-+++ b/sound/core/hrtimer.c
-@@ -90,7 +90,7 @@ static int snd_hrtimer_start(struct snd_
- 	struct snd_hrtimer *stime = t->private_data;
- 
- 	atomic_set(&stime->running, 0);
--	hrtimer_cancel(&stime->hrt);
-+	hrtimer_try_to_cancel(&stime->hrt);
- 	hrtimer_start(&stime->hrt, ns_to_ktime(t->sticks * resolution),
- 		      HRTIMER_MODE_REL);
- 	atomic_set(&stime->running, 1);
-@@ -101,6 +101,7 @@ static int snd_hrtimer_stop(struct snd_t
- {
- 	struct snd_hrtimer *stime = t->private_data;
- 	atomic_set(&stime->running, 0);
-+	hrtimer_try_to_cancel(&stime->hrt);
- 	return 0;
- }
- 
diff --git a/debian/patches/bugfix/all/alsa-seq-fix-missing-null-check-at-remove_events-ioctl.patch b/debian/patches/bugfix/all/alsa-seq-fix-missing-null-check-at-remove_events-ioctl.patch
deleted file mode 100644
index 55a565d..0000000
--- a/debian/patches/bugfix/all/alsa-seq-fix-missing-null-check-at-remove_events-ioctl.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From: Takashi Iwai <tiwai at suse.de>
-Date: Tue, 12 Jan 2016 12:38:02 +0100
-Subject: ALSA: seq: Fix missing NULL check at remove_events ioctl
-Origin: https://git.kernel.org/linus/030e2c78d3a91dd0d27fef37e91950dde333eba1
-
-snd_seq_ioctl_remove_events() calls snd_seq_fifo_clear()
-unconditionally even if there is no FIFO assigned, and this leads to
-an Oops due to NULL dereference.  The fix is just to add a proper NULL
-check.
-
-Reported-by: Dmitry Vyukov <dvyukov at google.com>
-Tested-by: Dmitry Vyukov <dvyukov at google.com>
-Signed-off-by: Takashi Iwai <tiwai at suse.de>
-Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
----
- sound/core/seq/seq_clientmgr.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/sound/core/seq/seq_clientmgr.c
-+++ b/sound/core/seq/seq_clientmgr.c
-@@ -1950,7 +1950,7 @@ static int snd_seq_ioctl_remove_events(s
- 		 * No restrictions so for a user client we can clear
- 		 * the whole fifo
- 		 */
--		if (client->type == USER_CLIENT)
-+		if (client->type == USER_CLIENT && client->data.user.fifo)
- 			snd_seq_fifo_clear(client->data.user.fifo);
- 	}
- 
diff --git a/debian/patches/bugfix/all/alsa-seq-fix-race-at-timer-setup-and-close.patch b/debian/patches/bugfix/all/alsa-seq-fix-race-at-timer-setup-and-close.patch
deleted file mode 100644
index 47c02ee..0000000
--- a/debian/patches/bugfix/all/alsa-seq-fix-race-at-timer-setup-and-close.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From: Takashi Iwai <tiwai at suse.de>
-Date: Tue, 12 Jan 2016 15:36:27 +0100
-Subject: ALSA: seq: Fix race at timer setup and close
-Origin: https://git.kernel.org/linus/3567eb6af614dac436c4b16a8d426f9faed639b3
-
-ALSA sequencer code has an open race between the timer setup ioctl and
-the close of the client.  This was triggered by syzkaller fuzzer, and
-a use-after-free was caught there as a result.
-
-This patch papers over it by adding a proper queue->timer_mutex lock
-around the timer-related calls in the relevant code path.
-
-Reported-by: Dmitry Vyukov <dvyukov at google.com>
-Tested-by: Dmitry Vyukov <dvyukov at google.com>
-Signed-off-by: Takashi Iwai <tiwai at suse.de>
-Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
----
- sound/core/seq/seq_queue.c | 2 ++
- 1 file changed, 2 insertions(+)
-
---- a/sound/core/seq/seq_queue.c
-+++ b/sound/core/seq/seq_queue.c
-@@ -144,8 +144,10 @@ static struct snd_seq_queue *queue_new(i
- static void queue_delete(struct snd_seq_queue *q)
- {
- 	/* stop and release the timer */
-+	mutex_lock(&q->timer_mutex);
- 	snd_seq_timer_stop(q->timer);
- 	snd_seq_timer_close(q);
-+	mutex_unlock(&q->timer_mutex);
- 	/* wait until access free */
- 	snd_use_lock_sync(&q->use_lock);
- 	/* release resources... */
diff --git a/debian/patches/bugfix/all/alsa-timer-fix-double-unlink-of-active_list.patch b/debian/patches/bugfix/all/alsa-timer-fix-double-unlink-of-active_list.patch
deleted file mode 100644
index 2bfef13..0000000
--- a/debian/patches/bugfix/all/alsa-timer-fix-double-unlink-of-active_list.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From: Takashi Iwai <tiwai at suse.de>
-Date: Wed, 13 Jan 2016 21:35:06 +0100
-Subject: ALSA: timer: Fix double unlink of active_list
-Origin: https://git.kernel.org/linus/ee8413b01045c74340aa13ad5bdf905de32be736
-
-ALSA timer instance object has a couple of linked lists and they are
-unlinked unconditionally at snd_timer_stop().  Meanwhile
-snd_timer_interrupt() unlinks it, but it calls list_del() which leaves
-the element list itself unchanged.  This ends up with unlinking twice,
-and it was caught by syzkaller fuzzer.
-
-The fix is to use list_del_init() variant properly there, too.
-
-Reported-by: Dmitry Vyukov <dvyukov at google.com>
-Tested-by: Dmitry Vyukov <dvyukov at google.com>
-Signed-off-by: Takashi Iwai <tiwai at suse.de>
-Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
----
- sound/core/timer.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/sound/core/timer.c
-+++ b/sound/core/timer.c
-@@ -692,7 +692,7 @@ void snd_timer_interrupt(struct snd_time
- 		} else {
- 			ti->flags &= ~SNDRV_TIMER_IFLG_RUNNING;
- 			if (--timer->running)
--				list_del(&ti->active_list);
-+				list_del_init(&ti->active_list);
- 		}
- 		if ((timer->hw.flags & SNDRV_TIMER_HW_TASKLET) ||
- 		    (ti->flags & SNDRV_TIMER_IFLG_FAST))
diff --git a/debian/patches/bugfix/all/alsa-timer-fix-race-among-timer-ioctls.patch b/debian/patches/bugfix/all/alsa-timer-fix-race-among-timer-ioctls.patch
deleted file mode 100644
index 1ad6589..0000000
--- a/debian/patches/bugfix/all/alsa-timer-fix-race-among-timer-ioctls.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From: Takashi Iwai <tiwai at suse.de>
-Date: Wed, 13 Jan 2016 17:48:01 +0100
-Subject: ALSA: timer: Fix race among timer ioctls
-Origin: https://git.kernel.org/linus/af368027a49a751d6ff4ee9e3f9961f35bb4fede
-
-ALSA timer ioctls have an open race and this may lead to a
-use-after-free of timer instance object.  A simplistic fix is to make
-each ioctl exclusive.  We have already tread_sem for controlling the
-tread, and extend this as a global mutex to be applied to each ioctl.
-
-The downside is, of course, the worse concurrency.  But these ioctls
-aren't to be parallel accessible, in anyway, so it should be fine to
-serialize there.
-
-Reported-by: Dmitry Vyukov <dvyukov at google.com>
-Tested-by: Dmitry Vyukov <dvyukov at google.com>
-Signed-off-by: Takashi Iwai <tiwai at suse.de>
-Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
----
- sound/core/timer.c | 32 +++++++++++++++++++-------------
- 1 file changed, 19 insertions(+), 13 deletions(-)
-
---- a/sound/core/timer.c
-+++ b/sound/core/timer.c
-@@ -72,7 +72,7 @@ struct snd_timer_user {
- 	struct timespec tstamp;		/* trigger tstamp */
- 	wait_queue_head_t qchange_sleep;
- 	struct fasync_struct *fasync;
--	struct mutex tread_sem;
-+	struct mutex ioctl_lock;
- };
- 
- /* list of timers */
-@@ -1255,7 +1255,7 @@ static int snd_timer_user_open(struct in
- 		return -ENOMEM;
- 	spin_lock_init(&tu->qlock);
- 	init_waitqueue_head(&tu->qchange_sleep);
--	mutex_init(&tu->tread_sem);
-+	mutex_init(&tu->ioctl_lock);
- 	tu->ticks = 1;
- 	tu->queue_size = 128;
- 	tu->queue = kmalloc(tu->queue_size * sizeof(struct snd_timer_read),
-@@ -1275,8 +1275,10 @@ static int snd_timer_user_release(struct
- 	if (file->private_data) {
- 		tu = file->private_data;
- 		file->private_data = NULL;
-+		mutex_lock(&tu->ioctl_lock);
- 		if (tu->timeri)
- 			snd_timer_close(tu->timeri);
-+		mutex_unlock(&tu->ioctl_lock);
- 		kfree(tu->queue);
- 		kfree(tu->tqueue);
- 		kfree(tu);
-@@ -1514,7 +1516,6 @@ static int snd_timer_user_tselect(struct
- 	int err = 0;
- 
- 	tu = file->private_data;
--	mutex_lock(&tu->tread_sem);
- 	if (tu->timeri) {
- 		snd_timer_close(tu->timeri);
- 		tu->timeri = NULL;
-@@ -1558,7 +1559,6 @@ static int snd_timer_user_tselect(struct
- 	}
- 
-       __err:
--      	mutex_unlock(&tu->tread_sem);
- 	return err;
- }
- 
-@@ -1771,7 +1771,7 @@ enum {
- 	SNDRV_TIMER_IOCTL_PAUSE_OLD = _IO('T', 0x23),
- };
- 
--static long snd_timer_user_ioctl(struct file *file, unsigned int cmd,
-+static long __snd_timer_user_ioctl(struct file *file, unsigned int cmd,
- 				 unsigned long arg)
- {
- 	struct snd_timer_user *tu;
-@@ -1788,17 +1788,11 @@ static long snd_timer_user_ioctl(struct
- 	{
- 		int xarg;
- 
--		mutex_lock(&tu->tread_sem);
--		if (tu->timeri)	{	/* too late */
--			mutex_unlock(&tu->tread_sem);
-+		if (tu->timeri)	/* too late */
- 			return -EBUSY;
--		}
--		if (get_user(xarg, p)) {
--			mutex_unlock(&tu->tread_sem);
-+		if (get_user(xarg, p))
- 			return -EFAULT;
--		}
- 		tu->tread = xarg ? 1 : 0;
--		mutex_unlock(&tu->tread_sem);
- 		return 0;
- 	}
- 	case SNDRV_TIMER_IOCTL_GINFO:
-@@ -1831,6 +1825,18 @@ static long snd_timer_user_ioctl(struct
- 	return -ENOTTY;
- }
- 
-+static long snd_timer_user_ioctl(struct file *file, unsigned int cmd,
-+				 unsigned long arg)
-+{
-+	struct snd_timer_user *tu = file->private_data;
-+	long ret;
-+
-+	mutex_lock(&tu->ioctl_lock);
-+	ret = __snd_timer_user_ioctl(file, cmd, arg);
-+	mutex_unlock(&tu->ioctl_lock);
-+	return ret;
-+}
-+
- static int snd_timer_user_fasync(int fd, struct file * file, int on)
- {
- 	struct snd_timer_user *tu;
diff --git a/debian/patches/bugfix/all/alsa-timer-harden-slave-timer-list-handling.patch b/debian/patches/bugfix/all/alsa-timer-harden-slave-timer-list-handling.patch
deleted file mode 100644
index 461f87d..0000000
--- a/debian/patches/bugfix/all/alsa-timer-harden-slave-timer-list-handling.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From: Takashi Iwai <tiwai at suse.de>
-Date: Thu, 14 Jan 2016 16:30:58 +0100
-Subject: ALSA: timer: Harden slave timer list handling
-Origin: https://git.kernel.org/linus/b5a663aa426f4884c71cd8580adae73f33570f0d
-
-A slave timer instance might be still accessible in a racy way while
-operating the master instance as it lacks of locking.  Since the
-master operation is mostly protected with timer->lock, we should cope
-with it while changing the slave instance, too.  Also, some linked
-lists (active_list and ack_list) of slave instances aren't unlinked
-immediately at stopping or closing, and this may lead to unexpected
-accesses.
-
-This patch tries to address these issues.  It adds spin lock of
-timer->lock (either from master or slave, which is equivalent) in a
-few places.  For avoiding a deadlock, we ensure that the global
-slave_active_lock is always locked at first before each timer lock.
-
-Also, ack and active_list of slave instances are properly unlinked at
-snd_timer_stop() and snd_timer_close().
-
-Last but not least, remove the superfluous call of _snd_timer_stop()
-at removing slave links.  This is a noop, and calling it may confuse
-readers wrt locking.  Further cleanup will follow in a later patch.
-
-Actually we've got reports of use-after-free by syzkaller fuzzer, and
-this hopefully fixes these issues.
-
-Reported-by: Dmitry Vyukov <dvyukov at google.com>
-Signed-off-by: Takashi Iwai <tiwai at suse.de>
-Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
----
- sound/core/timer.c | 18 ++++++++++++++----
- 1 file changed, 14 insertions(+), 4 deletions(-)
-
---- a/sound/core/timer.c
-+++ b/sound/core/timer.c
-@@ -214,11 +214,13 @@ static void snd_timer_check_master(struc
- 		    slave->slave_id == master->slave_id) {
- 			list_move_tail(&slave->open_list, &master->slave_list_head);
- 			spin_lock_irq(&slave_active_lock);
-+			spin_lock(&master->timer->lock);
- 			slave->master = master;
- 			slave->timer = master->timer;
- 			if (slave->flags & SNDRV_TIMER_IFLG_RUNNING)
- 				list_add_tail(&slave->active_list,
- 					      &master->slave_active_head);
-+			spin_unlock(&master->timer->lock);
- 			spin_unlock_irq(&slave_active_lock);
- 		}
- 	}
-@@ -344,15 +346,18 @@ int snd_timer_close(struct snd_timer_ins
- 		    timer->hw.close)
- 			timer->hw.close(timer);
- 		/* remove slave links */
-+		spin_lock_irq(&slave_active_lock);
-+		spin_lock(&timer->lock);
- 		list_for_each_entry_safe(slave, tmp, &timeri->slave_list_head,
- 					 open_list) {
--			spin_lock_irq(&slave_active_lock);
--			_snd_timer_stop(slave, 1, SNDRV_TIMER_EVENT_RESOLUTION);
- 			list_move_tail(&slave->open_list, &snd_timer_slave_list);
- 			slave->master = NULL;
- 			slave->timer = NULL;
--			spin_unlock_irq(&slave_active_lock);
-+			list_del_init(&slave->ack_list);
-+			list_del_init(&slave->active_list);
- 		}
-+		spin_unlock(&timer->lock);
-+		spin_unlock_irq(&slave_active_lock);
- 		mutex_unlock(&register_mutex);
- 	}
-  out:
-@@ -439,9 +444,12 @@ static int snd_timer_start_slave(struct
- 
- 	spin_lock_irqsave(&slave_active_lock, flags);
- 	timeri->flags |= SNDRV_TIMER_IFLG_RUNNING;
--	if (timeri->master)
-+	if (timeri->master && timeri->timer) {
-+		spin_lock(&timeri->timer->lock);
- 		list_add_tail(&timeri->active_list,
- 			      &timeri->master->slave_active_head);
-+		spin_unlock(&timeri->timer->lock);
-+	}
- 	spin_unlock_irqrestore(&slave_active_lock, flags);
- 	return 1; /* delayed start */
- }
-@@ -487,6 +495,8 @@ static int _snd_timer_stop(struct snd_ti
- 		if (!keep_flag) {
- 			spin_lock_irqsave(&slave_active_lock, flags);
- 			timeri->flags &= ~SNDRV_TIMER_IFLG_RUNNING;
-+			list_del_init(&timeri->ack_list);
-+			list_del_init(&timeri->active_list);
- 			spin_unlock_irqrestore(&slave_active_lock, flags);
- 		}
- 		goto __end;
diff --git a/debian/patches/bugfix/all/alsa-usb-audio-avoid-freeing-umidi-object-twice.patch b/debian/patches/bugfix/all/alsa-usb-audio-avoid-freeing-umidi-object-twice.patch
deleted file mode 100644
index 8218950..0000000
--- a/debian/patches/bugfix/all/alsa-usb-audio-avoid-freeing-umidi-object-twice.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From: Andrey Konovalov <andreyknvl at gmail.com>
-Date: Sat, 13 Feb 2016 11:08:06 +0300
-Subject: ALSA: usb-audio: avoid freeing umidi object twice
-Origin: https://git.kernel.org/linus/07d86ca93db7e5cdf4743564d98292042ec21af7
-
-The 'umidi' object will be free'd on the error path by snd_usbmidi_free()
-when tearing down the rawmidi interface. So we shouldn't try to free it
-in snd_usbmidi_create() after having registered the rawmidi interface.
-
-Found by KASAN.
-
-Signed-off-by: Andrey Konovalov <andreyknvl at gmail.com>
-Acked-by: Clemens Ladisch <clemens at ladisch.de>
-Cc: <stable at vger.kernel.org>
-Signed-off-by: Takashi Iwai <tiwai at suse.de>
----
- sound/usb/midi.c | 1 -
- 1 file changed, 1 deletion(-)
-
---- a/sound/usb/midi.c
-+++ b/sound/usb/midi.c
-@@ -2243,7 +2243,6 @@ int snd_usbmidi_create(struct snd_card *
- 	else
- 		err = snd_usbmidi_create_endpoints(umidi, endpoints);
- 	if (err < 0) {
--		snd_usbmidi_free(umidi);
- 		return err;
- 	}
- 
diff --git a/debian/patches/bugfix/all/iw_cxgb3-Fix-incorrectly-returning-error-on-success.patch b/debian/patches/bugfix/all/iw_cxgb3-Fix-incorrectly-returning-error-on-success.patch
deleted file mode 100644
index 2cd099f..0000000
--- a/debian/patches/bugfix/all/iw_cxgb3-Fix-incorrectly-returning-error-on-success.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From: Hariprasad S <hariprasad at chelsio.com>
-Date: Fri, 11 Dec 2015 13:59:17 +0530
-Subject: iw_cxgb3: Fix incorrectly returning error on success
-Origin: https://git.kernel.org/linus/67f1aee6f45059fd6b0f5b0ecb2c97ad0451f6b3
-
-The cxgb3_*_send() functions return NET_XMIT_ values, which are
-positive integers values. So don't treat positive return values
-as an error.
-
-Signed-off-by: Steve Wise <swise at opengridcomputing.com>
-Signed-off-by: Hariprasad Shenai <hariprasad at chelsio.com>
-Signed-off-by: Doug Ledford <dledford at redhat.com>
----
- drivers/infiniband/hw/cxgb3/iwch_cm.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/drivers/infiniband/hw/cxgb3/iwch_cm.c
-+++ b/drivers/infiniband/hw/cxgb3/iwch_cm.c
-@@ -150,7 +150,7 @@ static int iwch_l2t_send(struct t3cdev *
- 	error = l2t_send(tdev, skb, l2e);
- 	if (error < 0)
- 		kfree_skb(skb);
--	return error;
-+	return error < 0 ? error : 0;
- }
- 
- int iwch_cxgb3_ofld_send(struct t3cdev *tdev, struct sk_buff *skb)
-@@ -166,7 +166,7 @@ int iwch_cxgb3_ofld_send(struct t3cdev *
- 	error = cxgb3_ofld_send(tdev, skb);
- 	if (error < 0)
- 		kfree_skb(skb);
--	return error;
-+	return error < 0 ? error : 0;
- }
- 
- static void release_tid(struct t3cdev *tdev, u32 hwtid, struct sk_buff *skb)
diff --git a/debian/patches/bugfix/all/media-usbvision-fix-crash-on-detecting-device-with-i.patch b/debian/patches/bugfix/all/media-usbvision-fix-crash-on-detecting-device-with-i.patch
deleted file mode 100644
index 69c9914..0000000
--- a/debian/patches/bugfix/all/media-usbvision-fix-crash-on-detecting-device-with-i.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From: Vladis Dronov <vdronov at redhat.com>
-Date: Mon, 16 Nov 2015 15:55:11 -0200
-Subject: [media] usbvision: fix crash on detecting device with invalid
- configuration
-Origin: http://git.linuxtv.org/cgit.cgi/media_tree.git/commit?id=fa52bd506f274b7619955917abfde355e3d19ffe
-
-The usbvision driver crashes when a specially crafted usb device with invalid
-number of interfaces or endpoints is detected. This fix adds checks that the
-device has proper configuration expected by the driver.
-
-Reported-by: Ralf Spenneberg <ralf at spenneberg.net>
-Signed-off-by: Vladis Dronov <vdronov at redhat.com>
-Signed-off-by: Mauro Carvalho Chehab <mchehab at osg.samsung.com>
-[bwh: Backport to 3.2: adjust filename]
----
- drivers/media/video/usbvision/usbvision-video.c | 16 +++++++++++++++-
- 1 file changed, 15 insertions(+), 1 deletion(-)
-
---- a/drivers/media/video/usbvision/usbvision-video.c
-+++ b/drivers/media/video/usbvision/usbvision-video.c
-@@ -1511,9 +1511,23 @@ static int __devinit usbvision_probe(str
- 
- 	if (usbvision_device_data[model].interface >= 0)
- 		interface = &dev->actconfig->interface[usbvision_device_data[model].interface]->altsetting[0];
--	else
-+	else if (ifnum < dev->actconfig->desc.bNumInterfaces)
- 		interface = &dev->actconfig->interface[ifnum]->altsetting[0];
-+	else {
-+		dev_err(&intf->dev, "interface %d is invalid, max is %d\n",
-+		    ifnum, dev->actconfig->desc.bNumInterfaces - 1);
-+		ret = -ENODEV;
-+		goto err_usb;
-+	}
-+
-+	if (interface->desc.bNumEndpoints < 2) {
-+		dev_err(&intf->dev, "interface %d has %d endpoints, but must"
-+		    " have minimum 2\n", ifnum, interface->desc.bNumEndpoints);
-+		ret = -ENODEV;
-+		goto err_usb;
-+	}
- 	endpoint = &interface->endpoint[1].desc;
-+
- 	if (!usb_endpoint_xfer_isoc(endpoint)) {
- 		dev_err(&intf->dev, "%s: interface %d. has non-ISO endpoint!\n",
- 		    __func__, ifnum);
diff --git a/debian/patches/bugfix/all/media-usbvision-fix-leak-of-usb_dev-on-failure-paths.patch b/debian/patches/bugfix/all/media-usbvision-fix-leak-of-usb_dev-on-failure-paths.patch
deleted file mode 100644
index c8f8577..0000000
--- a/debian/patches/bugfix/all/media-usbvision-fix-leak-of-usb_dev-on-failure-paths.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From: Alexey Khoroshilov <khoroshilov at ispras.ru>
-Date: Fri, 27 Mar 2015 19:39:09 -0300
-Subject: [media] usbvision: fix leak of usb_dev on failure paths in
- usbvision_probe()
-Origin: https://git.kernel.org/linus/afd270d1a45043cef14341bcceff62ed50e8dc9a
-
-There is no usb_put_dev() on failure paths in usbvision_probe().
-
-Found by Linux Driver Verification project (linuxtesting.org).
-
-Signed-off-by: Alexey Khoroshilov <khoroshilov at ispras.ru>
-Signed-off-by: Hans Verkuil <hans.verkuil at cisco.com>
-Signed-off-by: Mauro Carvalho Chehab <mchehab at osg.samsung.com>
-[bwh: Backported to 3.2: adjust filename]
----
- drivers/media/video/usbvision/usbvision-video.c | 24 +++++++++++++++++-------
- 1 file changed, 17 insertions(+), 7 deletions(-)
-
---- a/drivers/media/video/usbvision/usbvision-video.c
-+++ b/drivers/media/video/usbvision/usbvision-video.c
-@@ -1487,7 +1487,7 @@ static int __devinit usbvision_probe(str
- 	const struct usb_host_interface *interface;
- 	struct usb_usbvision *usbvision = NULL;
- 	const struct usb_endpoint_descriptor *endpoint;
--	int model, i;
-+	int model, i, ret;
- 
- 	PDEBUG(DBG_PROBE, "VID=%#04x, PID=%#04x, ifnum=%u",
- 				dev->descriptor.idVendor,
-@@ -1496,7 +1496,8 @@ static int __devinit usbvision_probe(str
- 	model = devid->driver_info;
- 	if (model < 0 || model >= usbvision_device_data_size) {
- 		PDEBUG(DBG_PROBE, "model out of bounds %d", model);
--		return -ENODEV;
-+		ret = -ENODEV;
-+		goto err_usb;
- 	}
- 	printk(KERN_INFO "%s: %s found\n", __func__,
- 				usbvision_device_data[model].model_string);
-@@ -1511,18 +1512,21 @@ static int __devinit usbvision_probe(str
- 		    __func__, ifnum);
- 		dev_err(&intf->dev, "%s: Endpoint attributes %d",
- 		    __func__, endpoint->bmAttributes);
--		return -ENODEV;
-+		ret = -ENODEV;
-+		goto err_usb;
- 	}
- 	if (usb_endpoint_dir_out(endpoint)) {
- 		dev_err(&intf->dev, "%s: interface %d. has ISO OUT endpoint!\n",
- 		    __func__, ifnum);
--		return -ENODEV;
-+		ret = -ENODEV;
-+		goto err_usb;
- 	}
- 
- 	usbvision = usbvision_alloc(dev, intf);
- 	if (usbvision == NULL) {
- 		dev_err(&intf->dev, "%s: couldn't allocate USBVision struct\n", __func__);
--		return -ENOMEM;
-+		ret = -ENOMEM;
-+		goto err_usb;
- 	}
- 
- 	if (dev->descriptor.bNumConfigurations > 1)
-@@ -1541,8 +1545,8 @@ static int __devinit usbvision_probe(str
- 	usbvision->alt_max_pkt_size = kmalloc(32 * usbvision->num_alt, GFP_KERNEL);
- 	if (usbvision->alt_max_pkt_size == NULL) {
- 		dev_err(&intf->dev, "usbvision: out of memory!\n");
--		usbvision_release(usbvision);
--		return -ENOMEM;
-+		ret = -ENOMEM;
-+		goto err_pkt;
- 	}
- 
- 	for (i = 0; i < usbvision->num_alt; i++) {
-@@ -1577,6 +1581,12 @@ static int __devinit usbvision_probe(str
- 
- 	PDEBUG(DBG_PROBE, "success");
- 	return 0;
-+
-+err_pkt:
-+	usbvision_release(usbvision);
-+err_usb:
-+	usb_put_dev(dev);
-+	return ret;
- }
- 
- 
diff --git a/debian/patches/bugfix/all/media-usbvision-video-fix-memory-leak-of-alt_max_pkt.patch b/debian/patches/bugfix/all/media-usbvision-video-fix-memory-leak-of-alt_max_pkt.patch
deleted file mode 100644
index 90c066a..0000000
--- a/debian/patches/bugfix/all/media-usbvision-video-fix-memory-leak-of-alt_max_pkt.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From: Alexey Khoroshilov <khoroshilov at ispras.ru>
-Date: Mon, 10 Jun 2013 17:32:29 -0300
-Subject: [media] usbvision-video: fix memory leak of alt_max_pkt_size
-Origin: https://git.kernel.org/linus/090c65b694c362adb19ec9c27de216a808ee443c
-
-1. usbvision->alt_max_pkt_size is not deallocated anywhere.
-2. if allocation of usbvision->alt_max_pkt_size fails,
-there is no proper deallocation of already acquired resources.
-The patch adds kfree(usbvision->alt_max_pkt_size) to
-usbvision_release() as soon as other deallocations happen there.
-It calls usbvision_release() if allocation of
-usbvision->alt_max_pkt_size fails as soon as usbvision_release()
-is safe to work with incompletely initialized usbvision structure.
-Found by Linux Driver Verification project (linuxtesting.org).
-
-Signed-off-by: Alexey Khoroshilov <khoroshilov at ispras.ru>
-Signed-off-by: Hans Verkuil <hans.verkuil at cisco.com>
-Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>
-[bwh: Backported to 3.2: adjust filename]
----
- drivers/media/video/usbvision/usbvision-video.c | 2 ++
- 1 file changed, 2 insertions(+)
-
---- a/drivers/media/video/usbvision/usbvision-video.c
-+++ b/drivers/media/video/usbvision/usbvision-video.c
-@@ -1425,6 +1425,7 @@ static void usbvision_release(struct usb
- 
- 	usbvision_remove_sysfs(usbvision->vdev);
- 	usbvision_unregister_video(usbvision);
-+	kfree(usbvision->alt_max_pkt_size);
- 
- 	usb_free_urb(usbvision->ctrl_urb);
- 
-@@ -1540,6 +1541,7 @@ static int __devinit usbvision_probe(str
- 	usbvision->alt_max_pkt_size = kmalloc(32 * usbvision->num_alt, GFP_KERNEL);
- 	if (usbvision->alt_max_pkt_size == NULL) {
- 		dev_err(&intf->dev, "usbvision: out of memory!\n");
-+		usbvision_release(usbvision);
- 		return -ENOMEM;
- 	}
- 
diff --git a/debian/patches/bugfix/all/pipe-fix-buffer-offset-after-partially-failed-read.patch b/debian/patches/bugfix/all/pipe-fix-buffer-offset-after-partially-failed-read.patch
deleted file mode 100644
index 2cd1d94..0000000
--- a/debian/patches/bugfix/all/pipe-fix-buffer-offset-after-partially-failed-read.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From: Ben Hutchings <ben at decadent.org.uk>
-Date: Sat, 13 Feb 2016 02:34:52 +0000
-Subject: pipe: Fix buffer offset after partially failed read
-Forwarded: not-needed
-
-Quoting the RHEL advisory:
-
-> It was found that the fix for CVE-2015-1805 incorrectly kept buffer
-> offset and buffer length in sync on a failed atomic read, potentially
-> resulting in a pipe buffer state corruption. A local, unprivileged user
-> could use this flaw to crash the system or leak kernel memory to user
-> space. (CVE-2016-0774, Moderate)
-
-The same flawed fix was applied to stable branches from 2.6.32.y to
-3.14.y inclusive, and I was able to reproduce the issue on 3.2.y.
-We need to give pipe_iov_copy_to_user() a separate offset variable
-and only update the buffer offset if it succeeds.
-
-References: https://rhn.redhat.com/errata/RHSA-2016-0103.html
-Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
----
---- a/fs/pipe.c
-+++ b/fs/pipe.c
-@@ -395,6 +395,7 @@ pipe_read(struct kiocb *iocb, const stru
- 			void *addr;
- 			size_t chars = buf->len, remaining;
- 			int error, atomic;
-+			int offset;
- 
- 			if (chars > total_len)
- 				chars = total_len;
-@@ -408,9 +409,10 @@ pipe_read(struct kiocb *iocb, const stru
- 
- 			atomic = !iov_fault_in_pages_write(iov, chars);
- 			remaining = chars;
-+			offset = buf->offset;
- redo:
- 			addr = ops->map(pipe, buf, atomic);
--			error = pipe_iov_copy_to_user(iov, addr, &buf->offset,
-+			error = pipe_iov_copy_to_user(iov, addr, &offset,
- 						      &remaining, atomic);
- 			ops->unmap(pipe, buf, addr);
- 			if (unlikely(error)) {
-@@ -426,6 +428,7 @@ redo:
- 				break;
- 			}
- 			ret += chars;
-+			buf->offset += chars;
- 			buf->len -= chars;
- 
- 			/* Was it a packet buffer? Clean up and exit */
diff --git a/debian/patches/bugfix/all/pipe-limit-the-per-user-amount-of-pages-allocated-in.patch b/debian/patches/bugfix/all/pipe-limit-the-per-user-amount-of-pages-allocated-in.patch
deleted file mode 100644
index 866a54a..0000000
--- a/debian/patches/bugfix/all/pipe-limit-the-per-user-amount-of-pages-allocated-in.patch
+++ /dev/null
@@ -1,238 +0,0 @@
-From: Willy Tarreau <w at 1wt.eu>
-Date: Mon, 18 Jan 2016 16:36:09 +0100
-Subject: pipe: limit the per-user amount of pages allocated in pipes
-Origin: https://git.kernel.org/linus/759c01142a5d0f364a462346168a56de28a80f52
-
-On no-so-small systems, it is possible for a single process to cause an
-OOM condition by filling large pipes with data that are never read. A
-typical process filling 4000 pipes with 1 MB of data will use 4 GB of
-memory. On small systems it may be tricky to set the pipe max size to
-prevent this from happening.
-
-This patch makes it possible to enforce a per-user soft limit above
-which new pipes will be limited to a single page, effectively limiting
-them to 4 kB each, as well as a hard limit above which no new pipes may
-be created for this user. This has the effect of protecting the system
-against memory abuse without hurting other users, and still allowing
-pipes to work correctly though with less data at once.
-
-The limit are controlled by two new sysctls : pipe-user-pages-soft, and
-pipe-user-pages-hard. Both may be disabled by setting them to zero. The
-default soft limit allows the default number of FDs per process (1024)
-to create pipes of the default size (64kB), thus reaching a limit of 64MB
-before starting to create only smaller pipes. With 256 processes limited
-to 1024 FDs each, this results in 1024*64kB + (256*1024 - 1024) * 4kB =
-1084 MB of memory allocated for a user. The hard limit is disabled by
-default to avoid breaking existing applications that make intensive use
-of pipes (eg: for splicing).
-
-Reported-by: socketpair at gmail.com
-Reported-by: Tetsuo Handa <penguin-kernel at I-love.SAKURA.ne.jp>
-Mitigates: CVE-2013-4312 (Linux 2.0+)
-Suggested-by: Linus Torvalds <torvalds at linux-foundation.org>
-Signed-off-by: Willy Tarreau <w at 1wt.eu>
-Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>
-[bwh: Backported to 3.2: adjust context]
----
- Documentation/sysctl/fs.txt | 23 ++++++++++++++++++++++
- fs/pipe.c                   | 47 +++++++++++++++++++++++++++++++++++++++++++--
- include/linux/pipe_fs_i.h   |  4 ++++
- include/linux/sched.h       |  1 +
- kernel/sysctl.c             | 14 ++++++++++++++
- 5 files changed, 87 insertions(+), 2 deletions(-)
-
---- a/Documentation/sysctl/fs.txt
-+++ b/Documentation/sysctl/fs.txt
-@@ -32,6 +32,8 @@ Currently, these files are in /proc/sys/
- - nr_open
- - overflowuid
- - overflowgid
-+- pipe-user-pages-hard
-+- pipe-user-pages-soft
- - protected_hardlinks
- - protected_symlinks
- - suid_dumpable
-@@ -159,6 +161,27 @@ The default is 65534.
- 
- ==============================================================
- 
-+pipe-user-pages-hard:
-+
-+Maximum total number of pages a non-privileged user may allocate for pipes.
-+Once this limit is reached, no new pipes may be allocated until usage goes
-+below the limit again. When set to 0, no limit is applied, which is the default
-+setting.
-+
-+==============================================================
-+
-+pipe-user-pages-soft:
-+
-+Maximum total number of pages a non-privileged user may allocate for pipes
-+before the pipe size gets limited to a single page. Once this limit is reached,
-+new pipes will be limited to a single page in size for this user in order to
-+limit total memory usage, and trying to increase them using fcntl() will be
-+denied until usage goes below the limit again. The default value allows to
-+allocate up to 1024 pipes at their default size. When set to 0, no limit is
-+applied.
-+
-+==============================================================
-+
- protected_hardlinks:
- 
- A long-standing class of security issues is the hardlink-based
---- a/fs/pipe.c
-+++ b/fs/pipe.c
-@@ -35,6 +35,12 @@ unsigned int pipe_max_size = 1048576;
-  */
- unsigned int pipe_min_size = PAGE_SIZE;
- 
-+/* Maximum allocatable pages per user. Hard limit is unset by default, soft
-+ * matches default values.
-+ */
-+unsigned long pipe_user_pages_hard;
-+unsigned long pipe_user_pages_soft = PIPE_DEF_BUFFERS * INR_OPEN_CUR;
-+
- /*
-  * We use a start+len construction, which provides full use of the 
-  * allocated memory.
-@@ -929,20 +935,49 @@ const struct file_operations rdwr_pipefi
- 	.fasync		= pipe_rdwr_fasync,
- };
- 
-+static void account_pipe_buffers(struct pipe_inode_info *pipe,
-+                                 unsigned long old, unsigned long new)
-+{
-+	atomic_long_add(new - old, &pipe->user->pipe_bufs);
-+}
-+
-+static bool too_many_pipe_buffers_soft(struct user_struct *user)
-+{
-+	return pipe_user_pages_soft &&
-+	       atomic_long_read(&user->pipe_bufs) >= pipe_user_pages_soft;
-+}
-+
-+static bool too_many_pipe_buffers_hard(struct user_struct *user)
-+{
-+	return pipe_user_pages_hard &&
-+	       atomic_long_read(&user->pipe_bufs) >= pipe_user_pages_hard;
-+}
-+
- struct pipe_inode_info * alloc_pipe_info(struct inode *inode)
- {
- 	struct pipe_inode_info *pipe;
- 
- 	pipe = kzalloc(sizeof(struct pipe_inode_info), GFP_KERNEL);
- 	if (pipe) {
--		pipe->bufs = kzalloc(sizeof(struct pipe_buffer) * PIPE_DEF_BUFFERS, GFP_KERNEL);
-+		unsigned long pipe_bufs = PIPE_DEF_BUFFERS;
-+		struct user_struct *user = get_current_user();
-+
-+		if (!too_many_pipe_buffers_hard(user)) {
-+			if (too_many_pipe_buffers_soft(user))
-+				pipe_bufs = 1;
-+			pipe->bufs = kzalloc(sizeof(struct pipe_buffer) * pipe_bufs, GFP_KERNEL);
-+		}
-+
- 		if (pipe->bufs) {
- 			init_waitqueue_head(&pipe->wait);
- 			pipe->r_counter = pipe->w_counter = 1;
- 			pipe->inode = inode;
--			pipe->buffers = PIPE_DEF_BUFFERS;
-+			pipe->buffers = pipe_bufs;
-+			pipe->user = user;
-+			account_pipe_buffers(pipe, 0, pipe_bufs);
- 			return pipe;
- 		}
-+		free_uid(user);
- 		kfree(pipe);
- 	}
- 
-@@ -953,6 +988,8 @@ void __free_pipe_info(struct pipe_inode_
- {
- 	int i;
- 
-+	account_pipe_buffers(pipe, pipe->buffers, 0);
-+	free_uid(pipe->user);
- 	for (i = 0; i < pipe->buffers; i++) {
- 		struct pipe_buffer *buf = pipe->bufs + i;
- 		if (buf->ops)
-@@ -1201,6 +1238,7 @@ static long pipe_set_size(struct pipe_in
- 			memcpy(bufs + head, pipe->bufs, tail * sizeof(struct pipe_buffer));
- 	}
- 
-+	account_pipe_buffers(pipe, pipe->buffers, nr_pages);
- 	pipe->curbuf = 0;
- 	kfree(pipe->bufs);
- 	pipe->bufs = bufs;
-@@ -1274,6 +1312,11 @@ long pipe_fcntl(struct file *file, unsig
- 		if (!capable(CAP_SYS_RESOURCE) && size > pipe_max_size) {
- 			ret = -EPERM;
- 			goto out;
-+		} else if ((too_many_pipe_buffers_hard(pipe->user) ||
-+			    too_many_pipe_buffers_soft(pipe->user)) &&
-+		           !capable(CAP_SYS_RESOURCE) && !capable(CAP_SYS_ADMIN)) {
-+			ret = -EPERM;
-+			goto out;
- 		}
- 		ret = pipe_set_size(pipe, nr_pages);
- 		break;
---- a/include/linux/pipe_fs_i.h
-+++ b/include/linux/pipe_fs_i.h
-@@ -43,6 +43,7 @@ struct pipe_buffer {
-  *	@fasync_writers: writer side fasync
-  *	@inode: inode this pipe is attached to
-  *	@bufs: the circular array of pipe buffers
-+ *	@user: the user who created this pipe
-  **/
- struct pipe_inode_info {
- 	wait_queue_head_t wait;
-@@ -57,6 +58,7 @@ struct pipe_inode_info {
- 	struct fasync_struct *fasync_writers;
- 	struct inode *inode;
- 	struct pipe_buffer *bufs;
-+	struct user_struct *user;
- };
- 
- /*
-@@ -142,6 +144,8 @@ void pipe_unlock(struct pipe_inode_info
- void pipe_double_lock(struct pipe_inode_info *, struct pipe_inode_info *);
- 
- extern unsigned int pipe_max_size, pipe_min_size;
-+extern unsigned long pipe_user_pages_hard;
-+extern unsigned long pipe_user_pages_soft;
- int pipe_proc_fn(struct ctl_table *, int, void __user *, size_t *, loff_t *);
- 
- 
---- a/include/linux/sched.h
-+++ b/include/linux/sched.h
-@@ -710,6 +710,7 @@ struct user_struct {
- #endif
- 	unsigned long locked_shm; /* How many pages of mlocked shm ? */
- 	unsigned long unix_inflight;	/* How many files in flight in unix sockets */
-+	atomic_long_t pipe_bufs;  /* how many pages are allocated in pipe buffers */
- 
- #ifdef CONFIG_KEYS
- 	struct key *uid_keyring;	/* UID specific keyring */
---- a/kernel/sysctl.c
-+++ b/kernel/sysctl.c
-@@ -1536,6 +1536,20 @@ static struct ctl_table fs_table[] = {
- 		.proc_handler	= &pipe_proc_fn,
- 		.extra1		= &pipe_min_size,
- 	},
-+	{
-+		.procname	= "pipe-user-pages-hard",
-+		.data		= &pipe_user_pages_hard,
-+		.maxlen		= sizeof(pipe_user_pages_hard),
-+		.mode		= 0644,
-+		.proc_handler	= proc_doulongvec_minmax,
-+	},
-+	{
-+		.procname	= "pipe-user-pages-soft",
-+		.data		= &pipe_user_pages_soft,
-+		.maxlen		= sizeof(pipe_user_pages_soft),
-+		.mode		= 0644,
-+		.proc_handler	= proc_doulongvec_minmax,
-+	},
- 	{ }
- };
- 
diff --git a/debian/patches/bugfix/all/revert-xhci-don-t-finish-a-td-if-we-get-a-short-transfer.patch b/debian/patches/bugfix/all/revert-xhci-don-t-finish-a-td-if-we-get-a-short-transfer.patch
deleted file mode 100644
index f9a6ca5..0000000
--- a/debian/patches/bugfix/all/revert-xhci-don-t-finish-a-td-if-we-get-a-short-transfer.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From: Ben Hutchings <ben at decadent.org.uk>
-Date: Sat, 02 Jan 2016 03:03:27 +0000
-Subject: Revert "xhci: don't finish a TD if we get a short transfer event mid TD"
-Bug-Debian: https://bugs.debian.org/808602
-Bug-Debian: https://bugs.debian.org/808953
-
-This reverts commit 7c6aca1947a312bcc23dc8e1000e4f13c7b43555, which
-was commit e210c422b6fdd2dc123bedc588f399aefd8bf9de upstream.  It
-caused serious regressions as referenced above.
-
----
---- a/drivers/usb/host/xhci-ring.c
-+++ b/drivers/usb/host/xhci-ring.c
-@@ -2187,10 +2187,6 @@
- 				EVENT_TRB_LEN(le32_to_cpu(event->transfer_len)));
- 	/* Fast path - was this the last TRB in the TD for this URB? */
- 	if (event_trb == td->last_trb) {
--		if (td->urb_length_set && trb_comp_code == COMP_SHORT_TX)
--			return finish_td(xhci, td, event_trb, event, ep,
--					 status, false);
--
- 		if (EVENT_TRB_LEN(le32_to_cpu(event->transfer_len)) != 0) {
- 			td->urb->actual_length =
- 				td->urb->transfer_buffer_length -
-@@ -2242,12 +2238,6 @@
- 			td->urb->actual_length +=
- 				TRB_LEN(le32_to_cpu(cur_trb->generic.field[2])) -
- 				EVENT_TRB_LEN(le32_to_cpu(event->transfer_len));
--
--		if (trb_comp_code == COMP_SHORT_TX) {
--			xhci_dbg(xhci, "mid bulk/intr SP, wait for last TRB event\n");
--			td->urb_length_set = true;
--			return 0;
--		}
- 	}
- 
- 	return finish_td(xhci, td, event_trb, event, ep, status, false);
diff --git a/debian/patches/bugfix/all/sctp-prevent-soft-lockup-when-sctp_accept-is-called-.patch b/debian/patches/bugfix/all/sctp-prevent-soft-lockup-when-sctp_accept-is-called-.patch
deleted file mode 100644
index ed5a6c5..0000000
--- a/debian/patches/bugfix/all/sctp-prevent-soft-lockup-when-sctp_accept-is-called-.patch
+++ /dev/null
@@ -1,180 +0,0 @@
-From: Karl Heiss <kheiss at gmail.com>
-Date: Thu, 24 Sep 2015 12:15:07 -0400
-Subject: sctp: Prevent soft lockup when sctp_accept() is called during a
- timeout event
-Origin: https://git.kernel.org/linus/635682a14427d241bab7bbdeebb48a7d7b91638e
-
-A case can occur when sctp_accept() is called by the user during
-a heartbeat timeout event after the 4-way handshake.  Since
-sctp_assoc_migrate() changes both assoc->base.sk and assoc->ep, the
-bh_sock_lock in sctp_generate_heartbeat_event() will be taken with
-the listening socket but released with the new association socket.
-The result is a deadlock on any future attempts to take the listening
-socket lock.
-
-Note that this race can occur with other SCTP timeouts that take
-the bh_lock_sock() in the event sctp_accept() is called.
-
- BUG: soft lockup - CPU#9 stuck for 67s! [swapper:0]
- ...
- RIP: 0010:[<ffffffff8152d48e>]  [<ffffffff8152d48e>] _spin_lock+0x1e/0x30
- RSP: 0018:ffff880028323b20  EFLAGS: 00000206
- RAX: 0000000000000002 RBX: ffff880028323b20 RCX: 0000000000000000
- RDX: 0000000000000000 RSI: ffff880028323be0 RDI: ffff8804632c4b48
- RBP: ffffffff8100bb93 R08: 0000000000000000 R09: 0000000000000000
- R10: ffff880610662280 R11: 0000000000000100 R12: ffff880028323aa0
- R13: ffff8804383c3880 R14: ffff880028323a90 R15: ffffffff81534225
- FS:  0000000000000000(0000) GS:ffff880028320000(0000) knlGS:0000000000000000
- CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
- CR2: 00000000006df528 CR3: 0000000001a85000 CR4: 00000000000006e0
- DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
- DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
- Process swapper (pid: 0, threadinfo ffff880616b70000, task ffff880616b6cab0)
- Stack:
- ffff880028323c40 ffffffffa01c2582 ffff880614cfb020 0000000000000000
- <d> 0100000000000000 00000014383a6c44 ffff8804383c3880 ffff880614e93c00
- <d> ffff880614e93c00 0000000000000000 ffff8804632c4b00 ffff8804383c38b8
- Call Trace:
- <IRQ>
- [<ffffffffa01c2582>] ? sctp_rcv+0x492/0xa10 [sctp]
- [<ffffffff8148c559>] ? nf_iterate+0x69/0xb0
- [<ffffffff814974a0>] ? ip_local_deliver_finish+0x0/0x2d0
- [<ffffffff8148c716>] ? nf_hook_slow+0x76/0x120
- [<ffffffff814974a0>] ? ip_local_deliver_finish+0x0/0x2d0
- [<ffffffff8149757d>] ? ip_local_deliver_finish+0xdd/0x2d0
- [<ffffffff81497808>] ? ip_local_deliver+0x98/0xa0
- [<ffffffff81496ccd>] ? ip_rcv_finish+0x12d/0x440
- [<ffffffff81497255>] ? ip_rcv+0x275/0x350
- [<ffffffff8145cfeb>] ? __netif_receive_skb+0x4ab/0x750
- ...
-
-With lockdep debugging:
-
- =====================================
- [ BUG: bad unlock balance detected! ]
- -------------------------------------
- CslRx/12087 is trying to release lock (slock-AF_INET) at:
- [<ffffffffa01bcae0>] sctp_generate_timeout_event+0x40/0xe0 [sctp]
- but there are no more locks to release!
-
- other info that might help us debug this:
- 2 locks held by CslRx/12087:
- #0:  (&asoc->timers[i]){+.-...}, at: [<ffffffff8108ce1f>] run_timer_softirq+0x16f/0x3e0
- #1:  (slock-AF_INET){+.-...}, at: [<ffffffffa01bcac3>] sctp_generate_timeout_event+0x23/0xe0 [sctp]
-
-Ensure the socket taken is also the same one that is released by
-saving a copy of the socket before entering the timeout event
-critical section.
-
-Signed-off-by: Karl Heiss <kheiss at gmail.com>
-Signed-off-by: David S. Miller <davem at davemloft.net>
-[bwh: Backported to 3.2:
- - Net namespaces are not used
- - Keep using sctp_bh_{,un}lock_sock()
- - Adjust context]
----
---- a/net/sctp/sm_sideeffect.c
-+++ b/net/sctp/sm_sideeffect.c
-@@ -249,11 +249,12 @@ void sctp_generate_t3_rtx_event(unsigned
- 	int error;
- 	struct sctp_transport *transport = (struct sctp_transport *) peer;
- 	struct sctp_association *asoc = transport->asoc;
-+	struct sock *sk = asoc->base.sk;
- 
- 	/* Check whether a task is in the sock.  */
- 
--	sctp_bh_lock_sock(asoc->base.sk);
--	if (sock_owned_by_user(asoc->base.sk)) {
-+	sctp_bh_lock_sock(sk);
-+	if (sock_owned_by_user(sk)) {
- 		SCTP_DEBUG_PRINTK("%s:Sock is busy.\n", __func__);
- 
- 		/* Try again later.  */
-@@ -276,10 +277,10 @@ void sctp_generate_t3_rtx_event(unsigned
- 			   transport, GFP_ATOMIC);
- 
- 	if (error)
--		asoc->base.sk->sk_err = -error;
-+		sk->sk_err = -error;
- 
- out_unlock:
--	sctp_bh_unlock_sock(asoc->base.sk);
-+	sctp_bh_unlock_sock(sk);
- 	sctp_transport_put(transport);
- }
- 
-@@ -289,10 +290,11 @@ out_unlock:
- static void sctp_generate_timeout_event(struct sctp_association *asoc,
- 					sctp_event_timeout_t timeout_type)
- {
-+	struct sock *sk = asoc->base.sk;
- 	int error = 0;
- 
--	sctp_bh_lock_sock(asoc->base.sk);
--	if (sock_owned_by_user(asoc->base.sk)) {
-+	sctp_bh_lock_sock(sk);
-+	if (sock_owned_by_user(sk)) {
- 		SCTP_DEBUG_PRINTK("%s:Sock is busy: timer %d\n",
- 				  __func__,
- 				  timeout_type);
-@@ -316,10 +318,10 @@ static void sctp_generate_timeout_event(
- 			   (void *)timeout_type, GFP_ATOMIC);
- 
- 	if (error)
--		asoc->base.sk->sk_err = -error;
-+		sk->sk_err = -error;
- 
- out_unlock:
--	sctp_bh_unlock_sock(asoc->base.sk);
-+	sctp_bh_unlock_sock(sk);
- 	sctp_association_put(asoc);
- }
- 
-@@ -369,9 +371,10 @@ void sctp_generate_heartbeat_event(unsig
- 	int error = 0;
- 	struct sctp_transport *transport = (struct sctp_transport *) data;
- 	struct sctp_association *asoc = transport->asoc;
-+	struct sock *sk = asoc->base.sk;
- 
--	sctp_bh_lock_sock(asoc->base.sk);
--	if (sock_owned_by_user(asoc->base.sk)) {
-+	sctp_bh_lock_sock(sk);
-+	if (sock_owned_by_user(sk)) {
- 		SCTP_DEBUG_PRINTK("%s:Sock is busy.\n", __func__);
- 
- 		/* Try again later.  */
-@@ -392,10 +395,10 @@ void sctp_generate_heartbeat_event(unsig
- 			   transport, GFP_ATOMIC);
- 
- 	 if (error)
--		 asoc->base.sk->sk_err = -error;
-+		sk->sk_err = -error;
- 
- out_unlock:
--	sctp_bh_unlock_sock(asoc->base.sk);
-+	sctp_bh_unlock_sock(sk);
- 	sctp_transport_put(transport);
- }
- 
-@@ -406,9 +409,10 @@ void sctp_generate_proto_unreach_event(u
- {
- 	struct sctp_transport *transport = (struct sctp_transport *) data;
- 	struct sctp_association *asoc = transport->asoc;
-+	struct sock *sk = asoc->base.sk;
- 	
--	sctp_bh_lock_sock(asoc->base.sk);
--	if (sock_owned_by_user(asoc->base.sk)) {
-+	sctp_bh_lock_sock(sk);
-+	if (sock_owned_by_user(sk)) {
- 		SCTP_DEBUG_PRINTK("%s:Sock is busy.\n", __func__);
- 
- 		/* Try again later.  */
-@@ -429,7 +433,7 @@ void sctp_generate_proto_unreach_event(u
- 		   asoc->state, asoc->ep, asoc, transport, GFP_ATOMIC);
- 
- out_unlock:
--	sctp_bh_unlock_sock(asoc->base.sk);
-+	sctp_bh_unlock_sock(sk);
- 	sctp_association_put(asoc);
- }
- 
diff --git a/debian/patches/bugfix/all/tty-fix-unsafe-ldisc-reference-via-ioctl-tiocgetd.patch b/debian/patches/bugfix/all/tty-fix-unsafe-ldisc-reference-via-ioctl-tiocgetd.patch
deleted file mode 100644
index a5e119e..0000000
--- a/debian/patches/bugfix/all/tty-fix-unsafe-ldisc-reference-via-ioctl-tiocgetd.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From: Peter Hurley <peter at hurleysoftware.com>
-Subject: tty: Fix unsafe ldisc reference via ioctl(TIOCGETD)
-Date: Sun, 10 Jan 2016 22:40:55 -0800
-Origin: http://article.gmane.org/gmane.linux.kernel/2123249
-
-ioctl(TIOCGETD) retrieves the line discipline id directly from the
-ldisc because the line discipline id (c_line) in termios is untrustworthy;
-userspace may have set termios via ioctl(TCSETS*) without actually
-changing the line discipline via ioctl(TIOCSETD).
-
-However, directly accessing the current ldisc via tty->ldisc is
-unsafe; the ldisc ptr dereferenced may be stale if the line discipline
-is changing via ioctl(TIOCSETD) or hangup.
-
-Wait for the line discipline reference (just like read() or write())
-to retrieve the "current" line discipline id.
-
-Cc: <stable at vger.kernel.org>
-Signed-off-by: Peter Hurley <peter at hurleysoftware.com>
----
- drivers/tty/tty_io.c | 24 +++++++++++++++++++++++-
- 1 file changed, 23 insertions(+), 1 deletion(-)
-
---- a/drivers/tty/tty_io.c
-+++ b/drivers/tty/tty_io.c
-@@ -2475,6 +2475,28 @@ static int tiocsetd(struct tty_struct *t
- }
- 
- /**
-+ *	tiocgetd	-	get line discipline
-+ *	@tty: tty device
-+ *	@p: pointer to user data
-+ *
-+ *	Retrieves the line discipline id directly from the ldisc.
-+ *
-+ *	Locking: waits for ldisc reference (in case the line discipline
-+ *		is changing or the tty is being hungup)
-+ */
-+
-+static int tiocgetd(struct tty_struct *tty, int __user *p)
-+{
-+	struct tty_ldisc *ld;
-+	int ret;
-+
-+	ld = tty_ldisc_ref_wait(tty);
-+	ret = put_user(ld->ops->num, p);
-+	tty_ldisc_deref(ld);
-+	return ret;
-+}
-+
-+/**
-  *	send_break	-	performed time break
-  *	@tty: device to break on
-  *	@duration: timeout in mS
-@@ -2684,7 +2706,7 @@ long tty_ioctl(struct file *file, unsign
- 	case TIOCGSID:
- 		return tiocgsid(tty, real_tty, p);
- 	case TIOCGETD:
--		return put_user(tty->ldisc->ops->num, (int __user *)p);
-+		return tiocgetd(tty, p);
- 	case TIOCSETD:
- 		return tiocsetd(tty, p);
- 	case TIOCVHANGUP:
diff --git a/debian/patches/bugfix/all/unix-correctly-track-in-flight-fds-in-sending-process-user_struct.patch b/debian/patches/bugfix/all/unix-correctly-track-in-flight-fds-in-sending-process-user_struct.patch
deleted file mode 100644
index 50bab43..0000000
--- a/debian/patches/bugfix/all/unix-correctly-track-in-flight-fds-in-sending-process-user_struct.patch
+++ /dev/null
@@ -1,148 +0,0 @@
-From: Hannes Frederic Sowa <hannes at stressinduktion.org>
-Date: Wed, 3 Feb 2016 02:11:03 +0100
-Subject: unix: correctly track in-flight fds in sending process user_struct
-
-commit 415e3d3e90ce9e18727e8843ae343eda5a58fad6 upstream.
-
-The commit referenced in the Fixes tag incorrectly accounted the number
-of in-flight fds over a unix domain socket to the original opener
-of the file-descriptor. This allows another process to arbitrary
-deplete the original file-openers resource limit for the maximum of
-open files. Instead the sending processes and its struct cred should
-be credited.
-
-To do so, we add a reference counted struct user_struct pointer to the
-scm_fp_list and use it to account for the number of inflight unix fds.
-
-Fixes: 712f4aad406bb1 ("unix: properly account for FDs passed over unix sockets")
-Reported-by: David Herrmann <dh.herrmann at gmail.com>
-Cc: David Herrmann <dh.herrmann at gmail.com>
-Cc: Willy Tarreau <w at 1wt.eu>
-Cc: Linus Torvalds <torvalds at linux-foundation.org>
-Suggested-by: Linus Torvalds <torvalds at linux-foundation.org>
-Signed-off-by: Hannes Frederic Sowa <hannes at stressinduktion.org>
-Signed-off-by: David S. Miller <davem at davemloft.net>
-[bwh: Backported to 3.2: adjust context]
-Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
----
- include/net/af_unix.h | 4 ++--
- include/net/scm.h     | 1 +
- net/core/scm.c        | 7 +++++++
- net/unix/af_unix.c    | 4 ++--
- net/unix/garbage.c    | 8 ++++----
- 5 files changed, 16 insertions(+), 8 deletions(-)
-
---- a/include/net/af_unix.h
-+++ b/include/net/af_unix.h
-@@ -6,8 +6,8 @@
- #include <linux/mutex.h>
- #include <net/sock.h>
- 
--extern void unix_inflight(struct file *fp);
--extern void unix_notinflight(struct file *fp);
-+extern void unix_inflight(struct user_struct *user, struct file *fp);
-+extern void unix_notinflight(struct user_struct *user, struct file *fp);
- extern void unix_gc(void);
- extern void wait_for_unix_gc(void);
- extern struct sock *unix_get_socket(struct file *filp);
---- a/include/net/scm.h
-+++ b/include/net/scm.h
-@@ -16,6 +16,7 @@ struct scm_fp_list {
- 	struct list_head	list;
- 	short			count;
- 	short			max;
-+	struct user_struct	*user;
- 	struct file		*fp[SCM_MAX_FD];
- };
- 
---- a/net/core/scm.c
-+++ b/net/core/scm.c
-@@ -80,6 +80,7 @@ static int scm_fp_copy(struct cmsghdr *c
- 		*fplp = fpl;
- 		fpl->count = 0;
- 		fpl->max = SCM_MAX_FD;
-+		fpl->user = NULL;
- 	}
- 	fpp = &fpl->fp[fpl->count];
- 
-@@ -100,6 +101,10 @@ static int scm_fp_copy(struct cmsghdr *c
- 		*fpp++ = file;
- 		fpl->count++;
- 	}
-+
-+	if (!fpl->user)
-+		fpl->user = get_uid(current_user());
-+
- 	return num;
- }
- 
-@@ -124,6 +129,7 @@ void __scm_destroy(struct scm_cookie *sc
- 				list_del(&fpl->list);
- 				for (i=fpl->count-1; i>=0; i--)
- 					fput(fpl->fp[i]);
-+				free_uid(fpl->user);
- 				kfree(fpl);
- 			}
- 
-@@ -340,6 +346,7 @@ struct scm_fp_list *scm_fp_dup(struct sc
- 		for (i = 0; i < fpl->count; i++)
- 			get_file(fpl->fp[i]);
- 		new_fpl->max = new_fpl->count;
-+		new_fpl->user = get_uid(fpl->user);
- 	}
- 	return new_fpl;
- }
---- a/net/unix/af_unix.c
-+++ b/net/unix/af_unix.c
-@@ -1454,7 +1454,7 @@ static void unix_detach_fds(struct scm_c
- 	UNIXCB(skb).fp = NULL;
- 
- 	for (i = scm->fp->count-1; i >= 0; i--)
--		unix_notinflight(scm->fp->fp[i]);
-+		unix_notinflight(scm->fp->user, scm->fp->fp[i]);
- }
- 
- static void unix_destruct_scm(struct sk_buff *skb)
-@@ -1520,7 +1520,7 @@ static int unix_attach_fds(struct scm_co
- 		return -ENOMEM;
- 
- 	for (i = scm->fp->count - 1; i >= 0; i--)
--		unix_inflight(scm->fp->fp[i]);
-+		unix_inflight(scm->fp->user, scm->fp->fp[i]);
- 	return max_level;
- }
- 
---- a/net/unix/garbage.c
-+++ b/net/unix/garbage.c
-@@ -122,7 +122,7 @@ struct sock *unix_get_socket(struct file
-  *	descriptor if it is for an AF_UNIX socket.
-  */
- 
--void unix_inflight(struct file *fp)
-+void unix_inflight(struct user_struct *user, struct file *fp)
- {
- 	struct sock *s = unix_get_socket(fp);
- 
-@@ -138,11 +138,11 @@ void unix_inflight(struct file *fp)
- 		}
- 		unix_tot_inflight++;
- 	}
--	fp->f_cred->user->unix_inflight++;
-+	user->unix_inflight++;
- 	spin_unlock(&unix_gc_lock);
- }
- 
--void unix_notinflight(struct file *fp)
-+void unix_notinflight(struct user_struct *user, struct file *fp)
- {
- 	struct sock *s = unix_get_socket(fp);
- 
-@@ -155,7 +155,7 @@ void unix_notinflight(struct file *fp)
- 			list_del_init(&u->link);
- 		unix_tot_inflight--;
- 	}
--	fp->f_cred->user->unix_inflight--;
-+	user->unix_inflight--;
- 	spin_unlock(&unix_gc_lock);
- }
- 
diff --git a/debian/patches/bugfix/all/unix-properly-account-for-FDs-passed-over-unix-socke.patch b/debian/patches/bugfix/all/unix-properly-account-for-FDs-passed-over-unix-socke.patch
deleted file mode 100644
index 2c8526f..0000000
--- a/debian/patches/bugfix/all/unix-properly-account-for-FDs-passed-over-unix-socke.patch
+++ /dev/null
@@ -1,129 +0,0 @@
-From: willy tarreau <w at 1wt.eu>
-Date: Sun, 10 Jan 2016 07:54:56 +0100
-Subject: unix: properly account for FDs passed over unix sockets
-Origin: https://git.kernel.org/linus/712f4aad406bb1ed67f3f98d04c044191f0ff593
-
-It is possible for a process to allocate and accumulate far more FDs than
-the process' limit by sending them over a unix socket then closing them
-to keep the process' fd count low.
-
-This change addresses this problem by keeping track of the number of FDs
-in flight per user and preventing non-privileged processes from having
-more FDs in flight than their configured FD limit.
-
-Reported-by: socketpair at gmail.com
-Reported-by: Tetsuo Handa <penguin-kernel at I-love.SAKURA.ne.jp>
-Mitigates: CVE-2013-4312 (Linux 2.0+)
-Suggested-by: Linus Torvalds <torvalds at linux-foundation.org>
-Acked-by: Hannes Frederic Sowa <hannes at stressinduktion.org>
-Signed-off-by: Willy Tarreau <w at 1wt.eu>
-Signed-off-by: David S. Miller <davem at davemloft.net>
-[carnil: Backported to 3.16: adjust context]
----
- include/linux/sched.h |  1 +
- net/unix/af_unix.c    | 24 ++++++++++++++++++++----
- net/unix/garbage.c    | 13 ++++++++-----
- 3 files changed, 29 insertions(+), 9 deletions(-)
-
---- a/include/linux/sched.h
-+++ b/include/linux/sched.h
-@@ -763,6 +763,7 @@ struct user_struct {
- 	unsigned long mq_bytes;	/* How many bytes can be allocated to mqueue? */
- #endif
- 	unsigned long locked_shm; /* How many pages of mlocked shm ? */
-+	unsigned long unix_inflight;	/* How many files in flight in unix sockets */
- 
- #ifdef CONFIG_KEYS
- 	struct key *uid_keyring;	/* UID specific keyring */
---- a/net/unix/af_unix.c
-+++ b/net/unix/af_unix.c
-@@ -1486,6 +1486,21 @@ static void unix_destruct_scm(struct sk_
- 	sock_wfree(skb);
- }
- 
-+/*
-+ * The "user->unix_inflight" variable is protected by the garbage
-+ * collection lock, and we just read it locklessly here. If you go
-+ * over the limit, there might be a tiny race in actually noticing
-+ * it across threads. Tough.
-+ */
-+static inline bool too_many_unix_fds(struct task_struct *p)
-+{
-+	struct user_struct *user = current_user();
-+
-+	if (unlikely(user->unix_inflight > task_rlimit(p, RLIMIT_NOFILE)))
-+		return !capable(CAP_SYS_RESOURCE) && !capable(CAP_SYS_ADMIN);
-+	return false;
-+}
-+
- #define MAX_RECURSION_LEVEL 4
- 
- static int unix_attach_fds(struct scm_cookie *scm, struct sk_buff *skb)
-@@ -1494,6 +1509,9 @@ static int unix_attach_fds(struct scm_co
- 	unsigned char max_level = 0;
- 	int unix_sock_count = 0;
- 
-+	if (too_many_unix_fds(current))
-+		return -ETOOMANYREFS;
-+
- 	for (i = scm->fp->count - 1; i >= 0; i--) {
- 		struct sock *sk = unix_get_socket(scm->fp->fp[i]);
- 
-@@ -1515,10 +1533,8 @@ static int unix_attach_fds(struct scm_co
- 	if (!UNIXCB(skb).fp)
- 		return -ENOMEM;
- 
--	if (unix_sock_count) {
--		for (i = scm->fp->count - 1; i >= 0; i--)
--			unix_inflight(scm->fp->fp[i]);
--	}
-+	for (i = scm->fp->count - 1; i >= 0; i--)
-+		unix_inflight(scm->fp->fp[i]);
- 	return max_level;
- }
- 
---- a/net/unix/garbage.c
-+++ b/net/unix/garbage.c
-@@ -125,9 +125,11 @@ struct sock *unix_get_socket(struct file
- void unix_inflight(struct file *fp)
- {
- 	struct sock *s = unix_get_socket(fp);
-+
-+	spin_lock(&unix_gc_lock);
-+
- 	if (s) {
- 		struct unix_sock *u = unix_sk(s);
--		spin_lock(&unix_gc_lock);
- 		if (atomic_long_inc_return(&u->inflight) == 1) {
- 			BUG_ON(!list_empty(&u->link));
- 			list_add_tail(&u->link, &gc_inflight_list);
-@@ -135,22 +137,26 @@ void unix_inflight(struct file *fp)
- 			BUG_ON(list_empty(&u->link));
- 		}
- 		unix_tot_inflight++;
--		spin_unlock(&unix_gc_lock);
- 	}
-+	fp->f_cred->user->unix_inflight++;
-+	spin_unlock(&unix_gc_lock);
- }
- 
- void unix_notinflight(struct file *fp)
- {
- 	struct sock *s = unix_get_socket(fp);
-+
-+	spin_lock(&unix_gc_lock);
-+
- 	if (s) {
- 		struct unix_sock *u = unix_sk(s);
--		spin_lock(&unix_gc_lock);
- 		BUG_ON(list_empty(&u->link));
- 		if (atomic_long_dec_and_test(&u->inflight))
- 			list_del_init(&u->link);
- 		unix_tot_inflight--;
--		spin_unlock(&unix_gc_lock);
- 	}
-+	fp->f_cred->user->unix_inflight--;
-+	spin_unlock(&unix_gc_lock);
- }
- 
- static void scan_inflight(struct sock *x, void (*func)(struct unix_sock *),
diff --git a/debian/patches/bugfix/all/usb-serial-visor-fix-crash-on-detecting-device-without-write_urbs.patch b/debian/patches/bugfix/all/usb-serial-visor-fix-crash-on-detecting-device-without-write_urbs.patch
deleted file mode 100644
index 9519f2f..0000000
--- a/debian/patches/bugfix/all/usb-serial-visor-fix-crash-on-detecting-device-without-write_urbs.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From: Vladis Dronov <vdronov at redhat.com>
-Subject: usb: serial: visor: fix crash on detecting device without write_urbs
-Date: Tue, 12 Jan 2016 15:10:50 +0100
-Origin: http://article.gmane.org/gmane.linux.usb.general/136045
-Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1296466
-
-The visor driver crashes in clie_5_attach() when a specially crafted USB
-device without bulk-out endpoint is detected. This fix adds a check that
-the device has proper configuration expected by the driver.
-
-Reported-by: Ralf Spenneberg <ralf at spenneberg.net>
-Signed-off-by: Vladis Dronov <vdronov at redhat.com>
----
- drivers/usb/serial/visor.c | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
---- a/drivers/usb/serial/visor.c
-+++ b/drivers/usb/serial/visor.c
-@@ -635,8 +635,10 @@ static int clie_5_attach(struct usb_seri
- 	 */
- 
- 	/* some sanity check */
--	if (serial->num_ports < 2)
--		return -1;
-+	if (serial->num_bulk_out < 2) {
-+		dev_err(&serial->interface->dev, "missing bulk out endpoints\n");
-+		return -ENODEV;
-+	}
- 
- 	/* port 0 now uses the modified endpoint Address */
- 	port = serial->port[0];
diff --git a/debian/patches/bugfix/all/usbvision-fix-overflow-of-interfaces-array.patch b/debian/patches/bugfix/all/usbvision-fix-overflow-of-interfaces-array.patch
deleted file mode 100644
index 7a7c348..0000000
--- a/debian/patches/bugfix/all/usbvision-fix-overflow-of-interfaces-array.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From: Oliver Neukum <oneukum at suse.com>
-Date: Tue, 27 Oct 2015 09:51:34 -0200
-Subject: [media] usbvision fix overflow of interfaces array
-Origin: http://git.linuxtv.org/cgit.cgi/media_tree.git/commit?id=588afcc1c0e45358159090d95bf7b246fb67565f
-
-This fixes the crash reported in:
-http://seclists.org/bugtraq/2015/Oct/35
-The interface number needs a sanity check.
-
-Signed-off-by: Oliver Neukum <oneukum at suse.com>
-Cc: Vladis Dronov <vdronov at redhat.com>
-Signed-off-by: Hans Verkuil <hans.verkuil at cisco.com>
-Signed-off-by: Mauro Carvalho Chehab <mchehab at osg.samsung.com>
-[bwh: Backported to 3.2: adjust filename]
----
- drivers/media/video/usbvision/usbvision-video.c | 7 +++++++
- 1 file changed, 7 insertions(+)
-
---- a/drivers/media/video/usbvision/usbvision-video.c
-+++ b/drivers/media/video/usbvision/usbvision-video.c
-@@ -1502,6 +1502,13 @@ static int __devinit usbvision_probe(str
- 	printk(KERN_INFO "%s: %s found\n", __func__,
- 				usbvision_device_data[model].model_string);
- 
-+	/*
-+	 * this is a security check.
-+	 * an exploit using an incorrect bInterfaceNumber is known
-+	 */
-+	if (ifnum >= USB_MAXINTERFACES || !dev->actconfig->interface[ifnum])
-+		return -ENODEV;
-+
- 	if (usbvision_device_data[model].interface >= 0)
- 		interface = &dev->actconfig->interface[usbvision_device_data[model].interface]->altsetting[0];
- 	else
diff --git a/debian/patches/bugfix/x86/x86-mm-Add-barriers-and-document-switch_mm-vs-flush-.patch b/debian/patches/bugfix/x86/x86-mm-Add-barriers-and-document-switch_mm-vs-flush-.patch
deleted file mode 100644
index d2e3314..0000000
--- a/debian/patches/bugfix/x86/x86-mm-Add-barriers-and-document-switch_mm-vs-flush-.patch
+++ /dev/null
@@ -1,138 +0,0 @@
-From: Andy Lutomirski <luto at kernel.org>
-Date: Wed, 6 Jan 2016 12:21:01 -0800
-Subject: x86/mm: Add barriers and document switch_mm()-vs-flush
- synchronization
-Origin: https://git.kernel.org/linus/71b3c126e61177eb693423f2e18a1914205b165e
-
-When switch_mm() activates a new PGD, it also sets a bit that
-tells other CPUs that the PGD is in use so that TLB flush IPIs
-will be sent.  In order for that to work correctly, the bit
-needs to be visible prior to loading the PGD and therefore
-starting to fill the local TLB.
-
-Document all the barriers that make this work correctly and add
-a couple that were missing.
-
-Signed-off-by: Andy Lutomirski <luto at kernel.org>
-Cc: Andrew Morton <akpm at linux-foundation.org>
-Cc: Andy Lutomirski <luto at amacapital.net>
-Cc: Borislav Petkov <bp at alien8.de>
-Cc: Brian Gerst <brgerst at gmail.com>
-Cc: Dave Hansen <dave.hansen at linux.intel.com>
-Cc: Denys Vlasenko <dvlasenk at redhat.com>
-Cc: H. Peter Anvin <hpa at zytor.com>
-Cc: Linus Torvalds <torvalds at linux-foundation.org>
-Cc: Peter Zijlstra <peterz at infradead.org>
-Cc: Rik van Riel <riel at redhat.com>
-Cc: Thomas Gleixner <tglx at linutronix.de>
-Cc: linux-mm at kvack.org
-Cc: stable at vger.kernel.org
-Signed-off-by: Ingo Molnar <mingo at kernel.org>
-[bwh: Backported to 3.2:
- - There's no flush_tlb_mm_range(), only flush_tlb_mm() which does not use
-   INVLPG
- - Adjust context]
----
---- a/arch/x86/include/asm/mmu_context.h
-+++ b/arch/x86/include/asm/mmu_context.h
-@@ -87,7 +87,32 @@ static inline void switch_mm(struct mm_s
- #endif
- 		cpumask_set_cpu(cpu, mm_cpumask(next));
- 
--		/* Re-load page tables */
-+		/*
-+		 * Re-load page tables.
-+		 *
-+		 * This logic has an ordering constraint:
-+		 *
-+		 *  CPU 0: Write to a PTE for 'next'
-+		 *  CPU 0: load bit 1 in mm_cpumask.  if nonzero, send IPI.
-+		 *  CPU 1: set bit 1 in next's mm_cpumask
-+		 *  CPU 1: load from the PTE that CPU 0 writes (implicit)
-+		 *
-+		 * We need to prevent an outcome in which CPU 1 observes
-+		 * the new PTE value and CPU 0 observes bit 1 clear in
-+		 * mm_cpumask.  (If that occurs, then the IPI will never
-+		 * be sent, and CPU 0's TLB will contain a stale entry.)
-+		 *
-+		 * The bad outcome can occur if either CPU's load is
-+		 * reordered before that CPU's store, so both CPUs much
-+		 * execute full barriers to prevent this from happening.
-+		 *
-+		 * Thus, switch_mm needs a full barrier between the
-+		 * store to mm_cpumask and any operation that could load
-+		 * from next->pgd.  This barrier synchronizes with
-+		 * remote TLB flushers.  Fortunately, load_cr3 is
-+		 * serializing and thus acts as a full barrier.
-+		 *
-+		 */
- 		load_cr3(next->pgd);
- 
- 		/* stop flush ipis for the previous mm */
-@@ -108,6 +133,10 @@ static inline void switch_mm(struct mm_s
- 			/* We were in lazy tlb mode and leave_mm disabled
- 			 * tlb flush IPI delivery. We must reload CR3
- 			 * to make sure to use no freed page tables.
-+			 *
-+			 * As above, this is a barrier that forces
-+			 * TLB repopulation to be ordered after the
-+			 * store to mm_cpumask.
- 			 */
- 			load_cr3(next->pgd);
- 			load_mm_ldt(next);
---- a/arch/x86/mm/tlb.c
-+++ b/arch/x86/mm/tlb.c
-@@ -278,7 +278,9 @@ void flush_tlb_current_task(void)
- 
- 	preempt_disable();
- 
-+	/* This is an implicit full barrier that synchronizes with switch_mm. */
- 	local_flush_tlb();
-+
- 	if (cpumask_any_but(mm_cpumask(mm), smp_processor_id()) < nr_cpu_ids)
- 		flush_tlb_others(mm_cpumask(mm), mm, TLB_FLUSH_ALL);
- 	preempt_enable();
-@@ -289,10 +291,20 @@ void flush_tlb_mm(struct mm_struct *mm)
- 	preempt_disable();
- 
- 	if (current->active_mm == mm) {
--		if (current->mm)
-+		if (current->mm) {
-+			/*
-+			 * This is an implicit full barrier (MOV to CR) that
-+			 * synchronizes with switch_mm.
-+			 */
- 			local_flush_tlb();
--		else
-+		} else {
- 			leave_mm(smp_processor_id());
-+			/* Synchronize with switch_mm. */
-+			smp_mb();
-+		}
-+	} else {
-+		/* Synchronize with switch_mm. */
-+		smp_mb();
- 	}
- 	if (cpumask_any_but(mm_cpumask(mm), smp_processor_id()) < nr_cpu_ids)
- 		flush_tlb_others(mm_cpumask(mm), mm, TLB_FLUSH_ALL);
-@@ -307,10 +319,18 @@ void flush_tlb_page(struct vm_area_struc
- 	preempt_disable();
- 
- 	if (current->active_mm == mm) {
--		if (current->mm)
-+		if (current->mm) {
-+			/*
-+			 * Implicit full barrier (INVLPG) that synchronizes
-+			 * with switch_mm.
-+			 */
- 			__flush_tlb_one(va);
--		else
-+		} else {
- 			leave_mm(smp_processor_id());
-+
-+			/* Synchronize with switch_mm. */
-+			smp_mb();
-+		}
- 	}
- 
- 	if (cpumask_any_but(mm_cpumask(mm), smp_processor_id()) < nr_cpu_ids)
diff --git a/debian/patches/bugfix/x86/x86-mm-Improve-switch_mm-barrier-comments.patch b/debian/patches/bugfix/x86/x86-mm-Improve-switch_mm-barrier-comments.patch
deleted file mode 100644
index dbf8a9c..0000000
--- a/debian/patches/bugfix/x86/x86-mm-Improve-switch_mm-barrier-comments.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From: Andy Lutomirski <luto at kernel.org>
-Date: Tue, 12 Jan 2016 12:47:40 -0800
-Subject: x86/mm: Improve switch_mm() barrier comments
-Origin: https://git.kernel.org/linus/4eaffdd5a5fe6ff9f95e1ab4de1ac904d5e0fa8b
-
-My previous comments were still a bit confusing and there was a
-typo. Fix it up.
-
-Reported-by: Peter Zijlstra <peterz at infradead.org>
-Signed-off-by: Andy Lutomirski <luto at kernel.org>
-Cc: Andy Lutomirski <luto at amacapital.net>
-Cc: Borislav Petkov <bp at alien8.de>
-Cc: Brian Gerst <brgerst at gmail.com>
-Cc: Dave Hansen <dave.hansen at linux.intel.com>
-Cc: Denys Vlasenko <dvlasenk at redhat.com>
-Cc: H. Peter Anvin <hpa at zytor.com>
-Cc: Linus Torvalds <torvalds at linux-foundation.org>
-Cc: Rik van Riel <riel at redhat.com>
-Cc: Thomas Gleixner <tglx at linutronix.de>
-Cc: stable at vger.kernel.org
-Fixes: 71b3c126e611 ("x86/mm: Add barriers and document switch_mm()-vs-flush synchronization")
-Link: http://lkml.kernel.org/r/0a0b43cdcdd241c5faaaecfbcc91a155ddedc9a1.1452631609.git.luto@kernel.org
-Signed-off-by: Ingo Molnar <mingo at kernel.org>
----
- arch/x86/include/asm/mmu_context.h | 15 ++++++++-------
- 1 file changed, 8 insertions(+), 7 deletions(-)
-
---- a/arch/x86/include/asm/mmu_context.h
-+++ b/arch/x86/include/asm/mmu_context.h
-@@ -103,14 +103,16 @@ static inline void switch_mm(struct mm_s
- 		 * be sent, and CPU 0's TLB will contain a stale entry.)
- 		 *
- 		 * The bad outcome can occur if either CPU's load is
--		 * reordered before that CPU's store, so both CPUs much
-+		 * reordered before that CPU's store, so both CPUs must
- 		 * execute full barriers to prevent this from happening.
- 		 *
- 		 * Thus, switch_mm needs a full barrier between the
- 		 * store to mm_cpumask and any operation that could load
--		 * from next->pgd.  This barrier synchronizes with
--		 * remote TLB flushers.  Fortunately, load_cr3 is
--		 * serializing and thus acts as a full barrier.
-+		 * from next->pgd.  TLB fills are special and can happen
-+		 * due to instruction fetches or for no reason at all,
-+		 * and neither LOCK nor MFENCE orders them.
-+		 * Fortunately, load_cr3() is serializing and gives the
-+		 * ordering guarantee we need.
- 		 *
- 		 */
- 		load_cr3(next->pgd);
-@@ -134,9 +136,8 @@ static inline void switch_mm(struct mm_s
- 			 * tlb flush IPI delivery. We must reload CR3
- 			 * to make sure to use no freed page tables.
- 			 *
--			 * As above, this is a barrier that forces
--			 * TLB repopulation to be ordered after the
--			 * store to mm_cpumask.
-+			 * As above, load_cr3() is serializing and orders TLB
-+			 * fills with respect to the mm_cpumask write.
- 			 */
- 			load_cr3(next->pgd);
- 			load_mm_ldt(next);
diff --git a/debian/patches/debian/crypto-fix-abi-change-in-3.2.77.patch b/debian/patches/debian/crypto-fix-abi-change-in-3.2.77.patch
new file mode 100644
index 0000000..6f8907c
--- /dev/null
+++ b/debian/patches/debian/crypto-fix-abi-change-in-3.2.77.patch
@@ -0,0 +1,137 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Date: Wed, 02 Mar 2016 18:33:46 +0000
+Subject: crypto: Fix ABI change in 3.2.77
+Forwarded: not-needed
+
+The addition of a has_setkey field to crypto_ahash and ablkcipher_tfm
+broke the ABI for crypto and several driver subsystems that use
+crypto.
+
+As it is effectively a cache of information about the algorithm,
+remove it and look up that information directly in the
+crypto_{ahash,ablkcipher}_has_setkey() functions.
+
+---
+--- a/crypto/ablkcipher.c
++++ b/crypto/ablkcipher.c
+@@ -379,7 +379,6 @@ static int crypto_init_ablkcipher_ops(st
+ 	}
+ 	crt->base = __crypto_ablkcipher_cast(tfm);
+ 	crt->ivsize = alg->ivsize;
+-	crt->has_setkey = alg->max_keysize;
+ 
+ 	return 0;
+ }
+--- a/crypto/ahash.c
++++ b/crypto/ahash.c
+@@ -369,7 +369,6 @@ static int crypto_ahash_init_tfm(struct
+ 	struct ahash_alg *alg = crypto_ahash_alg(hash);
+ 
+ 	hash->setkey = ahash_nosetkey;
+-	hash->has_setkey = false;
+ 	hash->export = ahash_no_export;
+ 	hash->import = ahash_no_import;
+ 
+@@ -382,10 +381,8 @@ static int crypto_ahash_init_tfm(struct
+ 	hash->finup = alg->finup ?: ahash_def_finup;
+ 	hash->digest = alg->digest;
+ 
+-	if (alg->setkey) {
++	if (alg->setkey)
+ 		hash->setkey = alg->setkey;
+-		hash->has_setkey = true;
+-	}
+ 	if (alg->export)
+ 		hash->export = alg->export;
+ 	if (alg->import)
+--- a/crypto/shash.c
++++ b/crypto/shash.c
+@@ -24,11 +24,12 @@
+ 
+ static const struct crypto_type crypto_shash_type;
+ 
+-static int shash_no_setkey(struct crypto_shash *tfm, const u8 *key,
+-			   unsigned int keylen)
++int shash_no_setkey(struct crypto_shash *tfm, const u8 *key,
++		    unsigned int keylen)
+ {
+ 	return -ENOSYS;
+ }
++EXPORT_SYMBOL_GPL(shash_no_setkey);
+ 
+ static int shash_setkey_unaligned(struct crypto_shash *tfm, const u8 *key,
+ 				  unsigned int keylen)
+@@ -355,8 +356,6 @@ int crypto_init_shash_ops_async(struct c
+ 	crt->digest = shash_async_digest;
+ 	crt->setkey = shash_async_setkey;
+ 
+-	crt->has_setkey = alg->setkey != shash_no_setkey;
+-
+ 	if (alg->export)
+ 		crt->export = shash_async_export;
+ 	if (alg->import)
+--- a/include/crypto/hash.h
++++ b/include/crypto/hash.h
+@@ -94,7 +94,6 @@ struct crypto_ahash {
+ 		      unsigned int keylen);
+ 
+ 	unsigned int reqsize;
+-	bool has_setkey;
+ 	struct crypto_tfm base;
+ };
+ 
+@@ -184,7 +183,22 @@ int crypto_ahash_setkey(struct crypto_ah
+ 			unsigned int keylen);
+ static inline bool crypto_ahash_has_setkey(struct crypto_ahash *tfm)
+ {
+-	return tfm->has_setkey;
++	struct crypto_tfm *basetfm = crypto_ahash_tfm(tfm);
++
++	switch (crypto_tfm_alg_type(basetfm)) {
++	case CRYPTO_ALG_TYPE_SHASH: {
++		extern int shash_no_setkey(struct crypto_shash *tfm,
++					   const u8 *key,
++					   unsigned int keylen);
++		struct shash_alg *alg =	container_of(basetfm->__crt_alg,
++						     struct shash_alg, base);
++
++		return alg->setkey != shash_no_setkey;
++	}
++
++	default:
++		return tfm->setkey != NULL;
++	}
+ }
+ 
+ int crypto_ahash_finup(struct ahash_request *req);
+--- a/include/linux/crypto.h
++++ b/include/linux/crypto.h
+@@ -346,7 +346,6 @@ struct ablkcipher_tfm {
+ 
+ 	unsigned int ivsize;
+ 	unsigned int reqsize;
+-	bool has_setkey;
+ };
+ 
+ struct aead_tfm {
+@@ -659,9 +658,18 @@ static inline int crypto_ablkcipher_setk
+ 
+ static inline bool crypto_ablkcipher_has_setkey(struct crypto_ablkcipher *tfm)
+ {
+-	struct ablkcipher_tfm *crt = crypto_ablkcipher_crt(tfm);
++	struct crypto_tfm *basetfm = crypto_ablkcipher_tfm(tfm);
+ 
+-	return crt->has_setkey;
++	switch (crypto_tfm_alg_type(basetfm)) {
++	case CRYPTO_ALG_TYPE_ABLKCIPHER: {
++		struct ablkcipher_alg *alg = &basetfm->__crt_alg->cra_ablkcipher;
++
++		return alg->max_keysize != 0;
++	}
++
++	default:
++		return false;
++	}
+ }
+ 
+ static inline struct crypto_ablkcipher *crypto_ablkcipher_reqtfm(
diff --git a/debian/patches/debian/hrtimer-fix-abi-change-in-3.2.78.patch b/debian/patches/debian/hrtimer-fix-abi-change-in-3.2.78.patch
new file mode 100644
index 0000000..8b8d901
--- /dev/null
+++ b/debian/patches/debian/hrtimer-fix-abi-change-in-3.2.78.patch
@@ -0,0 +1,58 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Date: Wed, 02 Mar 2016 16:53:56 +0000
+Subject: hrtimer: Fix ABI change in 3.2.78
+Forwarded: not-needed
+
+The fudge for relative timers on architectures with only low-res
+hardware timers broke ABI.  Limit the structure change to those
+architectures that need it, which doesn't include any of those
+supported in wheezy.
+
+Changing hrtimer_get_remaining() from exported to static inline
+also broke ABI; undo that.
+
+---
+--- a/include/linux/hrtimer.h
++++ b/include/linux/hrtimer.h
+@@ -111,8 +111,12 @@ struct hrtimer {
+ 	ktime_t				_softexpires;
+ 	enum hrtimer_restart		(*function)(struct hrtimer *);
+ 	struct hrtimer_clock_base	*base;
++#ifdef CONFIG_TIME_LOW_RES
+ 	u8				state;
+ 	u8				is_rel;
++#else
++	unsigned long			state;
++#endif
+ #ifdef CONFIG_TIMER_STATS
+ 	int				start_pid;
+ 	void				*start_site;
+@@ -409,11 +413,7 @@ static inline int hrtimer_restart(struct
+ 
+ /* Query timers: */
+ extern ktime_t __hrtimer_get_remaining(const struct hrtimer *timer, bool adjust);
+-
+-static inline ktime_t hrtimer_get_remaining(const struct hrtimer *timer)
+-{
+-	return __hrtimer_get_remaining(timer, false);
+-}
++extern ktime_t hrtimer_get_remaining(const struct hrtimer *timer);
+ extern int hrtimer_get_res(const clockid_t which_clock, struct timespec *tp);
+ 
+ extern ktime_t hrtimer_get_next_event(void);
+--- a/kernel/hrtimer.c
++++ b/kernel/hrtimer.c
+@@ -1145,7 +1145,12 @@ ktime_t __hrtimer_get_remaining(const st
+ 
+ 	return rem;
+ }
+-EXPORT_SYMBOL_GPL(__hrtimer_get_remaining);
++
++ktime_t hrtimer_get_remaining(const struct hrtimer *timer)
++{
++	return __hrtimer_get_remaining(timer, false);
++}
++EXPORT_SYMBOL_GPL(hrtimer_get_remaining);
+ 
+ #ifdef CONFIG_NO_HZ
+ /**
diff --git a/debian/patches/features/all/drm/drm-3.4.patch b/debian/patches/features/all/drm/drm-3.4.patch
index f115479..1b3d6b5 100644
--- a/debian/patches/features/all/drm/drm-3.4.patch
+++ b/debian/patches/features/all/drm/drm-3.4.patch
@@ -1,5 +1,5 @@
 diff --git a/drivers/char/agp/amd64-agp.c b/drivers/char/agp/amd64-agp.c
-index 780498d..444f8b6 100644
+index 780498d76581..444f8b6ab411 100644
 --- a/drivers/char/agp/amd64-agp.c
 +++ b/drivers/char/agp/amd64-agp.c
 @@ -33,7 +33,7 @@
@@ -12,7 +12,7 @@ index 780498d..444f8b6 100644
  
  static void amd64_tlbflush(struct agp_memory *temp)
 diff --git a/drivers/char/agp/backend.c b/drivers/char/agp/backend.c
-index 4b71647..317c28c 100644
+index 4b71647782d0..317c28ce8328 100644
 --- a/drivers/char/agp/backend.c
 +++ b/drivers/char/agp/backend.c
 @@ -194,10 +194,10 @@ static int agp_backend_initialize(struct agp_bridge_data *bridge)
@@ -44,7 +44,7 @@ index 4b71647..317c28c 100644
  }
  
 diff --git a/drivers/char/agp/generic.c b/drivers/char/agp/generic.c
-index b072648..17e05d1 100644
+index b072648dc3f6..17e05d1076b3 100644
 --- a/drivers/char/agp/generic.c
 +++ b/drivers/char/agp/generic.c
 @@ -514,12 +514,12 @@ static void agp_v2_parse_one(u32 *requested_mode, u32 *bridge_agpstat, u32 *vga_
@@ -81,7 +81,7 @@ index b072648..17e05d1 100644
  	bridge->gatt_table = (void *)table;
  #else
 diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c
-index 58b49d1..4293c48 100644
+index 58b49d1a283b..4293c484056a 100644
 --- a/drivers/char/agp/intel-agp.c
 +++ b/drivers/char/agp/intel-agp.c
 @@ -850,6 +850,7 @@ static struct pci_device_id agp_intel_pci_table[] = {
@@ -93,7 +93,7 @@ index 58b49d1..4293c48 100644
  	ID(PCI_DEVICE_ID_INTEL_82443BX_0),
  	ID(PCI_DEVICE_ID_INTEL_82443GX_0),
 diff --git a/drivers/char/agp/intel-gtt.c b/drivers/char/agp/intel-gtt.c
-index 59d4697..4e985cd 100644
+index 59d469767e47..4e985cd97618 100644
 --- a/drivers/char/agp/intel-gtt.c
 +++ b/drivers/char/agp/intel-gtt.c
 @@ -76,7 +76,6 @@ static struct _intel_private {
@@ -151,7 +151,7 @@ index 59d4697..4e985cd 100644
  	/* Query intel_iommu to see if we need the workaround. Presumably that
  	 * was loaded first.
 diff --git a/drivers/char/agp/sis-agp.c b/drivers/char/agp/sis-agp.c
-index 29aacd8..08704ae 100644
+index 29aacd81de78..08704ae53956 100644
 --- a/drivers/char/agp/sis-agp.c
 +++ b/drivers/char/agp/sis-agp.c
 @@ -17,7 +17,7 @@
@@ -164,7 +164,7 @@ index 29aacd8..08704ae 100644
  
  static int sis_fetch_size(void)
 diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
-index 1368826..e354bc0 100644
+index 1368826ef284..e354bc0b052a 100644
 --- a/drivers/gpu/drm/Kconfig
 +++ b/drivers/gpu/drm/Kconfig
 @@ -9,6 +9,7 @@ menuconfig DRM
@@ -224,7 +224,7 @@ index 1368826..e354bc0 100644
 +
 +source "drivers/gpu/drm/udl/Kconfig"
 diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile
-index c0496f6..c20da5b 100644
+index c0496f660707..c20da5bda355 100644
 --- a/drivers/gpu/drm/Makefile
 +++ b/drivers/gpu/drm/Makefile
 @@ -9,20 +9,24 @@ drm-y       :=	drm_auth.o drm_buffer.o drm_bufs.o drm_cache.o \
@@ -262,7 +262,7 @@ index c0496f6..c20da5b 100644
 +obj-$(CONFIG_DRM_UDL) += udl/
  obj-y			+= i2c/
 diff --git a/drivers/gpu/drm/drm_bufs.c b/drivers/gpu/drm/drm_bufs.c
-index 30372f7..348b367 100644
+index 30372f7b2d45..348b367debeb 100644
 --- a/drivers/gpu/drm/drm_bufs.c
 +++ b/drivers/gpu/drm/drm_bufs.c
 @@ -1510,8 +1510,8 @@ int drm_freebufs(struct drm_device *dev, void *data,
@@ -298,7 +298,7 @@ index 30372f7..348b367 100644
  		if (virtual > -1024UL) {
  			/* Real error */
 diff --git a/drivers/gpu/drm/drm_cache.c b/drivers/gpu/drm/drm_cache.c
-index 5928653..4b8653b 100644
+index 592865381c6e..4b8653b932f9 100644
 --- a/drivers/gpu/drm/drm_cache.c
 +++ b/drivers/gpu/drm/drm_cache.c
 @@ -41,10 +41,10 @@ drm_clflush_page(struct page *page)
@@ -328,7 +328,7 @@ index 5928653..4b8653b 100644
  #else
  	printk(KERN_ERR "Architecture has no drm_cache.c support\n");
 diff --git a/drivers/gpu/drm/drm_context.c b/drivers/gpu/drm/drm_context.c
-index 6d440fb..325365f 100644
+index 6d440fb894cf..325365f6d355 100644
 --- a/drivers/gpu/drm/drm_context.c
 +++ b/drivers/gpu/drm/drm_context.c
 @@ -154,8 +154,6 @@ int drm_getsareactx(struct drm_device *dev, void *data,
@@ -351,7 +351,7 @@ index 6d440fb..325365f 100644
  		return -EINVAL;
  
 diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
-index 20110b4..c61e672 100644
+index 20110b4ad791..c61e67222160 100644
 --- a/drivers/gpu/drm/drm_crtc.c
 +++ b/drivers/gpu/drm/drm_crtc.c
 @@ -36,11 +36,7 @@
@@ -2012,7 +2012,7 @@ index 20110b4..c61e672 100644
 +}
 +EXPORT_SYMBOL(drm_fb_get_bpp_depth);
 diff --git a/drivers/gpu/drm/drm_crtc_helper.c b/drivers/gpu/drm/drm_crtc_helper.c
-index 11788f7..b3abf70 100644
+index 11788f72e2b0..b3abf7044718 100644
 --- a/drivers/gpu/drm/drm_crtc_helper.c
 +++ b/drivers/gpu/drm/drm_crtc_helper.c
 @@ -34,8 +34,10 @@
@@ -2171,7 +2171,7 @@ index 11788f7..b3abf70 100644
 +}
 +EXPORT_SYMBOL(drm_format_num_planes);
 diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
-index 0731d43..e9f1ef5 100644
+index 0731d437e7fb..e9f1ef5d9340 100644
 --- a/drivers/gpu/drm/drm_drv.c
 +++ b/drivers/gpu/drm/drm_drv.c
 @@ -61,14 +61,14 @@ static int drm_version(struct drm_device *dev, void *data,
@@ -2253,7 +2253,7 @@ index 0731d43..e9f1ef5 100644
  		if (ioctl->flags & DRM_UNLOCKED)
  			retcode = func(dev, kdata, file_priv);
 diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
-index 72f460e..d75dccb 100644
+index 72f460e22b76..d75dccb562f3 100644
 --- a/drivers/gpu/drm/drm_edid.c
 +++ b/drivers/gpu/drm/drm_edid.c
 @@ -68,6 +68,8 @@
@@ -2462,7 +2462,7 @@ index 72f460e..d75dccb 100644
  EXPORT_SYMBOL(drm_add_edid_modes);
 diff --git a/drivers/gpu/drm/drm_edid_load.c b/drivers/gpu/drm/drm_edid_load.c
 new file mode 100644
-index 0000000..da9acba
+index 000000000000..da9acba2dd6c
 --- /dev/null
 +++ b/drivers/gpu/drm/drm_edid_load.c
 @@ -0,0 +1,250 @@
@@ -2717,7 +2717,7 @@ index 0000000..da9acba
 +	    connector->display_info.raw_edid);
 +}
 diff --git a/drivers/gpu/drm/drm_edid_modes.h b/drivers/gpu/drm/drm_edid_modes.h
-index 5f206448..a91ffb1 100644
+index 5f2064489fd5..a91ffb117220 100644
 --- a/drivers/gpu/drm/drm_edid_modes.h
 +++ b/drivers/gpu/drm/drm_edid_modes.h
 @@ -378,3 +378,287 @@ static const struct {
@@ -3009,7 +3009,7 @@ index 5f206448..a91ffb1 100644
 +static const int drm_num_cea_modes =
 +	sizeof (edid_cea_modes) / sizeof (edid_cea_modes[0]);
 diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
-index dd58373..a0d6e89 100644
+index dd58373830de..a0d6e894d97c 100644
 --- a/drivers/gpu/drm/drm_fb_helper.c
 +++ b/drivers/gpu/drm/drm_fb_helper.c
 @@ -255,6 +255,13 @@ bool drm_fb_helper_force_kernel_mode(void)
@@ -3179,7 +3179,7 @@ index dd58373..a0d6e89 100644
  out_free:
  	drm_fb_helper_crtc_free(fb_helper);
 diff --git a/drivers/gpu/drm/drm_fops.c b/drivers/gpu/drm/drm_fops.c
-index 5f1a653..b90abff 100644
+index 5f1a65378ee4..b90abff19341 100644
 --- a/drivers/gpu/drm/drm_fops.c
 +++ b/drivers/gpu/drm/drm_fops.c
 @@ -133,6 +133,9 @@ int drm_open(struct inode *inode, struct file *filp)
@@ -3362,7 +3362,7 @@ index 5f1a653..b90abff 100644
  	mutex_unlock(&drm_global_mutex);
  
 diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
-index 396e60c..83114b5 100644
+index 396e60ce8114..83114b5e3cee 100644
 --- a/drivers/gpu/drm/drm_gem.c
 +++ b/drivers/gpu/drm/drm_gem.c
 @@ -35,6 +35,7 @@
@@ -3423,7 +3423,7 @@ index 396e60c..83114b5 100644
  
  out_unlock:
 diff --git a/drivers/gpu/drm/drm_ioc32.c b/drivers/gpu/drm/drm_ioc32.c
-index ddd70db..637fcc3 100644
+index ddd70db45f76..637fcc3766c7 100644
 --- a/drivers/gpu/drm/drm_ioc32.c
 +++ b/drivers/gpu/drm/drm_ioc32.c
 @@ -315,7 +315,8 @@ static int compat_drm_getclient(struct file *file, unsigned int cmd,
@@ -3437,7 +3437,7 @@ index ddd70db..637fcc3 100644
  	    || __get_user(c32.uid, &client->uid)
  	    || __get_user(c32.magic, &client->magic)
 diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
-index 904d7e9..cf85155 100644
+index 904d7e9c8e47..cf85155da2a0 100644
 --- a/drivers/gpu/drm/drm_ioctl.c
 +++ b/drivers/gpu/drm/drm_ioctl.c
 @@ -37,6 +37,7 @@
@@ -3514,7 +3514,7 @@ index 904d7e9..cf85155 100644
  }
 +EXPORT_SYMBOL(drm_noop);
 diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
-index 73af885..dc33ba5 100644
+index 73af885e45d5..dc33ba57e33f 100644
 --- a/drivers/gpu/drm/drm_irq.c
 +++ b/drivers/gpu/drm/drm_irq.c
 @@ -305,7 +305,7 @@ static void drm_irq_vgaarb_nokms(void *cookie, bool state)
@@ -3536,7 +3536,7 @@ index 73af885..dc33ba5 100644
  int drm_irq_uninstall(struct drm_device *dev)
  {
 diff --git a/drivers/gpu/drm/drm_lock.c b/drivers/gpu/drm/drm_lock.c
-index 632ae24..c79c713 100644
+index 632ae243ede0..c79c713eeba0 100644
 --- a/drivers/gpu/drm/drm_lock.c
 +++ b/drivers/gpu/drm/drm_lock.c
 @@ -33,6 +33,7 @@
@@ -3564,7 +3564,7 @@ index 632ae24..c79c713 100644
  int drm_i_have_hw_lock(struct drm_device *dev, struct drm_file *file_priv)
  {
 diff --git a/drivers/gpu/drm/drm_memory.c b/drivers/gpu/drm/drm_memory.c
-index c8b6b66..c86a0f1 100644
+index c8b6b66d428d..c86a0f1a435c 100644
 --- a/drivers/gpu/drm/drm_memory.c
 +++ b/drivers/gpu/drm/drm_memory.c
 @@ -37,25 +37,6 @@
@@ -3594,7 +3594,7 @@ index c8b6b66..c86a0f1 100644
  static void *agp_remap(unsigned long offset, unsigned long size,
  		       struct drm_device * dev)
 diff --git a/drivers/gpu/drm/drm_mm.c b/drivers/gpu/drm/drm_mm.c
-index 961fb54..7f88de6 100644
+index 961fb54f4266..7f88de66c1fd 100644
 --- a/drivers/gpu/drm/drm_mm.c
 +++ b/drivers/gpu/drm/drm_mm.c
 @@ -680,33 +680,35 @@ void drm_mm_debug_table(struct drm_mm *mm, const char *prefix)
@@ -3650,7 +3650,7 @@ index 961fb54..7f88de6 100644
  	total = total_free + total_used;
  
 diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c
-index fb8e46b..b7adb4a 100644
+index fb8e46b4e8bc..b7adb4a967fd 100644
 --- a/drivers/gpu/drm/drm_modes.c
 +++ b/drivers/gpu/drm/drm_modes.c
 @@ -686,8 +686,6 @@ void drm_mode_set_crtcinfo(struct drm_display_mode *p, int adjust_flags)
@@ -3710,7 +3710,7 @@ index fb8e46b..b7adb4a 100644
  }
  EXPORT_SYMBOL(drm_mode_duplicate);
 diff --git a/drivers/gpu/drm/drm_pci.c b/drivers/gpu/drm/drm_pci.c
-index d4d10b7..13f3d93 100644
+index d4d10b7880cf..13f3d936472f 100644
 --- a/drivers/gpu/drm/drm_pci.c
 +++ b/drivers/gpu/drm/drm_pci.c
 @@ -324,8 +324,6 @@ int drm_get_pci_dev(struct pci_dev *pdev, const struct pci_device_id *ent,
@@ -3723,7 +3723,7 @@ index d4d10b7..13f3d93 100644
  	dev->dev = &pdev->dev;
  
 diff --git a/drivers/gpu/drm/drm_platform.c b/drivers/gpu/drm/drm_platform.c
-index ae9db5e..82431dc 100644
+index ae9db5e2b27c..82431dcae37b 100644
 --- a/drivers/gpu/drm/drm_platform.c
 +++ b/drivers/gpu/drm/drm_platform.c
 @@ -122,7 +122,7 @@ static const char *drm_platform_get_name(struct drm_device *dev)
@@ -3755,7 +3755,7 @@ index ae9db5e..82431dc 100644
  		DRM_ERROR("Unique buffer overflowed\n");
 diff --git a/drivers/gpu/drm/drm_prime.c b/drivers/gpu/drm/drm_prime.c
 new file mode 100644
-index 0000000..1bdf2b5
+index 000000000000..1bdf2b54eaf6
 --- /dev/null
 +++ b/drivers/gpu/drm/drm_prime.c
 @@ -0,0 +1,304 @@
@@ -4065,7 +4065,7 @@ index 0000000..1bdf2b5
 +EXPORT_SYMBOL(drm_prime_remove_imported_buf_handle);
 diff --git a/drivers/gpu/drm/drm_sman.c b/drivers/gpu/drm/drm_sman.c
 deleted file mode 100644
-index cebce45..0000000
+index cebce45f4429..000000000000
 --- a/drivers/gpu/drm/drm_sman.c
 +++ /dev/null
 @@ -1,351 +0,0 @@
@@ -4421,7 +4421,7 @@ index cebce45..0000000
 -
 -EXPORT_SYMBOL(drm_sman_cleanup);
 diff --git a/drivers/gpu/drm/drm_stub.c b/drivers/gpu/drm/drm_stub.c
-index 6c1f6ce..aa454f8 100644
+index 6c1f6cea40a5..aa454f80e109 100644
 --- a/drivers/gpu/drm/drm_stub.c
 +++ b/drivers/gpu/drm/drm_stub.c
 @@ -225,10 +225,6 @@ int drm_setmaster_ioctl(struct drm_device *dev, void *data,
@@ -4500,7 +4500,7 @@ index 6c1f6ce..aa454f8 100644
 +}
 +EXPORT_SYMBOL(drm_unplug_dev);
 diff --git a/drivers/gpu/drm/drm_sysfs.c b/drivers/gpu/drm/drm_sysfs.c
-index 0f9ef9b..5a7bd51 100644
+index 0f9ef9bf6730..5a7bd51fc3d8 100644
 --- a/drivers/gpu/drm/drm_sysfs.c
 +++ b/drivers/gpu/drm/drm_sysfs.c
 @@ -72,7 +72,7 @@ static int drm_class_resume(struct device *dev)
@@ -4541,7 +4541,7 @@ index 0f9ef9b..5a7bd51 100644
  
  
 diff --git a/drivers/gpu/drm/drm_usb.c b/drivers/gpu/drm/drm_usb.c
-index 471f453..767782a 100644
+index 471f45373e84..767782a96c3a 100644
 --- a/drivers/gpu/drm/drm_usb.c
 +++ b/drivers/gpu/drm/drm_usb.c
 @@ -1,8 +1,7 @@
@@ -4564,7 +4564,7 @@ index 471f453..767782a 100644
 +MODULE_DESCRIPTION("USB DRM support");
 +MODULE_LICENSE("GPL and additional rights");
 diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c
-index 8c03eaf..1495618 100644
+index 8c03eaf41448..149561818349 100644
 --- a/drivers/gpu/drm/drm_vm.c
 +++ b/drivers/gpu/drm/drm_vm.c
 @@ -519,7 +519,6 @@ static int drm_mmap_dma(struct file *filp, struct vm_area_struct *vma)
@@ -4594,7 +4594,7 @@ index 8c03eaf..1495618 100644
  	ret = drm_mmap_locked(filp, vma);
  	mutex_unlock(&dev->struct_mutex);
 diff --git a/drivers/gpu/drm/exynos/Kconfig b/drivers/gpu/drm/exynos/Kconfig
-index 847466a..3343ac4 100644
+index 847466aab435..3343ac437fe5 100644
 --- a/drivers/gpu/drm/exynos/Kconfig
 +++ b/drivers/gpu/drm/exynos/Kconfig
 @@ -1,7 +1,6 @@
@@ -4630,7 +4630,7 @@ index 847466a..3343ac4 100644
 +	help
 +	  Choose this option if you want to use Exynos VIDI for DRM.
 diff --git a/drivers/gpu/drm/exynos/Makefile b/drivers/gpu/drm/exynos/Makefile
-index 0496d3f..9e0bff8 100644
+index 0496d3ff2683..9e0bff8badf9 100644
 --- a/drivers/gpu/drm/exynos/Makefile
 +++ b/drivers/gpu/drm/exynos/Makefile
 @@ -5,7 +5,13 @@
@@ -4652,7 +4652,7 @@ index 0496d3f..9e0bff8 100644
 +obj-$(CONFIG_DRM_EXYNOS)		+= exynosdrm.o
 diff --git a/drivers/gpu/drm/exynos/exynos_ddc.c b/drivers/gpu/drm/exynos/exynos_ddc.c
 new file mode 100644
-index 0000000..7e1051d
+index 000000000000..7e1051d07f1f
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_ddc.c
 @@ -0,0 +1,57 @@
@@ -4714,7 +4714,7 @@ index 0000000..7e1051d
 +	.command		= NULL,
 +};
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_buf.c b/drivers/gpu/drm/exynos/exynos_drm_buf.c
-index 2bb07bc..de8d209 100644
+index 2bb07bca511a..de8d2090bce3 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_buf.c
 +++ b/drivers/gpu/drm/exynos/exynos_drm_buf.c
 @@ -25,45 +25,142 @@
@@ -4942,7 +4942,7 @@ index 2bb07bc..de8d209 100644
 +	lowlevel_buffer_deallocate(dev, flags, buffer);
 +}
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_buf.h b/drivers/gpu/drm/exynos/exynos_drm_buf.h
-index 6e91f9c..3388e4e 100644
+index 6e91f9caa5db..3388e4eb4ba2 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_buf.h
 +++ b/drivers/gpu/drm/exynos/exynos_drm_buf.h
 @@ -26,15 +26,22 @@
@@ -4977,7 +4977,7 @@ index 6e91f9c..3388e4e 100644
  
  #endif
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_connector.c b/drivers/gpu/drm/exynos/exynos_drm_connector.c
-index d620b07..bf791fa 100644
+index d620b0784257..bf791fa0e50d 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_connector.c
 +++ b/drivers/gpu/drm/exynos/exynos_drm_connector.c
 @@ -28,6 +28,7 @@
@@ -5122,7 +5122,7 @@ index d620b07..bf791fa 100644
 -MODULE_DESCRIPTION("Samsung SoC DRM Connector Driver");
 -MODULE_LICENSE("GPL");
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_core.c b/drivers/gpu/drm/exynos/exynos_drm_core.c
-index 661a035..eaf630d 100644
+index 661a03571d0c..eaf630dc5dba 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_core.c
 +++ b/drivers/gpu/drm/exynos/exynos_drm_core.c
 @@ -32,7 +32,6 @@
@@ -5347,7 +5347,7 @@ index 661a035..eaf630d 100644
 +}
 +EXPORT_SYMBOL_GPL(exynos_drm_subdrv_close);
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_crtc.c b/drivers/gpu/drm/exynos/exynos_drm_crtc.c
-index ee43cc2..3486ffe 100644
+index ee43cc220853..3486ffed0bf0 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_crtc.c
 +++ b/drivers/gpu/drm/exynos/exynos_drm_crtc.c
 @@ -34,7 +34,6 @@
@@ -5569,7 +5569,7 @@ index ee43cc2..3486ffe 100644
 -MODULE_DESCRIPTION("Samsung SoC DRM CRTC Driver");
 -MODULE_LICENSE("GPL");
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.c b/drivers/gpu/drm/exynos/exynos_drm_drv.c
-index 53e2216..a6819b5 100644
+index 53e2216de61d..a6819b5f8428 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_drv.c
 +++ b/drivers/gpu/drm/exynos/exynos_drm_drv.c
 @@ -33,16 +33,21 @@
@@ -5821,7 +5821,7 @@ index 53e2216..a6819b5 100644
  
  module_init(exynos_drm_init);
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.h b/drivers/gpu/drm/exynos/exynos_drm_drv.h
-index 5e02e6e..1d81417 100644
+index 5e02e6ecc2e0..1d814175cd49 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_drv.h
 +++ b/drivers/gpu/drm/exynos/exynos_drm_drv.h
 @@ -32,12 +32,17 @@
@@ -6003,7 +6003,7 @@ index 5e02e6e..1d81417 100644
 +extern struct platform_driver vidi_driver;
  #endif
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_encoder.c b/drivers/gpu/drm/exynos/exynos_drm_encoder.c
-index 1530614..6e9ac7b 100644
+index 153061415baf..6e9ac7bd1dcf 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_encoder.c
 +++ b/drivers/gpu/drm/exynos/exynos_drm_encoder.c
 @@ -42,49 +42,68 @@
@@ -6301,7 +6301,7 @@ index 1530614..6e9ac7b 100644
 -MODULE_DESCRIPTION("Samsung SoC DRM Encoder Driver");
 -MODULE_LICENSE("GPL");
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_encoder.h b/drivers/gpu/drm/exynos/exynos_drm_encoder.h
-index a22acfb..eb7d231 100644
+index a22acfbf0e4e..eb7d2316847e 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_encoder.h
 +++ b/drivers/gpu/drm/exynos/exynos_drm_encoder.h
 @@ -30,6 +30,7 @@
@@ -6326,7 +6326,7 @@ index a22acfb..eb7d231 100644
  void exynos_drm_encoder_crtc_disable(struct drm_encoder *encoder, void *data);
  
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_fb.c b/drivers/gpu/drm/exynos/exynos_drm_fb.c
-index 5bf4a1a..c38c8f4 100644
+index 5bf4a1ac7f82..c38c8f468fa3 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_fb.c
 +++ b/drivers/gpu/drm/exynos/exynos_drm_fb.c
 @@ -33,7 +33,6 @@
@@ -6583,7 +6583,7 @@ index 5bf4a1a..c38c8f4 100644
 -MODULE_DESCRIPTION("Samsung SoC DRM FB Driver");
 -MODULE_LICENSE("GPL");
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_fb.h b/drivers/gpu/drm/exynos/exynos_drm_fb.h
-index eb35931..3ecb30d 100644
+index eb35931d302c..3ecb30d93552 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_fb.h
 +++ b/drivers/gpu/drm/exynos/exynos_drm_fb.h
 @@ -28,9 +28,27 @@
@@ -6618,7 +6618,7 @@ index eb35931..3ecb30d 100644
  void exynos_drm_mode_config_init(struct drm_device *dev);
  
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_fbdev.c b/drivers/gpu/drm/exynos/exynos_drm_fbdev.c
-index 836f4100..d5586cc 100644
+index 836f41008187..d5586cc75163 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_fbdev.c
 +++ b/drivers/gpu/drm/exynos/exynos_drm_fbdev.c
 @@ -34,7 +34,6 @@
@@ -6959,7 +6959,7 @@ index 836f4100..d5586cc 100644
 -MODULE_DESCRIPTION("Samsung SoC DRM FBDEV Driver");
 -MODULE_LICENSE("GPL");
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimd.c b/drivers/gpu/drm/exynos/exynos_drm_fimd.c
-index db3b3d9..29fdbfe 100644
+index db3b3d9e731d..29fdbfeb43cb 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_fimd.c
 +++ b/drivers/gpu/drm/exynos/exynos_drm_fimd.c
 @@ -17,6 +17,7 @@
@@ -7620,7 +7620,7 @@ index db3b3d9..29fdbfe 100644
 +	},
 +};
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_gem.c b/drivers/gpu/drm/exynos/exynos_drm_gem.c
-index aba0fe4..1dffa83 100644
+index aba0fe47f7ea..1dffa8359f88 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_gem.c
 +++ b/drivers/gpu/drm/exynos/exynos_drm_gem.c
 @@ -26,6 +26,7 @@
@@ -8378,7 +8378,7 @@ index aba0fe4..1dffa83 100644
 -MODULE_DESCRIPTION("Samsung SoC DRM GEM Module");
 -MODULE_LICENSE("GPL");
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_gem.h b/drivers/gpu/drm/exynos/exynos_drm_gem.h
-index ef87973..4ed8420 100644
+index ef8797334e6d..4ed842039505 100644
 --- a/drivers/gpu/drm/exynos/exynos_drm_gem.h
 +++ b/drivers/gpu/drm/exynos/exynos_drm_gem.h
 @@ -29,6 +29,8 @@
@@ -8526,7 +8526,7 @@ index ef87973..4ed8420 100644
  #endif
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_hdmi.c b/drivers/gpu/drm/exynos/exynos_drm_hdmi.c
 new file mode 100644
-index 0000000..3424463
+index 000000000000..3424463676e0
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_drm_hdmi.c
 @@ -0,0 +1,377 @@
@@ -8909,7 +8909,7 @@ index 0000000..3424463
 +};
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_hdmi.h b/drivers/gpu/drm/exynos/exynos_drm_hdmi.h
 new file mode 100644
-index 0000000..f3ae192
+index 000000000000..f3ae192c8dcf
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_drm_hdmi.h
 @@ -0,0 +1,73 @@
@@ -8988,7 +8988,7 @@ index 0000000..f3ae192
 +#endif
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_plane.c b/drivers/gpu/drm/exynos/exynos_drm_plane.c
 new file mode 100644
-index 0000000..f92fe4c
+index 000000000000..f92fe4c6174a
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_drm_plane.c
 @@ -0,0 +1,171 @@
@@ -9165,7 +9165,7 @@ index 0000000..f92fe4c
 +}
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_plane.h b/drivers/gpu/drm/exynos/exynos_drm_plane.h
 new file mode 100644
-index 0000000..16b71f8
+index 000000000000..16b71f8217e7
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_drm_plane.h
 @@ -0,0 +1,14 @@
@@ -9185,7 +9185,7 @@ index 0000000..16b71f8
 +				struct drm_file *file_priv);
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_vidi.c b/drivers/gpu/drm/exynos/exynos_drm_vidi.c
 new file mode 100644
-index 0000000..7b9c153
+index 000000000000..7b9c153dceb6
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_drm_vidi.c
 @@ -0,0 +1,680 @@
@@ -9871,7 +9871,7 @@ index 0000000..7b9c153
 +};
 diff --git a/drivers/gpu/drm/exynos/exynos_drm_vidi.h b/drivers/gpu/drm/exynos/exynos_drm_vidi.h
 new file mode 100644
-index 0000000..a4babe4
+index 000000000000..a4babe4e65d7
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_drm_vidi.h
 @@ -0,0 +1,36 @@
@@ -9913,7 +9913,7 @@ index 0000000..a4babe4
 +#endif
 diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c
 new file mode 100644
-index 0000000..b003538
+index 000000000000..b00353876458
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
 @@ -0,0 +1,2389 @@
@@ -12308,7 +12308,7 @@ index 0000000..b003538
 +};
 diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.h b/drivers/gpu/drm/exynos/exynos_hdmi.h
 new file mode 100644
-index 0000000..1c3b6d8
+index 000000000000..1c3b6d8f1fe7
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_hdmi.h
 @@ -0,0 +1,37 @@
@@ -12351,7 +12351,7 @@ index 0000000..1c3b6d8
 +#endif
 diff --git a/drivers/gpu/drm/exynos/exynos_hdmiphy.c b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
 new file mode 100644
-index 0000000..9fe2995
+index 000000000000..9fe2995ab9f9
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_hdmiphy.c
 @@ -0,0 +1,58 @@
@@ -12415,7 +12415,7 @@ index 0000000..9fe2995
 +EXPORT_SYMBOL(hdmiphy_driver);
 diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c b/drivers/gpu/drm/exynos/exynos_mixer.c
 new file mode 100644
-index 0000000..e15438c
+index 000000000000..e15438c01129
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/exynos_mixer.c
 @@ -0,0 +1,1112 @@
@@ -13533,7 +13533,7 @@ index 0000000..e15438c
 +};
 diff --git a/drivers/gpu/drm/exynos/regs-hdmi.h b/drivers/gpu/drm/exynos/regs-hdmi.h
 new file mode 100644
-index 0000000..3c04bea
+index 000000000000..3c04bea842ce
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/regs-hdmi.h
 @@ -0,0 +1,561 @@
@@ -14100,7 +14100,7 @@ index 0000000..3c04bea
 +#endif /* SAMSUNG_REGS_HDMI_H */
 diff --git a/drivers/gpu/drm/exynos/regs-mixer.h b/drivers/gpu/drm/exynos/regs-mixer.h
 new file mode 100644
-index 0000000..fd2f4d1
+index 000000000000..fd2f4d14cf6d
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/regs-mixer.h
 @@ -0,0 +1,141 @@
@@ -14247,7 +14247,7 @@ index 0000000..fd2f4d1
 +
 diff --git a/drivers/gpu/drm/exynos/regs-vp.h b/drivers/gpu/drm/exynos/regs-vp.h
 new file mode 100644
-index 0000000..10b737a
+index 000000000000..10b737af0a72
 --- /dev/null
 +++ b/drivers/gpu/drm/exynos/regs-vp.h
 @@ -0,0 +1,91 @@
@@ -14344,7 +14344,7 @@ index 0000000..10b737a
 +#endif /* SAMSUNG_REGS_VP_H */
 diff --git a/drivers/gpu/drm/gma500/Kconfig b/drivers/gpu/drm/gma500/Kconfig
 new file mode 100644
-index 0000000..42e665c
+index 000000000000..42e665c7e90a
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/Kconfig
 @@ -0,0 +1,33 @@
@@ -14383,7 +14383,7 @@ index 0000000..42e665c
 +
 diff --git a/drivers/gpu/drm/gma500/Makefile b/drivers/gpu/drm/gma500/Makefile
 new file mode 100644
-index 0000000..1583982
+index 000000000000..1583982917ce
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/Makefile
 @@ -0,0 +1,50 @@
@@ -14439,7 +14439,7 @@ index 0000000..1583982
 +obj-$(CONFIG_DRM_GMA500) += gma500_gfx.o
 diff --git a/drivers/gpu/drm/gma500/accel_2d.c b/drivers/gpu/drm/gma500/accel_2d.c
 new file mode 100644
-index 0000000..d5ef1a5
+index 000000000000..d5ef1a5793c8
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/accel_2d.c
 @@ -0,0 +1,364 @@
@@ -14809,7 +14809,7 @@ index 0000000..d5ef1a5
 +}
 diff --git a/drivers/gpu/drm/gma500/backlight.c b/drivers/gpu/drm/gma500/backlight.c
 new file mode 100644
-index 0000000..2079395
+index 000000000000..20793951fcac
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/backlight.c
 @@ -0,0 +1,49 @@
@@ -14864,7 +14864,7 @@ index 0000000..2079395
 +}
 diff --git a/drivers/gpu/drm/gma500/cdv_device.c b/drivers/gpu/drm/gma500/cdv_device.c
 new file mode 100644
-index 0000000..a54cc73
+index 000000000000..a54cc738926a
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/cdv_device.c
 @@ -0,0 +1,484 @@
@@ -15354,7 +15354,7 @@ index 0000000..a54cc73
 +};
 diff --git a/drivers/gpu/drm/gma500/cdv_device.h b/drivers/gpu/drm/gma500/cdv_device.h
 new file mode 100644
-index 0000000..9561e17
+index 000000000000..9561e17621b3
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/cdv_device.h
 @@ -0,0 +1,36 @@
@@ -15396,7 +15396,7 @@ index 0000000..9561e17
 +
 diff --git a/drivers/gpu/drm/gma500/cdv_intel_crt.c b/drivers/gpu/drm/gma500/cdv_intel_crt.c
 new file mode 100644
-index 0000000..a71a6cd
+index 000000000000..a71a6cd95bdd
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/cdv_intel_crt.c
 @@ -0,0 +1,340 @@
@@ -15742,7 +15742,7 @@ index 0000000..a71a6cd
 +}
 diff --git a/drivers/gpu/drm/gma500/cdv_intel_display.c b/drivers/gpu/drm/gma500/cdv_intel_display.c
 new file mode 100644
-index 0000000..1ee297b
+index 000000000000..1ee297bb7570
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/cdv_intel_display.c
 @@ -0,0 +1,1473 @@
@@ -17221,7 +17221,7 @@ index 0000000..1ee297b
 +};
 diff --git a/drivers/gpu/drm/gma500/cdv_intel_hdmi.c b/drivers/gpu/drm/gma500/cdv_intel_hdmi.c
 new file mode 100644
-index 0000000..8d52695
+index 000000000000..8d5269555005
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/cdv_intel_hdmi.c
 @@ -0,0 +1,393 @@
@@ -17620,7 +17620,7 @@ index 0000000..8d52695
 +}
 diff --git a/drivers/gpu/drm/gma500/cdv_intel_lvds.c b/drivers/gpu/drm/gma500/cdv_intel_lvds.c
 new file mode 100644
-index 0000000..8359c1a
+index 000000000000..8359c1a3f45f
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/cdv_intel_lvds.c
 @@ -0,0 +1,734 @@
@@ -18360,7 +18360,7 @@ index 0000000..8359c1a
 +}
 diff --git a/drivers/gpu/drm/gma500/framebuffer.c b/drivers/gpu/drm/gma500/framebuffer.c
 new file mode 100644
-index 0000000..fa74a86
+index 000000000000..fa74a865496a
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/framebuffer.c
 @@ -0,0 +1,800 @@
@@ -19166,7 +19166,7 @@ index 0000000..fa74a86
 +}
 diff --git a/drivers/gpu/drm/gma500/framebuffer.h b/drivers/gpu/drm/gma500/framebuffer.h
 new file mode 100644
-index 0000000..989558a
+index 000000000000..989558a9e6ee
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/framebuffer.h
 @@ -0,0 +1,47 @@
@@ -19219,7 +19219,7 @@ index 0000000..989558a
 +
 diff --git a/drivers/gpu/drm/gma500/gem.c b/drivers/gpu/drm/gma500/gem.c
 new file mode 100644
-index 0000000..9fbb868
+index 000000000000..9fbb86868e2e
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/gem.c
 @@ -0,0 +1,292 @@
@@ -19517,7 +19517,7 @@ index 0000000..9fbb868
 +
 diff --git a/drivers/gpu/drm/gma500/gem_glue.c b/drivers/gpu/drm/gma500/gem_glue.c
 new file mode 100644
-index 0000000..3c17634
+index 000000000000..3c17634f6061
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/gem_glue.c
 @@ -0,0 +1,90 @@
@@ -19613,7 +19613,7 @@ index 0000000..3c17634
 +}
 diff --git a/drivers/gpu/drm/gma500/gem_glue.h b/drivers/gpu/drm/gma500/gem_glue.h
 new file mode 100644
-index 0000000..ce5ce30
+index 000000000000..ce5ce30f74db
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/gem_glue.h
 @@ -0,0 +1,2 @@
@@ -19621,7 +19621,7 @@ index 0000000..ce5ce30
 +extern int gem_create_mmap_offset(struct drm_gem_object *obj);
 diff --git a/drivers/gpu/drm/gma500/gtt.c b/drivers/gpu/drm/gma500/gtt.c
 new file mode 100644
-index 0000000..c6465b4
+index 000000000000..c6465b40090f
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/gtt.c
 @@ -0,0 +1,551 @@
@@ -20178,7 +20178,7 @@ index 0000000..c6465b4
 +}
 diff --git a/drivers/gpu/drm/gma500/gtt.h b/drivers/gpu/drm/gma500/gtt.h
 new file mode 100644
-index 0000000..aa17423
+index 000000000000..aa1742387f5a
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/gtt.h
 @@ -0,0 +1,64 @@
@@ -20248,7 +20248,7 @@ index 0000000..aa17423
 +#endif
 diff --git a/drivers/gpu/drm/gma500/intel_bios.c b/drivers/gpu/drm/gma500/intel_bios.c
 new file mode 100644
-index 0000000..d4d0c5b
+index 000000000000..d4d0c5b8bf91
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/intel_bios.c
 @@ -0,0 +1,303 @@
@@ -20557,7 +20557,7 @@ index 0000000..d4d0c5b
 +}
 diff --git a/drivers/gpu/drm/gma500/intel_bios.h b/drivers/gpu/drm/gma500/intel_bios.h
 new file mode 100644
-index 0000000..70f1bf0
+index 000000000000..70f1bf018183
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/intel_bios.h
 @@ -0,0 +1,430 @@
@@ -20993,7 +20993,7 @@ index 0000000..70f1bf0
 +#endif /* _I830_BIOS_H_ */
 diff --git a/drivers/gpu/drm/gma500/intel_gmbus.c b/drivers/gpu/drm/gma500/intel_gmbus.c
 new file mode 100644
-index 0000000..9db9052
+index 000000000000..9db90527bf0f
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/intel_gmbus.c
 @@ -0,0 +1,493 @@
@@ -21492,7 +21492,7 @@ index 0000000..9db9052
 +}
 diff --git a/drivers/gpu/drm/gma500/intel_i2c.c b/drivers/gpu/drm/gma500/intel_i2c.c
 new file mode 100644
-index 0000000..98a28c2
+index 000000000000..98a28c209555
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/intel_i2c.c
 @@ -0,0 +1,169 @@
@@ -21667,7 +21667,7 @@ index 0000000..98a28c2
 +}
 diff --git a/drivers/gpu/drm/gma500/intel_opregion.c b/drivers/gpu/drm/gma500/intel_opregion.c
 new file mode 100644
-index 0000000..d946bc1
+index 000000000000..d946bc1b17bf
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/intel_opregion.c
 @@ -0,0 +1,81 @@
@@ -21754,7 +21754,7 @@ index 0000000..d946bc1
 +}
 diff --git a/drivers/gpu/drm/gma500/mdfld_device.c b/drivers/gpu/drm/gma500/mdfld_device.c
 new file mode 100644
-index 0000000..af65678
+index 000000000000..af656787db0f
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_device.c
 @@ -0,0 +1,691 @@
@@ -22451,7 +22451,7 @@ index 0000000..af65678
 +};
 diff --git a/drivers/gpu/drm/gma500/mdfld_dsi_dpi.c b/drivers/gpu/drm/gma500/mdfld_dsi_dpi.c
 new file mode 100644
-index 0000000..d52358b
+index 000000000000..d52358b744a0
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_dsi_dpi.c
 @@ -0,0 +1,1017 @@
@@ -23474,7 +23474,7 @@ index 0000000..d52358b
 +}
 diff --git a/drivers/gpu/drm/gma500/mdfld_dsi_dpi.h b/drivers/gpu/drm/gma500/mdfld_dsi_dpi.h
 new file mode 100644
-index 0000000..6f76247
+index 000000000000..6f762478b959
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_dsi_dpi.h
 @@ -0,0 +1,79 @@
@@ -23559,7 +23559,7 @@ index 0000000..6f76247
 +#endif /*__MDFLD_DSI_DPI_H__*/
 diff --git a/drivers/gpu/drm/gma500/mdfld_dsi_output.c b/drivers/gpu/drm/gma500/mdfld_dsi_output.c
 new file mode 100644
-index 0000000..5675d93
+index 000000000000..5675d93b4205
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_dsi_output.c
 @@ -0,0 +1,621 @@
@@ -24186,7 +24186,7 @@ index 0000000..5675d93
 +}
 diff --git a/drivers/gpu/drm/gma500/mdfld_dsi_output.h b/drivers/gpu/drm/gma500/mdfld_dsi_output.h
 new file mode 100644
-index 0000000..36eb074
+index 000000000000..36eb0744841c
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_dsi_output.h
 @@ -0,0 +1,377 @@
@@ -24569,7 +24569,7 @@ index 0000000..36eb074
 +#endif /*__MDFLD_DSI_OUTPUT_H__*/
 diff --git a/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c b/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
 new file mode 100644
-index 0000000..baa0e14
+index 000000000000..baa0e14165e0
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
 @@ -0,0 +1,694 @@
@@ -25269,7 +25269,7 @@ index 0000000..baa0e14
 +
 diff --git a/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.h b/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.h
 new file mode 100644
-index 0000000..459cd7e
+index 000000000000..459cd7ea8b81
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.h
 @@ -0,0 +1,92 @@
@@ -25367,7 +25367,7 @@ index 0000000..459cd7e
 +#endif
 diff --git a/drivers/gpu/drm/gma500/mdfld_intel_display.c b/drivers/gpu/drm/gma500/mdfld_intel_display.c
 new file mode 100644
-index 0000000..a35a292
+index 000000000000..a35a2921bdf7
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_intel_display.c
 @@ -0,0 +1,1180 @@
@@ -26553,7 +26553,7 @@ index 0000000..a35a292
 +
 diff --git a/drivers/gpu/drm/gma500/mdfld_output.c b/drivers/gpu/drm/gma500/mdfld_output.c
 new file mode 100644
-index 0000000..c95966b
+index 000000000000..c95966bb0c96
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_output.c
 @@ -0,0 +1,74 @@
@@ -26633,7 +26633,7 @@ index 0000000..c95966b
 +
 diff --git a/drivers/gpu/drm/gma500/mdfld_output.h b/drivers/gpu/drm/gma500/mdfld_output.h
 new file mode 100644
-index 0000000..ab2b27c
+index 000000000000..ab2b27c0f037
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_output.h
 @@ -0,0 +1,77 @@
@@ -26716,7 +26716,7 @@ index 0000000..ab2b27c
 +#endif
 diff --git a/drivers/gpu/drm/gma500/mdfld_tmd_vid.c b/drivers/gpu/drm/gma500/mdfld_tmd_vid.c
 new file mode 100644
-index 0000000..dc0c6c3
+index 000000000000..dc0c6c3d3d29
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_tmd_vid.c
 @@ -0,0 +1,201 @@
@@ -26923,7 +26923,7 @@ index 0000000..dc0c6c3
 +};
 diff --git a/drivers/gpu/drm/gma500/mdfld_tpo_vid.c b/drivers/gpu/drm/gma500/mdfld_tpo_vid.c
 new file mode 100644
-index 0000000..d8d4170
+index 000000000000..d8d4170725b2
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mdfld_tpo_vid.c
 @@ -0,0 +1,124 @@
@@ -27053,7 +27053,7 @@ index 0000000..d8d4170
 +};
 diff --git a/drivers/gpu/drm/gma500/mid_bios.c b/drivers/gpu/drm/gma500/mid_bios.c
 new file mode 100644
-index 0000000..5eee9ad
+index 000000000000..5eee9ad80da4
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mid_bios.c
 @@ -0,0 +1,263 @@
@@ -27322,7 +27322,7 @@ index 0000000..5eee9ad
 +}
 diff --git a/drivers/gpu/drm/gma500/mid_bios.h b/drivers/gpu/drm/gma500/mid_bios.h
 new file mode 100644
-index 0000000..00e7d56
+index 000000000000..00e7d564b7eb
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mid_bios.h
 @@ -0,0 +1,21 @@
@@ -27349,7 +27349,7 @@ index 0000000..00e7d56
 +
 diff --git a/drivers/gpu/drm/gma500/mmu.c b/drivers/gpu/drm/gma500/mmu.c
 new file mode 100644
-index 0000000..49bac41
+index 000000000000..49bac41beefb
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/mmu.c
 @@ -0,0 +1,849 @@
@@ -28204,7 +28204,7 @@ index 0000000..49bac41
 +}
 diff --git a/drivers/gpu/drm/gma500/oaktrail.h b/drivers/gpu/drm/gma500/oaktrail.h
 new file mode 100644
-index 0000000..2da1f36
+index 000000000000..2da1f368f14e
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/oaktrail.h
 @@ -0,0 +1,252 @@
@@ -28462,7 +28462,7 @@ index 0000000..2da1f36
 +extern void oaktrail_hdmi_init(struct drm_device *dev, struct psb_intel_mode_device *mode_dev);
 diff --git a/drivers/gpu/drm/gma500/oaktrail_crtc.c b/drivers/gpu/drm/gma500/oaktrail_crtc.c
 new file mode 100644
-index 0000000..a39b0d0
+index 000000000000..a39b0d0d680f
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/oaktrail_crtc.c
 @@ -0,0 +1,592 @@
@@ -29060,7 +29060,7 @@ index 0000000..a39b0d0
 +
 diff --git a/drivers/gpu/drm/gma500/oaktrail_device.c b/drivers/gpu/drm/gma500/oaktrail_device.c
 new file mode 100644
-index 0000000..41d1924
+index 000000000000..41d1924ea31e
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/oaktrail_device.c
 @@ -0,0 +1,509 @@
@@ -29575,7 +29575,7 @@ index 0000000..41d1924
 +};
 diff --git a/drivers/gpu/drm/gma500/oaktrail_hdmi.c b/drivers/gpu/drm/gma500/oaktrail_hdmi.c
 new file mode 100644
-index 0000000..f8b367b
+index 000000000000..f8b367b45f66
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/oaktrail_hdmi.c
 @@ -0,0 +1,540 @@
@@ -30121,7 +30121,7 @@ index 0000000..f8b367b
 +}
 diff --git a/drivers/gpu/drm/gma500/oaktrail_hdmi_i2c.c b/drivers/gpu/drm/gma500/oaktrail_hdmi_i2c.c
 new file mode 100644
-index 0000000..5e84fbd
+index 000000000000..5e84fbde749b
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/oaktrail_hdmi_i2c.c
 @@ -0,0 +1,328 @@
@@ -30455,7 +30455,7 @@ index 0000000..5e84fbd
 +}
 diff --git a/drivers/gpu/drm/gma500/oaktrail_lvds.c b/drivers/gpu/drm/gma500/oaktrail_lvds.c
 new file mode 100644
-index 0000000..654f32b
+index 000000000000..654f32b22b21
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/oaktrail_lvds.c
 @@ -0,0 +1,448 @@
@@ -30909,7 +30909,7 @@ index 0000000..654f32b
 +
 diff --git a/drivers/gpu/drm/gma500/power.c b/drivers/gpu/drm/gma500/power.c
 new file mode 100644
-index 0000000..889b854
+index 000000000000..889b854751da
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/power.c
 @@ -0,0 +1,315 @@
@@ -31230,7 +31230,7 @@ index 0000000..889b854
 +}
 diff --git a/drivers/gpu/drm/gma500/power.h b/drivers/gpu/drm/gma500/power.h
 new file mode 100644
-index 0000000..1969d2e
+index 000000000000..1969d2ecb328
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/power.h
 @@ -0,0 +1,67 @@
@@ -31303,7 +31303,7 @@ index 0000000..1969d2e
 +#endif /*_PSB_POWERMGMT_H_*/
 diff --git a/drivers/gpu/drm/gma500/psb_device.c b/drivers/gpu/drm/gma500/psb_device.c
 new file mode 100644
-index 0000000..328a193
+index 000000000000..328a19309f01
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_device.c
 @@ -0,0 +1,332 @@
@@ -31641,7 +31641,7 @@ index 0000000..328a193
 +
 diff --git a/drivers/gpu/drm/gma500/psb_drv.c b/drivers/gpu/drm/gma500/psb_drv.c
 new file mode 100644
-index 0000000..09af2ff
+index 000000000000..09af2ffbb307
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_drv.c
 @@ -0,0 +1,706 @@
@@ -32353,7 +32353,7 @@ index 0000000..09af2ff
 +MODULE_LICENSE("GPL");
 diff --git a/drivers/gpu/drm/gma500/psb_drv.h b/drivers/gpu/drm/gma500/psb_drv.h
 new file mode 100644
-index 0000000..40ce2c9
+index 000000000000..40ce2c9bc2e4
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_drv.h
 @@ -0,0 +1,993 @@
@@ -33352,7 +33352,7 @@ index 0000000..40ce2c9
 +#endif
 diff --git a/drivers/gpu/drm/gma500/psb_intel_display.c b/drivers/gpu/drm/gma500/psb_intel_display.c
 new file mode 100644
-index 0000000..454a9d8
+index 000000000000..454a9d87abc2
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_intel_display.c
 @@ -0,0 +1,1450 @@
@@ -34808,7 +34808,7 @@ index 0000000..454a9d8
 +}
 diff --git a/drivers/gpu/drm/gma500/psb_intel_display.h b/drivers/gpu/drm/gma500/psb_intel_display.h
 new file mode 100644
-index 0000000..535b49a
+index 000000000000..535b49a5e409
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_intel_display.h
 @@ -0,0 +1,28 @@
@@ -34842,7 +34842,7 @@ index 0000000..535b49a
 +#endif
 diff --git a/drivers/gpu/drm/gma500/psb_intel_drv.h b/drivers/gpu/drm/gma500/psb_intel_drv.h
 new file mode 100644
-index 0000000..f40535e
+index 000000000000..f40535e56689
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_intel_drv.h
 @@ -0,0 +1,289 @@
@@ -35137,7 +35137,7 @@ index 0000000..f40535e
 +#endif				/* __INTEL_DRV_H__ */
 diff --git a/drivers/gpu/drm/gma500/psb_intel_lvds.c b/drivers/gpu/drm/gma500/psb_intel_lvds.c
 new file mode 100644
-index 0000000..c83f5b5
+index 000000000000..c83f5b5d1057
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_intel_lvds.c
 @@ -0,0 +1,867 @@
@@ -36010,7 +36010,7 @@ index 0000000..c83f5b5
 +
 diff --git a/drivers/gpu/drm/gma500/psb_intel_modes.c b/drivers/gpu/drm/gma500/psb_intel_modes.c
 new file mode 100644
-index 0000000..4fca0d6
+index 000000000000..4fca0d6feebe
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_intel_modes.c
 @@ -0,0 +1,75 @@
@@ -36091,7 +36091,7 @@ index 0000000..4fca0d6
 +}
 diff --git a/drivers/gpu/drm/gma500/psb_intel_reg.h b/drivers/gpu/drm/gma500/psb_intel_reg.h
 new file mode 100644
-index 0000000..e89d3a2
+index 000000000000..e89d3a2e8fdc
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_intel_reg.h
 @@ -0,0 +1,1318 @@
@@ -37415,7 +37415,7 @@ index 0000000..e89d3a2
 +#endif
 diff --git a/drivers/gpu/drm/gma500/psb_intel_sdvo.c b/drivers/gpu/drm/gma500/psb_intel_sdvo.c
 new file mode 100644
-index 0000000..36330ca
+index 000000000000..36330cabcea2
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_intel_sdvo.c
 @@ -0,0 +1,2607 @@
@@ -40028,7 +40028,7 @@ index 0000000..36330ca
 +}
 diff --git a/drivers/gpu/drm/gma500/psb_intel_sdvo_regs.h b/drivers/gpu/drm/gma500/psb_intel_sdvo_regs.h
 new file mode 100644
-index 0000000..600e797
+index 000000000000..600e79744d68
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_intel_sdvo_regs.h
 @@ -0,0 +1,723 @@
@@ -40757,7 +40757,7 @@ index 0000000..600e797
 +} __attribute__ ((packed));
 diff --git a/drivers/gpu/drm/gma500/psb_irq.c b/drivers/gpu/drm/gma500/psb_irq.c
 new file mode 100644
-index 0000000..1869586
+index 000000000000..1869586457b1
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_irq.c
 @@ -0,0 +1,622 @@
@@ -41385,7 +41385,7 @@ index 0000000..1869586
 +
 diff --git a/drivers/gpu/drm/gma500/psb_irq.h b/drivers/gpu/drm/gma500/psb_irq.h
 new file mode 100644
-index 0000000..603045b
+index 000000000000..603045bee58a
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_irq.h
 @@ -0,0 +1,47 @@
@@ -41438,7 +41438,7 @@ index 0000000..603045b
 +#endif /* _SYSIRQ_H_ */
 diff --git a/drivers/gpu/drm/gma500/psb_lid.c b/drivers/gpu/drm/gma500/psb_lid.c
 new file mode 100644
-index 0000000..b867aabe
+index 000000000000..b867aabe6bf3
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_lid.c
 @@ -0,0 +1,88 @@
@@ -41532,7 +41532,7 @@ index 0000000..b867aabe
 +
 diff --git a/drivers/gpu/drm/gma500/psb_reg.h b/drivers/gpu/drm/gma500/psb_reg.h
 new file mode 100644
-index 0000000..b81c7c1
+index 000000000000..b81c7c1e9c2d
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/psb_reg.h
 @@ -0,0 +1,582 @@
@@ -42120,7 +42120,7 @@ index 0000000..b81c7c1
 +#endif
 diff --git a/drivers/gpu/drm/gma500/tc35876x-dsi-lvds.c b/drivers/gpu/drm/gma500/tc35876x-dsi-lvds.c
 new file mode 100644
-index 0000000..4a07ab5
+index 000000000000..4a07ab596174
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/tc35876x-dsi-lvds.c
 @@ -0,0 +1,829 @@
@@ -42955,7 +42955,7 @@ index 0000000..4a07ab5
 +}
 diff --git a/drivers/gpu/drm/gma500/tc35876x-dsi-lvds.h b/drivers/gpu/drm/gma500/tc35876x-dsi-lvds.h
 new file mode 100644
-index 0000000..b14b7f9
+index 000000000000..b14b7f9e7d1e
 --- /dev/null
 +++ b/drivers/gpu/drm/gma500/tc35876x-dsi-lvds.h
 @@ -0,0 +1,38 @@
@@ -42998,7 +42998,7 @@ index 0000000..b14b7f9
 +
 +#endif /*__MDFLD_DSI_LVDS_BRIDGE_H__*/
 diff --git a/drivers/gpu/drm/i2c/ch7006_drv.c b/drivers/gpu/drm/i2c/ch7006_drv.c
-index 07d55df..d3f2e87 100644
+index 07d55df6623e..d3f2e8785010 100644
 --- a/drivers/gpu/drm/i2c/ch7006_drv.c
 +++ b/drivers/gpu/drm/i2c/ch7006_drv.c
 @@ -252,10 +252,7 @@ static int ch7006_encoder_create_resources(struct drm_encoder *encoder,
@@ -43014,7 +43014,7 @@ index 07d55df..d3f2e87 100644
  	drm_connector_attach_property(connector, conf->tv_select_subconnector_property,
  				      priv->select_subconnector);
 diff --git a/drivers/gpu/drm/i810/i810_dma.c b/drivers/gpu/drm/i810/i810_dma.c
-index 8f371e8..f920fb5 100644
+index 8f371e8d630f..f920fb5e42b6 100644
 --- a/drivers/gpu/drm/i810/i810_dma.c
 +++ b/drivers/gpu/drm/i810/i810_dma.c
 @@ -99,7 +99,6 @@ static int i810_mmap_buffers(struct file *filp, struct vm_area_struct *vma)
@@ -43065,7 +43065,7 @@ index 8f371e8..f920fb5 100644
  }
  
 diff --git a/drivers/gpu/drm/i810/i810_drv.c b/drivers/gpu/drm/i810/i810_drv.c
-index d4266bd..ec12f7d 100644
+index d4266bdf6fb4..ec12f7dc717a 100644
 --- a/drivers/gpu/drm/i810/i810_drv.c
 +++ b/drivers/gpu/drm/i810/i810_drv.c
 @@ -43,6 +43,17 @@ static struct pci_device_id pciidlist[] = {
@@ -43106,7 +43106,7 @@ index d4266bd..ec12f7d 100644
  	.desc = DRIVER_DESC,
  	.date = DRIVER_DATE,
 diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
-index 0ae6a7c..ce7fc77 100644
+index 0ae6a7c5020f..ce7fc77678b4 100644
 --- a/drivers/gpu/drm/i915/Makefile
 +++ b/drivers/gpu/drm/i915/Makefile
 @@ -3,7 +3,7 @@
@@ -43127,7 +43127,7 @@ index 0ae6a7c..ce7fc77 100644
  	  dvo_ch7xxx.o \
  	  dvo_ch7017.o \
 diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
-index 9b4e5c6..39f8111 100644
+index 9b4e5c6d1cfb..39f81115fcf1 100644
 --- a/drivers/gpu/drm/i915/i915_debugfs.c
 +++ b/drivers/gpu/drm/i915/i915_debugfs.c
 @@ -84,6 +84,7 @@ static int i915_capabilities(struct seq_file *m, void *data)
@@ -43773,7 +43773,7 @@ index 9b4e5c6..39f8111 100644
  		return ret;
  
 diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
-index ca67338..38c0a47 100644
+index ca67338e5533..38c0a4720cc8 100644
 --- a/drivers/gpu/drm/i915/i915_dma.c
 +++ b/drivers/gpu/drm/i915/i915_dma.c
 @@ -781,6 +781,12 @@ static int i915_getparam(struct drm_device *dev, void *data,
@@ -43975,7 +43975,7 @@ index ca67338..38c0a47 100644
  
  int i915_max_ioctl = DRM_ARRAY_SIZE(i915_ioctls);
 diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
-index 452bc51..89f3d4a 100644
+index 452bc512e6a7..89f3d4aed664 100644
 --- a/drivers/gpu/drm/i915/i915_drv.c
 +++ b/drivers/gpu/drm/i915/i915_drv.c
 @@ -66,7 +66,11 @@ MODULE_PARM_DESC(semaphores,
@@ -44281,7 +44281,7 @@ index 452bc51..89f3d4a 100644
  __i915_write(8, b)
  __i915_write(16, w)
 diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 61274bf..a8f00d0 100644
+index 61274bf52e5a..a8f00d06a46f 100644
 --- a/drivers/gpu/drm/i915/i915_drv.h
 +++ b/drivers/gpu/drm/i915/i915_drv.h
 @@ -35,6 +35,7 @@
@@ -44644,7 +44644,7 @@ index 61274bf..a8f00d0 100644
  #define __i915_read(x, y) \
  	u##x i915_read##x(struct drm_i915_private *dev_priv, u32 reg);
 diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
-index 315a49e..b1f1d10 100644
+index 315a49e4323f..b1f1d105e8c7 100644
 --- a/drivers/gpu/drm/i915/i915_gem.c
 +++ b/drivers/gpu/drm/i915/i915_gem.c
 @@ -58,6 +58,7 @@ static void i915_gem_free_object_tail(struct drm_i915_gem_object *obj);
@@ -45552,7 +45552,7 @@ index 315a49e..b1f1d10 100644
  	}
  	mutex_unlock(&dev->struct_mutex);
 diff --git a/drivers/gpu/drm/i915/i915_gem_evict.c b/drivers/gpu/drm/i915/i915_gem_evict.c
-index ead5d00..21a8271 100644
+index ead5d00f91b0..21a82710f4b2 100644
 --- a/drivers/gpu/drm/i915/i915_gem_evict.c
 +++ b/drivers/gpu/drm/i915/i915_gem_evict.c
 @@ -36,7 +36,6 @@ static bool
@@ -45615,7 +45615,7 @@ index ead5d00..21a8271 100644
  		return ret;
  
 diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-index 9b9f447..e97ed61 100644
+index 9b9f447b571a..e97ed611d8c0 100644
 --- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
 +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
 @@ -203,9 +203,9 @@ i915_gem_object_set_to_gpu_domain(struct drm_i915_gem_object *obj,
@@ -45984,7 +45984,7 @@ index 9b9f447..e97ed61 100644
  	}
  
 diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
-index 6042c5e..99a7855 100644
+index 6042c5e6d278..99a7855a69eb 100644
 --- a/drivers/gpu/drm/i915/i915_gem_gtt.c
 +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
 @@ -29,6 +29,270 @@
@@ -46268,7 +46268,7 @@ index 6042c5e..99a7855 100644
  			/* Wait a bit, in hopes it avoids the hang */
  			udelay(10);
 diff --git a/drivers/gpu/drm/i915/i915_gem_tiling.c b/drivers/gpu/drm/i915/i915_gem_tiling.c
-index 861223b..1a93066 100644
+index 861223bf3944..1a9306665987 100644
 --- a/drivers/gpu/drm/i915/i915_gem_tiling.c
 +++ b/drivers/gpu/drm/i915/i915_gem_tiling.c
 @@ -93,8 +93,23 @@ i915_gem_detect_bit_6_swizzle(struct drm_device *dev)
@@ -46298,7 +46298,7 @@ index 861223b..1a93066 100644
  		/* On Ironlake whatever DRAM config, GPU always do
  		 * same swizzling setup.
 diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 93e74fbd..fc6f32a 100644
+index 93e74fbd3d33..fc6f32a579be 100644
 --- a/drivers/gpu/drm/i915/i915_irq.c
 +++ b/drivers/gpu/drm/i915/i915_irq.c
 @@ -716,7 +716,6 @@ i915_error_object_create(struct drm_i915_private *dev_priv,
@@ -46617,7 +46617,7 @@ index 93e74fbd..fc6f32a 100644
  
 diff --git a/drivers/gpu/drm/i915/i915_mem.c b/drivers/gpu/drm/i915/i915_mem.c
 deleted file mode 100644
-index cc8f6d4..0000000
+index cc8f6d49cf20..000000000000
 --- a/drivers/gpu/drm/i915/i915_mem.c
 +++ /dev/null
 @@ -1,387 +0,0 @@
@@ -47009,7 +47009,7 @@ index cc8f6d4..0000000
 -	return 0;
 -}
 diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index ddb22e7..6884d01 100644
+index ddb22e7c8347..6884d01cf1c7 100644
 --- a/drivers/gpu/drm/i915/i915_reg.h
 +++ b/drivers/gpu/drm/i915/i915_reg.h
 @@ -37,7 +37,6 @@
@@ -47508,7 +47508,7 @@ index ddb22e7..6884d01 100644
  
  #endif /* _I915_REG_H_ */
 diff --git a/drivers/gpu/drm/i915/i915_suspend.c b/drivers/gpu/drm/i915/i915_suspend.c
-index f38d196..0d13778 100644
+index f38d196dda2d..0d13778a5aaa 100644
 --- a/drivers/gpu/drm/i915/i915_suspend.c
 +++ b/drivers/gpu/drm/i915/i915_suspend.c
 @@ -28,6 +28,7 @@
@@ -47529,7 +47529,7 @@ index f38d196..0d13778 100644
  		dpll_reg = (pipe == PIPE_A) ? _DPLL_A : _DPLL_B;
  
 diff --git a/drivers/gpu/drm/i915/intel_acpi.c b/drivers/gpu/drm/i915/intel_acpi.c
-index cb91210..bae3edf 100644
+index cb912106d1a2..bae3edf956a4 100644
 --- a/drivers/gpu/drm/i915/intel_acpi.c
 +++ b/drivers/gpu/drm/i915/intel_acpi.c
 @@ -208,7 +208,7 @@ static bool intel_dsm_pci_probe(struct pci_dev *pdev)
@@ -47542,7 +47542,7 @@ index cb91210..bae3edf 100644
  	}
  
 diff --git a/drivers/gpu/drm/i915/intel_bios.c b/drivers/gpu/drm/i915/intel_bios.c
-index 96d5cfc..d9e359a 100644
+index 96d5cfcf07b7..d9e359abc419 100644
 --- a/drivers/gpu/drm/i915/intel_bios.c
 +++ b/drivers/gpu/drm/i915/intel_bios.c
 @@ -605,7 +605,7 @@ parse_device_mapping(struct drm_i915_private *dev_priv,
@@ -47564,7 +47564,7 @@ index 96d5cfc..d9e359a 100644
  			return -1;
  		}
 diff --git a/drivers/gpu/drm/i915/intel_bios.h b/drivers/gpu/drm/i915/intel_bios.h
-index 8af3735..dbda6e3 100644
+index 8af3735e27c6..dbda6e3bdf07 100644
 --- a/drivers/gpu/drm/i915/intel_bios.h
 +++ b/drivers/gpu/drm/i915/intel_bios.h
 @@ -467,8 +467,12 @@ struct edp_link_params {
@@ -47582,7 +47582,7 @@ index 8af3735..dbda6e3 100644
  
  void intel_setup_bios(struct drm_device *dev);
 diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c
-index fee0ad0..b4f71c2 100644
+index fee0ad02c6d0..b4f71c22e07d 100644
 --- a/drivers/gpu/drm/i915/intel_crt.c
 +++ b/drivers/gpu/drm/i915/intel_crt.c
 @@ -24,6 +24,7 @@
@@ -47756,7 +47756,7 @@ index fee0ad0..b4f71c2 100644
  
  	drm_encoder_helper_add(&crt->base.base, &intel_crt_helper_funcs);
 diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 27999d9..c975c99 100644
+index 27999d990da8..c975c996ff5f 100644
 --- a/drivers/gpu/drm/i915/intel_display.c
 +++ b/drivers/gpu/drm/i915/intel_display.c
 @@ -76,7 +76,7 @@ struct intel_limit {
@@ -49404,7 +49404,7 @@ index 27999d9..c975c99 100644
  }
  
 diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
-index ca75076..9a3ecd6 100644
+index ca7507616db9..9a3ecd61de7c 100644
 --- a/drivers/gpu/drm/i915/intel_dp.c
 +++ b/drivers/gpu/drm/i915/intel_dp.c
 @@ -49,7 +49,7 @@ struct intel_dp {
@@ -49526,7 +49526,7 @@ index ca75076..9a3ecd6 100644
  		if (has_audio == intel_dp->has_audio)
  			return 0;
 diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index 5212284..018dfbd 100644
+index 5212284f18d6..018dfbd776d9 100644
 --- a/drivers/gpu/drm/i915/intel_drv.h
 +++ b/drivers/gpu/drm/i915/intel_drv.h
 @@ -26,6 +26,7 @@
@@ -49661,7 +49661,7 @@ index 5212284..018dfbd 100644
 +
  #endif /* __INTEL_DRV_H__ */
 diff --git a/drivers/gpu/drm/i915/intel_dvo.c b/drivers/gpu/drm/i915/intel_dvo.c
-index 8ac91b8..69bea56 100644
+index 8ac91b80e15c..69bea56e5162 100644
 --- a/drivers/gpu/drm/i915/intel_dvo.c
 +++ b/drivers/gpu/drm/i915/intel_dvo.c
 @@ -157,7 +157,6 @@ static bool intel_dvo_mode_fixup(struct drm_encoder *encoder,
@@ -49673,7 +49673,7 @@ index 8ac91b8..69bea56 100644
  	}
  
 diff --git a/drivers/gpu/drm/i915/intel_fb.c b/drivers/gpu/drm/i915/intel_fb.c
-index d0ce34b..6e9ee33 100644
+index d0ce34b78cc7..6e9ee33fd412 100644
 --- a/drivers/gpu/drm/i915/intel_fb.c
 +++ b/drivers/gpu/drm/i915/intel_fb.c
 @@ -65,7 +65,7 @@ static int intelfb_create(struct intel_fbdev *ifbdev,
@@ -49739,7 +49739,7 @@ index d0ce34b..6e9ee33 100644
 +	mutex_unlock(&dev->mode_config.mutex);
  }
 diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
-index 497da2a..c60100d 100644
+index 497da2af4f64..c60100d48ceb 100644
 --- a/drivers/gpu/drm/i915/intel_hdmi.c
 +++ b/drivers/gpu/drm/i915/intel_hdmi.c
 @@ -44,7 +44,7 @@ struct intel_hdmi {
@@ -49831,7 +49831,7 @@ index 497da2a..c60100d 100644
  	intel_encoder->crtc_mask = (1 << 0) | (1 << 1) | (1 << 2);
  
 diff --git a/drivers/gpu/drm/i915/intel_i2c.c b/drivers/gpu/drm/i915/intel_i2c.c
-index d30cccc..8fdc957 100644
+index d30ccccb9d73..8fdc95700218 100644
 --- a/drivers/gpu/drm/i915/intel_i2c.c
 +++ b/drivers/gpu/drm/i915/intel_i2c.c
 @@ -37,7 +37,7 @@
@@ -50216,7 +50216,7 @@ index d30cccc..8fdc957 100644
  	}
  
 diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
-index 4da8182..3febe29 100644
+index 4da8182662c8..3febe292034a 100644
 --- a/drivers/gpu/drm/i915/intel_lvds.c
 +++ b/drivers/gpu/drm/i915/intel_lvds.c
 @@ -187,6 +187,8 @@ centre_horizontally(struct drm_display_mode *mode,
@@ -50275,7 +50275,7 @@ index 4da8182..3febe29 100644
  	/* Skip init on machines we know falsely report LVDS */
  	if (dmi_check_system(intel_no_lvds))
 diff --git a/drivers/gpu/drm/i915/intel_modes.c b/drivers/gpu/drm/i915/intel_modes.c
-index be2c6fe..9a2b270 100644
+index be2c6fe07d12..9a2b27031a4d 100644
 --- a/drivers/gpu/drm/i915/intel_modes.c
 +++ b/drivers/gpu/drm/i915/intel_modes.c
 @@ -28,6 +28,7 @@
@@ -50417,7 +50417,7 @@ index be2c6fe..9a2b270 100644
  	}
  
 diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
-index 478b51f..5ba5e66 100644
+index 478b51f9babf..5ba5e66fa070 100644
 --- a/drivers/gpu/drm/i915/intel_overlay.c
 +++ b/drivers/gpu/drm/i915/intel_overlay.c
 @@ -25,8 +25,6 @@
@@ -50474,7 +50474,7 @@ index 478b51f..5ba5e66 100644
  	else
  		return -EINVAL;
 diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c
-index 04cb34a..0bae2bb 100644
+index 04cb34a37e93..0bae2bbe7b3c 100644
 --- a/drivers/gpu/drm/i915/intel_panel.c
 +++ b/drivers/gpu/drm/i915/intel_panel.c
 @@ -48,8 +48,6 @@ intel_fixed_panel_mode(struct drm_display_mode *fixed_mode,
@@ -50498,7 +50498,7 @@ index 04cb34a..0bae2bb 100644
  	} else {
  		val = I915_READ(BLC_PWM_CTL);
 diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
-index 8ee068e..99a9df8 100644
+index 8ee068ef401c..99a9df8e7a1e 100644
 --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
 +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
 @@ -263,6 +263,8 @@ static int init_ring_common(struct intel_ring_buffer *ring)
@@ -50886,7 +50886,7 @@ index 8ee068e..99a9df8 100644
  	.semaphore_register	= {MI_SEMAPHORE_SYNC_BR,
  				   MI_SEMAPHORE_SYNC_BV,
 diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
-index d83cc97..bc0365b 100644
+index d83cc975865f..bc0365b8fa4d 100644
 --- a/drivers/gpu/drm/i915/intel_ringbuffer.h
 +++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
 @@ -1,13 +1,6 @@
@@ -50969,7 +50969,7 @@ index d83cc97..bc0365b 100644
  {
  	if (ring->trace_irq_seqno == 0 && ring->irq_get(ring))
 diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c
-index 00ec0dd..8d55a33 100644
+index 00ec0dd6f62d..8d55a33d7226 100644
 --- a/drivers/gpu/drm/i915/intel_sdvo.c
 +++ b/drivers/gpu/drm/i915/intel_sdvo.c
 @@ -148,7 +148,7 @@ struct intel_sdvo_connector {
@@ -51107,7 +51107,7 @@ index 00ec0dd..8d55a33 100644
  					      intel_sdvo_connector->dot_crawl,
  					      intel_sdvo_connector->cur_dot_crawl);
 diff --git a/drivers/gpu/drm/i915/intel_sdvo_regs.h b/drivers/gpu/drm/i915/intel_sdvo_regs.h
-index 4193c54..770bdd6 100644
+index 4193c54eb311..770bdd6ecd9f 100644
 --- a/drivers/gpu/drm/i915/intel_sdvo_regs.h
 +++ b/drivers/gpu/drm/i915/intel_sdvo_regs.h
 @@ -1,5 +1,5 @@
@@ -51119,7 +51119,7 @@ index 4193c54..770bdd6 100644
   * copy of this software and associated documentation files (the "Software"),
 diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
 new file mode 100644
-index 0000000..e90dfb6
+index 000000000000..e90dfb625c42
 --- /dev/null
 +++ b/drivers/gpu/drm/i915/intel_sprite.c
 @@ -0,0 +1,666 @@
@@ -51790,7 +51790,7 @@ index 0000000..e90dfb6
 +}
 +
 diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c
-index b221f2b..c82b1d4 100644
+index b221f2b6305f..c82b1d4fd24b 100644
 --- a/drivers/gpu/drm/i915/intel_tv.c
 +++ b/drivers/gpu/drm/i915/intel_tv.c
 @@ -674,7 +674,7 @@ static const struct tv_mode tv_modes[] = {
@@ -51933,7 +51933,7 @@ index b221f2b..c82b1d4 100644
  		 * as present.
  		 */
 diff --git a/drivers/gpu/drm/mga/mga_dma.c b/drivers/gpu/drm/mga/mga_dma.c
-index 5ccb65de..507aa3d 100644
+index 5ccb65deb83c..507aa3df0168 100644
 --- a/drivers/gpu/drm/mga/mga_dma.c
 +++ b/drivers/gpu/drm/mga/mga_dma.c
 @@ -403,6 +403,8 @@ int mga_driver_load(struct drm_device *dev, unsigned long flags)
@@ -51946,7 +51946,7 @@ index 5ccb65de..507aa3d 100644
  	dev_priv->mmio_size = pci_resource_len(dev->pdev, 1);
  
 diff --git a/drivers/gpu/drm/mga/mga_drv.c b/drivers/gpu/drm/mga/mga_drv.c
-index 33daa29..f9a925d 100644
+index 33daa29eea66..f9a925d58819 100644
 --- a/drivers/gpu/drm/mga/mga_drv.c
 +++ b/drivers/gpu/drm/mga/mga_drv.c
 @@ -44,6 +44,20 @@ static struct pci_device_id pciidlist[] = {
@@ -51993,7 +51993,7 @@ index 33daa29..f9a925d 100644
  	.desc = DRIVER_DESC,
  	.date = DRIVER_DATE,
 diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
-index ca16399..97a8126 100644
+index ca1639918f57..97a81260485a 100644
 --- a/drivers/gpu/drm/nouveau/Kconfig
 +++ b/drivers/gpu/drm/nouveau/Kconfig
 @@ -13,6 +13,7 @@ config DRM_NOUVEAU
@@ -52005,7 +52005,7 @@ index ca16399..97a8126 100644
  	  Choose this option for open-source nVidia support.
  
 diff --git a/drivers/gpu/drm/nouveau/Makefile b/drivers/gpu/drm/nouveau/Makefile
-index 35ef5b1..1a2ad7e 100644
+index 35ef5b1e3566..1a2ad7eb1734 100644
 --- a/drivers/gpu/drm/nouveau/Makefile
 +++ b/drivers/gpu/drm/nouveau/Makefile
 @@ -9,19 +9,23 @@ nouveau-y := nouveau_drv.o nouveau_state.o nouveau_channel.o nouveau_mem.o \
@@ -52037,7 +52037,7 @@ index 35ef5b1..1a2ad7e 100644
               nv04_dac.o nv04_dfp.o nv04_tv.o nv17_tv.o nv17_tv_modes.o \
               nv04_crtc.o nv04_display.o nv04_cursor.o \
 diff --git a/drivers/gpu/drm/nouveau/nouveau_acpi.c b/drivers/gpu/drm/nouveau/nouveau_acpi.c
-index 5ee8cca..4339694 100644
+index 5ee8cca9ee6c..4339694bd9f8 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_acpi.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_acpi.c
 @@ -18,12 +18,6 @@
@@ -52205,7 +52205,7 @@ index 5ee8cca..4339694 100644
  {
  	vga_switcheroo_unregister_handler();
 diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.c b/drivers/gpu/drm/nouveau/nouveau_bios.c
-index 5fc201b..0be4a81 100644
+index 5fc201b49d30..0be4a815e706 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_bios.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_bios.c
 @@ -27,6 +27,7 @@
@@ -53702,7 +53702,7 @@ index 5fc201b..0be4a81 100644
 +	kfree(dev_priv->vbios.data);
  }
 diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.h b/drivers/gpu/drm/nouveau/nouveau_bios.h
-index 8adb69e..298a3af 100644
+index 8adb69e4a6b1..298a3af48d14 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_bios.h
 +++ b/drivers/gpu/drm/nouveau/nouveau_bios.h
 @@ -34,9 +34,14 @@
@@ -53860,7 +53860,7 @@ index 8adb69e..298a3af 100644
 +
  #endif
 diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c
-index 2bb29c9..2c3d5c8 100644
+index 2bb29c922394..2c3d5c8b7a3f 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_bo.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
 @@ -28,6 +28,7 @@
@@ -54094,7 +54094,7 @@ index 2bb29c9..2c3d5c8 100644
  	list_add_tail(&vma->head, &nvbo->vma_list);
  	vma->refcount = 1;
 diff --git a/drivers/gpu/drm/nouveau/nouveau_channel.c b/drivers/gpu/drm/nouveau/nouveau_channel.c
-index bb6ec9e..846afb0 100644
+index bb6ec9ef8676..846afb0bfef4 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_channel.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_channel.c
 @@ -122,7 +122,7 @@ nouveau_channel_alloc(struct drm_device *dev, struct nouveau_channel **chan_ret,
@@ -54163,7 +54163,7 @@ index bb6ec9e..846afb0 100644
  
  	/* Named memory object area */
 diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c
-index 1e72db5..7b11edb 100644
+index 1e72db509ebb..7b11edb077d0 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_connector.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_connector.c
 @@ -35,6 +35,7 @@
@@ -54741,7 +54741,7 @@ index 1e72db5..7b11edb 100644
  
  static void
 diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.h b/drivers/gpu/drm/nouveau/nouveau_connector.h
-index 711b1e9..e485702 100644
+index 711b1e9203af..e4857021304c 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_connector.h
 +++ b/drivers/gpu/drm/nouveau/nouveau_connector.h
 @@ -30,13 +30,43 @@
@@ -54792,7 +54792,7 @@ index 711b1e9..e485702 100644
  	struct nouveau_encoder *detected_encoder;
  	struct edid *edid;
 diff --git a/drivers/gpu/drm/nouveau/nouveau_crtc.h b/drivers/gpu/drm/nouveau/nouveau_crtc.h
-index bf8e128..e6d0d1e 100644
+index bf8e1289953d..e6d0d1eb0133 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_crtc.h
 +++ b/drivers/gpu/drm/nouveau/nouveau_crtc.h
 @@ -32,11 +32,11 @@ struct nouveau_crtc {
@@ -54822,7 +54822,7 @@ index bf8e128..e6d0d1e 100644
  
  static inline struct nouveau_crtc *nouveau_crtc(struct drm_crtc *crtc)
 diff --git a/drivers/gpu/drm/nouveau/nouveau_debugfs.c b/drivers/gpu/drm/nouveau/nouveau_debugfs.c
-index 8e15923..fa2ec49 100644
+index 8e1592368cce..fa2ec491f6a7 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_debugfs.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_debugfs.c
 @@ -44,7 +44,7 @@ nouveau_debugfs_channel_info(struct seq_file *m, void *data)
@@ -54843,7 +54843,7 @@ index 8e15923..fa2ec49 100644
  #define NOUVEAU_DEBUGFS_ENTRIES ARRAY_SIZE(nouveau_debugfs_list)
  
 diff --git a/drivers/gpu/drm/nouveau/nouveau_display.c b/drivers/gpu/drm/nouveau/nouveau_display.c
-index 6adef06..f233b8f 100644
+index 6adef062e986..f233b8fe2dad 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_display.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_display.c
 @@ -32,6 +32,8 @@
@@ -55154,7 +55154,7 @@ index 6adef06..f233b8f 100644
  			nouveau_channel_put(&chan);
  			goto fail_unreserve;
 diff --git a/drivers/gpu/drm/nouveau/nouveau_dma.c b/drivers/gpu/drm/nouveau/nouveau_dma.c
-index 00bc6ea..295932e 100644
+index 00bc6eaad558..295932e66ac5 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_dma.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_dma.c
 @@ -31,7 +31,7 @@
@@ -55271,7 +55271,7 @@ index 00bc6ea..295932e 100644
  	if (chan->dma.ib_max)
  		return nv50_dma_wait(chan, slots, size);
 diff --git a/drivers/gpu/drm/nouveau/nouveau_dp.c b/drivers/gpu/drm/nouveau/nouveau_dp.c
-index de5efe7..d996134 100644
+index de5efe71fefd..d996134b1b28 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_dp.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_dp.c
 @@ -29,6 +29,7 @@
@@ -55768,7 +55768,7 @@ index de5efe7..d996134 100644
  
  static int
 diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.c b/drivers/gpu/drm/nouveau/nouveau_drv.c
-index 8c084c0..05091c2 100644
+index 8c084c0bcfd0..05091c22a037 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_drv.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_drv.c
 @@ -57,6 +57,10 @@ MODULE_PARM_DESC(vram_notify, "Force DMA notifiers to be in VRAM");
@@ -55980,7 +55980,7 @@ index 8c084c0..05091c2 100644
  	.gem_free_object = nouveau_gem_object_del,
  	.gem_open_object = nouveau_gem_object_open,
 diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.h b/drivers/gpu/drm/nouveau/nouveau_drv.h
-index 4c0be3a..3aef353 100644
+index 4c0be3a4ed88..3aef353a926c 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_drv.h
 +++ b/drivers/gpu/drm/nouveau/nouveau_drv.h
 @@ -26,15 +26,15 @@
@@ -56614,7 +56614,7 @@ index 4c0be3a..3aef353 100644
  #define NV_SW_VBLSEM_OFFSET                                          0x00000400
  #define NV_SW_VBLSEM_RELEASE_VALUE                                   0x00000404
 diff --git a/drivers/gpu/drm/nouveau/nouveau_encoder.h b/drivers/gpu/drm/nouveau/nouveau_encoder.h
-index e5d6e3f..3dc14a3 100644
+index e5d6e3faff3d..3dc14a3dcc4c 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_encoder.h
 +++ b/drivers/gpu/drm/nouveau/nouveau_encoder.h
 @@ -32,6 +32,14 @@
@@ -56653,7 +56653,7 @@ index e5d6e3f..3dc14a3 100644
 +
  #endif /* __NOUVEAU_ENCODER_H__ */
 diff --git a/drivers/gpu/drm/nouveau/nouveau_fb.h b/drivers/gpu/drm/nouveau/nouveau_fb.h
-index 95c843e..f3fb649 100644
+index 95c843e684bb..f3fb649fe454 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_fb.h
 +++ b/drivers/gpu/drm/nouveau/nouveau_fb.h
 @@ -42,8 +42,6 @@ nouveau_framebuffer(struct drm_framebuffer *fb)
@@ -56667,7 +56667,7 @@ index 95c843e..f3fb649 100644
 +			     struct drm_mode_fb_cmd2 *mode_cmd, struct nouveau_bo *nvbo);
  #endif /* __NOUVEAU_FB_H__ */
 diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.c b/drivers/gpu/drm/nouveau/nouveau_fbcon.c
-index cc0801d..6fd2211 100644
+index cc0801d7ddbb..6fd2211121f7 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_fbcon.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_fbcon.c
 @@ -36,6 +36,7 @@
@@ -56743,7 +56743,7 @@ index cc0801d..6fd2211 100644
  
  void nouveau_fbcon_zfill_all(struct drm_device *dev)
 diff --git a/drivers/gpu/drm/nouveau/nouveau_fence.c b/drivers/gpu/drm/nouveau/nouveau_fence.c
-index 2f6daae..c1dc20f 100644
+index 2f6daae68b9d..c1dc20f6cb85 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_fence.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_fence.c
 @@ -93,18 +93,17 @@ nouveau_fence_update(struct nouveau_channel *chan)
@@ -56856,7 +56856,7 @@ index 2f6daae..c1dc20f 100644
  		FIRE_RING (chan);
  	}
 diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c
-index fc64ad0..2f46bbf 100644
+index fc64ad0e7ca9..2f46bbfbb1f8 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_gem.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_gem.c
 @@ -172,12 +172,11 @@ nouveau_gem_info(struct drm_file *file_priv, struct drm_gem_object *gem,
@@ -56907,7 +56907,7 @@ index fc64ad0..2f46bbf 100644
  	/* Validate buffer list */
 diff --git a/drivers/gpu/drm/nouveau/nouveau_gpio.c b/drivers/gpu/drm/nouveau/nouveau_gpio.c
 new file mode 100644
-index 0000000..a580cc6
+index 000000000000..a580cc62337a
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nouveau_gpio.c
 @@ -0,0 +1,400 @@
@@ -57313,7 +57313,7 @@ index 0000000..a580cc6
 +}
 diff --git a/drivers/gpu/drm/nouveau/nouveau_gpio.h b/drivers/gpu/drm/nouveau/nouveau_gpio.h
 new file mode 100644
-index 0000000..64c5cb0
+index 000000000000..64c5cb077ace
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nouveau_gpio.h
 @@ -0,0 +1,71 @@
@@ -57390,7 +57390,7 @@ index 0000000..64c5cb0
 +#endif
 diff --git a/drivers/gpu/drm/nouveau/nouveau_hdmi.c b/drivers/gpu/drm/nouveau/nouveau_hdmi.c
 new file mode 100644
-index 0000000..c3de363
+index 000000000000..c3de36384522
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nouveau_hdmi.c
 @@ -0,0 +1,260 @@
@@ -57656,7 +57656,7 @@ index 0000000..c3de363
 +}
 diff --git a/drivers/gpu/drm/nouveau/nouveau_hwsq.h b/drivers/gpu/drm/nouveau/nouveau_hwsq.h
 new file mode 100644
-index 0000000..6976875
+index 000000000000..697687593a81
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nouveau_hwsq.h
 @@ -0,0 +1,115 @@
@@ -57776,7 +57776,7 @@ index 0000000..6976875
 +
 +#endif
 diff --git a/drivers/gpu/drm/nouveau/nouveau_i2c.c b/drivers/gpu/drm/nouveau/nouveau_i2c.c
-index d39b220..77e5646 100644
+index d39b2202b197..77e564667b5c 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_i2c.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_i2c.c
 @@ -30,83 +30,83 @@
@@ -58321,7 +58321,7 @@ index d39b220..77e5646 100644
  	return -ENODEV;
  }
 diff --git a/drivers/gpu/drm/nouveau/nouveau_i2c.h b/drivers/gpu/drm/nouveau/nouveau_i2c.h
-index 422b62f..1d08389 100644
+index 422b62fd8272..1d083893a4d7 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_i2c.h
 +++ b/drivers/gpu/drm/nouveau/nouveau_i2c.h
 @@ -27,20 +27,26 @@
@@ -58359,7 +58359,7 @@ index 422b62f..1d08389 100644
  int nouveau_i2c_identify(struct drm_device *dev, const char *what,
  			 struct i2c_board_info *info,
 diff --git a/drivers/gpu/drm/nouveau/nouveau_mem.c b/drivers/gpu/drm/nouveau/nouveau_mem.c
-index 36bec48..b08065f 100644
+index 36bec4807701..b08065f981df 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_mem.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_mem.c
 @@ -26,7 +26,8 @@
@@ -59285,7 +59285,7 @@ index 36bec48..b08065f 100644
  static int
 diff --git a/drivers/gpu/drm/nouveau/nouveau_mxm.c b/drivers/gpu/drm/nouveau/nouveau_mxm.c
 new file mode 100644
-index 0000000..07d0d1e
+index 000000000000..07d0d1e03690
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nouveau_mxm.c
 @@ -0,0 +1,723 @@
@@ -60013,7 +60013,7 @@ index 0000000..07d0d1e
 +	dev_priv->mxms = NULL;
 +}
 diff --git a/drivers/gpu/drm/nouveau/nouveau_notifier.c b/drivers/gpu/drm/nouveau/nouveau_notifier.c
-index 6abdbe6..2ef883c 100644
+index 6abdbe6530a7..2ef883c4bbc1 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_notifier.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_notifier.c
 @@ -115,7 +115,7 @@ nouveau_notifier_alloc(struct nouveau_channel *chan, uint32_t handle,
@@ -60026,7 +60026,7 @@ index 6abdbe6..2ef883c 100644
  
  	mem = drm_mm_search_free_in_range(&chan->notifier_heap, size, 0,
 diff --git a/drivers/gpu/drm/nouveau/nouveau_object.c b/drivers/gpu/drm/nouveau/nouveau_object.c
-index 960c0ae..cc419fae 100644
+index 960c0ae0c0c3..cc419fae794b 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_object.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_object.c
 @@ -723,14 +723,14 @@ nvc0_gpuobj_channel_init(struct nouveau_channel *chan, struct nouveau_vm *vm)
@@ -60070,7 +60070,7 @@ index 960c0ae..cc419fae 100644
  			struct nv50_display_crtc *dispc = &disp->crtc[i];
  			nouveau_bo_vma_del(dispc->sem.bo, &chan->dispc_vma[i]);
 diff --git a/drivers/gpu/drm/nouveau/nouveau_perf.c b/drivers/gpu/drm/nouveau/nouveau_perf.c
-index 33d03fb..69a528d 100644
+index 33d03fbf00df..69a528d106e6 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_perf.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_perf.c
 @@ -27,6 +27,178 @@
@@ -60575,7 +60575,7 @@ index 33d03fb..69a528d 100644
  }
  
 diff --git a/drivers/gpu/drm/nouveau/nouveau_pm.c b/drivers/gpu/drm/nouveau/nouveau_pm.c
-index a539fd2..da3e7c3 100644
+index a539fd257921..da3e7c3abab7 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_pm.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_pm.c
 @@ -26,6 +26,7 @@
@@ -61355,7 +61355,7 @@ index a539fd2..da3e7c3 100644
 +	nouveau_pwmfan_set(dev, pm->fan.percent);
  }
 diff --git a/drivers/gpu/drm/nouveau/nouveau_pm.h b/drivers/gpu/drm/nouveau/nouveau_pm.h
-index 8ac02cd..3f82dfe 100644
+index 8ac02cdd03a1..3f82dfea61dd 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_pm.h
 +++ b/drivers/gpu/drm/nouveau/nouveau_pm.h
 @@ -25,10 +25,30 @@
@@ -61442,7 +61442,7 @@ index 8ac02cd..3f82dfe 100644
  /* nouveau_temp.c */
  void nouveau_temp_init(struct drm_device *dev);
 diff --git a/drivers/gpu/drm/nouveau/nouveau_sgdma.c b/drivers/gpu/drm/nouveau/nouveau_sgdma.c
-index c8a463b..47f245e 100644
+index c8a463b76c89..47f245edf538 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_sgdma.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_sgdma.c
 @@ -8,91 +8,30 @@
@@ -61798,7 +61798,7 @@ index c8a463b..47f245e 100644
  
  int
 diff --git a/drivers/gpu/drm/nouveau/nouveau_state.c b/drivers/gpu/drm/nouveau/nouveau_state.c
-index 01adcfb..b096cf2 100644
+index 01adcfb8101b..b096cf28213a 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_state.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_state.c
 @@ -36,6 +36,7 @@
@@ -62686,7 +62686,7 @@ index 01adcfb..b096cf2 100644
  	case NOUVEAU_GETPARAM_GRAPH_UNITS:
  		/* NV40 and NV50 versions are quite different, but register
 diff --git a/drivers/gpu/drm/nouveau/nouveau_temp.c b/drivers/gpu/drm/nouveau/nouveau_temp.c
-index 5a46446..0f5a301 100644
+index 5a46446dd5a8..0f5a30160556 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_temp.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_temp.c
 @@ -55,6 +55,10 @@ nouveau_temp_vbios_parse(struct drm_device *dev, u8 *temp)
@@ -62762,7 +62762,7 @@ index 5a46446..0f5a301 100644
  			NV_WARN(dev, "unknown temp for BIT P %d\n", P.version);
  
 diff --git a/drivers/gpu/drm/nouveau/nouveau_vm.c b/drivers/gpu/drm/nouveau/nouveau_vm.c
-index ef0832b..2bf6c03 100644
+index ef0832b29ad2..2bf6c0350b4b 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_vm.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_vm.c
 @@ -78,9 +78,10 @@ nouveau_vm_map(struct nouveau_vma *vma, struct nouveau_mem *node)
@@ -62778,7 +62778,7 @@ index ef0832b..2bf6c03 100644
  	u32 offset = vma->node->offset + (delta >> 12);
  	u32 bits = vma->node->type - 12;
 diff --git a/drivers/gpu/drm/nouveau/nouveau_vm.h b/drivers/gpu/drm/nouveau/nouveau_vm.h
-index 6ce995f..4fb6e72 100644
+index 6ce995f7797e..4fb6e728734d 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_vm.h
 +++ b/drivers/gpu/drm/nouveau/nouveau_vm.h
 @@ -89,7 +89,7 @@ void nouveau_vm_map_at(struct nouveau_vma *, u64 offset, struct nouveau_mem *);
@@ -62791,7 +62791,7 @@ index 6ce995f..4fb6e72 100644
  /* nv50_vm.c */
  void nv50_vm_map_pgt(struct nouveau_gpuobj *pgd, u32 pde,
 diff --git a/drivers/gpu/drm/nouveau/nouveau_volt.c b/drivers/gpu/drm/nouveau/nouveau_volt.c
-index 86d03e1..b010cb9 100644
+index 86d03e15735d..b010cb997b34 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_volt.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_volt.c
 @@ -26,6 +26,7 @@
@@ -62868,7 +62868,7 @@ index 86d03e1..b010cb9 100644
  			return;
  		}
 diff --git a/drivers/gpu/drm/nouveau/nv04_crtc.c b/drivers/gpu/drm/nouveau/nv04_crtc.c
-index 5e45398..728d075 100644
+index 5e45398a9e2d..728d07584d39 100644
 --- a/drivers/gpu/drm/nouveau/nv04_crtc.c
 +++ b/drivers/gpu/drm/nouveau/nv04_crtc.c
 @@ -364,7 +364,7 @@ nv_crtc_mode_set_vga(struct drm_crtc *crtc, struct drm_display_mode *mode)
@@ -62916,7 +62916,7 @@ index 5e45398..728d075 100644
  
  	/* Update the arbitration parameters. */
 diff --git a/drivers/gpu/drm/nouveau/nv04_dac.c b/drivers/gpu/drm/nouveau/nv04_dac.c
-index 2d6bfd0..f180dcf 100644
+index 2d6bfd03dc1a..f180dcfb12fd 100644
 --- a/drivers/gpu/drm/nouveau/nv04_dac.c
 +++ b/drivers/gpu/drm/nouveau/nv04_dac.c
 @@ -32,6 +32,7 @@
@@ -62963,7 +62963,7 @@ index 2d6bfd0..f180dcf 100644
  	return sample;
  }
 diff --git a/drivers/gpu/drm/nouveau/nv04_dfp.c b/drivers/gpu/drm/nouveau/nv04_dfp.c
-index 752440c..71b6235 100644
+index 752440c7a3d0..71b62352315f 100644
 --- a/drivers/gpu/drm/nouveau/nv04_dfp.c
 +++ b/drivers/gpu/drm/nouveau/nv04_dfp.c
 @@ -289,6 +289,7 @@ static void nv04_dfp_mode_set(struct drm_encoder *encoder,
@@ -63014,7 +63014,7 @@ index 752440c..71b6235 100644
  
  static void nv04_lvds_dpms(struct drm_encoder *encoder, int mode)
 diff --git a/drivers/gpu/drm/nouveau/nv04_display.c b/drivers/gpu/drm/nouveau/nv04_display.c
-index 6bd8518..7047d37 100644
+index 6bd8518d7b2e..7047d37e8dab 100644
 --- a/drivers/gpu/drm/nouveau/nv04_display.c
 +++ b/drivers/gpu/drm/nouveau/nv04_display.c
 @@ -243,6 +243,11 @@ nv04_display_init(struct drm_device *dev)
@@ -63030,7 +63030,7 @@ index 6bd8518..7047d37 100644
  nv04_vblank_crtc0_isr(struct drm_device *dev)
  {
 diff --git a/drivers/gpu/drm/nouveau/nv04_fb.c b/drivers/gpu/drm/nouveau/nv04_fb.c
-index 638cf60..d5eedd6 100644
+index 638cf601c427..d5eedd67afe5 100644
 --- a/drivers/gpu/drm/nouveau/nv04_fb.c
 +++ b/drivers/gpu/drm/nouveau/nv04_fb.c
 @@ -4,6 +4,40 @@
@@ -63075,7 +63075,7 @@ index 638cf60..d5eedd6 100644
  {
  	/* This is what the DDX did for NV_ARCH_04, but a mmio-trace shows
 diff --git a/drivers/gpu/drm/nouveau/nv04_pm.c b/drivers/gpu/drm/nouveau/nv04_pm.c
-index 9ae92a8..6e75899 100644
+index 9ae92a87b8cc..6e7589918fa9 100644
 --- a/drivers/gpu/drm/nouveau/nv04_pm.c
 +++ b/drivers/gpu/drm/nouveau/nv04_pm.c
 @@ -27,68 +27,111 @@
@@ -63224,7 +63224,7 @@ index 9ae92a8..6e75899 100644
  }
 -
 diff --git a/drivers/gpu/drm/nouveau/nv04_timer.c b/drivers/gpu/drm/nouveau/nv04_timer.c
-index 263301b..55c9452 100644
+index 263301b809dd..55c945290e52 100644
 --- a/drivers/gpu/drm/nouveau/nv04_timer.c
 +++ b/drivers/gpu/drm/nouveau/nv04_timer.c
 @@ -2,6 +2,7 @@
@@ -63245,7 +63245,7 @@ index 263301b..55c9452 100644
  	if (dev_priv->chipset == 0x40) {
  		/*XXX: figure this out */
 diff --git a/drivers/gpu/drm/nouveau/nv10_fb.c b/drivers/gpu/drm/nouveau/nv10_fb.c
-index f78181a..420b1608 100644
+index f78181a59b4a..420b1608536d 100644
 --- a/drivers/gpu/drm/nouveau/nv10_fb.c
 +++ b/drivers/gpu/drm/nouveau/nv10_fb.c
 @@ -3,81 +3,16 @@
@@ -63419,7 +63419,7 @@ index f78181a..420b1608 100644
 -		drm_mm_takedown(&pfb->tag_heap);
  }
 diff --git a/drivers/gpu/drm/nouveau/nv10_gpio.c b/drivers/gpu/drm/nouveau/nv10_gpio.c
-index 007fc29..9d79180 100644
+index 007fc29e2f86..9d79180069df 100644
 --- a/drivers/gpu/drm/nouveau/nv10_gpio.c
 +++ b/drivers/gpu/drm/nouveau/nv10_gpio.c
 @@ -27,66 +27,97 @@
@@ -63564,7 +63564,7 @@ index 007fc29..9d79180 100644
 +	nouveau_irq_unregister(dev, 28);
 +}
 diff --git a/drivers/gpu/drm/nouveau/nv17_tv.c b/drivers/gpu/drm/nouveau/nv17_tv.c
-index 3900ceb..696d7e7 100644
+index 3900cebba560..696d7e7dc2a0 100644
 --- a/drivers/gpu/drm/nouveau/nv17_tv.c
 +++ b/drivers/gpu/drm/nouveau/nv17_tv.c
 @@ -30,6 +30,7 @@
@@ -63638,7 +63638,7 @@ index 3900ceb..696d7e7 100644
  }
 diff --git a/drivers/gpu/drm/nouveau/nv20_fb.c b/drivers/gpu/drm/nouveau/nv20_fb.c
 new file mode 100644
-index 0000000..19bd640
+index 000000000000..19bd64059a66
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nv20_fb.c
 @@ -0,0 +1,148 @@
@@ -63791,7 +63791,7 @@ index 0000000..19bd640
 +	drm_mm_takedown(&pfb->tag_heap);
 +}
 diff --git a/drivers/gpu/drm/nouveau/nv40_fb.c b/drivers/gpu/drm/nouveau/nv40_fb.c
-index f0ac2a7..7fbcb33 100644
+index f0ac2a768c67..7fbcb334c096 100644
 --- a/drivers/gpu/drm/nouveau/nv40_fb.c
 +++ b/drivers/gpu/drm/nouveau/nv40_fb.c
 @@ -72,6 +72,51 @@ nv44_fb_init_gart(struct drm_device *dev)
@@ -63847,7 +63847,7 @@ index f0ac2a7..7fbcb33 100644
  {
  	struct drm_nouveau_private *dev_priv = dev->dev_private;
 diff --git a/drivers/gpu/drm/nouveau/nv40_pm.c b/drivers/gpu/drm/nouveau/nv40_pm.c
-index e676b0d..c761538 100644
+index e676b0d53478..c7615381c5d9 100644
 --- a/drivers/gpu/drm/nouveau/nv40_pm.c
 +++ b/drivers/gpu/drm/nouveau/nv40_pm.c
 @@ -222,7 +222,7 @@ nv40_pm_gr_idle(void *data)
@@ -63927,7 +63927,7 @@ index e676b0d..c761538 100644
 +	return 0;
  }
 diff --git a/drivers/gpu/drm/nouveau/nv50_crtc.c b/drivers/gpu/drm/nouveau/nv50_crtc.c
-index 882080e..701b927 100644
+index 882080e0b4f5..701b927998bf 100644
 --- a/drivers/gpu/drm/nouveau/nv50_crtc.c
 +++ b/drivers/gpu/drm/nouveau/nv50_crtc.c
 @@ -132,30 +132,74 @@ nv50_crtc_blank(struct nouveau_crtc *nv_crtc, bool blanked)
@@ -64433,7 +64433,7 @@ index 882080e..701b927 100644
  	drm_crtc_init(dev, &nv_crtc->base, &nv50_crtc_funcs);
  	drm_crtc_helper_add(&nv_crtc->base, &nv50_crtc_helper_funcs);
 diff --git a/drivers/gpu/drm/nouveau/nv50_dac.c b/drivers/gpu/drm/nouveau/nv50_dac.c
-index 808f3ec..55c5633 100644
+index 808f3ec8f827..55c56330be6d 100644
 --- a/drivers/gpu/drm/nouveau/nv50_dac.c
 +++ b/drivers/gpu/drm/nouveau/nv50_dac.c
 @@ -190,21 +190,13 @@ nv50_dac_mode_fixup(struct drm_encoder *encoder, struct drm_display_mode *mode,
@@ -64470,7 +64470,7 @@ index 808f3ec..55c5633 100644
  	.mode_set = nv50_dac_mode_set,
  	.get_crtc = nv50_dac_crtc_get,
 diff --git a/drivers/gpu/drm/nouveau/nv50_display.c b/drivers/gpu/drm/nouveau/nv50_display.c
-index 06de250..8b78b9c 100644
+index 06de250fe617..8b78b9cfa383 100644
 --- a/drivers/gpu/drm/nouveau/nv50_display.c
 +++ b/drivers/gpu/drm/nouveau/nv50_display.c
 @@ -50,9 +50,76 @@ nv50_sor_nr(struct drm_device *dev)
@@ -64761,7 +64761,7 @@ index 06de250..8b78b9c 100644
  
  	if (dcb->type != OUTPUT_ANALOG) {
 diff --git a/drivers/gpu/drm/nouveau/nv50_display.h b/drivers/gpu/drm/nouveau/nv50_display.h
-index c2da503..5d3dd14 100644
+index c2da503a22aa..5d3dd14d2837 100644
 --- a/drivers/gpu/drm/nouveau/nv50_display.h
 +++ b/drivers/gpu/drm/nouveau/nv50_display.h
 @@ -69,14 +69,20 @@ int nv50_display_early_init(struct drm_device *dev);
@@ -64786,7 +64786,7 @@ index c2da503..5d3dd14 100644
  void nv50_evo_fini(struct drm_device *dev);
  void nv50_evo_dmaobj_init(struct nouveau_gpuobj *, u32 memtype, u64 base,
 diff --git a/drivers/gpu/drm/nouveau/nv50_evo.c b/drivers/gpu/drm/nouveau/nv50_evo.c
-index c99d975..9b962e9 100644
+index c99d9751880c..9b962e989d7c 100644
 --- a/drivers/gpu/drm/nouveau/nv50_evo.c
 +++ b/drivers/gpu/drm/nouveau/nv50_evo.c
 @@ -218,7 +218,7 @@ nv50_evo_channel_fini(struct nouveau_channel *evo)
@@ -64828,7 +64828,7 @@ index c99d975..9b962e9 100644
 -	nv50_evo_destroy(dev);
  }
 diff --git a/drivers/gpu/drm/nouveau/nv50_evo.h b/drivers/gpu/drm/nouveau/nv50_evo.h
-index 3860ca6..771d879 100644
+index 3860ca62cb19..771d879bc834 100644
 --- a/drivers/gpu/drm/nouveau/nv50_evo.h
 +++ b/drivers/gpu/drm/nouveau/nv50_evo.h
 @@ -104,7 +104,8 @@
@@ -64842,7 +64842,7 @@ index 3860ca6..771d879 100644
  #define NV50_EVO_CRTC_REAL_RES                                       0x000008c8
  #define NV50_EVO_CRTC_SCALE_CENTER_OFFSET                            0x000008d4
 diff --git a/drivers/gpu/drm/nouveau/nv50_fifo.c b/drivers/gpu/drm/nouveau/nv50_fifo.c
-index c34a074..3bc2a56 100644
+index c34a074f7ea1..3bc2a565c20b 100644
 --- a/drivers/gpu/drm/nouveau/nv50_fifo.c
 +++ b/drivers/gpu/drm/nouveau/nv50_fifo.c
 @@ -230,6 +230,7 @@ nv50_fifo_create_context(struct nouveau_channel *chan)
@@ -64866,7 +64866,7 @@ index c34a074..3bc2a56 100644
  	if (dev_priv->chipset != 0x50) {
  		nv_wo32(chan->ramin, 0, chan->id);
 diff --git a/drivers/gpu/drm/nouveau/nv50_gpio.c b/drivers/gpu/drm/nouveau/nv50_gpio.c
-index 793a5cc..f429e6a 100644
+index 793a5ccca121..f429e6a8ca7a 100644
 --- a/drivers/gpu/drm/nouveau/nv50_gpio.c
 +++ b/drivers/gpu/drm/nouveau/nv50_gpio.c
 @@ -25,229 +25,95 @@
@@ -65204,7 +65204,7 @@ index 793a5cc..f429e6a 100644
 -	spin_unlock(&priv->lock);
  }
 diff --git a/drivers/gpu/drm/nouveau/nv50_graph.c b/drivers/gpu/drm/nouveau/nv50_graph.c
-index ac601f7..33d5711 100644
+index ac601f7c4e1a..33d5711a918d 100644
 --- a/drivers/gpu/drm/nouveau/nv50_graph.c
 +++ b/drivers/gpu/drm/nouveau/nv50_graph.c
 @@ -616,9 +616,9 @@ nv50_pgraph_tp_trap(struct drm_device *dev, int type, uint32_t ustatus_old,
@@ -65220,7 +65220,7 @@ index ac601f7..33d5711 100644
  			break;
  		case 8: /* TPDMA error */
 diff --git a/drivers/gpu/drm/nouveau/nv50_pm.c b/drivers/gpu/drm/nouveau/nv50_pm.c
-index 3d5a86b..d020ed4 100644
+index 3d5a86b98282..d020ed4979b4 100644
 --- a/drivers/gpu/drm/nouveau/nv50_pm.c
 +++ b/drivers/gpu/drm/nouveau/nv50_pm.c
 @@ -25,122 +25,862 @@
@@ -66167,7 +66167,7 @@ index 3d5a86b..d020ed4 100644
 +	return 0;
 +}
 diff --git a/drivers/gpu/drm/nouveau/nv50_sor.c b/drivers/gpu/drm/nouveau/nv50_sor.c
-index 2633aa8..2746402 100644
+index 2633aa8554eb..274640212475 100644
 --- a/drivers/gpu/drm/nouveau/nv50_sor.c
 +++ b/drivers/gpu/drm/nouveau/nv50_sor.c
 @@ -36,6 +36,193 @@
@@ -66497,7 +66497,7 @@ index 2633aa8..2746402 100644
  
  static struct drm_crtc *
 diff --git a/drivers/gpu/drm/nouveau/nv50_vm.c b/drivers/gpu/drm/nouveau/nv50_vm.c
-index 40b84f2..44fbac9 100644
+index 40b84f22d819..44fbac9c7d93 100644
 --- a/drivers/gpu/drm/nouveau/nv50_vm.c
 +++ b/drivers/gpu/drm/nouveau/nv50_vm.c
 @@ -48,7 +48,7 @@ nv50_vm_map_pgt(struct nouveau_gpuobj *pgd, u32 pde,
@@ -66573,7 +66573,7 @@ index 40b84f2..44fbac9 100644
  		nv_wo32(pgt, pte + 4, upper_32_bits(phys));
  		pte += 8;
 diff --git a/drivers/gpu/drm/nouveau/nv50_vram.c b/drivers/gpu/drm/nouveau/nv50_vram.c
-index 2e45e57..9ed9ae39 100644
+index 2e45e57fd869..9ed9ae397d75 100644
 --- a/drivers/gpu/drm/nouveau/nv50_vram.c
 +++ b/drivers/gpu/drm/nouveau/nv50_vram.c
 @@ -189,8 +189,25 @@ nv50_vram_init(struct drm_device *dev)
@@ -66604,7 +66604,7 @@ index 2e45e57..9ed9ae39 100644
  	dev_priv->vram_size &= 0xffffffff00ULL;
 diff --git a/drivers/gpu/drm/nouveau/nv84_bsp.c b/drivers/gpu/drm/nouveau/nv84_bsp.c
 new file mode 100644
-index 0000000..7487573
+index 000000000000..74875739bcc0
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nv84_bsp.c
 @@ -0,0 +1,83 @@
@@ -66693,7 +66693,7 @@ index 0000000..7487573
 +}
 diff --git a/drivers/gpu/drm/nouveau/nv84_vp.c b/drivers/gpu/drm/nouveau/nv84_vp.c
 new file mode 100644
-index 0000000..6570d30
+index 000000000000..6570d300ab85
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nv84_vp.c
 @@ -0,0 +1,83 @@
@@ -66782,7 +66782,7 @@ index 0000000..6570d30
 +}
 diff --git a/drivers/gpu/drm/nouveau/nv98_crypt.c b/drivers/gpu/drm/nouveau/nv98_crypt.c
 new file mode 100644
-index 0000000..db94ff0
+index 000000000000..db94ff0a9fab
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nv98_crypt.c
 @@ -0,0 +1,78 @@
@@ -66866,7 +66866,7 @@ index 0000000..db94ff0
 +}
 diff --git a/drivers/gpu/drm/nouveau/nv98_ppp.c b/drivers/gpu/drm/nouveau/nv98_ppp.c
 new file mode 100644
-index 0000000..a987dd6
+index 000000000000..a987dd6e0036
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nv98_ppp.c
 @@ -0,0 +1,78 @@
@@ -66949,7 +66949,7 @@ index 0000000..a987dd6
 +	return 0;
 +}
 diff --git a/drivers/gpu/drm/nouveau/nva3_copy.fuc b/drivers/gpu/drm/nouveau/nva3_copy.fuc
-index d894731..219850d 100644
+index d8947319b303..219850d53286 100644
 --- a/drivers/gpu/drm/nouveau/nva3_copy.fuc
 +++ b/drivers/gpu/drm/nouveau/nva3_copy.fuc
 @@ -31,8 +31,9 @@
@@ -67576,7 +67576,7 @@ index d894731..219850d 100644
     cmd_exec_done:
     ret
 diff --git a/drivers/gpu/drm/nouveau/nva3_copy.fuc.h b/drivers/gpu/drm/nouveau/nva3_copy.fuc.h
-index e2a0e88..37d6de3 100644
+index e2a0e8829bb3..37d6de3c9d61 100644
 --- a/drivers/gpu/drm/nouveau/nva3_copy.fuc.h
 +++ b/drivers/gpu/drm/nouveau/nva3_copy.fuc.h
 @@ -190,7 +190,7 @@ u32 nva3_pcopy_code[] = {
@@ -67589,7 +67589,7 @@ index e2a0e88..37d6de3 100644
  	0xf40012d0,
  	0x17f11031,
 diff --git a/drivers/gpu/drm/nouveau/nva3_pm.c b/drivers/gpu/drm/nouveau/nva3_pm.c
-index 618c144..9e636e6 100644
+index 618c144b7a30..9e636e6ef6d7 100644
 --- a/drivers/gpu/drm/nouveau/nva3_pm.c
 +++ b/drivers/gpu/drm/nouveau/nva3_pm.c
 @@ -287,12 +287,13 @@ nva3_pm_grcp_idle(void *data)
@@ -67623,7 +67623,7 @@ index 618c144..9e636e6 100644
 +	return ret;
  }
 diff --git a/drivers/gpu/drm/nouveau/nvc0_copy.fuc.h b/drivers/gpu/drm/nouveau/nvc0_copy.fuc.h
-index 9e87036..cd879f3 100644
+index 9e870367d3f7..cd879f31bb38 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_copy.fuc.h
 +++ b/drivers/gpu/drm/nouveau/nvc0_copy.fuc.h
 @@ -178,7 +178,7 @@ u32 nvc0_pcopy_code[] = {
@@ -67636,7 +67636,7 @@ index 9e87036..cd879f3 100644
  	0xf40012d0,
  	0x17f11031,
 diff --git a/drivers/gpu/drm/nouveau/nvc0_fb.c b/drivers/gpu/drm/nouveau/nvc0_fb.c
-index 5bf5503..f704e94 100644
+index 5bf55038fd92..f704e942372e 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_fb.c
 +++ b/drivers/gpu/drm/nouveau/nvc0_fb.c
 @@ -54,6 +54,11 @@ nvc0_mfb_isr(struct drm_device *dev)
@@ -67652,7 +67652,7 @@ index 5bf5503..f704e94 100644
  
  static void
 diff --git a/drivers/gpu/drm/nouveau/nvc0_fifo.c b/drivers/gpu/drm/nouveau/nvc0_fifo.c
-index dcbe0d5..50d68a7 100644
+index dcbe0d5d0241..50d68a7a1379 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_fifo.c
 +++ b/drivers/gpu/drm/nouveau/nvc0_fifo.c
 @@ -436,6 +436,24 @@ nvc0_fifo_isr_vm_fault(struct drm_device *dev, int unit)
@@ -67707,7 +67707,7 @@ index dcbe0d5..50d68a7 100644
  	nv_wr32(dev, 0x0400c0 + (unit * 0x2000), 0x80600008);
  	nv_wr32(dev, 0x040108 + (unit * 0x2000), stat);
 diff --git a/drivers/gpu/drm/nouveau/nvc0_graph.c b/drivers/gpu/drm/nouveau/nvc0_graph.c
-index ecfafd7..9066102 100644
+index ecfafd70cf0e..9066102d1159 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_graph.c
 +++ b/drivers/gpu/drm/nouveau/nvc0_graph.c
 @@ -333,14 +333,6 @@ nvc0_graph_fini(struct drm_device *dev, int engine, bool suspend)
@@ -67750,7 +67750,7 @@ index ecfafd7..9066102 100644
  	if (fermi >= 0x9197)
  		NVOBJ_CLASS(dev, 0x9197, GR); /* 3D (NVC1-) */
 diff --git a/drivers/gpu/drm/nouveau/nvc0_graph.fuc b/drivers/gpu/drm/nouveau/nvc0_graph.fuc
-index 2a4b6dc..e6b2288 100644
+index 2a4b6dc8f9de..e6b228844a32 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_graph.fuc
 +++ b/drivers/gpu/drm/nouveau/nvc0_graph.fuc
 @@ -71,9 +71,9 @@ queue_put:
@@ -67950,7 +67950,7 @@ index 2a4b6dc..e6b2288 100644
  	shl b32 $r14 8
  	sub b32 $r15 $r14 $r15
 diff --git a/drivers/gpu/drm/nouveau/nvc0_graph.h b/drivers/gpu/drm/nouveau/nvc0_graph.h
-index 636fe981..91d44ea6 100644
+index 636fe9812f79..91d44ea662d9 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_graph.h
 +++ b/drivers/gpu/drm/nouveau/nvc0_graph.h
 @@ -87,6 +87,7 @@ nvc0_graph_class(struct drm_device *dev)
@@ -67962,7 +67962,7 @@ index 636fe981..91d44ea6 100644
  	default:
  		return 0;
 diff --git a/drivers/gpu/drm/nouveau/nvc0_grctx.c b/drivers/gpu/drm/nouveau/nvc0_grctx.c
-index 96b0b93d..de77842 100644
+index 96b0b93d94ca..de77842b31c0 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_grctx.c
 +++ b/drivers/gpu/drm/nouveau/nvc0_grctx.c
 @@ -1268,6 +1268,17 @@ nvc0_grctx_generate_9039(struct drm_device *dev)
@@ -68229,7 +68229,7 @@ index 96b0b93d..de77842 100644
  	nv_icmd(dev, 0x00000685, 0x003fffff);
  	nv_icmd(dev, 0x00000687, 0x00000c48);
 diff --git a/drivers/gpu/drm/nouveau/nvc0_grgpc.fuc b/drivers/gpu/drm/nouveau/nvc0_grgpc.fuc
-index 06f5e26..15272be 100644
+index 06f5e26d1e0f..15272be33b66 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_grgpc.fuc
 +++ b/drivers/gpu/drm/nouveau/nvc0_grgpc.fuc
 @@ -32,7 +32,7 @@
@@ -68636,7 +68636,7 @@ index 06f5e26..15272be 100644
  
  .align 256
 diff --git a/drivers/gpu/drm/nouveau/nvc0_grgpc.fuc.h b/drivers/gpu/drm/nouveau/nvc0_grgpc.fuc.h
-index 6f82032..a988b8a 100644
+index 6f820324480e..a988b8ad00ac 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_grgpc.fuc.h
 +++ b/drivers/gpu/drm/nouveau/nvc0_grgpc.fuc.h
 @@ -25,26 +25,29 @@ uint32_t nvc0_grgpc_data[] = {
@@ -68747,7 +68747,7 @@ index 6f82032..a988b8a 100644
  
  uint32_t nvc0_grgpc_code[] = {
 diff --git a/drivers/gpu/drm/nouveau/nvc0_grhub.fuc b/drivers/gpu/drm/nouveau/nvc0_grhub.fuc
-index e4f8c7e..98acddb 100644
+index e4f8c7e89ddd..98acddb2c5bb 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_grhub.fuc
 +++ b/drivers/gpu/drm/nouveau/nvc0_grhub.fuc
 @@ -27,7 +27,7 @@
@@ -69461,7 +69461,7 @@ index e4f8c7e..98acddb 100644
  	ctx_xfer_done:
  	ret
 diff --git a/drivers/gpu/drm/nouveau/nvc0_grhub.fuc.h b/drivers/gpu/drm/nouveau/nvc0_grhub.fuc.h
-index 241d326..c5ed307 100644
+index 241d3263f1e5..c5ed307abeb9 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_grhub.fuc.h
 +++ b/drivers/gpu/drm/nouveau/nvc0_grhub.fuc.h
 @@ -23,19 +23,21 @@ uint32_t nvc0_grhub_data[] = {
@@ -69581,7 +69581,7 @@ index 241d326..c5ed307 100644
  	0x00000000,
  	0x00000000,
 diff --git a/drivers/gpu/drm/nouveau/nvc0_pm.c b/drivers/gpu/drm/nouveau/nvc0_pm.c
-index 929aded..ce65f81 100644
+index 929aded35cb5..ce65f81bb871 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_pm.c
 +++ b/drivers/gpu/drm/nouveau/nvc0_pm.c
 @@ -153,3 +153,240 @@ nvc0_pm_clocks_get(struct drm_device *dev, struct nouveau_pm_level *perflvl)
@@ -69826,7 +69826,7 @@ index 929aded..ce65f81 100644
 +	return 0;
 +}
 diff --git a/drivers/gpu/drm/nouveau/nvc0_vm.c b/drivers/gpu/drm/nouveau/nvc0_vm.c
-index 9e35294..30d2bd5 100644
+index 9e352944a35a..30d2bd58828f 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_vm.c
 +++ b/drivers/gpu/drm/nouveau/nvc0_vm.c
 @@ -77,9 +77,11 @@ void
@@ -69843,7 +69843,7 @@ index 9e35294..30d2bd5 100644
  		nv_wo32(pgt, pte + 4, upper_32_bits(phys));
  		pte += 8;
 diff --git a/drivers/gpu/drm/nouveau/nvc0_vram.c b/drivers/gpu/drm/nouveau/nvc0_vram.c
-index ce984d5..a7eef89 100644
+index ce984d573a51..a7eef8934c07 100644
 --- a/drivers/gpu/drm/nouveau/nvc0_vram.c
 +++ b/drivers/gpu/drm/nouveau/nvc0_vram.c
 @@ -106,31 +106,32 @@ nvc0_vram_init(struct drm_device *dev)
@@ -69896,7 +69896,7 @@ index ce984d5..a7eef89 100644
  
  	/* if all controllers have the same amount attached, there's no holes */
 diff --git a/drivers/gpu/drm/nouveau/nvd0_display.c b/drivers/gpu/drm/nouveau/nvd0_display.c
-index 3002d82..8a555fb6 100644
+index 3002d8283a1a..8a555fb67024 100644
 --- a/drivers/gpu/drm/nouveau/nvd0_display.c
 +++ b/drivers/gpu/drm/nouveau/nvd0_display.c
 @@ -35,12 +35,34 @@
@@ -71519,7 +71519,7 @@ index 3002d82..8a555fb6 100644
  out:
  	if (ret)
 diff --git a/drivers/gpu/drm/r128/r128_drv.c b/drivers/gpu/drm/r128/r128_drv.c
-index 4c8796b..88718fa 100644
+index 4c8796ba6dd8..88718fad5d6d 100644
 --- a/drivers/gpu/drm/r128/r128_drv.c
 +++ b/drivers/gpu/drm/r128/r128_drv.c
 @@ -42,6 +42,20 @@ static struct pci_device_id pciidlist[] = {
@@ -71575,7 +71575,7 @@ index 4c8796b..88718fa 100644
  }
  
 diff --git a/drivers/gpu/drm/radeon/Makefile b/drivers/gpu/drm/radeon/Makefile
-index cf8b4bc..9d83729 100644
+index cf8b4bc3e73d..9d83729956ff 100644
 --- a/drivers/gpu/drm/radeon/Makefile
 +++ b/drivers/gpu/drm/radeon/Makefile
 @@ -70,7 +70,8 @@ radeon-y += radeon_device.o radeon_asic.o radeon_kms.o \
@@ -71596,7 +71596,7 @@ index cf8b4bc..9d83729 100644
 \ No newline at end of file
 +CFLAGS_radeon_trace_points.o := -I$(src)
 diff --git a/drivers/gpu/drm/radeon/ObjectID.h b/drivers/gpu/drm/radeon/ObjectID.h
-index c61c3fe..ca4b038 100644
+index c61c3fe9fb98..ca4b038050d2 100644
 --- a/drivers/gpu/drm/radeon/ObjectID.h
 +++ b/drivers/gpu/drm/radeon/ObjectID.h
 @@ -85,6 +85,7 @@
@@ -71619,7 +71619,7 @@ index c61c3fe..ca4b038 100644
  /* Connector Object ID definition - Shared with BIOS */
  /****************************************************/
 diff --git a/drivers/gpu/drm/radeon/atom.c b/drivers/gpu/drm/radeon/atom.c
-index afb351a..daa1e34 100644
+index afb351ae0de9..daa1e346828d 100644
 --- a/drivers/gpu/drm/radeon/atom.c
 +++ b/drivers/gpu/drm/radeon/atom.c
 @@ -665,6 +665,8 @@ static void atom_op_delay(atom_exec_context *ctx, int *ptr, int arg)
@@ -71632,7 +71632,7 @@ index afb351a..daa1e34 100644
  		msleep(count);
  }
 diff --git a/drivers/gpu/drm/radeon/atombios.h b/drivers/gpu/drm/radeon/atombios.h
-index 4760466..4b04ba3 100644
+index 47604665cc17..4b04ba3828e8 100644
 --- a/drivers/gpu/drm/radeon/atombios.h
 +++ b/drivers/gpu/drm/radeon/atombios.h
 @@ -7270,6 +7270,8 @@ typedef struct _ATOM_PPLIB_THERMALCONTROLLER
@@ -71934,7 +71934,7 @@ index 4760466..4b04ba3 100644
  
  
 diff --git a/drivers/gpu/drm/radeon/atombios_crtc.c b/drivers/gpu/drm/radeon/atombios_crtc.c
-index 76c4f2a..af6790c 100644
+index 76c4f2a1d95b..af6790ccb8a9 100644
 --- a/drivers/gpu/drm/radeon/atombios_crtc.c
 +++ b/drivers/gpu/drm/radeon/atombios_crtc.c
 @@ -231,6 +231,22 @@ static void atombios_blank_crtc(struct drm_crtc *crtc, int state)
@@ -72376,7 +72376,7 @@ index 76c4f2a..af6790c 100644
  		break;
  	}
 diff --git a/drivers/gpu/drm/radeon/atombios_dp.c b/drivers/gpu/drm/radeon/atombios_dp.c
-index 3e34f1e..5325c20 100644
+index 3e34f1ee340a..5325c20fd706 100644
 --- a/drivers/gpu/drm/radeon/atombios_dp.c
 +++ b/drivers/gpu/drm/radeon/atombios_dp.c
 @@ -45,6 +45,41 @@ static char *pre_emph_names[] = {
@@ -72481,7 +72481,7 @@ index 3e34f1e..5325c20 100644
  	radeon_write_dpcd_reg(dp_info->radeon_connector, DP_LANE_COUNT_SET, tmp);
  
 diff --git a/drivers/gpu/drm/radeon/atombios_encoders.c b/drivers/gpu/drm/radeon/atombios_encoders.c
-index 286f1fa..dd5c14e 100644
+index 286f1fa640bc..dd5c14e917e0 100644
 --- a/drivers/gpu/drm/radeon/atombios_encoders.c
 +++ b/drivers/gpu/drm/radeon/atombios_encoders.c
 @@ -57,22 +57,6 @@ static inline bool radeon_encoder_is_digital(struct drm_encoder *encoder)
@@ -72954,7 +72954,7 @@ index 286f1fa..dd5c14e 100644
  	}
 diff --git a/drivers/gpu/drm/radeon/atombios_i2c.c b/drivers/gpu/drm/radeon/atombios_i2c.c
 new file mode 100644
-index 0000000..9ed94a8
+index 000000000000..9ed94a84d728
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/atombios_i2c.c
 @@ -0,0 +1,141 @@
@@ -73100,7 +73100,7 @@ index 0000000..9ed94a8
 +}
 +
 diff --git a/drivers/gpu/drm/radeon/cayman_blit_shaders.c b/drivers/gpu/drm/radeon/cayman_blit_shaders.c
-index 7b4eeb7..19a0114 100644
+index 7b4eeb7b4a8c..19a0114d2e3b 100644
 --- a/drivers/gpu/drm/radeon/cayman_blit_shaders.c
 +++ b/drivers/gpu/drm/radeon/cayman_blit_shaders.c
 @@ -24,6 +24,7 @@
@@ -73112,7 +73112,7 @@ index 7b4eeb7..19a0114 100644
  #include <linux/kernel.h>
  
 diff --git a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergreen.c
-index 5d78973..c5fe79e 100644
+index 5d78973a9d67..c5fe79e67ed9 100644
 --- a/drivers/gpu/drm/radeon/evergreen.c
 +++ b/drivers/gpu/drm/radeon/evergreen.c
 @@ -50,6 +50,39 @@ static const u32 crtc_offsets[6] =
@@ -73875,7 +73875,7 @@ index 5d78973..c5fe79e 100644
  	radeon_agp_fini(rdev);
  	radeon_bo_fini(rdev);
 diff --git a/drivers/gpu/drm/radeon/evergreen_blit_kms.c b/drivers/gpu/drm/radeon/evergreen_blit_kms.c
-index 914e5af..222acd2 100644
+index 914e5af84163..222acd2d33df 100644
 --- a/drivers/gpu/drm/radeon/evergreen_blit_kms.c
 +++ b/drivers/gpu/drm/radeon/evergreen_blit_kms.c
 @@ -32,23 +32,14 @@
@@ -74280,7 +74280,7 @@ index 914e5af..222acd2 100644
  }
  
 diff --git a/drivers/gpu/drm/radeon/evergreen_blit_shaders.c b/drivers/gpu/drm/radeon/evergreen_blit_shaders.c
-index 3a10399..f85c0af 100644
+index 3a10399e0066..f85c0af115b5 100644
 --- a/drivers/gpu/drm/radeon/evergreen_blit_shaders.c
 +++ b/drivers/gpu/drm/radeon/evergreen_blit_shaders.c
 @@ -24,6 +24,7 @@
@@ -74292,7 +74292,7 @@ index 3a10399..f85c0af 100644
  #include <linux/kernel.h>
  
 diff --git a/drivers/gpu/drm/radeon/evergreen_cs.c b/drivers/gpu/drm/radeon/evergreen_cs.c
-index cd4590a..7b4cfc54 100644
+index cd4590aae154..7b4cfc54ddb4 100644
 --- a/drivers/gpu/drm/radeon/evergreen_cs.c
 +++ b/drivers/gpu/drm/radeon/evergreen_cs.c
 @@ -31,6 +31,9 @@
@@ -76298,7 +76298,7 @@ index cd4590a..7b4cfc54 100644
 +	return ret;
 +}
 diff --git a/drivers/gpu/drm/radeon/evergreen_reg.h b/drivers/gpu/drm/radeon/evergreen_reg.h
-index e022776b..e534e5d 100644
+index e022776be428..e534e5d17fad 100644
 --- a/drivers/gpu/drm/radeon/evergreen_reg.h
 +++ b/drivers/gpu/drm/radeon/evergreen_reg.h
 @@ -35,6 +35,14 @@
@@ -76335,7 +76335,7 @@ index e022776b..e534e5d 100644
 +
  #endif
 diff --git a/drivers/gpu/drm/radeon/evergreend.h b/drivers/gpu/drm/radeon/evergreend.h
-index 47f3bd2..52aabf2 100644
+index 47f3bd2753f7..52aabf24d964 100644
 --- a/drivers/gpu/drm/radeon/evergreend.h
 +++ b/drivers/gpu/drm/radeon/evergreend.h
 @@ -81,6 +81,11 @@
@@ -76912,7 +76912,7 @@ index 47f3bd2..52aabf2 100644
  #define CAYMAN_DB_DEPTH_INFO				0x2803C
  #define CAYMAN_PA_SC_AA_CONFIG				0x28BE0
 diff --git a/drivers/gpu/drm/radeon/ni.c b/drivers/gpu/drm/radeon/ni.c
-index 77e6fb1..461262e 100644
+index 77e6fb1f9f20..461262eee79a 100644
 --- a/drivers/gpu/drm/radeon/ni.c
 +++ b/drivers/gpu/drm/radeon/ni.c
 @@ -42,6 +42,8 @@ extern void evergreen_irq_suspend(struct radeon_device *rdev);
@@ -77892,7 +77892,7 @@ index 77e6fb1..461262e 100644
 +	writeq(addr, ptr + (pfn * 8));
 +}
 diff --git a/drivers/gpu/drm/radeon/nid.h b/drivers/gpu/drm/radeon/nid.h
-index 4672869..d90b8b7 100644
+index 4672869cdb26..d90b8b77f9bc 100644
 --- a/drivers/gpu/drm/radeon/nid.h
 +++ b/drivers/gpu/drm/radeon/nid.h
 @@ -42,6 +42,13 @@
@@ -77987,7 +77987,7 @@ index 4672869..d90b8b7 100644
  #define	PACKET3_PREAMBLE_CNTL				0x4A
  #              define PACKET3_PREAMBLE_BEGIN_CLEAR_STATE     (2 << 28)
 diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
-index dfd1267..8ec5b85 100644
+index dfd12670218c..8ec5b8553873 100644
 --- a/drivers/gpu/drm/radeon/r100.c
 +++ b/drivers/gpu/drm/radeon/r100.c
 @@ -65,6 +65,40 @@ MODULE_FIRMWARE(FIRMWARE_R520);
@@ -78701,7 +78701,7 @@ index dfd1267..8ec5b85 100644
  	if (r) {
  		/* Somethings want wront with the accel init stop accel */
 diff --git a/drivers/gpu/drm/radeon/r200.c b/drivers/gpu/drm/radeon/r200.c
-index a1f3ba0..a59cc47 100644
+index a1f3ba063c2d..a59cc474d537 100644
 --- a/drivers/gpu/drm/radeon/r200.c
 +++ b/drivers/gpu/drm/radeon/r200.c
 @@ -87,6 +87,7 @@ int r200_copy_dma(struct radeon_device *rdev,
@@ -78801,7 +78801,7 @@ index a1f3ba0..a59cc47 100644
  		track->cb[0].pitch = idx_value & RADEON_COLORPITCH_MASK;
  		track->cb_dirty = true;
 diff --git a/drivers/gpu/drm/radeon/r300.c b/drivers/gpu/drm/radeon/r300.c
-index 441570b..63b53aa 100644
+index 441570b9b42d..63b53aa9536f 100644
 --- a/drivers/gpu/drm/radeon/r300.c
 +++ b/drivers/gpu/drm/radeon/r300.c
 @@ -105,8 +105,8 @@ int rv370_pcie_gart_init(struct radeon_device *rdev)
@@ -79119,7 +79119,7 @@ index 441570b..63b53aa 100644
  	if (r) {
  		/* Somethings want wront with the accel init stop accel */
 diff --git a/drivers/gpu/drm/radeon/r420.c b/drivers/gpu/drm/radeon/r420.c
-index 5b219b8..1a9347f 100644
+index 5b219b83d4e2..1a9347fdd15e 100644
 --- a/drivers/gpu/drm/radeon/r420.c
 +++ b/drivers/gpu/drm/radeon/r420.c
 @@ -199,6 +199,8 @@ static void r420_clock_resume(struct radeon_device *rdev)
@@ -79242,7 +79242,7 @@ index 5b219b8..1a9347f 100644
  	if (r) {
  		/* Somethings want wront with the accel init stop accel */
 diff --git a/drivers/gpu/drm/radeon/r500_reg.h b/drivers/gpu/drm/radeon/r500_reg.h
-index fc43705..ec576aa 100644
+index fc437059918f..ec576aaafb73 100644
 --- a/drivers/gpu/drm/radeon/r500_reg.h
 +++ b/drivers/gpu/drm/radeon/r500_reg.h
 @@ -351,6 +351,8 @@
@@ -79271,7 +79271,7 @@ index fc43705..ec576aa 100644
  #   define AVIVO_LVTMA_CNTL_HPD_SELECT           (1 << 8)
  #   define AVIVO_LVTMA_CNTL_SYNC_PHASE           (1 << 12)
 diff --git a/drivers/gpu/drm/radeon/r520.c b/drivers/gpu/drm/radeon/r520.c
-index f36a5c9..57be784 100644
+index f36a5c9b82f0..57be78461ab5 100644
 --- a/drivers/gpu/drm/radeon/r520.c
 +++ b/drivers/gpu/drm/radeon/r520.c
 @@ -33,7 +33,7 @@
@@ -79354,7 +79354,7 @@ index f36a5c9..57be784 100644
  	if (r) {
  		/* Somethings want wront with the accel init stop accel */
 diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c
-index e5299a0..9c7062d 100644
+index e5299a04da9c..9c7062d970ee 100644
 --- a/drivers/gpu/drm/radeon/r600.c
 +++ b/drivers/gpu/drm/radeon/r600.c
 @@ -49,6 +49,7 @@
@@ -80058,7 +80058,7 @@ index e5299a0..9c7062d 100644
  #endif
  
 diff --git a/drivers/gpu/drm/radeon/r600_audio.c b/drivers/gpu/drm/radeon/r600_audio.c
-index 846fae5..24e3939 100644
+index 846fae576399..24e393993676 100644
 --- a/drivers/gpu/drm/radeon/r600_audio.c
 +++ b/drivers/gpu/drm/radeon/r600_audio.c
 @@ -36,7 +36,7 @@
@@ -80149,7 +80149,7 @@ index 846fae5..24e3939 100644
  }
  
 diff --git a/drivers/gpu/drm/radeon/r600_blit_kms.c b/drivers/gpu/drm/radeon/r600_blit_kms.c
-index e09d281..db38f58 100644
+index e09d2818f949..db38f587f27a 100644
 --- a/drivers/gpu/drm/radeon/r600_blit_kms.c
 +++ b/drivers/gpu/drm/radeon/r600_blit_kms.c
 @@ -30,26 +30,14 @@
@@ -80626,7 +80626,7 @@ index e09d281..db38f58 100644
  
  void r600_kms_blit_copy(struct radeon_device *rdev,
 diff --git a/drivers/gpu/drm/radeon/r600_blit_shaders.c b/drivers/gpu/drm/radeon/r600_blit_shaders.c
-index 73e2c7c..34c8b23 100644
+index 73e2c7c6edbc..34c8b2340f33 100644
 --- a/drivers/gpu/drm/radeon/r600_blit_shaders.c
 +++ b/drivers/gpu/drm/radeon/r600_blit_shaders.c
 @@ -24,6 +24,7 @@
@@ -80638,7 +80638,7 @@ index 73e2c7c..34c8b23 100644
  #include <linux/kernel.h>
  
 diff --git a/drivers/gpu/drm/radeon/r600_cp.c b/drivers/gpu/drm/radeon/r600_cp.c
-index c9db493..75ed17c 100644
+index c9db4931913f..75ed17c96115 100644
 --- a/drivers/gpu/drm/radeon/r600_cp.c
 +++ b/drivers/gpu/drm/radeon/r600_cp.c
 @@ -407,7 +407,7 @@ static void r600_cp_load_microcode(drm_radeon_private_t *dev_priv)
@@ -80678,7 +80678,7 @@ index c9db493..75ed17c 100644
  	/* Set the write pointer delay */
  	RADEON_WRITE(R600_CP_RB_WPTR_DELAY, 0);
 diff --git a/drivers/gpu/drm/radeon/r600_cs.c b/drivers/gpu/drm/radeon/r600_cs.c
-index cb1acff..3cd9b0e 100644
+index cb1acffd2430..3cd9b0e6f5b3 100644
 --- a/drivers/gpu/drm/radeon/r600_cs.c
 +++ b/drivers/gpu/drm/radeon/r600_cs.c
 @@ -52,15 +52,20 @@ struct r600_cs_track {
@@ -81911,7 +81911,7 @@ index cb1acff..3cd9b0e 100644
  		break;
  	default:
 diff --git a/drivers/gpu/drm/radeon/r600_hdmi.c b/drivers/gpu/drm/radeon/r600_hdmi.c
-index 57a825d..61ffe3c 100644
+index 57a825d669b0..61ffe3c76474 100644
 --- a/drivers/gpu/drm/radeon/r600_hdmi.c
 +++ b/drivers/gpu/drm/radeon/r600_hdmi.c
 @@ -320,7 +320,7 @@ void r600_hdmi_setmode(struct drm_encoder *encoder, struct drm_display_mode *mod
@@ -82041,7 +82041,7 @@ index 57a825d..61ffe3c 100644
  			break;
  		default:
 diff --git a/drivers/gpu/drm/radeon/r600d.h b/drivers/gpu/drm/radeon/r600d.h
-index cb29480..02bb238 100644
+index cb29480ad280..02bb23821ce2 100644
 --- a/drivers/gpu/drm/radeon/r600d.h
 +++ b/drivers/gpu/drm/radeon/r600d.h
 @@ -78,6 +78,20 @@
@@ -82116,7 +82116,7 @@ index cb29480..02bb238 100644
  #define	PACKET3_MEM_WRITE				0x3D
  #define	PACKET3_INDIRECT_BUFFER				0x32
 diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
-index 28e69e9..66150f0 100644
+index 28e69e9121f2..66150f0ffc73 100644
 --- a/drivers/gpu/drm/radeon/radeon.h
 +++ b/drivers/gpu/drm/radeon/radeon.h
 @@ -107,6 +107,21 @@ extern int radeon_msi;
@@ -83162,7 +83162,7 @@ index 28e69e9..66150f0 100644
   */
  extern void r600_hdmi_enable(struct drm_encoder *encoder);
 diff --git a/drivers/gpu/drm/radeon/radeon_asic.c b/drivers/gpu/drm/radeon/radeon_asic.c
-index a2e1eae..be4dc2f 100644
+index a2e1eae114ef..be4dc2ff0e40 100644
 --- a/drivers/gpu/drm/radeon/radeon_asic.c
 +++ b/drivers/gpu/drm/radeon/radeon_asic.c
 @@ -114,13 +114,13 @@ void radeon_agp_disable(struct radeon_device *rdev)
@@ -85279,7 +85279,7 @@ index a2e1eae..be4dc2f 100644
  
  	return 0;
 diff --git a/drivers/gpu/drm/radeon/radeon_asic.h b/drivers/gpu/drm/radeon/radeon_asic.h
-index 5aa6670..917e49c 100644
+index 5aa6670d60d0..917e49cb490b 100644
 --- a/drivers/gpu/drm/radeon/radeon_asic.h
 +++ b/drivers/gpu/drm/radeon/radeon_asic.h
 @@ -58,17 +58,20 @@ void r100_fini(struct radeon_device *rdev);
@@ -85529,7 +85529,7 @@ index 5aa6670..917e49c 100644
  
  #endif
 diff --git a/drivers/gpu/drm/radeon/radeon_atombios.c b/drivers/gpu/drm/radeon/radeon_atombios.c
-index 24e9756..1ce6743 100644
+index 473bd330032e..1ce67435918b 100644
 --- a/drivers/gpu/drm/radeon/radeon_atombios.c
 +++ b/drivers/gpu/drm/radeon/radeon_atombios.c
 @@ -56,6 +56,10 @@ extern void
@@ -85554,7 +85554,33 @@ index 24e9756..1ce6743 100644
  		reg = EVERGREEN_DC_GPIO_HPD_A;
  	else
  		reg = AVIVO_DC_GPIO_HPD_A;
-@@ -1880,7 +1886,7 @@ static const char *thermal_controller_names[] = {
+@@ -446,9 +452,7 @@ static bool radeon_atom_apply_quirks(struct drm_device *dev,
+ 	}
+ 
+ 	/* Fujitsu D3003-S2 board lists DVI-I as DVI-D and VGA */
+-	if (((dev->pdev->device == 0x9802) ||
+-	     (dev->pdev->device == 0x9805) ||
+-	     (dev->pdev->device == 0x9806)) &&
++	if (((dev->pdev->device == 0x9802) || (dev->pdev->device == 0x9806)) &&
+ 	    (dev->pdev->subsystem_vendor == 0x1734) &&
+ 	    (dev->pdev->subsystem_device == 0x11bd)) {
+ 		if (*connector_type == DRM_MODE_CONNECTOR_VGA) {
+@@ -459,6 +463,14 @@ static bool radeon_atom_apply_quirks(struct drm_device *dev,
+ 		}
+ 	}
+ 
++	/* Fujitsu D3003-S2 board lists DVI-I as DVI-I and VGA */
++	if ((dev->pdev->device == 0x9805) &&
++	    (dev->pdev->subsystem_vendor == 0x1734) &&
++	    (dev->pdev->subsystem_device == 0x11bd)) {
++		if (*connector_type == DRM_MODE_CONNECTOR_VGA)
++			return false;
++	}
++
+ 	return true;
+ }
+ 
+@@ -1874,7 +1886,7 @@ static const char *thermal_controller_names[] = {
  	"adm1032",
  	"adm1030",
  	"max6649",
@@ -85563,7 +85589,7 @@ index 24e9756..1ce6743 100644
  	"f75375",
  	"asc7xxx",
  };
-@@ -1891,7 +1897,7 @@ static const char *pp_lib_thermal_controller_names[] = {
+@@ -1885,7 +1897,7 @@ static const char *pp_lib_thermal_controller_names[] = {
  	"adm1032",
  	"adm1030",
  	"max6649",
@@ -85572,7 +85598,7 @@ index 24e9756..1ce6743 100644
  	"f75375",
  	"RV6xx",
  	"RV770",
-@@ -1902,6 +1908,8 @@ static const char *pp_lib_thermal_controller_names[] = {
+@@ -1896,6 +1908,8 @@ static const char *pp_lib_thermal_controller_names[] = {
  	"emc2103",
  	"Sumo",
  	"Northern Islands",
@@ -85581,7 +85607,7 @@ index 24e9756..1ce6743 100644
  };
  
  union power_info {
-@@ -1918,6 +1926,7 @@ union pplib_clock_info {
+@@ -1912,6 +1926,7 @@ union pplib_clock_info {
  	struct _ATOM_PPLIB_RS780_CLOCK_INFO rs780;
  	struct _ATOM_PPLIB_EVERGREEN_CLOCK_INFO evergreen;
  	struct _ATOM_PPLIB_SUMO_CLOCK_INFO sumo;
@@ -85589,7 +85615,7 @@ index 24e9756..1ce6743 100644
  };
  
  union pplib_power_state {
-@@ -2177,6 +2186,11 @@ static void radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r
+@@ -2171,6 +2186,11 @@ static void radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r
  				 (controller->ucFanParameters &
  				  ATOM_PP_FANPARAMETERS_NOFAN) ? "without" : "with");
  			rdev->pm.int_thermal_type = THERMAL_TYPE_NI;
@@ -85601,7 +85627,7 @@ index 24e9756..1ce6743 100644
  		} else if ((controller->ucType ==
  			    ATOM_PP_THERMALCONTROLLER_EXTERNAL_GPIO) ||
  			   (controller->ucType ==
-@@ -2297,6 +2311,7 @@ static bool radeon_atombios_parse_pplib_clock_info(struct radeon_device *rdev,
+@@ -2291,6 +2311,7 @@ static bool radeon_atombios_parse_pplib_clock_info(struct radeon_device *rdev,
  						   union pplib_clock_info *clock_info)
  {
  	u32 sclk, mclk;
@@ -85609,7 +85635,7 @@ index 24e9756..1ce6743 100644
  
  	if (rdev->flags & RADEON_IS_IGP) {
  		if (rdev->family >= CHIP_PALM) {
-@@ -2308,6 +2323,19 @@ static bool radeon_atombios_parse_pplib_clock_info(struct radeon_device *rdev,
+@@ -2302,6 +2323,19 @@ static bool radeon_atombios_parse_pplib_clock_info(struct radeon_device *rdev,
  			sclk |= clock_info->rs780.ucLowEngineClockHigh << 16;
  			rdev->pm.power_state[state_index].clock_info[mode_index].sclk = sclk;
  		}
@@ -85629,7 +85655,7 @@ index 24e9756..1ce6743 100644
  	} else if (ASIC_IS_DCE4(rdev)) {
  		sclk = le16_to_cpu(clock_info->evergreen.usEngineClockLow);
  		sclk |= clock_info->evergreen.ucEngineClockHigh << 16;
-@@ -2335,11 +2363,18 @@ static bool radeon_atombios_parse_pplib_clock_info(struct radeon_device *rdev,
+@@ -2329,11 +2363,18 @@ static bool radeon_atombios_parse_pplib_clock_info(struct radeon_device *rdev,
  	}
  
  	/* patch up vddc if necessary */
@@ -85652,7 +85678,7 @@ index 24e9756..1ce6743 100644
  	}
  
  	if (rdev->flags & RADEON_IS_IGP) {
-@@ -2451,9 +2486,9 @@ static int radeon_atombios_parse_power_table_6(struct radeon_device *rdev)
+@@ -2445,9 +2486,9 @@ static int radeon_atombios_parse_power_table_6(struct radeon_device *rdev)
  	int i, j, non_clock_array_index, clock_array_index;
  	int state_index = 0, mode_index = 0;
  	union pplib_clock_info *clock_info;
@@ -85665,7 +85691,7 @@ index 24e9756..1ce6743 100644
  	bool valid;
  	union power_info *power_info;
  	int index = GetIndexIntoMasterTable(DATA, PowerPlayInfo);
-@@ -2467,13 +2502,13 @@ static int radeon_atombios_parse_power_table_6(struct radeon_device *rdev)
+@@ -2461,13 +2502,13 @@ static int radeon_atombios_parse_power_table_6(struct radeon_device *rdev)
  	power_info = (union power_info *)(mode_info->atom_context->bios + data_offset);
  
  	radeon_atombios_add_pplib_thermal_controller(rdev, &power_info->pplib.sThermalController);
@@ -85682,7 +85708,7 @@ index 24e9756..1ce6743 100644
  		(mode_info->atom_context->bios + data_offset +
  		 le16_to_cpu(power_info->pplib.usNonClockInfoArrayOffset));
  	if (state_array->ucNumEntries == 0)
-@@ -2499,7 +2534,7 @@ static int radeon_atombios_parse_power_table_6(struct radeon_device *rdev)
+@@ -2493,7 +2534,7 @@ static int radeon_atombios_parse_power_table_6(struct radeon_device *rdev)
  			for (j = 0; j < power_state->v2.ucNumDPMLevels; j++) {
  				clock_array_index = power_state->v2.clockInfoIndex[j];
  				clock_info = (union pplib_clock_info *)
@@ -85691,7 +85717,7 @@ index 24e9756..1ce6743 100644
  				valid = radeon_atombios_parse_pplib_clock_info(rdev,
  									       state_index, mode_index,
  									       clock_info);
-@@ -2659,6 +2694,7 @@ union set_voltage {
+@@ -2653,6 +2694,7 @@ union set_voltage {
  	struct _SET_VOLTAGE_PS_ALLOCATION alloc;
  	struct _SET_VOLTAGE_PARAMETERS v1;
  	struct _SET_VOLTAGE_PARAMETERS_V2 v2;
@@ -85699,7 +85725,7 @@ index 24e9756..1ce6743 100644
  };
  
  void radeon_atom_set_voltage(struct radeon_device *rdev, u16 voltage_level, u8 voltage_type)
-@@ -2685,6 +2721,11 @@ void radeon_atom_set_voltage(struct radeon_device *rdev, u16 voltage_level, u8 v
+@@ -2679,6 +2721,11 @@ void radeon_atom_set_voltage(struct radeon_device *rdev, u16 voltage_level, u8 v
  		args.v2.ucVoltageMode = SET_ASIC_VOLTAGE_MODE_SET_VOLTAGE;
  		args.v2.usVoltageLevel = cpu_to_le16(voltage_level);
  		break;
@@ -85711,7 +85737,7 @@ index 24e9756..1ce6743 100644
  	default:
  		DRM_ERROR("Unknown table version %d, %d\n", frev, crev);
  		return;
-@@ -2693,8 +2734,8 @@ void radeon_atom_set_voltage(struct radeon_device *rdev, u16 voltage_level, u8 v
+@@ -2687,8 +2734,8 @@ void radeon_atom_set_voltage(struct radeon_device *rdev, u16 voltage_level, u8 v
  	atom_execute_table(rdev->mode_info.atom_context, index, (uint32_t *)&args);
  }
  
@@ -85722,7 +85748,7 @@ index 24e9756..1ce6743 100644
  {
  	union set_voltage args;
  	int index = GetIndexIntoMasterTable(COMMAND, SetVoltage);
-@@ -2715,6 +2756,15 @@ int radeon_atom_get_max_vddc(struct radeon_device *rdev,
+@@ -2709,6 +2756,15 @@ int radeon_atom_get_max_vddc(struct radeon_device *rdev,
  
  		*voltage = le16_to_cpu(args.v2.usVoltageLevel);
  		break;
@@ -85738,7 +85764,7 @@ index 24e9756..1ce6743 100644
  	default:
  		DRM_ERROR("Unknown table version %d, %d\n", frev, crev);
  		return -EINVAL;
-@@ -2970,6 +3020,20 @@ radeon_atombios_connected_scratch_regs(struct drm_connector *connector,
+@@ -2964,6 +3020,20 @@ radeon_atombios_connected_scratch_regs(struct drm_connector *connector,
  			bios_6_scratch &= ~ATOM_S6_ACC_REQ_DFP5;
  		}
  	}
@@ -85759,7 +85785,7 @@ index 24e9756..1ce6743 100644
  
  	if (rdev->family >= CHIP_R600) {
  		WREG32(R600_BIOS_0_SCRATCH, bios_0_scratch);
-@@ -2990,6 +3054,9 @@ radeon_atombios_encoder_crtc_scratch_regs(struct drm_encoder *encoder, int crtc)
+@@ -2984,6 +3054,9 @@ radeon_atombios_encoder_crtc_scratch_regs(struct drm_encoder *encoder, int crtc)
  	struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);
  	uint32_t bios_3_scratch;
  
@@ -85769,7 +85795,7 @@ index 24e9756..1ce6743 100644
  	if (rdev->family >= CHIP_R600)
  		bios_3_scratch = RREG32(R600_BIOS_3_SCRATCH);
  	else
-@@ -3042,6 +3109,9 @@ radeon_atombios_encoder_dpms_scratch_regs(struct drm_encoder *encoder, bool on)
+@@ -3036,6 +3109,9 @@ radeon_atombios_encoder_dpms_scratch_regs(struct drm_encoder *encoder, bool on)
  	struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);
  	uint32_t bios_2_scratch;
  
@@ -85780,7 +85806,7 @@ index 24e9756..1ce6743 100644
  		bios_2_scratch = RREG32(R600_BIOS_2_SCRATCH);
  	else
 diff --git a/drivers/gpu/drm/radeon/radeon_atpx_handler.c b/drivers/gpu/drm/radeon/radeon_atpx_handler.c
-index 2a2cf0b..428bce6 100644
+index 2a2cf0b88a28..428bce6cb4f0 100644
 --- a/drivers/gpu/drm/radeon/radeon_atpx_handler.c
 +++ b/drivers/gpu/drm/radeon/radeon_atpx_handler.c
 @@ -202,6 +202,13 @@ static bool radeon_atpx_detect(void)
@@ -85798,7 +85824,7 @@ index 2a2cf0b..428bce6 100644
  		acpi_get_name(radeon_atpx_priv.atpx_handle, ACPI_FULL_PATHNAME, &buffer);
  		printk(KERN_INFO "VGA switcheroo: detected switching method %s handle\n",
 diff --git a/drivers/gpu/drm/radeon/radeon_benchmark.c b/drivers/gpu/drm/radeon/radeon_benchmark.c
-index 441de38..89a0eec 100644
+index 441de38b0203..89a0eeca0e23 100644
 --- a/drivers/gpu/drm/radeon/radeon_benchmark.c
 +++ b/drivers/gpu/drm/radeon/radeon_benchmark.c
 @@ -43,17 +43,19 @@ static int radeon_benchmark_do_move(struct radeon_device *rdev, unsigned size,
@@ -85896,7 +85922,7 @@ index 441de38..89a0eec 100644
  					      RADEON_GEM_DOMAIN_VRAM,
  					      RADEON_GEM_DOMAIN_VRAM);
 diff --git a/drivers/gpu/drm/radeon/radeon_bios.c b/drivers/gpu/drm/radeon/radeon_bios.c
-index 6e98703..ef56e4e 100644
+index 6e9870341467..ef56e4ed89d2 100644
 --- a/drivers/gpu/drm/radeon/radeon_bios.c
 +++ b/drivers/gpu/drm/radeon/radeon_bios.c
 @@ -177,20 +177,6 @@ static bool radeon_atrm_get_bios(struct radeon_device *rdev)
@@ -85922,7 +85948,7 @@ index 6e98703..ef56e4e 100644
  
 diff --git a/drivers/gpu/drm/radeon/radeon_blit_common.h b/drivers/gpu/drm/radeon/radeon_blit_common.h
 new file mode 100644
-index 0000000..4ecbe72
+index 000000000000..4ecbe72c9d2d
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/radeon_blit_common.h
 @@ -0,0 +1,44 @@
@@ -85971,7 +85997,7 @@ index 0000000..4ecbe72
 +#define __RADEON_BLIT_COMMON_H__
 +#endif
 diff --git a/drivers/gpu/drm/radeon/radeon_clocks.c b/drivers/gpu/drm/radeon/radeon_clocks.c
-index b6e18c8..9c6b29a 100644
+index b6e18c8db9f5..9c6b29a41927 100644
 --- a/drivers/gpu/drm/radeon/radeon_clocks.c
 +++ b/drivers/gpu/drm/radeon/radeon_clocks.c
 @@ -334,7 +334,7 @@ void radeon_get_clock_info(struct drm_device *dev)
@@ -86088,7 +86114,7 @@ index b6e18c8..9c6b29a 100644
  			tmp = RREG32_PLL(RADEON_VCLK_ECP_CNTL);
  			tmp &= ~(RADEON_PIXCLK_ALWAYS_ONb |
 diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c
-index 87a677e..cf5dd63 100644
+index 87a677e91927..cf5dd63a95c3 100644
 --- a/drivers/gpu/drm/radeon/radeon_combios.c
 +++ b/drivers/gpu/drm/radeon/radeon_combios.c
 @@ -1259,15 +1259,10 @@ struct radeon_encoder_lvds *radeon_combios_get_lvds_info(struct radeon_encoder
@@ -86158,7 +86184,7 @@ index 87a677e..cf5dd63 100644
  	table = combios_get_table_offset(dev, COMBIOS_DYN_CLK_1_TABLE);
  	if (table)
 diff --git a/drivers/gpu/drm/radeon/radeon_connectors.c b/drivers/gpu/drm/radeon/radeon_connectors.c
-index 6303fc8..9184bbe 100644
+index 6303fc8fcb8e..9184bbe7c602 100644
 --- a/drivers/gpu/drm/radeon/radeon_connectors.c
 +++ b/drivers/gpu/drm/radeon/radeon_connectors.c
 @@ -82,11 +82,6 @@ void radeon_connector_hotplug(struct drm_connector *connector)
@@ -86270,7 +86296,7 @@ index 6303fc8..9184bbe 100644
  		kfree(radeon_connector->edid);
  		radeon_connector->edid = NULL;
 diff --git a/drivers/gpu/drm/radeon/radeon_cp.c b/drivers/gpu/drm/radeon/radeon_cp.c
-index 72ae826..0ebb7d4 100644
+index 72ae8266b8e9..0ebb7d4796fa 100644
 --- a/drivers/gpu/drm/radeon/radeon_cp.c
 +++ b/drivers/gpu/drm/radeon/radeon_cp.c
 @@ -2115,6 +2115,8 @@ int radeon_driver_load(struct drm_device *dev, unsigned long flags)
@@ -86283,7 +86309,7 @@ index 72ae826..0ebb7d4 100644
  		dev_priv->flags |= RADEON_IS_AGP;
  	else if (pci_is_pcie(dev->pdev))
 diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c
-index 0ddc08c..f3ee360 100644
+index 0ddc08c058d7..f3ee36036487 100644
 --- a/drivers/gpu/drm/radeon/radeon_cs.c
 +++ b/drivers/gpu/drm/radeon/radeon_cs.c
 @@ -58,7 +58,7 @@ int radeon_cs_parser_relocs(struct radeon_cs_parser *p)
@@ -86747,7 +86773,7 @@ index 0ddc08c..f3ee360 100644
  	radeon_mutex_unlock(&rdev->cs_mutex);
  	return r;
 diff --git a/drivers/gpu/drm/radeon/radeon_cursor.c b/drivers/gpu/drm/radeon/radeon_cursor.c
-index 2132109..8fb6f41 100644
+index 213210984764..8fb6f41bd1f2 100644
 --- a/drivers/gpu/drm/radeon/radeon_cursor.c
 +++ b/drivers/gpu/drm/radeon/radeon_cursor.c
 @@ -197,7 +197,12 @@ int radeon_crtc_cursor_set(struct drm_crtc *crtc,
@@ -86775,7 +86801,7 @@ index 2132109..8fb6f41 100644
  		struct drm_crtc *crtc_p;
  
 diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c
-index 8cde84b..2f555d7 100644
+index e51f09f7a175..2f555d782248 100644
 --- a/drivers/gpu/drm/radeon/radeon_device.c
 +++ b/drivers/gpu/drm/radeon/radeon_device.c
 @@ -89,6 +89,10 @@ static const char radeon_family_name[][16] = {
@@ -86914,7 +86940,15 @@ index 8cde84b..2f555d7 100644
  	/* reset hpd state */
  	radeon_hpd_init(rdev);
  	/* blat the mode back in */
-@@ -999,36 +1028,29 @@ int radeon_gpu_reset(struct radeon_device *rdev)
+@@ -960,7 +989,6 @@ int radeon_resume_kms(struct drm_device *dev)
+ 	}
+ 
+ 	drm_kms_helper_poll_enable(dev);
+-	drm_helper_hpd_irq_event(dev);
+ 	return 0;
+ }
+ 
+@@ -1000,36 +1028,29 @@ int radeon_gpu_reset(struct radeon_device *rdev)
  /*
   * Debugfs
   */
@@ -86957,7 +86991,7 @@ index 8cde84b..2f555d7 100644
  #if defined(CONFIG_DEBUG_FS)
  	drm_debugfs_create_files(files, nfiles,
  				 rdev->ddev->control->debugfs_root,
-@@ -1040,6 +1062,22 @@ int radeon_debugfs_add_files(struct radeon_device *rdev,
+@@ -1041,6 +1062,22 @@ int radeon_debugfs_add_files(struct radeon_device *rdev,
  	return 0;
  }
  
@@ -86980,7 +87014,7 @@ index 8cde84b..2f555d7 100644
  #if defined(CONFIG_DEBUG_FS)
  int radeon_debugfs_init(struct drm_minor *minor)
  {
-@@ -1048,11 +1086,5 @@ int radeon_debugfs_init(struct drm_minor *minor)
+@@ -1049,11 +1086,5 @@ int radeon_debugfs_init(struct drm_minor *minor)
  
  void radeon_debugfs_cleanup(struct drm_minor *minor)
  {
@@ -86993,7 +87027,7 @@ index 8cde84b..2f555d7 100644
  }
  #endif
 diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c
-index ad5d774..adc9bfd 100644
+index ad5d7749ede3..adc9bfd4d82f 100644
 --- a/drivers/gpu/drm/radeon/radeon_display.c
 +++ b/drivers/gpu/drm/radeon/radeon_display.c
 @@ -303,8 +303,17 @@ void radeon_crtc_handle_flip(struct radeon_device *rdev, int crtc_id)
@@ -87250,7 +87284,7 @@ index ad5d774..adc9bfd 100644
  	/* initialize hpd */
  	radeon_hpd_init(rdev);
 diff --git a/drivers/gpu/drm/radeon/radeon_drv.c b/drivers/gpu/drm/radeon/radeon_drv.c
-index 71499fc..15250fb 100644
+index 71499fc3daf5..15250fbee7d8 100644
 --- a/drivers/gpu/drm/radeon/radeon_drv.c
 +++ b/drivers/gpu/drm/radeon/radeon_drv.c
 @@ -54,9 +54,13 @@
@@ -87383,7 +87417,7 @@ index 71499fc..15250fb 100644
  	.desc = DRIVER_DESC,
  	.date = DRIVER_DATE,
 diff --git a/drivers/gpu/drm/radeon/radeon_encoders.c b/drivers/gpu/drm/radeon/radeon_encoders.c
-index 4b27efa..7467069 100644
+index 4b27efa4405b..74670696277d 100644
 --- a/drivers/gpu/drm/radeon/radeon_encoders.c
 +++ b/drivers/gpu/drm/radeon/radeon_encoders.c
 @@ -202,6 +202,22 @@ radeon_get_connector_for_encoder(struct drm_encoder *encoder)
@@ -87475,7 +87509,7 @@ index 4b27efa..7467069 100644
 +}
 +
 diff --git a/drivers/gpu/drm/radeon/radeon_family.h b/drivers/gpu/drm/radeon/radeon_family.h
-index ec2f1ea..d1fafea 100644
+index ec2f1ea84f81..d1fafeabea09 100644
 --- a/drivers/gpu/drm/radeon/radeon_family.h
 +++ b/drivers/gpu/drm/radeon/radeon_family.h
 @@ -87,6 +87,10 @@ enum radeon_family {
@@ -87490,7 +87524,7 @@ index ec2f1ea..d1fafea 100644
  };
  
 diff --git a/drivers/gpu/drm/radeon/radeon_fb.c b/drivers/gpu/drm/radeon/radeon_fb.c
-index 0b7b486..5906914 100644
+index 0b7b486c97e8..5906914a78bc 100644
 --- a/drivers/gpu/drm/radeon/radeon_fb.c
 +++ b/drivers/gpu/drm/radeon/radeon_fb.c
 @@ -103,7 +103,7 @@ static void radeonfb_destroy_pinned_object(struct drm_gem_object *gobj)
@@ -87624,7 +87658,7 @@ index 0b7b486..5906914 100644
  	vga_switcheroo_client_fb_set(rdev->ddev->pdev, info);
  	return 0;
 diff --git a/drivers/gpu/drm/radeon/radeon_fence.c b/drivers/gpu/drm/radeon/radeon_fence.c
-index 76ec0e9..4bd36a3 100644
+index 76ec0e9ed8ae..4bd36a354fbe 100644
 --- a/drivers/gpu/drm/radeon/radeon_fence.c
 +++ b/drivers/gpu/drm/radeon/radeon_fence.c
 @@ -40,32 +40,24 @@
@@ -88146,7 +88180,7 @@ index 76ec0e9..4bd36a3 100644
  	return 0;
  }
 diff --git a/drivers/gpu/drm/radeon/radeon_gart.c b/drivers/gpu/drm/radeon/radeon_gart.c
-index d2572108..2a4c592 100644
+index d25721086e4b..2a4c592a75a4 100644
 --- a/drivers/gpu/drm/radeon/radeon_gart.c
 +++ b/drivers/gpu/drm/radeon/radeon_gart.c
 @@ -157,9 +157,6 @@ void radeon_gart_unbind(struct radeon_device *rdev, unsigned offset,
@@ -88645,7 +88679,7 @@ index d2572108..2a4c592 100644
 +	mutex_unlock(&vm->mutex);
 +}
 diff --git a/drivers/gpu/drm/radeon/radeon_gem.c b/drivers/gpu/drm/radeon/radeon_gem.c
-index aa1ca2d..c7008b5 100644
+index aa1ca2dea42f..c7008b5210f7 100644
 --- a/drivers/gpu/drm/radeon/radeon_gem.c
 +++ b/drivers/gpu/drm/radeon/radeon_gem.c
 @@ -75,32 +75,6 @@ int radeon_gem_object_create(struct radeon_device *rdev, int size,
@@ -88857,7 +88891,7 @@ index aa1ca2d..c7008b5 100644
  			    struct drm_device *dev,
  			    struct drm_mode_create_dumb *args)
 diff --git a/drivers/gpu/drm/radeon/radeon_i2c.c b/drivers/gpu/drm/radeon/radeon_i2c.c
-index 894b5f0..19d68c5 100644
+index 894b5f0fb08c..19d68c55c7e6 100644
 --- a/drivers/gpu/drm/radeon/radeon_i2c.c
 +++ b/drivers/gpu/drm/radeon/radeon_i2c.c
 @@ -26,10 +26,15 @@
@@ -88953,7 +88987,7 @@ index 894b5f0..19d68c5 100644
  	snprintf(i2c->adapter.name, sizeof(i2c->adapter.name),
  		 "Radeon aux bus %s", name);
 diff --git a/drivers/gpu/drm/radeon/radeon_irq_kms.c b/drivers/gpu/drm/radeon/radeon_irq_kms.c
-index 931a8a9..77c456d 100644
+index 931a8a9efb63..77c456d624bf 100644
 --- a/drivers/gpu/drm/radeon/radeon_irq_kms.c
 +++ b/drivers/gpu/drm/radeon/radeon_irq_kms.c
 @@ -51,11 +51,6 @@ static void radeon_hotplug_work_func(struct work_struct *work)
@@ -89036,7 +89070,7 @@ index 931a8a9..77c456d 100644
  	}
  	spin_unlock_irqrestore(&rdev->irq.sw_lock, irqflags);
 diff --git a/drivers/gpu/drm/radeon/radeon_kms.c b/drivers/gpu/drm/radeon/radeon_kms.c
-index 4bb9e27..b731686 100644
+index 4bb9e274c878..b7316869f59e 100644
 --- a/drivers/gpu/drm/radeon/radeon_kms.c
 +++ b/drivers/gpu/drm/radeon/radeon_kms.c
 @@ -61,6 +61,8 @@ int radeon_driver_load_kms(struct drm_device *dev, unsigned long flags)
@@ -89198,7 +89232,7 @@ index 4bb9e27..b731686 100644
  };
  int radeon_max_kms_ioctl = DRM_ARRAY_SIZE(radeon_ioctls_kms);
 diff --git a/drivers/gpu/drm/radeon/radeon_legacy_crtc.c b/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
-index a9238b0..b44bbf5 100644
+index a9238b009d1a..b44bbf50760f 100644
 --- a/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
 +++ b/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
 @@ -420,7 +420,9 @@ retry:
@@ -89250,7 +89284,7 @@ index a9238b0..b44bbf5 100644
  
  static const struct drm_crtc_helper_funcs legacy_helper_funcs = {
 diff --git a/drivers/gpu/drm/radeon/radeon_legacy_encoders.c b/drivers/gpu/drm/radeon/radeon_legacy_encoders.c
-index a906803..53b07a3 100644
+index a9068031ef5b..53b07a3a8bb3 100644
 --- a/drivers/gpu/drm/radeon/radeon_legacy_encoders.c
 +++ b/drivers/gpu/drm/radeon/radeon_legacy_encoders.c
 @@ -88,7 +88,7 @@ static void radeon_legacy_lvds_update(struct drm_encoder *encoder, int mode)
@@ -89303,7 +89337,7 @@ index a906803..53b07a3 100644
  	if (ASIC_IS_R300(rdev)) {
  		if (RREG32(RADEON_DAC_CNTL2) & RADEON_DAC2_CMP_OUT_B)
 diff --git a/drivers/gpu/drm/radeon/radeon_mode.h b/drivers/gpu/drm/radeon/radeon_mode.h
-index bb42df4..65da706 100644
+index bb42df4df1c8..65da706bc7be 100644
 --- a/drivers/gpu/drm/radeon/radeon_mode.h
 +++ b/drivers/gpu/drm/radeon/radeon_mode.h
 @@ -268,6 +268,7 @@ struct radeon_crtc {
@@ -89346,7 +89380,7 @@ index bb42df4..65da706 100644
  
  int radeonfb_remove(struct drm_device *dev, struct drm_framebuffer *fb);
 diff --git a/drivers/gpu/drm/radeon/radeon_object.c b/drivers/gpu/drm/radeon/radeon_object.c
-index 3e35bbe..df6a4db 100644
+index 3e35bbe96e3a..df6a4dbd93f8 100644
 --- a/drivers/gpu/drm/radeon/radeon_object.c
 +++ b/drivers/gpu/drm/radeon/radeon_object.c
 @@ -46,6 +46,20 @@ static void radeon_bo_clear_surface_reg(struct radeon_bo *bo);
@@ -89559,7 +89593,7 @@ index 3e35bbe..df6a4db 100644
 +	return NULL;
 +}
 diff --git a/drivers/gpu/drm/radeon/radeon_object.h b/drivers/gpu/drm/radeon/radeon_object.h
-index fb3f433..f9104be 100644
+index fb3f433a7bb5..f9104be88d7c 100644
 --- a/drivers/gpu/drm/radeon/radeon_object.h
 +++ b/drivers/gpu/drm/radeon/radeon_object.h
 @@ -83,6 +83,16 @@ static inline bool radeon_bo_is_reserved(struct radeon_bo *bo)
@@ -89607,7 +89641,7 @@ index fb3f433..f9104be 100644
 +
  #endif
 diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c
-index b0a0ee4..4c5a793 100644
+index b0a0ee458563..4c5a7934b3e3 100644
 --- a/drivers/gpu/drm/radeon/radeon_pm.c
 +++ b/drivers/gpu/drm/radeon/radeon_pm.c
 @@ -221,7 +221,7 @@ static void radeon_set_power_state(struct radeon_device *rdev)
@@ -89722,7 +89756,7 @@ index b0a0ee4..4c5a793 100644
  
  	return 0;
 diff --git a/drivers/gpu/drm/radeon/radeon_reg.h b/drivers/gpu/drm/radeon/radeon_reg.h
-index b4ce864..5d8f735 100644
+index b4ce86455707..5d8f735d6aaf 100644
 --- a/drivers/gpu/drm/radeon/radeon_reg.h
 +++ b/drivers/gpu/drm/radeon/radeon_reg.h
 @@ -56,6 +56,7 @@
@@ -89746,7 +89780,7 @@ index b4ce864..5d8f735 100644
  #       define RADEON_CRTC2_VBLANK_SAVE_CLEAR  (1 <<  1)
  #define RADEON_CRTC_V_SYNC_STRT_WID         0x020c
 diff --git a/drivers/gpu/drm/radeon/radeon_ring.c b/drivers/gpu/drm/radeon/radeon_ring.c
-index 65be5e8..33eff8b 100644
+index 65be5e8aaee2..33eff8bcabeb 100644
 --- a/drivers/gpu/drm/radeon/radeon_ring.c
 +++ b/drivers/gpu/drm/radeon/radeon_ring.c
 @@ -34,6 +34,7 @@
@@ -90456,7 +90490,7 @@ index 65be5e8..33eff8b 100644
  					RADEON_IB_POOL_SIZE);
 diff --git a/drivers/gpu/drm/radeon/radeon_sa.c b/drivers/gpu/drm/radeon/radeon_sa.c
 new file mode 100644
-index 0000000..4cce47e
+index 000000000000..4cce47e7dc0d
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/radeon_sa.c
 @@ -0,0 +1,189 @@
@@ -90651,7 +90685,7 @@ index 0000000..4cce47e
 +}
 diff --git a/drivers/gpu/drm/radeon/radeon_semaphore.c b/drivers/gpu/drm/radeon/radeon_semaphore.c
 new file mode 100644
-index 0000000..61dd4e3
+index 000000000000..61dd4e3c9209
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/radeon_semaphore.c
 @@ -0,0 +1,178 @@
@@ -90834,7 +90868,7 @@ index 0000000..61dd4e3
 +	write_unlock_irqrestore(&rdev->semaphore_drv.lock, irq_flags);
 +}
 diff --git a/drivers/gpu/drm/radeon/radeon_test.c b/drivers/gpu/drm/radeon/radeon_test.c
-index 602fa35..dc5dcf4 100644
+index 602fa3541c45..dc5dcf483aa3 100644
 --- a/drivers/gpu/drm/radeon/radeon_test.c
 +++ b/drivers/gpu/drm/radeon/radeon_test.c
 @@ -42,7 +42,9 @@ void radeon_test_moves(struct radeon_device *rdev)
@@ -91132,7 +91166,7 @@ index 602fa35..dc5dcf4 100644
 +	}
 +}
 diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon/radeon_ttm.c
-index 0b5468b..15042d0 100644
+index 0b5468bfaf54..15042d0ca035 100644
 --- a/drivers/gpu/drm/radeon/radeon_ttm.c
 +++ b/drivers/gpu/drm/radeon/radeon_ttm.c
 @@ -114,24 +114,6 @@ static void radeon_ttm_global_fini(struct radeon_device *rdev)
@@ -91572,7 +91606,7 @@ index 0b5468b..15042d0 100644
  #endif
  	return 0;
 diff --git a/drivers/gpu/drm/radeon/reg_srcs/cayman b/drivers/gpu/drm/radeon/reg_srcs/cayman
-index 2316977..a072fa8 100644
+index 2316977eb924..a072fa8c46b0 100644
 --- a/drivers/gpu/drm/radeon/reg_srcs/cayman
 +++ b/drivers/gpu/drm/radeon/reg_srcs/cayman
 @@ -1,5 +1,9 @@
@@ -91639,7 +91673,7 @@ index 2316977..a072fa8 100644
  0x00028C90 CB_COLOR0_CLEAR_WORD1
  0x00028C94 CB_COLOR0_CLEAR_WORD2
 diff --git a/drivers/gpu/drm/radeon/reg_srcs/evergreen b/drivers/gpu/drm/radeon/reg_srcs/evergreen
-index 161737a2..b912a37 100644
+index 161737a28c23..b912a37689bf 100644
 --- a/drivers/gpu/drm/radeon/reg_srcs/evergreen
 +++ b/drivers/gpu/drm/radeon/reg_srcs/evergreen
 @@ -4,6 +4,9 @@ evergreen 0x9400
@@ -91706,7 +91740,7 @@ index 161737a2..b912a37 100644
  0x00028C90 CB_COLOR0_CLEAR_WORD1
  0x00028C94 CB_COLOR0_CLEAR_WORD2
 diff --git a/drivers/gpu/drm/radeon/reg_srcs/r600 b/drivers/gpu/drm/radeon/reg_srcs/r600
-index 0380c5c..5e659b0 100644
+index 0380c5c15f80..5e659b034d9a 100644
 --- a/drivers/gpu/drm/radeon/reg_srcs/r600
 +++ b/drivers/gpu/drm/radeon/reg_srcs/r600
 @@ -3,6 +3,9 @@ r600 0x9400
@@ -91766,7 +91800,7 @@ index 0380c5c..5e659b0 100644
  0x0002842C CB_FOG_BLUE
  0x00028428 CB_FOG_GREEN
 diff --git a/drivers/gpu/drm/radeon/rs400.c b/drivers/gpu/drm/radeon/rs400.c
-index c087434..b367d1d 100644
+index c0874341b1a0..b367d1d46fd0 100644
 --- a/drivers/gpu/drm/radeon/rs400.c
 +++ b/drivers/gpu/drm/radeon/rs400.c
 @@ -413,6 +413,12 @@ static int rs400_startup(struct radeon_device *rdev)
@@ -91846,7 +91880,7 @@ index c087434..b367d1d 100644
  	if (r) {
  		/* Somethings want wront with the accel init stop accel */
 diff --git a/drivers/gpu/drm/radeon/rs600.c b/drivers/gpu/drm/radeon/rs600.c
-index fc37558..07b6dbf 100644
+index fc37558dbd2a..07b6dbf68152 100644
 --- a/drivers/gpu/drm/radeon/rs600.c
 +++ b/drivers/gpu/drm/radeon/rs600.c
 @@ -46,6 +46,25 @@
@@ -92029,7 +92063,7 @@ index fc37558..07b6dbf 100644
  	if (r) {
  		/* Somethings want wront with the accel init stop accel */
 diff --git a/drivers/gpu/drm/radeon/rs690.c b/drivers/gpu/drm/radeon/rs690.c
-index 414a681..c46900c 100644
+index 414a6812b5ba..c46900c2c1aa 100644
 --- a/drivers/gpu/drm/radeon/rs690.c
 +++ b/drivers/gpu/drm/radeon/rs690.c
 @@ -31,7 +31,7 @@
@@ -92142,7 +92176,7 @@ index 414a681..c46900c 100644
  	if (r) {
  		/* Somethings want wront with the accel init stop accel */
 diff --git a/drivers/gpu/drm/radeon/rv515.c b/drivers/gpu/drm/radeon/rv515.c
-index 9103638..0532bbe 100644
+index 9103638b9188..0532bbee9f95 100644
 --- a/drivers/gpu/drm/radeon/rv515.c
 +++ b/drivers/gpu/drm/radeon/rv515.c
 @@ -53,46 +53,46 @@ void rv515_debugfs(struct radeon_device *rdev)
@@ -92347,7 +92381,7 @@ index 9103638..0532bbe 100644
  	if (r) {
  		/* Somethings want wront with the accel init stop accel */
 diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c
-index 3e72074..1ec1255 100644
+index 3e7207413892..1ec1255520ad 100644
 --- a/drivers/gpu/drm/radeon/rv770.c
 +++ b/drivers/gpu/drm/radeon/rv770.c
 @@ -359,7 +359,7 @@ static int rv770_cp_load_microcode(struct radeon_device *rdev)
@@ -92536,7 +92570,7 @@ index 3e72074..1ec1255 100644
  	radeon_bo_fini(rdev);
 diff --git a/drivers/gpu/drm/radeon/si.c b/drivers/gpu/drm/radeon/si.c
 new file mode 100644
-index 0000000..6609a23
+index 000000000000..6609a23983d0
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/si.c
 @@ -0,0 +1,4157 @@
@@ -96699,7 +96733,7 @@ index 0000000..6609a23
 +
 diff --git a/drivers/gpu/drm/radeon/si_blit_shaders.c b/drivers/gpu/drm/radeon/si_blit_shaders.c
 new file mode 100644
-index 0000000..ec415e7
+index 000000000000..ec415e7dfa4b
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/si_blit_shaders.c
 @@ -0,0 +1,253 @@
@@ -96958,7 +96992,7 @@ index 0000000..ec415e7
 +const u32 si_default_size = ARRAY_SIZE(si_default_state);
 diff --git a/drivers/gpu/drm/radeon/si_blit_shaders.h b/drivers/gpu/drm/radeon/si_blit_shaders.h
 new file mode 100644
-index 0000000..c739e51
+index 000000000000..c739e51e3961
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/si_blit_shaders.h
 @@ -0,0 +1,32 @@
@@ -96996,7 +97030,7 @@ index 0000000..c739e51
 +#endif
 diff --git a/drivers/gpu/drm/radeon/si_reg.h b/drivers/gpu/drm/radeon/si_reg.h
 new file mode 100644
-index 0000000..eda938a
+index 000000000000..eda938a7cb6e
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/si_reg.h
 @@ -0,0 +1,33 @@
@@ -97035,7 +97069,7 @@ index 0000000..eda938a
 +#endif
 diff --git a/drivers/gpu/drm/radeon/sid.h b/drivers/gpu/drm/radeon/sid.h
 new file mode 100644
-index 0000000..a9fcbe4
+index 000000000000..a9fcbe44b3ee
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/sid.h
 @@ -0,0 +1,893 @@
@@ -97933,7 +97967,7 @@ index 0000000..a9fcbe4
 +
 +#endif
 diff --git a/drivers/gpu/drm/savage/savage_bci.c b/drivers/gpu/drm/savage/savage_bci.c
-index cb1ee4e..2a25888 100644
+index cb1ee4e0050a..2a258887e419 100644
 --- a/drivers/gpu/drm/savage/savage_bci.c
 +++ b/drivers/gpu/drm/savage/savage_bci.c
 @@ -547,6 +547,8 @@ int savage_driver_load(struct drm_device *dev, unsigned long chipset)
@@ -97946,7 +97980,7 @@ index cb1ee4e..2a25888 100644
  }
  
 diff --git a/drivers/gpu/drm/savage/savage_drv.c b/drivers/gpu/drm/savage/savage_drv.c
-index 5468d1c..89afe0b 100644
+index 5468d1cd3296..89afe0b83643 100644
 --- a/drivers/gpu/drm/savage/savage_drv.c
 +++ b/drivers/gpu/drm/savage/savage_drv.c
 @@ -35,6 +35,17 @@ static struct pci_device_id pciidlist[] = {
@@ -97987,7 +98021,7 @@ index 5468d1c..89afe0b 100644
  	.desc = DRIVER_DESC,
  	.date = DRIVER_DATE,
 diff --git a/drivers/gpu/drm/savage/savage_state.c b/drivers/gpu/drm/savage/savage_state.c
-index 8a3e315..b6d8608 100644
+index 8a3e31599c94..b6d8608375cd 100644
 --- a/drivers/gpu/drm/savage/savage_state.c
 +++ b/drivers/gpu/drm/savage/savage_state.c
 @@ -988,7 +988,7 @@ int savage_bci_cmdbuf(struct drm_device *dev, void *data, struct drm_file *file_
@@ -98030,7 +98064,7 @@ index 8a3e315..b6d8608 100644
  			}
  		}
 diff --git a/drivers/gpu/drm/sis/sis_drv.c b/drivers/gpu/drm/sis/sis_drv.c
-index a9c5716..dd14cd1 100644
+index a9c5716bea4e..dd14cd1a0033 100644
 --- a/drivers/gpu/drm/sis/sis_drv.c
 +++ b/drivers/gpu/drm/sis/sis_drv.c
 @@ -40,51 +40,78 @@ static struct pci_device_id pciidlist[] = {
@@ -98130,7 +98164,7 @@ index a9c5716..dd14cd1 100644
  	.desc = DRIVER_DESC,
  	.date = DRIVER_DATE,
 diff --git a/drivers/gpu/drm/sis/sis_drv.h b/drivers/gpu/drm/sis/sis_drv.h
-index 194303c..573758b 100644
+index 194303c177ad..573758b2d2d6 100644
 --- a/drivers/gpu/drm/sis/sis_drv.h
 +++ b/drivers/gpu/drm/sis/sis_drv.h
 @@ -44,7 +44,7 @@ enum sis_family {
@@ -98160,7 +98194,7 @@ index 194303c..573758b 100644
  
  extern int sis_idle(struct drm_device *dev);
 diff --git a/drivers/gpu/drm/sis/sis_mm.c b/drivers/gpu/drm/sis/sis_mm.c
-index 7fe2b63..dd4a316 100644
+index 7fe2b63412ce..dd4a316c3d74 100644
 --- a/drivers/gpu/drm/sis/sis_mm.c
 +++ b/drivers/gpu/drm/sis/sis_mm.c
 @@ -41,40 +41,18 @@
@@ -98452,7 +98486,7 @@ index 7fe2b63..dd4a316 100644
  	return;
  }
 diff --git a/drivers/gpu/drm/tdfx/tdfx_drv.c b/drivers/gpu/drm/tdfx/tdfx_drv.c
-index cda2991..1613c78 100644
+index cda29911e332..1613c78544c0 100644
 --- a/drivers/gpu/drm/tdfx/tdfx_drv.c
 +++ b/drivers/gpu/drm/tdfx/tdfx_drv.c
 @@ -41,20 +41,21 @@ static struct pci_device_id pciidlist[] = {
@@ -98489,7 +98523,7 @@ index cda2991..1613c78 100644
  	.desc = DRIVER_DESC,
  	.date = DRIVER_DATE,
 diff --git a/drivers/gpu/drm/ttm/Makefile b/drivers/gpu/drm/ttm/Makefile
-index f3cf6f0..b2b33dd 100644
+index f3cf6f02c997..b2b33dde2afb 100644
 --- a/drivers/gpu/drm/ttm/Makefile
 +++ b/drivers/gpu/drm/ttm/Makefile
 @@ -7,4 +7,8 @@ ttm-y := ttm_agp_backend.o ttm_memory.o ttm_tt.o ttm_bo.o \
@@ -98502,7 +98536,7 @@ index f3cf6f0..b2b33dd 100644
 +
  obj-$(CONFIG_DRM_TTM) += ttm.o
 diff --git a/drivers/gpu/drm/ttm/ttm_agp_backend.c b/drivers/gpu/drm/ttm/ttm_agp_backend.c
-index 1c4a72f..4a87282 100644
+index 1c4a72f681c1..4a8728291361 100644
 --- a/drivers/gpu/drm/ttm/ttm_agp_backend.c
 +++ b/drivers/gpu/drm/ttm/ttm_agp_backend.c
 @@ -29,8 +29,11 @@
@@ -98681,7 +98715,7 @@ index 1c4a72f..4a87282 100644
  
  #endif
 diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c
-index 22a89cd..a67e61be 100644
+index 22a89cd5aa5d..a67e61be38f2 100644
 --- a/drivers/gpu/drm/ttm/ttm_bo.c
 +++ b/drivers/gpu/drm/ttm/ttm_bo.c
 @@ -28,6 +28,8 @@
@@ -99070,7 +99104,7 @@ index 22a89cd..a67e61be 100644
  			man->has_type = false;
  		}
 diff --git a/drivers/gpu/drm/ttm/ttm_bo_util.c b/drivers/gpu/drm/ttm/ttm_bo_util.c
-index 082fcae..2d69262 100644
+index 082fcaea583f..2d6926269036 100644
 --- a/drivers/gpu/drm/ttm/ttm_bo_util.c
 +++ b/drivers/gpu/drm/ttm/ttm_bo_util.c
 @@ -244,7 +244,7 @@ static int ttm_copy_io_ttm_page(struct ttm_tt *ttm, void *src,
@@ -99154,7 +99188,7 @@ index 082fcae..2d69262 100644
  		 * We need to use vmap to get the desired page protection
  		 * or to make the buffer object look contiguous.
 diff --git a/drivers/gpu/drm/ttm/ttm_bo_vm.c b/drivers/gpu/drm/ttm/ttm_bo_vm.c
-index e223175..a877813 100644
+index e223175a188d..a877813571a4 100644
 --- a/drivers/gpu/drm/ttm/ttm_bo_vm.c
 +++ b/drivers/gpu/drm/ttm/ttm_bo_vm.c
 @@ -28,6 +28,8 @@
@@ -99216,7 +99250,7 @@ index e223175..a877813 100644
  	}
  
 diff --git a/drivers/gpu/drm/ttm/ttm_lock.c b/drivers/gpu/drm/ttm/ttm_lock.c
-index 9934b4d..075daf4 100644
+index 9934b4d2350b..075daf44bce4 100644
 --- a/drivers/gpu/drm/ttm/ttm_lock.c
 +++ b/drivers/gpu/drm/ttm/ttm_lock.c
 @@ -180,7 +180,7 @@ int ttm_write_lock(struct ttm_lock *lock, bool interruptible)
@@ -99229,7 +99263,7 @@ index 9934b4d..075daf4 100644
  	return ret;
  }
 diff --git a/drivers/gpu/drm/ttm/ttm_memory.c b/drivers/gpu/drm/ttm/ttm_memory.c
-index e70ddd8..23d2ecb 100644
+index e70ddd82dc02..23d2ecbaed59 100644
 --- a/drivers/gpu/drm/ttm/ttm_memory.c
 +++ b/drivers/gpu/drm/ttm/ttm_memory.c
 @@ -25,6 +25,8 @@
@@ -99277,7 +99311,7 @@ index e70ddd8..23d2ecb 100644
  	flush_workqueue(glob->swap_queue);
  	destroy_workqueue(glob->swap_queue);
 diff --git a/drivers/gpu/drm/ttm/ttm_object.c b/drivers/gpu/drm/ttm/ttm_object.c
-index 93577f2..68daca4 100644
+index 93577f2e2954..68daca412cbd 100644
 --- a/drivers/gpu/drm/ttm/ttm_object.c
 +++ b/drivers/gpu/drm/ttm/ttm_object.c
 @@ -49,6 +49,8 @@
@@ -99300,7 +99334,7 @@ index 93577f2..68daca4 100644
  		return NULL;
  	}
 diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc.c b/drivers/gpu/drm/ttm/ttm_page_alloc.c
-index 508c64c..578207ec 100644
+index 508c64ce5d9e..578207ecc43f 100644
 --- a/drivers/gpu/drm/ttm/ttm_page_alloc.c
 +++ b/drivers/gpu/drm/ttm/ttm_page_alloc.c
 @@ -30,6 +30,9 @@
@@ -99714,7 +99748,7 @@ index 508c64c..578207ec 100644
  	struct ttm_page_pool *p;
 diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
 new file mode 100644
-index 0000000..4f9e548
+index 000000000000..4f9e548b2eec
 --- /dev/null
 +++ b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
 @@ -0,0 +1,1134 @@
@@ -100853,7 +100887,7 @@ index 0000000..4f9e548
 +}
 +EXPORT_SYMBOL_GPL(ttm_dma_page_alloc_debugfs);
 diff --git a/drivers/gpu/drm/ttm/ttm_tt.c b/drivers/gpu/drm/ttm/ttm_tt.c
-index f9cc548..ea10bbe 100644
+index f9cc548d6d98..ea10bbe60edb 100644
 --- a/drivers/gpu/drm/ttm/ttm_tt.c
 +++ b/drivers/gpu/drm/ttm/ttm_tt.c
 @@ -28,6 +28,8 @@
@@ -101354,7 +101388,7 @@ index f9cc548..ea10bbe 100644
  	if (persistent_swap_storage)
 diff --git a/drivers/gpu/drm/udl/Kconfig b/drivers/gpu/drm/udl/Kconfig
 new file mode 100644
-index 0000000..0b5e096
+index 000000000000..0b5e096d39a6
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/Kconfig
 @@ -0,0 +1,12 @@
@@ -101372,7 +101406,7 @@ index 0000000..0b5e096
 +          Say M/Y to add support for these devices via drm/kms interfaces.
 diff --git a/drivers/gpu/drm/udl/Makefile b/drivers/gpu/drm/udl/Makefile
 new file mode 100644
-index 0000000..05c7481
+index 000000000000..05c7481bfd40
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/Makefile
 @@ -0,0 +1,6 @@
@@ -101384,7 +101418,7 @@ index 0000000..05c7481
 +obj-$(CONFIG_DRM_UDL) := udl.o
 diff --git a/drivers/gpu/drm/udl/udl_connector.c b/drivers/gpu/drm/udl/udl_connector.c
 new file mode 100644
-index 0000000..b8e6463
+index 000000000000..b8e6463bd14c
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/udl_connector.c
 @@ -0,0 +1,165 @@
@@ -101555,7 +101589,7 @@ index 0000000..b8e6463
 +}
 diff --git a/drivers/gpu/drm/udl/udl_drv.c b/drivers/gpu/drm/udl/udl_drv.c
 new file mode 100644
-index 0000000..08eff0d
+index 000000000000..08eff0dbb80f
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/udl_drv.c
 @@ -0,0 +1,112 @@
@@ -101673,7 +101707,7 @@ index 0000000..08eff0d
 +module_exit(udl_exit);
 diff --git a/drivers/gpu/drm/udl/udl_drv.h b/drivers/gpu/drm/udl/udl_drv.h
 new file mode 100644
-index 0000000..2b8c4fd
+index 000000000000..2b8c4fdda975
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/udl_drv.h
 @@ -0,0 +1,144 @@
@@ -101823,7 +101857,7 @@ index 0000000..2b8c4fd
 +#endif
 diff --git a/drivers/gpu/drm/udl/udl_encoder.c b/drivers/gpu/drm/udl/udl_encoder.c
 new file mode 100644
-index 0000000..56e75f0
+index 000000000000..56e75f0f1df5
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/udl_encoder.c
 @@ -0,0 +1,80 @@
@@ -101909,7 +101943,7 @@ index 0000000..56e75f0
 +}
 diff --git a/drivers/gpu/drm/udl/udl_fb.c b/drivers/gpu/drm/udl/udl_fb.c
 new file mode 100644
-index 0000000..f02d223
+index 000000000000..f02d223d3947
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/udl_fb.c
 @@ -0,0 +1,649 @@
@@ -102564,7 +102598,7 @@ index 0000000..f02d223
 +}
 diff --git a/drivers/gpu/drm/udl/udl_gem.c b/drivers/gpu/drm/udl/udl_gem.c
 new file mode 100644
-index 0000000..92f19ef
+index 000000000000..92f19ef329b0
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/udl_gem.c
 @@ -0,0 +1,241 @@
@@ -102811,7 +102845,7 @@ index 0000000..92f19ef
 +}
 diff --git a/drivers/gpu/drm/udl/udl_main.c b/drivers/gpu/drm/udl/udl_main.c
 new file mode 100644
-index 0000000..a8d5f09
+index 000000000000..a8d5f09428c7
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/udl_main.c
 @@ -0,0 +1,338 @@
@@ -103155,7 +103189,7 @@ index 0000000..a8d5f09
 +}
 diff --git a/drivers/gpu/drm/udl/udl_modeset.c b/drivers/gpu/drm/udl/udl_modeset.c
 new file mode 100644
-index 0000000..b3ecb3d
+index 000000000000..b3ecb3d12a1d
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/udl_modeset.c
 @@ -0,0 +1,414 @@
@@ -103575,7 +103609,7 @@ index 0000000..b3ecb3d
 +}
 diff --git a/drivers/gpu/drm/udl/udl_transfer.c b/drivers/gpu/drm/udl/udl_transfer.c
 new file mode 100644
-index 0000000..fc11344
+index 000000000000..fc1134416bcc
 --- /dev/null
 +++ b/drivers/gpu/drm/udl/udl_transfer.c
 @@ -0,0 +1,254 @@
@@ -103834,7 +103868,7 @@ index 0000000..fc11344
 +}
 +
 diff --git a/drivers/gpu/drm/via/via_drv.c b/drivers/gpu/drm/via/via_drv.c
-index a83e86d..02661f3 100644
+index a83e86d3956c..02661f35f7a0 100644
 --- a/drivers/gpu/drm/via/via_drv.c
 +++ b/drivers/gpu/drm/via/via_drv.c
 @@ -30,16 +30,52 @@
@@ -103910,7 +103944,7 @@ index a83e86d..02661f3 100644
  	.desc = DRIVER_DESC,
  	.date = DRIVER_DATE,
 diff --git a/drivers/gpu/drm/via/via_drv.h b/drivers/gpu/drm/via/via_drv.h
-index 9cf87d9..88edacc 100644
+index 9cf87d912325..88edacc93006 100644
 --- a/drivers/gpu/drm/via/via_drv.h
 +++ b/drivers/gpu/drm/via/via_drv.h
 @@ -24,7 +24,7 @@
@@ -103937,7 +103971,7 @@ index 9cf87d9..88edacc 100644
  	unsigned long agp_offset;
  	drm_via_blitq_t blit_queues[VIA_NUM_BLIT_ENGINES];
 diff --git a/drivers/gpu/drm/via/via_map.c b/drivers/gpu/drm/via/via_map.c
-index 6cca9a7..c126182 100644
+index 6cca9a709f7a..c126182ac07e 100644
 --- a/drivers/gpu/drm/via/via_map.c
 +++ b/drivers/gpu/drm/via/via_map.c
 @@ -100,19 +100,15 @@ int via_driver_load(struct drm_device *dev, unsigned long chipset)
@@ -103973,7 +104007,7 @@ index 6cca9a7..c126182 100644
  	kfree(dev_priv);
  
 diff --git a/drivers/gpu/drm/via/via_mm.c b/drivers/gpu/drm/via/via_mm.c
-index 6cc2dad..a3574d0 100644
+index 6cc2dadae3ef..a3574d09a07d 100644
 --- a/drivers/gpu/drm/via/via_mm.c
 +++ b/drivers/gpu/drm/via/via_mm.c
 @@ -28,26 +28,22 @@
@@ -104189,7 +104223,7 @@ index 6cc2dad..a3574d0 100644
  	return;
  }
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c b/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c
-index 5a72ed9..1e2c0fb 100644
+index 5a72ed908232..1e2c0fb7f786 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c
 @@ -28,6 +28,7 @@
@@ -104320,10 +104354,18 @@ index 5a72ed9..1e2c0fb 100644
  	.init_mem_type = vmw_init_mem_type,
  	.evict_flags = vmw_evict_flags,
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
-index f739fcf..e43341a 100644
+index 148fa9120c5f..e43341a53fac 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
-@@ -38,6 +38,10 @@
+@@ -25,7 +25,6 @@
+  *
+  **************************************************************************/
+ #include <linux/module.h>
+-#include <linux/console.h>
+ 
+ #include "drmP.h"
+ #include "vmwgfx_drv.h"
+@@ -39,6 +38,10 @@
  #define VMWGFX_CHIP_SVGAII 0
  #define VMW_FB_RESERVATION 0
  
@@ -104334,7 +104376,7 @@ index f739fcf..e43341a 100644
  /**
   * Fully encoded drm commands. Might move to vmw_drm.h
   */
-@@ -388,6 +392,41 @@ void vmw_3d_resource_dec(struct vmw_private *dev_priv,
+@@ -389,6 +392,41 @@ void vmw_3d_resource_dec(struct vmw_private *dev_priv,
  	BUG_ON(n3d < 0);
  }
  
@@ -104376,7 +104418,7 @@ index f739fcf..e43341a 100644
  static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
  {
  	struct vmw_private *dev_priv;
-@@ -401,6 +440,8 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
+@@ -402,6 +440,8 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
  	}
  	memset(dev_priv, 0, sizeof(*dev_priv));
  
@@ -104385,7 +104427,7 @@ index f739fcf..e43341a 100644
  	dev_priv->dev = dev;
  	dev_priv->vmw_chipset = chipset;
  	dev_priv->last_read_seqno = (uint32_t) -100;
-@@ -431,7 +472,7 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
+@@ -432,7 +472,7 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
  	svga_id = vmw_read(dev_priv, SVGA_REG_ID);
  	if (svga_id != SVGA_ID_2) {
  		ret = -ENOSYS;
@@ -104394,7 +104436,7 @@ index f739fcf..e43341a 100644
  		mutex_unlock(&dev_priv->hw_mutex);
  		goto out_err0;
  	}
-@@ -442,6 +483,9 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
+@@ -443,6 +483,9 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
  	dev_priv->mmio_size = vmw_read(dev_priv, SVGA_REG_MEM_SIZE);
  	dev_priv->fb_max_width = vmw_read(dev_priv, SVGA_REG_MAX_WIDTH);
  	dev_priv->fb_max_height = vmw_read(dev_priv, SVGA_REG_MAX_HEIGHT);
@@ -104404,7 +104446,7 @@ index f739fcf..e43341a 100644
  	if (dev_priv->capabilities & SVGA_CAP_GMR) {
  		dev_priv->max_gmr_descriptors =
  			vmw_read(dev_priv,
-@@ -555,6 +599,10 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
+@@ -556,6 +599,10 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
  	if (unlikely(dev_priv->fman == NULL))
  		goto out_no_fman;
  
@@ -104415,7 +104457,7 @@ index f739fcf..e43341a 100644
  
  	ret = ttm_bo_init_mm(&dev_priv->bdev, TTM_PL_VRAM,
  			     (dev_priv->vram_size >> PAGE_SHIFT));
-@@ -571,10 +619,6 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
+@@ -572,10 +619,6 @@ static int vmw_driver_load(struct drm_device *dev, unsigned long chipset)
  		dev_priv->has_gmr = false;
  	}
  
@@ -104426,7 +104468,7 @@ index f739fcf..e43341a 100644
  	vmw_kms_save_vga(dev_priv);
  
  	/* Start kms and overlay systems, needs fifo. */
-@@ -620,11 +664,11 @@ out_no_kms:
+@@ -621,11 +664,11 @@ out_no_kms:
  		vmw_kms_restore_vga(dev_priv);
  		vmw_3d_resource_dec(dev_priv, false);
  	}
@@ -104440,7 +104482,7 @@ index f739fcf..e43341a 100644
  	vmw_fence_manager_takedown(dev_priv->fman);
  out_no_fman:
  	if (dev_priv->stealth)
-@@ -638,6 +682,7 @@ out_err4:
+@@ -639,6 +682,7 @@ out_err4:
  out_err3:
  	drm_mtrr_del(dev_priv->mmio_mtrr, dev_priv->mmio_start,
  		     dev_priv->mmio_size, DRM_MTRR_WC);
@@ -104448,7 +104490,7 @@ index f739fcf..e43341a 100644
  	(void)ttm_bo_device_release(&dev_priv->bdev);
  out_err1:
  	vmw_ttm_global_release(dev_priv);
-@@ -692,6 +737,15 @@ static int vmw_driver_unload(struct drm_device *dev)
+@@ -693,6 +737,15 @@ static int vmw_driver_unload(struct drm_device *dev)
  	return 0;
  }
  
@@ -104464,7 +104506,7 @@ index f739fcf..e43341a 100644
  static void vmw_postclose(struct drm_device *dev,
  			 struct drm_file *file_priv)
  {
-@@ -714,6 +768,7 @@ static int vmw_driver_open(struct drm_device *dev, struct drm_file *file_priv)
+@@ -715,6 +768,7 @@ static int vmw_driver_open(struct drm_device *dev, struct drm_file *file_priv)
  	if (unlikely(vmw_fp == NULL))
  		return ret;
  
@@ -104472,7 +104514,7 @@ index f739fcf..e43341a 100644
  	vmw_fp->tfile = ttm_object_file_init(dev_priv->tdev, 10);
  	if (unlikely(vmw_fp->tfile == NULL))
  		goto out_no_tfile;
-@@ -1073,6 +1128,21 @@ static const struct dev_pm_ops vmw_pm_ops = {
+@@ -1074,6 +1128,21 @@ static const struct dev_pm_ops vmw_pm_ops = {
  	.resume = vmw_pm_resume,
  };
  
@@ -104494,7 +104536,7 @@ index f739fcf..e43341a 100644
  static struct drm_driver driver = {
  	.driver_features = DRIVER_HAVE_IRQ | DRIVER_IRQ_SHARED |
  	DRIVER_MODESET,
-@@ -1096,26 +1166,14 @@ static struct drm_driver driver = {
+@@ -1097,26 +1166,14 @@ static struct drm_driver driver = {
  	.master_set = vmw_master_set,
  	.master_drop = vmw_master_drop,
  	.open = vmw_driver_open,
@@ -104523,8 +104565,21 @@ index f739fcf..e43341a 100644
  	.name = VMWGFX_DRIVER_NAME,
  	.desc = VMWGFX_DRIVER_DESC,
  	.date = VMWGFX_DRIVER_DATE,
+@@ -1143,12 +1200,6 @@ static int vmw_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
+ static int __init vmwgfx_init(void)
+ {
+ 	int ret;
+-
+-#ifdef CONFIG_VGA_CONSOLE
+-	if (vgacon_text_force())
+-		return -EINVAL;
+-#endif
+-
+ 	ret = drm_pci_init(&driver, &vmw_pci_driver);
+ 	if (ret)
+ 		DRM_ERROR("Failed initializing DRM.\n");
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
-index 0e3fa7d..29c984f 100644
+index 0e3fa7d0f39e..29c984ff7f23 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
 @@ -40,9 +40,9 @@
@@ -104567,7 +104622,7 @@ index 0e3fa7d..29c984f 100644
  extern void
  vmw_execbuf_release_pinned_bo(struct vmw_private *dev_priv,
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c b/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c
-index 84ba033..4acced4 100644
+index 84ba033dd68a..4acced44a623 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c
 @@ -558,36 +558,14 @@ static int vmw_cmd_dma(struct vmw_private *dev_priv,
@@ -104647,7 +104702,7 @@ index 84ba033..4acced4 100644
  	if (unlikely(ret != 0))
  		goto out_unlock;
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c
-index 7f16ff2..7fc3dc7 100644
+index 7f16ff28070c..7fc3dc7f9985 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c
 @@ -416,10 +416,6 @@ int vmw_fb_init(struct vmw_private *vmw_priv)
@@ -104694,7 +104749,7 @@ index 7f16ff2..7fc3dc7 100644
  	info->apertures = alloc_apertures(1);
  	if (!info->apertures) {
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_fence.c b/drivers/gpu/drm/vmwgfx/vmwgfx_fence.c
-index 1ed5a1c..992b46b 100644
+index 1ed5a1c4d59a..992b46bbadfb 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_fence.c
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fence.c
 @@ -69,12 +69,13 @@ struct vmw_user_fence {
@@ -105064,7 +105119,7 @@ index 1ed5a1c..992b46b 100644
  		ttm_ref_object_base_unref(vmw_fpriv(file_priv)->tfile,
  					  handle, TTM_REF_USAGE);
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_fence.h b/drivers/gpu/drm/vmwgfx/vmwgfx_fence.h
-index 0854a20..faf2e78 100644
+index 0854a2096b55..faf2e7873860 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_fence.h
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fence.h
 @@ -109,5 +109,12 @@ extern int vmw_fence_obj_unref_ioctl(struct drm_device *dev, void *data,
@@ -105082,7 +105137,7 @@ index 0854a20..faf2e78 100644
 +					bool interruptible);
  #endif /* _VMWGFX_FENCE_H_ */
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_gmr.c b/drivers/gpu/drm/vmwgfx/vmwgfx_gmr.c
-index 2952249..e1978a2 100644
+index 295224947c6b..e1978a2a4982 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_gmr.c
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_gmr.c
 @@ -156,10 +156,10 @@ static int vmw_gmr_build_descriptors(struct list_head *desc_pages,
@@ -105108,7 +105163,7 @@ index 2952249..e1978a2 100644
  	return 0;
  out_err:
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
-index eb9735e..7ca1d47 100644
+index eb9735e95d3a..7ca1d472d7cb 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
 @@ -422,7 +422,8 @@ static int do_surface_dirty_sou(struct vmw_private *dev_priv,
@@ -105389,7 +105444,7 @@ index eb9735e..7ca1d47 100644
  {
  }
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.h b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.h
-index e1cb855..8184bc5 100644
+index e1cb8556355f..8184bc5b1730 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.h
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.h
 @@ -29,6 +29,7 @@
@@ -105422,7 +105477,7 @@ index e1cb855..8184bc5 100644
  
  #endif
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c b/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
-index 8f8dbd4..070fb23 100644
+index 8f8dbd43c33d..070fb239c5af 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
 @@ -95,7 +95,7 @@ static int vmw_ldu_commit_list(struct vmw_private *dev_priv)
@@ -105455,7 +105510,7 @@ index 8f8dbd4..070fb23 100644
  	ldu->base.is_implicit = true;
  
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c
-index 0795d17..059b32c 100644
+index 0795d1733c1b..059b32c6f22b 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c
 @@ -1540,29 +1540,10 @@ out_bad_surface:
@@ -105525,7 +105580,7 @@ index 0795d17..059b32c 100644
  }
  
 diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c b/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
-index 4defdcf..6deaf2f 100644
+index 4defdcf1c72e..6deaf2f8bab1 100644
 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
 +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
 @@ -394,6 +394,7 @@ static struct drm_crtc_funcs vmw_screen_object_crtc_funcs = {
@@ -105585,7 +105640,7 @@ index 4defdcf..6deaf2f 100644
 +		vmw_framebuffer_to_vfb(sou->base.crtc.fb);
 +}
 diff --git a/include/drm/Kbuild b/include/drm/Kbuild
-index 3a60ac8..1e38a19 100644
+index 3a60ac889520..1e38a19d68f6 100644
 --- a/include/drm/Kbuild
 +++ b/include/drm/Kbuild
 @@ -1,6 +1,8 @@
@@ -105598,7 +105653,7 @@ index 3a60ac8..1e38a19 100644
  header-y += i915_drm.h
  header-y += mga_drm.h
 diff --git a/include/drm/drm.h b/include/drm/drm.h
-index 4be33b4..64ff02d 100644
+index 4be33b4ca2f8..64ff02d5b730 100644
 --- a/include/drm/drm.h
 +++ b/include/drm/drm.h
 @@ -617,6 +617,17 @@ struct drm_get_cap {
@@ -105650,7 +105705,7 @@ index 4be33b4..64ff02d 100644
  /* typedef area */
  #ifndef __KERNEL__
 diff --git a/include/drm/drmP.h b/include/drm/drmP.h
-index e7cd03c..dd73104 100644
+index e7cd03c6b14e..dd731043fecd 100644
 --- a/include/drm/drmP.h
 +++ b/include/drm/drmP.h
 @@ -91,6 +91,7 @@ struct drm_device;
@@ -105893,7 +105948,7 @@ index e7cd03c..dd73104 100644
  #endif				/* __KERNEL__ */
  #endif
 diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
-index 8020798..e250eda 100644
+index 802079809282..e250eda4e3a8 100644
 --- a/include/drm/drm_crtc.h
 +++ b/include/drm/drm_crtc.h
 @@ -29,9 +29,10 @@
@@ -106374,7 +106429,7 @@ index 8020798..e250eda 100644
 +				 int *bpp);
  #endif /* __DRM_CRTC_H__ */
 diff --git a/include/drm/drm_crtc_helper.h b/include/drm/drm_crtc_helper.h
-index 73b0712..37515d1 100644
+index 73b071203dcc..37515d1afab3 100644
 --- a/include/drm/drm_crtc_helper.h
 +++ b/include/drm/drm_crtc_helper.h
 @@ -117,7 +117,7 @@ extern bool drm_helper_encoder_in_use(struct drm_encoder *encoder);
@@ -106395,7 +106450,7 @@ index 73b0712..37515d1 100644
 +
  #endif
 diff --git a/include/drm/drm_edid.h b/include/drm/drm_edid.h
-index 74ce916..bcb9a66 100644
+index 74ce91684629..bcb9a66baa8c 100644
 --- a/include/drm/drm_edid.h
 +++ b/include/drm/drm_edid.h
 @@ -238,5 +238,6 @@ int drm_av_sync_delay(struct drm_connector *connector,
@@ -106406,7 +106461,7 @@ index 74ce916..bcb9a66 100644
  
  #endif /* __DRM_EDID_H__ */
 diff --git a/include/drm/drm_fb_helper.h b/include/drm/drm_fb_helper.h
-index 6e3076a..5120b01 100644
+index 6e3076ad646e..5120b01c2eeb 100644
 --- a/include/drm/drm_fb_helper.h
 +++ b/include/drm/drm_fb_helper.h
 @@ -35,7 +35,6 @@ struct drm_fb_helper;
@@ -106427,7 +106482,7 @@ index 6e3076a..5120b01 100644
  	struct list_head kernel_fb_list;
 diff --git a/include/drm/drm_fourcc.h b/include/drm/drm_fourcc.h
 new file mode 100644
-index 0000000..bdf0152
+index 000000000000..bdf0152cbbe9
 --- /dev/null
 +++ b/include/drm/drm_fourcc.h
 @@ -0,0 +1,137 @@
@@ -106569,7 +106624,7 @@ index 0000000..bdf0152
 +
 +#endif /* DRM_FOURCC_H */
 diff --git a/include/drm/drm_mode.h b/include/drm/drm_mode.h
-index 8f4ae68..cbf2d9a 100644
+index 8f4ae681cdc1..cbf2d9ada2ea 100644
 --- a/include/drm/drm_mode.h
 +++ b/include/drm/drm_mode.h
 @@ -27,6 +27,8 @@
@@ -106670,7 +106725,7 @@ index 8f4ae68..cbf2d9a 100644
  #define DRM_MODE_FB_DIRTY_ANNOTATE_FILL 0x02
  #define DRM_MODE_FB_DIRTY_FLAGS         0x03
 diff --git a/include/drm/drm_pciids.h b/include/drm/drm_pciids.h
-index 7daeaba..53baa0d 100644
+index 7daeaba68191..53baa0d7c34f 100644
 --- a/include/drm/drm_pciids.h
 +++ b/include/drm/drm_pciids.h
 @@ -203,11 +203,60 @@
@@ -106780,7 +106835,7 @@ index 7daeaba..53baa0d 100644
  #define r128_PCI_IDS \
 diff --git a/include/drm/drm_sman.h b/include/drm/drm_sman.h
 deleted file mode 100644
-index 08ecf83..0000000
+index 08ecf83ad5d4..000000000000
 --- a/include/drm/drm_sman.h
 +++ /dev/null
 @@ -1,176 +0,0 @@
@@ -106961,7 +107016,7 @@ index 08ecf83..0000000
 -
 -#endif
 diff --git a/include/drm/exynos_drm.h b/include/drm/exynos_drm.h
-index 1205043..e478de4 100644
+index 12050434d57a..e478de4e5d56 100644
 --- a/include/drm/exynos_drm.h
 +++ b/include/drm/exynos_drm.h
 @@ -74,9 +74,38 @@ struct drm_exynos_gem_mmap {
@@ -107079,7 +107134,7 @@ index 1205043..e478de4 100644
 +#endif	/* _EXYNOS_DRM_H_ */
 diff --git a/include/drm/gma_drm.h b/include/drm/gma_drm.h
 new file mode 100644
-index 0000000..884613e
+index 000000000000..884613ee00ad
 --- /dev/null
 +++ b/include/drm/gma_drm.h
 @@ -0,0 +1,91 @@
@@ -107175,7 +107230,7 @@ index 0000000..884613e
 +
 +#endif
 diff --git a/include/drm/i915_drm.h b/include/drm/i915_drm.h
-index 28c0d11..da929bb 100644
+index 28c0d114cb52..da929bb5b788 100644
 --- a/include/drm/i915_drm.h
 +++ b/include/drm/i915_drm.h
 @@ -198,6 +198,8 @@ typedef struct _drm_i915_sarea {
@@ -107253,7 +107308,7 @@ index 28c0d11..da929bb 100644
 +
  #endif				/* _I915_DRM_H_ */
 diff --git a/include/drm/intel-gtt.h b/include/drm/intel-gtt.h
-index b174620..923afb5 100644
+index b174620cc9b3..923afb5dcf0c 100644
 --- a/include/drm/intel-gtt.h
 +++ b/include/drm/intel-gtt.h
 @@ -15,6 +15,10 @@ const struct intel_gtt {
@@ -107277,7 +107332,7 @@ index b174620..923afb5 100644
 +
  #endif
 diff --git a/include/drm/radeon_drm.h b/include/drm/radeon_drm.h
-index be94be6..7c491b4 100644
+index be94be6d6f17..7c491b4bcf65 100644
 --- a/include/drm/radeon_drm.h
 +++ b/include/drm/radeon_drm.h
 @@ -509,6 +509,7 @@ typedef struct {
@@ -107392,7 +107447,7 @@ index be94be6..7c491b4 100644
  struct drm_radeon_info {
  	uint32_t		request;
 diff --git a/include/drm/sis_drm.h b/include/drm/sis_drm.h
-index 30f7b38..035b804 100644
+index 30f7b3827466..035b804dda6d 100644
 --- a/include/drm/sis_drm.h
 +++ b/include/drm/sis_drm.h
 @@ -64,4 +64,8 @@ typedef struct {
@@ -107405,7 +107460,7 @@ index 30f7b38..035b804 100644
 +
  #endif				/* __SIS_DRM_H__ */
 diff --git a/include/drm/ttm/ttm_bo_api.h b/include/drm/ttm/ttm_bo_api.h
-index 42e3469..974c8f8 100644
+index 42e346985186..974c8f801c39 100644
 --- a/include/drm/ttm/ttm_bo_api.h
 +++ b/include/drm/ttm/ttm_bo_api.h
 @@ -122,17 +122,12 @@ struct ttm_mem_reg {
@@ -107469,7 +107524,7 @@ index 42e3469..974c8f8 100644
   * ttm_bo_synccpu_object_init
   *
 diff --git a/include/drm/ttm/ttm_bo_driver.h b/include/drm/ttm/ttm_bo_driver.h
-index 94eb143..d43e892 100644
+index 94eb1434316e..d43e892307ff 100644
 --- a/include/drm/ttm/ttm_bo_driver.h
 +++ b/include/drm/ttm/ttm_bo_driver.h
 @@ -43,36 +43,9 @@ struct ttm_backend;
@@ -107827,7 +107882,7 @@ index 94eb143..d43e892 100644
  
  #endif
 diff --git a/include/drm/ttm/ttm_memory.h b/include/drm/ttm/ttm_memory.h
-index 26c1f78..d6d1da4 100644
+index 26c1f78d136f..d6d1da468c97 100644
 --- a/include/drm/ttm/ttm_memory.h
 +++ b/include/drm/ttm/ttm_memory.h
 @@ -30,6 +30,7 @@
@@ -107839,7 +107894,7 @@ index 26c1f78..d6d1da4 100644
  #include <linux/errno.h>
  #include <linux/kobject.h>
 diff --git a/include/drm/ttm/ttm_page_alloc.h b/include/drm/ttm/ttm_page_alloc.h
-index 129de12..5fe2740 100644
+index 129de12353f1..5fe27400d176 100644
 --- a/include/drm/ttm/ttm_page_alloc.h
 +++ b/include/drm/ttm/ttm_page_alloc.h
 @@ -30,45 +30,70 @@
@@ -107940,7 +107995,7 @@ index 129de12..5fe2740 100644
 +
  #endif
 diff --git a/include/drm/via_drm.h b/include/drm/via_drm.h
-index fd11a5b..79b3b6e 100644
+index fd11a5bd892d..79b3b6e0f6b3 100644
 --- a/include/drm/via_drm.h
 +++ b/include/drm/via_drm.h
 @@ -274,4 +274,8 @@ typedef struct drm_via_dmablit {
diff --git a/debian/patches/features/all/fs-add-link-restrictions.patch b/debian/patches/features/all/fs-add-link-restrictions.patch
index 4e221b3..0b472dc 100644
--- a/debian/patches/features/all/fs-add-link-restrictions.patch
+++ b/debian/patches/features/all/fs-add-link-restrictions.patch
@@ -106,16 +106,16 @@ Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>
 
 --- a/Documentation/sysctl/fs.txt
 +++ b/Documentation/sysctl/fs.txt
-@@ -32,6 +32,8 @@ Currently, these files are in /proc/sys/
- - nr_open
- - overflowuid
+@@ -34,6 +34,8 @@ Currently, these files are in /proc/sys/
  - overflowgid
+ - pipe-user-pages-hard
+ - pipe-user-pages-soft
 +- protected_hardlinks
 +- protected_symlinks
  - suid_dumpable
  - super-max
  - super-nr
-@@ -157,6 +159,46 @@ The default is 65534.
+@@ -180,6 +182,46 @@ applied.
  
  ==============================================================
  
@@ -164,7 +164,7 @@ Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>
  This value can be used to query and set the core dump mode for setuid
 --- a/fs/namei.c
 +++ b/fs/namei.c
-@@ -624,6 +624,119 @@ static inline void put_link(struct namei
+@@ -641,6 +641,119 @@ static inline void put_link(struct namei
  	path_put(link);
  }
  
@@ -284,7 +284,7 @@ Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>
  static __always_inline int
  follow_link(struct path *link, struct nameidata *nd, void **p)
  {
-@@ -1613,6 +1726,9 @@ static int path_lookupat(int dfd, const
+@@ -1646,6 +1759,9 @@ static int path_lookupat(int dfd, const
  		while (err > 0) {
  			void *cookie;
  			struct path link = path;
@@ -294,7 +294,7 @@ Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>
  			nd->flags |= LOOKUP_PARENT;
  			err = follow_link(&link, nd, &cookie);
  			if (!err)
-@@ -2325,6 +2441,11 @@ static struct file *path_openat(int dfd,
+@@ -2358,6 +2474,11 @@ static struct file *path_openat(int dfd,
  			filp = ERR_PTR(-ELOOP);
  			break;
  		}
@@ -306,7 +306,7 @@ Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>
  		nd->flags |= LOOKUP_PARENT;
  		nd->flags &= ~(LOOKUP_OPEN|LOOKUP_CREATE|LOOKUP_EXCL);
  		error = follow_link(&link, nd, &cookie);
-@@ -2972,6 +3093,9 @@ SYSCALL_DEFINE5(linkat, int, olddfd, con
+@@ -3005,6 +3126,9 @@ SYSCALL_DEFINE5(linkat, int, olddfd, con
  	error = -EXDEV;
  	if (old_path.mnt != new_path.mnt)
  		goto out_dput;
@@ -318,7 +318,7 @@ Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>
  		goto out_dput;
 --- a/include/linux/fs.h
 +++ b/include/linux/fs.h
-@@ -420,6 +420,8 @@ extern unsigned long get_max_files(void)
+@@ -424,6 +424,8 @@ extern unsigned long get_max_files(void)
  extern int sysctl_nr_open;
  extern struct inodes_stat_t inodes_stat;
  extern int leases_enable, lease_break_time;
diff --git a/debian/patches/features/all/rt/0001-Revert-workqueue-skip-nr_running-sanity-check-in-wor.patch b/debian/patches/features/all/rt/0001-Revert-workqueue-skip-nr_running-sanity-check-in-wor.patch
index 6ec96b9..85ad380 100644
--- a/debian/patches/features/all/rt/0001-Revert-workqueue-skip-nr_running-sanity-check-in-wor.patch
+++ b/debian/patches/features/all/rt/0001-Revert-workqueue-skip-nr_running-sanity-check-in-wor.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <srostedt at redhat.com>
 Date: Wed, 6 Jun 2012 17:07:34 -0400
-Subject: [PATCH 001/374] Revert "workqueue: skip nr_running sanity check in
+Subject: [PATCH 001/380] Revert "workqueue: skip nr_running sanity check in
  worker_enter_idle() if trustee is active"
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=48a83f8b5718e2c17fb573609182fd9a832eb18e
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c09b7c6015547c1e30d68136dd8223b1850b0ea0
 
 This reverts commit 5d79c6f64a904afc92a329f80abe693e3ae105fe.
 
@@ -14,7 +14,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 2 insertions(+), 7 deletions(-)
 
 diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index 563820c..252c274 100644
+index 563820c59d54..252c2749b6a0 100644
 --- a/kernel/workqueue.c
 +++ b/kernel/workqueue.c
 @@ -1235,13 +1235,8 @@ static void worker_enter_idle(struct worker *worker)
diff --git a/debian/patches/features/all/rt/0002-x86-Call-idle-notifier-after-irq_enter.patch b/debian/patches/features/all/rt/0002-x86-Call-idle-notifier-after-irq_enter.patch
index f161e6f..fa0f0a1 100644
--- a/debian/patches/features/all/rt/0002-x86-Call-idle-notifier-after-irq_enter.patch
+++ b/debian/patches/features/all/rt/0002-x86-Call-idle-notifier-after-irq_enter.patch
@@ -1,7 +1,7 @@
 From: Frederic Weisbecker <fweisbec at gmail.com>
 Date: Mon, 26 Sep 2011 12:19:11 +0200
-Subject: [PATCH 002/374] x86: Call idle notifier after irq_enter()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=674a52cc264d6e23007a715ad8fabd2ac31aa276
+Subject: [PATCH 002/380] x86: Call idle notifier after irq_enter()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=af1bfd960973d7645cf99b69e31c1fa6afbb753c
 
 Interrupts notify the idle exit state before calling irq_enter(). But
 the notifier code calls rcu_read_lock() and this is not allowed while
@@ -48,7 +48,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  5 files changed, 9 insertions(+), 9 deletions(-)
 
 diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
-index 838a3b4..b3aa9f5 100644
+index 838a3b40a4b0..b3aa9f56d33e 100644
 --- a/arch/x86/kernel/apic/apic.c
 +++ b/arch/x86/kernel/apic/apic.c
 @@ -876,8 +876,8 @@ void __irq_entry smp_apic_timer_interrupt(struct pt_regs *regs)
@@ -82,7 +82,7 @@ index 838a3b4..b3aa9f5 100644
  	v0 = apic_read(APIC_ESR);
  	apic_write(APIC_ESR, 0);
 diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
-index 6d939d7..8980555 100644
+index 6d939d7847e2..898055585516 100644
 --- a/arch/x86/kernel/apic/io_apic.c
 +++ b/arch/x86/kernel/apic/io_apic.c
 @@ -2421,8 +2421,8 @@ asmlinkage void smp_irq_move_cleanup_interrupt(void)
@@ -96,7 +96,7 @@ index 6d939d7..8980555 100644
  	me = smp_processor_id();
  	for (vector = FIRST_EXTERNAL_VECTOR; vector < NR_VECTORS; vector++) {
 diff --git a/arch/x86/kernel/cpu/mcheck/therm_throt.c b/arch/x86/kernel/cpu/mcheck/therm_throt.c
-index ce04b58..39c6089 100644
+index ce04b5804085..39c6089891e4 100644
 --- a/arch/x86/kernel/cpu/mcheck/therm_throt.c
 +++ b/arch/x86/kernel/cpu/mcheck/therm_throt.c
 @@ -382,8 +382,8 @@ static void (*smp_thermal_vector)(void) = unexpected_thermal_interrupt;
@@ -110,7 +110,7 @@ index ce04b58..39c6089 100644
  	smp_thermal_vector();
  	irq_exit();
 diff --git a/arch/x86/kernel/cpu/mcheck/threshold.c b/arch/x86/kernel/cpu/mcheck/threshold.c
-index d746df2..aa578ca 100644
+index d746df2909c9..aa578cadb940 100644
 --- a/arch/x86/kernel/cpu/mcheck/threshold.c
 +++ b/arch/x86/kernel/cpu/mcheck/threshold.c
 @@ -19,8 +19,8 @@ void (*mce_threshold_vector)(void) = default_threshold_interrupt;
@@ -124,7 +124,7 @@ index d746df2..aa578ca 100644
  	mce_threshold_vector();
  	irq_exit();
 diff --git a/arch/x86/kernel/irq.c b/arch/x86/kernel/irq.c
-index 687637b..6724ff1 100644
+index 687637b7f76a..6724ff17e275 100644
 --- a/arch/x86/kernel/irq.c
 +++ b/arch/x86/kernel/irq.c
 @@ -177,8 +177,8 @@ unsigned int __irq_entry do_IRQ(struct pt_regs *regs)
diff --git a/debian/patches/features/all/rt/0003-slab-lockdep-Annotate-all-slab-caches.patch b/debian/patches/features/all/rt/0003-slab-lockdep-Annotate-all-slab-caches.patch
index 211ee22..a99e75c 100644
--- a/debian/patches/features/all/rt/0003-slab-lockdep-Annotate-all-slab-caches.patch
+++ b/debian/patches/features/all/rt/0003-slab-lockdep-Annotate-all-slab-caches.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Mon, 28 Nov 2011 19:51:51 +0100
-Subject: [PATCH 003/374] slab, lockdep: Annotate all slab caches
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7e6a136bacd99b0dd23b5fb9423dddea00a87b89
+Subject: [PATCH 003/380] slab, lockdep: Annotate all slab caches
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7f209bb0af2c11dd11bad790af23fe4adc11e93f
 
 Currently we only annotate the kmalloc caches, annotate all of them.
 
@@ -20,7 +20,7 @@ Link: http://lkml.kernel.org/n/tip-10bey2cgpcvtbdkgigaoab8w@git.kernel.org
  1 file changed, 28 insertions(+), 21 deletions(-)
 
 diff --git a/mm/slab.c b/mm/slab.c
-index aea5e42..92d11c6 100644
+index aea5e42c67d8..92d11c622f9c 100644
 --- a/mm/slab.c
 +++ b/mm/slab.c
 @@ -607,6 +607,12 @@ int slab_is_available(void)
diff --git a/debian/patches/features/all/rt/0004-x86-kprobes-Remove-remove-bogus-preempt_enable.patch b/debian/patches/features/all/rt/0004-x86-kprobes-Remove-remove-bogus-preempt_enable.patch
index fb2e12f..c3cd4fc 100644
--- a/debian/patches/features/all/rt/0004-x86-kprobes-Remove-remove-bogus-preempt_enable.patch
+++ b/debian/patches/features/all/rt/0004-x86-kprobes-Remove-remove-bogus-preempt_enable.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 17 Mar 2011 11:02:15 +0100
-Subject: [PATCH 004/374] x86: kprobes: Remove remove bogus preempt_enable
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a92eaaf27d7ff9af046fcc9ef89dc27d62045352
+Subject: [PATCH 004/380] x86: kprobes: Remove remove bogus preempt_enable
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b3781af85bb3715a3f0c2ef1a85755f2fbf4cd6a
 
 The CONFIG_PREEMPT=n section of setup_singlestep() contains:
 
@@ -17,7 +17,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 deletion(-)
 
 diff --git a/arch/x86/kernel/kprobes.c b/arch/x86/kernel/kprobes.c
-index 083848f..02cc07c 100644
+index 083848f0652c..02cc07caa641 100644
 --- a/arch/x86/kernel/kprobes.c
 +++ b/arch/x86/kernel/kprobes.c
 @@ -478,7 +478,6 @@ static void __kprobes setup_singlestep(struct kprobe *p, struct pt_regs *regs,
diff --git a/debian/patches/features/all/rt/0005-x86-hpet-Disable-MSI-on-Lenovo-W510.patch b/debian/patches/features/all/rt/0005-x86-hpet-Disable-MSI-on-Lenovo-W510.patch
index d8a5ab5..f0f3d01 100644
--- a/debian/patches/features/all/rt/0005-x86-hpet-Disable-MSI-on-Lenovo-W510.patch
+++ b/debian/patches/features/all/rt/0005-x86-hpet-Disable-MSI-on-Lenovo-W510.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 30 Sep 2011 20:03:37 +0200
-Subject: [PATCH 005/374] x86: hpet: Disable MSI on Lenovo W510
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8f5d2a7a826817ce8f15308ad97b43a66c88371f
+Subject: [PATCH 005/380] x86: hpet: Disable MSI on Lenovo W510
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a0e82595d1f8c9315d52985ea05cd97cd49b319b
 
 MSI based per cpu timers lose interrupts when intel_idle() is enabled
 - independent of the c-state. With idle=poll the problem cannot be
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 27 insertions(+)
 
 diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
-index 4970ef0..424ae2e 100644
+index 4970ef070f2f..424ae2e8d7d7 100644
 --- a/arch/x86/kernel/hpet.c
 +++ b/arch/x86/kernel/hpet.c
 @@ -9,6 +9,7 @@
diff --git a/debian/patches/features/all/rt/0006-block-Shorten-interrupt-disabled-regions.patch b/debian/patches/features/all/rt/0006-block-Shorten-interrupt-disabled-regions.patch
index 20ed8f5..6fd9da7 100644
--- a/debian/patches/features/all/rt/0006-block-Shorten-interrupt-disabled-regions.patch
+++ b/debian/patches/features/all/rt/0006-block-Shorten-interrupt-disabled-regions.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 22 Jun 2011 19:47:02 +0200
-Subject: [PATCH 006/374] block: Shorten interrupt disabled regions
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6e1531d1314d2b8ef95431091c98fee2eeadaa6d
+Subject: [PATCH 006/380] block: Shorten interrupt disabled regions
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a8403d6b35086a24f57fb73e59e8d3494a69dca3
 
 Moving the blk_sched_flush_plug() call out of the interrupt/preempt
 disabled region in the scheduler allows us to replace
@@ -48,7 +48,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 8 insertions(+), 12 deletions(-)
 
 diff --git a/block/blk-core.c b/block/blk-core.c
-index ec494ff..527f5d5 100644
+index ec494ff6d244..527f5d57e58a 100644
 --- a/block/blk-core.c
 +++ b/block/blk-core.c
 @@ -300,7 +300,11 @@ void __blk_run_queue(struct request_queue *q)
diff --git a/debian/patches/features/all/rt/0007-sched-Distangle-worker-accounting-from-rq-3Elock.patch b/debian/patches/features/all/rt/0007-sched-Distangle-worker-accounting-from-rq-3Elock.patch
index 2020829..1d381ad 100644
--- a/debian/patches/features/all/rt/0007-sched-Distangle-worker-accounting-from-rq-3Elock.patch
+++ b/debian/patches/features/all/rt/0007-sched-Distangle-worker-accounting-from-rq-3Elock.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 22 Jun 2011 19:47:03 +0200
-Subject: [PATCH 007/374] sched: Distangle worker accounting from rq-%3Elock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a66b671db3f4935dd8b5d410fb7a8cc0e2be04b4
+Subject: [PATCH 007/380] sched: Distangle worker accounting from rq-%3Elock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ea1031864acd3968b44a7233cc3eddad84175724
 
 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
@@ -30,10 +30,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 47 insertions(+), 93 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index fe33d0f..e33da38 100644
+index a7a40b5677f0..29cc5549813f 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -2644,10 +2644,6 @@ static void ttwu_activate(struct rq *rq, struct task_struct *p, int en_flags)
+@@ -2646,10 +2646,6 @@ static void ttwu_activate(struct rq *rq, struct task_struct *p, int en_flags)
  {
  	activate_task(rq, p, en_flags);
  	p->on_rq = 1;
@@ -44,7 +44,7 @@ index fe33d0f..e33da38 100644
  }
  
  /*
-@@ -2882,42 +2878,6 @@ out:
+@@ -2884,42 +2880,6 @@ out:
  }
  
  /**
@@ -87,7 +87,7 @@ index fe33d0f..e33da38 100644
   * wake_up_process - Wake up a specific process
   * @p: The process to be woken up.
   *
-@@ -4619,19 +4579,6 @@ need_resched:
+@@ -4620,19 +4580,6 @@ need_resched:
  		} else {
  			deactivate_task(rq, prev, DEQUEUE_SLEEP);
  			prev->on_rq = 0;
@@ -107,7 +107,7 @@ index fe33d0f..e33da38 100644
  		}
  		switch_count = &prev->nvcsw;
  	}
-@@ -4674,6 +4621,14 @@ static inline void sched_submit_work(struct task_struct *tsk)
+@@ -4675,6 +4622,14 @@ static inline void sched_submit_work(struct task_struct *tsk)
  {
  	if (!tsk->state)
  		return;
@@ -122,7 +122,7 @@ index fe33d0f..e33da38 100644
  	/*
  	 * If we are going to sleep and we have plugged IO queued,
  	 * make sure to submit it to avoid deadlocks.
-@@ -4682,12 +4637,19 @@ static inline void sched_submit_work(struct task_struct *tsk)
+@@ -4683,12 +4638,19 @@ static inline void sched_submit_work(struct task_struct *tsk)
  		blk_schedule_flush_plug(tsk);
  }
  
@@ -143,7 +143,7 @@ index fe33d0f..e33da38 100644
  EXPORT_SYMBOL(schedule);
  
 diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index 252c274..15063bc 100644
+index 252c2749b6a0..15063bc24234 100644
 --- a/kernel/workqueue.c
 +++ b/kernel/workqueue.c
 @@ -138,6 +138,7 @@ struct worker {
@@ -251,7 +251,7 @@ index 252c274..15063bc 100644
  
  /**
 diff --git a/kernel/workqueue_sched.h b/kernel/workqueue_sched.h
-index 2d10fc9..3bf73e2 100644
+index 2d10fc98dc79..3bf73e24e1ea 100644
 --- a/kernel/workqueue_sched.h
 +++ b/kernel/workqueue_sched.h
 @@ -4,6 +4,5 @@
diff --git a/debian/patches/features/all/rt/0008-mips-enable-interrupts-in-signal.patch.patch b/debian/patches/features/all/rt/0008-mips-enable-interrupts-in-signal.patch.patch
index fc65322..e6f3f84 100644
--- a/debian/patches/features/all/rt/0008-mips-enable-interrupts-in-signal.patch.patch
+++ b/debian/patches/features/all/rt/0008-mips-enable-interrupts-in-signal.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 18 Jul 2011 21:32:10 +0200
-Subject: [PATCH 008/374] mips-enable-interrupts-in-signal.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=36d09045130d282eaac0adfeec8b1ed6df9fedc6
+Subject: [PATCH 008/380] mips-enable-interrupts-in-signal.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9ce85bb33ac4bc96571fb939c9c23c620d4fb88f
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 3 insertions(+)
 
 diff --git a/arch/mips/kernel/signal.c b/arch/mips/kernel/signal.c
-index f852400..1c8f34c 100644
+index f8524003676a..1c8f34c62ea1 100644
 --- a/arch/mips/kernel/signal.c
 +++ b/arch/mips/kernel/signal.c
 @@ -604,6 +604,9 @@ static void do_signal(struct pt_regs *regs)
diff --git a/debian/patches/features/all/rt/0009-arm-enable-interrupts-in-signal-code.patch.patch b/debian/patches/features/all/rt/0009-arm-enable-interrupts-in-signal-code.patch.patch
index e2ae6c9..2c3de89 100644
--- a/debian/patches/features/all/rt/0009-arm-enable-interrupts-in-signal-code.patch.patch
+++ b/debian/patches/features/all/rt/0009-arm-enable-interrupts-in-signal-code.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 16 Jul 2011 16:27:13 +0200
-Subject: [PATCH 009/374] arm-enable-interrupts-in-signal-code.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d69bd1b60a92cc75b8117c4ae4a77193f97a1c7c
+Subject: [PATCH 009/380] arm-enable-interrupts-in-signal-code.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c58970da37cf67452125b3f60c335635e444d8b4
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 3 insertions(+)
 
 diff --git a/arch/arm/kernel/signal.c b/arch/arm/kernel/signal.c
-index c1d9c77..f1699cf 100644
+index c1d9c77c3d19..f1699cf9fc1e 100644
 --- a/arch/arm/kernel/signal.c
 +++ b/arch/arm/kernel/signal.c
 @@ -683,6 +683,9 @@ static void do_signal(struct pt_regs *regs, int syscall)
diff --git a/debian/patches/features/all/rt/0010-powerpc-85xx-Mark-cascade-irq-IRQF_NO_THREAD.patch b/debian/patches/features/all/rt/0010-powerpc-85xx-Mark-cascade-irq-IRQF_NO_THREAD.patch
index 503135b..050005b 100644
--- a/debian/patches/features/all/rt/0010-powerpc-85xx-Mark-cascade-irq-IRQF_NO_THREAD.patch
+++ b/debian/patches/features/all/rt/0010-powerpc-85xx-Mark-cascade-irq-IRQF_NO_THREAD.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 16 Jul 2011 12:09:54 +0200
-Subject: [PATCH 010/374] powerpc: 85xx: Mark cascade irq IRQF_NO_THREAD
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a3d6d2dfd5e87fb6332f514797c1d8881ca0ae6d
+Subject: [PATCH 010/380] powerpc: 85xx: Mark cascade irq IRQF_NO_THREAD
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b9a7d37f607d46b18ab32bc0bb10ed85d1a10661
 
 Cascade interrupt must run in hard interrupt context.
 
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/arch/powerpc/platforms/85xx/mpc85xx_cds.c b/arch/powerpc/platforms/85xx/mpc85xx_cds.c
-index 66cb8d6..7e2a4d2 100644
+index 66cb8d64079f..7e2a4d231e74 100644
 --- a/arch/powerpc/platforms/85xx/mpc85xx_cds.c
 +++ b/arch/powerpc/platforms/85xx/mpc85xx_cds.c
 @@ -177,7 +177,7 @@ static irqreturn_t mpc85xx_8259_cascade_action(int irq, void *dev_id)
diff --git a/debian/patches/features/all/rt/0011-powerpc-wsp-Mark-opb-cascade-handler-IRQF_NO_THREAD.patch b/debian/patches/features/all/rt/0011-powerpc-wsp-Mark-opb-cascade-handler-IRQF_NO_THREAD.patch
index 2f21a58..0b1a366 100644
--- a/debian/patches/features/all/rt/0011-powerpc-wsp-Mark-opb-cascade-handler-IRQF_NO_THREAD.patch
+++ b/debian/patches/features/all/rt/0011-powerpc-wsp-Mark-opb-cascade-handler-IRQF_NO_THREAD.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 5 Oct 2011 14:11:24 +0200
-Subject: [PATCH 011/374] powerpc: wsp: Mark opb cascade handler IRQF_NO_THREAD
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=aef678256c5d864025e0276751b30c3bde1d8945
+Subject: [PATCH 011/380] powerpc: wsp: Mark opb cascade handler IRQF_NO_THREAD
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1dbe6e77fba1c17491fea979acc665ecdd9f0d1d
 
 Cascade handlers must run in hard interrupt context.
 
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/arch/powerpc/platforms/wsp/opb_pic.c b/arch/powerpc/platforms/wsp/opb_pic.c
-index be05631..19f353d 100644
+index be05631a3c1c..19f353dfcd03 100644
 --- a/arch/powerpc/platforms/wsp/opb_pic.c
 +++ b/arch/powerpc/platforms/wsp/opb_pic.c
 @@ -320,7 +320,8 @@ void __init opb_pic_init(void)
diff --git a/debian/patches/features/all/rt/0012-powerpc-Mark-IPI-interrupts-IRQF_NO_THREAD.patch b/debian/patches/features/all/rt/0012-powerpc-Mark-IPI-interrupts-IRQF_NO_THREAD.patch
index 00adadf..6abd6a0 100644
--- a/debian/patches/features/all/rt/0012-powerpc-Mark-IPI-interrupts-IRQF_NO_THREAD.patch
+++ b/debian/patches/features/all/rt/0012-powerpc-Mark-IPI-interrupts-IRQF_NO_THREAD.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 5 Oct 2011 14:00:26 +0200
-Subject: [PATCH 012/374] powerpc: Mark IPI interrupts IRQF_NO_THREAD
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=db830f192f9b15cff7e75254366ee654804f30cc
+Subject: [PATCH 012/380] powerpc: Mark IPI interrupts IRQF_NO_THREAD
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c0089def30a0d8fdd00eaac3d4e92fbd43459214
 
 IPI handlers cannot be threaded. Remove the obsolete IRQF_DISABLED
 flag (see commit e58aa3d2) while at it.
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 7 insertions(+), 6 deletions(-)
 
 diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c
-index fe04b4a..2216eb2 100644
+index fe04b4ab8b8a..2216eb2373ef 100644
 --- a/arch/powerpc/kernel/smp.c
 +++ b/arch/powerpc/kernel/smp.c
 @@ -187,8 +187,8 @@ int smp_request_message_ipi(int virq, int msg)
@@ -29,7 +29,7 @@ index fe04b4a..2216eb2 100644
  		virq, smp_ipi_name[msg], err);
  
 diff --git a/arch/powerpc/platforms/powermac/smp.c b/arch/powerpc/platforms/powermac/smp.c
-index 3394254..8d75ac8 100644
+index 3394254f305f..8d75ac8a6bd7 100644
 --- a/arch/powerpc/platforms/powermac/smp.c
 +++ b/arch/powerpc/platforms/powermac/smp.c
 @@ -200,7 +200,7 @@ static int psurge_secondary_ipi_init(void)
@@ -51,7 +51,7 @@ index 3394254..8d75ac8 100644
  };
  
 diff --git a/arch/powerpc/sysdev/xics/xics-common.c b/arch/powerpc/sysdev/xics/xics-common.c
-index 63762c6..4ba6194 100644
+index 63762c672a03..4ba61941acbe 100644
 --- a/arch/powerpc/sysdev/xics/xics-common.c
 +++ b/arch/powerpc/sysdev/xics/xics-common.c
 @@ -134,10 +134,11 @@ static void xics_request_ipi(void)
diff --git a/debian/patches/features/all/rt/0013-powerpc-Allow-irq-threading.patch b/debian/patches/features/all/rt/0013-powerpc-Allow-irq-threading.patch
index 4af05a3..2d104d1 100644
--- a/debian/patches/features/all/rt/0013-powerpc-Allow-irq-threading.patch
+++ b/debian/patches/features/all/rt/0013-powerpc-Allow-irq-threading.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 16 Jul 2011 13:16:24 +0200
-Subject: [PATCH 013/374] powerpc: Allow irq threading
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d94bcf86f14a9d8b13883702459276a9e7c36df7
+Subject: [PATCH 013/380] powerpc: Allow irq threading
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0350bd0e965cb11439cee2fc7a29d9ec3b19bd2b
 
 All interrupts which must be non threaded are marked
 IRQF_NO_THREAD. So it's safe to allow force threaded handlers.
diff --git a/debian/patches/features/all/rt/0014-sched-Keep-period-timer-ticking-when-throttling-acti.patch b/debian/patches/features/all/rt/0014-sched-Keep-period-timer-ticking-when-throttling-acti.patch
index e884d49..389db20 100644
--- a/debian/patches/features/all/rt/0014-sched-Keep-period-timer-ticking-when-throttling-acti.patch
+++ b/debian/patches/features/all/rt/0014-sched-Keep-period-timer-ticking-when-throttling-acti.patch
@@ -1,8 +1,8 @@
 From: Peter Zijlstra <peterz at infradead.org>
 Date: Tue, 18 Oct 2011 22:03:48 +0200
-Subject: [PATCH 014/374] sched: Keep period timer ticking when throttling
+Subject: [PATCH 014/380] sched: Keep period timer ticking when throttling
  active
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5c743adc0c3bcee5a6fe03050b46d8c013641f11
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=904aa51f748fb463bb386f9498d79868d4a7013b
 
 When a runqueue is throttled we cannot disable the period timer
 because that timer is the only way to undo the throttling.
@@ -18,7 +18,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 8 insertions(+), 5 deletions(-)
 
 diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c
-index bd4afa4..89dba67 100644
+index bd4afa408686..89dba67cc2d5 100644
 --- a/kernel/sched_rt.c
 +++ b/kernel/sched_rt.c
 @@ -581,12 +581,9 @@ static inline int balance_runtime(struct rt_rq *rt_rq)
diff --git a/debian/patches/features/all/rt/0015-sched-Do-not-throttle-due-to-PI-boosting.patch b/debian/patches/features/all/rt/0015-sched-Do-not-throttle-due-to-PI-boosting.patch
index 40929d8..b82dbb8 100644
--- a/debian/patches/features/all/rt/0015-sched-Do-not-throttle-due-to-PI-boosting.patch
+++ b/debian/patches/features/all/rt/0015-sched-Do-not-throttle-due-to-PI-boosting.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <peterz at infradead.org>
 Date: Tue, 18 Oct 2011 22:03:48 +0200
-Subject: [PATCH 015/374] sched: Do not throttle due to PI boosting
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4b3ddb61baf92249bf92aab00b464fd69ae29deb
+Subject: [PATCH 015/380] sched: Do not throttle due to PI boosting
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b490806210530b50fba825eb4c897e0a78379d27
 
 When a runqueue has rt_runtime_us = 0 then the only way it can
 accumulate rt_time is via PI boosting. Though that causes the runqueue
@@ -17,7 +17,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 18 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c
-index 89dba67..37ef951 100644
+index 89dba67cc2d5..37ef9515f5aa 100644
 --- a/kernel/sched_rt.c
 +++ b/kernel/sched_rt.c
 @@ -673,8 +673,24 @@ static int sched_rt_runtime_exceeded(struct rt_rq *rt_rq)
diff --git a/debian/patches/features/all/rt/0016-time-Remove-bogus-comments.patch b/debian/patches/features/all/rt/0016-time-Remove-bogus-comments.patch
index 1f3158d..f20998f 100644
--- a/debian/patches/features/all/rt/0016-time-Remove-bogus-comments.patch
+++ b/debian/patches/features/all/rt/0016-time-Remove-bogus-comments.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 28 Feb 2012 19:06:50 +0100
-Subject: [PATCH 016/374] time: Remove bogus comments
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b08920e751dc0ebbc04175b2491b0861e0d6962d
+Subject: [PATCH 016/380] time: Remove bogus comments
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=675dcc262df4887b301272d45f4d89bb8d100f2a
 
 There is no global irq lock which makes a syscall magically SMP
 safe. Remove the outdated comment concerning do_settimeofday() as
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 6 deletions(-)
 
 diff --git a/kernel/time.c b/kernel/time.c
-index f64e88b..0864d70 100644
+index f64e88bd5444..0864d70da80d 100644
 --- a/kernel/time.c
 +++ b/kernel/time.c
 @@ -163,7 +163,6 @@ int do_sys_settimeofday(const struct timespec *tv, const struct timezone *tz)
diff --git a/debian/patches/features/all/rt/0017-x86-vdso-Remove-bogus-locking-in-update_vsyscall_tz.patch b/debian/patches/features/all/rt/0017-x86-vdso-Remove-bogus-locking-in-update_vsyscall_tz.patch
index d90a08a..c2b5c25 100644
--- a/debian/patches/features/all/rt/0017-x86-vdso-Remove-bogus-locking-in-update_vsyscall_tz.patch
+++ b/debian/patches/features/all/rt/0017-x86-vdso-Remove-bogus-locking-in-update_vsyscall_tz.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 28 Feb 2012 19:10:46 +0100
-Subject: [PATCH 017/374] x86: vdso: Remove bogus locking in
+Subject: [PATCH 017/380] x86: vdso: Remove bogus locking in
  update_vsyscall_tz()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0e859e3d94950574197b1802fa15b656b4ed0fb7
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=29ecbf4da484981ac9974576c6599a69f9a82edb
 
 Changing the sequence count in update_vsyscall_tz() is completely
 pointless.
@@ -16,7 +16,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 5 deletions(-)
 
 diff --git a/arch/x86/kernel/vsyscall_64.c b/arch/x86/kernel/vsyscall_64.c
-index e4d4a22..f04adbd 100644
+index e4d4a22e8b94..f04adbd6f6f4 100644
 --- a/arch/x86/kernel/vsyscall_64.c
 +++ b/arch/x86/kernel/vsyscall_64.c
 @@ -80,12 +80,7 @@ early_param("vsyscall", vsyscall_setup);
diff --git a/debian/patches/features/all/rt/0018-x86-vdso-Use-seqcount-instead-of-seqlock.patch b/debian/patches/features/all/rt/0018-x86-vdso-Use-seqcount-instead-of-seqlock.patch
index e745a1e..c9738fa 100644
--- a/debian/patches/features/all/rt/0018-x86-vdso-Use-seqcount-instead-of-seqlock.patch
+++ b/debian/patches/features/all/rt/0018-x86-vdso-Use-seqcount-instead-of-seqlock.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 28 Feb 2012 18:24:07 +0100
-Subject: [PATCH 018/374] x86: vdso: Use seqcount instead of seqlock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a02ab919b874ea82e3c83442e7874e2e39cb34c7
+Subject: [PATCH 018/380] x86: vdso: Use seqcount instead of seqlock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4262e7e7830a10f5518b34a7746fa023be4f6754
 
 The update of the vdso data happens under xtime_lock, so adding a
 nested lock is pointless. Just use a seqcount to sync the readers.
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 12 insertions(+), 17 deletions(-)
 
 diff --git a/arch/x86/include/asm/vgtod.h b/arch/x86/include/asm/vgtod.h
-index 815285b..1f00717 100644
+index 815285bcaceb..1f007178c813 100644
 --- a/arch/x86/include/asm/vgtod.h
 +++ b/arch/x86/include/asm/vgtod.h
 @@ -5,7 +5,7 @@
@@ -27,7 +27,7 @@ index 815285b..1f00717 100644
  	/* open coded 'struct timespec' */
  	time_t		wall_time_sec;
 diff --git a/arch/x86/kernel/vsyscall_64.c b/arch/x86/kernel/vsyscall_64.c
-index f04adbd..50392ee 100644
+index f04adbd6f6f4..50392ee9a626 100644
 --- a/arch/x86/kernel/vsyscall_64.c
 +++ b/arch/x86/kernel/vsyscall_64.c
 @@ -52,10 +52,7 @@
@@ -63,7 +63,7 @@ index f04adbd..50392ee 100644
  
  static void warn_bad_vsyscall(const char *level, struct pt_regs *regs,
 diff --git a/arch/x86/vdso/vclock_gettime.c b/arch/x86/vdso/vclock_gettime.c
-index 6bc0e72..d8511fb 100644
+index 6bc0e723b6e8..d8511fb90c64 100644
 --- a/arch/x86/vdso/vclock_gettime.c
 +++ b/arch/x86/vdso/vclock_gettime.c
 @@ -86,11 +86,11 @@ notrace static noinline int do_realtime(struct timespec *ts)
diff --git a/debian/patches/features/all/rt/0019-ia64-vsyscall-Use-seqcount-instead-of-seqlock.patch b/debian/patches/features/all/rt/0019-ia64-vsyscall-Use-seqcount-instead-of-seqlock.patch
index 5a8ec7b..151a39a 100644
--- a/debian/patches/features/all/rt/0019-ia64-vsyscall-Use-seqcount-instead-of-seqlock.patch
+++ b/debian/patches/features/all/rt/0019-ia64-vsyscall-Use-seqcount-instead-of-seqlock.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 28 Feb 2012 18:33:08 +0100
-Subject: [PATCH 019/374] ia64: vsyscall: Use seqcount instead of seqlock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6d045a4dbdafbdadf18c8297b3fc17cb6c27f068
+Subject: [PATCH 019/380] ia64: vsyscall: Use seqcount instead of seqlock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=19dc0143a276fa379358e6e0d16dfe3902a17241
 
 The update of the vdso data happens under xtime_lock, so adding a
 nested lock is pointless. Just use a seqcount to sync the readers.
@@ -16,7 +16,7 @@ Cc: Tony Luck <tony.luck at intel.com>
  4 files changed, 7 insertions(+), 11 deletions(-)
 
 diff --git a/arch/ia64/kernel/asm-offsets.c b/arch/ia64/kernel/asm-offsets.c
-index af56501..106aeb6 100644
+index af5650169043..106aeb670e54 100644
 --- a/arch/ia64/kernel/asm-offsets.c
 +++ b/arch/ia64/kernel/asm-offsets.c
 @@ -269,8 +269,8 @@ void foo(void)
@@ -31,7 +31,7 @@ index af56501..106aeb6 100644
  		offsetof (struct fsyscall_gtod_data_t, wall_time));
  	DEFINE(IA64_GTOD_MONO_TIME_OFFSET,
 diff --git a/arch/ia64/kernel/fsys.S b/arch/ia64/kernel/fsys.S
-index 331d42b..fa77de7 100644
+index 331d42bda77a..fa77de7032b3 100644
 --- a/arch/ia64/kernel/fsys.S
 +++ b/arch/ia64/kernel/fsys.S
 @@ -174,7 +174,7 @@ ENTRY(fsys_set_tid_address)
@@ -44,7 +44,7 @@ index 331d42b..fa77de7 100644
  #endif
  #if IA64_ITC_JITTER_OFFSET !=0
 diff --git a/arch/ia64/kernel/fsyscall_gtod_data.h b/arch/ia64/kernel/fsyscall_gtod_data.h
-index 57d2ee6..146b15b 100644
+index 57d2ee6c83e1..146b15b5fec3 100644
 --- a/arch/ia64/kernel/fsyscall_gtod_data.h
 +++ b/arch/ia64/kernel/fsyscall_gtod_data.h
 @@ -6,7 +6,7 @@
@@ -57,7 +57,7 @@ index 57d2ee6..146b15b 100644
  	struct timespec monotonic_time;
  	cycle_t		clk_mask;
 diff --git a/arch/ia64/kernel/time.c b/arch/ia64/kernel/time.c
-index 43920de..8e991a0 100644
+index 43920de425f1..8e991a0b5e35 100644
 --- a/arch/ia64/kernel/time.c
 +++ b/arch/ia64/kernel/time.c
 @@ -35,9 +35,7 @@
diff --git a/debian/patches/features/all/rt/0020-seqlock-Remove-unused-functions.patch b/debian/patches/features/all/rt/0020-seqlock-Remove-unused-functions.patch
index e64d59c..b21f433 100644
--- a/debian/patches/features/all/rt/0020-seqlock-Remove-unused-functions.patch
+++ b/debian/patches/features/all/rt/0020-seqlock-Remove-unused-functions.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 16 Jul 2011 18:38:22 +0200
-Subject: [PATCH 020/374] seqlock: Remove unused functions
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=99c4af1be5350d813f18033b9aa2fcee6a538efc
+Subject: [PATCH 020/380] seqlock: Remove unused functions
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=672bf7a8f94e032dd4d241169f73a87e8cb0f112
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 21 deletions(-)
 
 diff --git a/include/linux/seqlock.h b/include/linux/seqlock.h
-index bb1fac5..f12fc43 100644
+index bb1fac5b8ee8..f12fc4361a31 100644
 --- a/include/linux/seqlock.h
 +++ b/include/linux/seqlock.h
 @@ -69,17 +69,6 @@ static inline void write_sequnlock(seqlock_t *sl)
diff --git a/debian/patches/features/all/rt/0021-seqlock-Use-seqcount.patch b/debian/patches/features/all/rt/0021-seqlock-Use-seqcount.patch
index 6c93d27..b597781 100644
--- a/debian/patches/features/all/rt/0021-seqlock-Use-seqcount.patch
+++ b/debian/patches/features/all/rt/0021-seqlock-Use-seqcount.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 16 Jul 2011 18:40:26 +0200
-Subject: [PATCH 021/374] seqlock: Use seqcount
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fe17fec61656d2e3410a60d0d5e0ce8ba1476a35
+Subject: [PATCH 021/380] seqlock: Use seqcount
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=17de427f29b44271adb62524d00b2f377d65820d
 
 No point in having different implementations for the same thing.
 
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 93 insertions(+), 83 deletions(-)
 
 diff --git a/include/linux/seqlock.h b/include/linux/seqlock.h
-index f12fc43..cc7b65d 100644
+index f12fc4361a31..cc7b65d41f81 100644
 --- a/include/linux/seqlock.h
 +++ b/include/linux/seqlock.h
 @@ -30,81 +30,12 @@
diff --git a/debian/patches/features/all/rt/0022-vfs-fs_struct-Move-code-out-of-seqcount-write-sectio.patch b/debian/patches/features/all/rt/0022-vfs-fs_struct-Move-code-out-of-seqcount-write-sectio.patch
index 1b34cf8..0779ddd 100644
--- a/debian/patches/features/all/rt/0022-vfs-fs_struct-Move-code-out-of-seqcount-write-sectio.patch
+++ b/debian/patches/features/all/rt/0022-vfs-fs_struct-Move-code-out-of-seqcount-write-sectio.patch
@@ -1,8 +1,8 @@
 From: Al Viro <viro at ZenIV.linux.org.uk>
 Date: Thu, 15 Mar 2012 18:39:40 +0000
-Subject: [PATCH 022/374] vfs: fs_struct: Move code out of seqcount write
+Subject: [PATCH 022/380] vfs: fs_struct: Move code out of seqcount write
  sections
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ba1e04b3a9f95645e7f4d6f50e7b56ebf08a42d0
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=851388c777a3e7aebd1a4ea3ca88d9e0f3977d1f
 
 RT cannot disable preemption in the seqcount write sections due to
 functions called which take "sleeping" spinlocks.
@@ -15,7 +15,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 15 insertions(+), 12 deletions(-)
 
 diff --git a/fs/fs_struct.c b/fs/fs_struct.c
-index 78b519c..f5818c4 100644
+index 78b519c13536..f5818c41f143 100644
 --- a/fs/fs_struct.c
 +++ b/fs/fs_struct.c
 @@ -26,11 +26,11 @@ void set_fs_root(struct fs_struct *fs, struct path *path)
diff --git a/debian/patches/features/all/rt/0023-timekeeping-Split-xtime_lock.patch b/debian/patches/features/all/rt/0023-timekeeping-Split-xtime_lock.patch
index c79191d..cb8bad8 100644
--- a/debian/patches/features/all/rt/0023-timekeeping-Split-xtime_lock.patch
+++ b/debian/patches/features/all/rt/0023-timekeeping-Split-xtime_lock.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 1 Mar 2012 15:14:06 +0100
-Subject: [PATCH 023/374] timekeeping: Split xtime_lock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=98f0964ca5faee5f9bd18c73d879f966dcbc6c29
+Subject: [PATCH 023/380] timekeeping: Split xtime_lock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f528bd78ac7eb30a80af365e481e60b6bb306b93
 
 xtime_lock is going to be split apart in mainline, so we can shorten
 the seqcount protected regions and avoid updating seqcount in some
@@ -19,7 +19,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  6 files changed, 89 insertions(+), 57 deletions(-)
 
 diff --git a/kernel/time/jiffies.c b/kernel/time/jiffies.c
-index 955560e..c84f1ce 100644
+index 955560e25e05..c84f1ceeff23 100644
 --- a/kernel/time/jiffies.c
 +++ b/kernel/time/jiffies.c
 @@ -80,9 +80,9 @@ u64 get_jiffies_64(void)
@@ -35,7 +35,7 @@ index 955560e..c84f1ce 100644
  }
  EXPORT_SYMBOL(get_jiffies_64);
 diff --git a/kernel/time/ntp.c b/kernel/time/ntp.c
-index 34fd01e..635c2bc 100644
+index 34fd01ebd168..635c2bcf651f 100644
 --- a/kernel/time/ntp.c
 +++ b/kernel/time/ntp.c
 @@ -362,6 +362,9 @@ int second_overflow(unsigned long secs)
@@ -118,7 +118,7 @@ index 34fd01e..635c2bc 100644
  EXPORT_SYMBOL(hardpps);
  
 diff --git a/kernel/time/tick-common.c b/kernel/time/tick-common.c
-index ead79bc..538d45a 100644
+index ead79bce1258..538d45a556ea 100644
 --- a/kernel/time/tick-common.c
 +++ b/kernel/time/tick-common.c
 @@ -63,13 +63,15 @@ int tick_is_oneshot_available(void)
@@ -152,7 +152,7 @@ index ead79bc..538d45a 100644
  		clockevents_set_mode(dev, CLOCK_EVT_MODE_ONESHOT);
  
 diff --git a/kernel/time/tick-internal.h b/kernel/time/tick-internal.h
-index 4e265b9..c91100d 100644
+index 4e265b901fed..c91100d99fb9 100644
 --- a/kernel/time/tick-internal.h
 +++ b/kernel/time/tick-internal.h
 @@ -141,4 +141,5 @@ static inline int tick_device_is_functional(struct clock_event_device *dev)
@@ -163,7 +163,7 @@ index 4e265b9..c91100d 100644
 +extern raw_spinlock_t xtime_lock;
 +extern seqcount_t xtime_seq;
 diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
-index 2695d72..c92282e 100644
+index 2695d72d68ec..c92282ee6ae8 100644
 --- a/kernel/time/tick-sched.c
 +++ b/kernel/time/tick-sched.c
 @@ -56,7 +56,8 @@ static void tick_do_update_jiffies64(ktime_t now)
@@ -218,7 +218,7 @@ index 2695d72..c92282e 100644
  	if (rcu_needs_cpu(cpu) || printk_needs_cpu(cpu) ||
  	    arch_needs_cpu(cpu)) {
 diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
-index 068c092..d00be1d 100644
+index 068c0929904c..d00be1dc385c 100644
 --- a/kernel/time/timekeeping.c
 +++ b/kernel/time/timekeeping.c
 @@ -139,8 +139,8 @@ static inline s64 timekeeping_get_ns_raw(void)
diff --git a/debian/patches/features/all/rt/0024-intel_idle-Convert-i7300_idle_lock-to-raw-spinlock.patch b/debian/patches/features/all/rt/0024-intel_idle-Convert-i7300_idle_lock-to-raw-spinlock.patch
index 46ef274..3bd40dd 100644
--- a/debian/patches/features/all/rt/0024-intel_idle-Convert-i7300_idle_lock-to-raw-spinlock.patch
+++ b/debian/patches/features/all/rt/0024-intel_idle-Convert-i7300_idle_lock-to-raw-spinlock.patch
@@ -1,7 +1,7 @@
 From: Mike Galbraith <efault at gmx.de>
 Date: Wed, 7 Dec 2011 12:48:42 +0100
-Subject: [PATCH 024/374] intel_idle: Convert i7300_idle_lock to raw spinlock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2886a91b07c631919cca70eee8b1052a6c9d552d
+Subject: [PATCH 024/380] intel_idle: Convert i7300_idle_lock to raw spinlock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ab0048841ec13018bade04d23d4c468233be6cdd
 
 24 core Intel box's first exposure to 3.0.12-rt30-rc3 didn't go well.
 
@@ -28,7 +28,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/drivers/idle/i7300_idle.c b/drivers/idle/i7300_idle.c
-index c976285..5537d7c 100644
+index c976285d313e..5537d7c482c0 100644
 --- a/drivers/idle/i7300_idle.c
 +++ b/drivers/idle/i7300_idle.c
 @@ -75,7 +75,7 @@ static unsigned long past_skip;
diff --git a/debian/patches/features/all/rt/0025-mm-memcg-shorten-preempt-disabled-section-around-eve.patch b/debian/patches/features/all/rt/0025-mm-memcg-shorten-preempt-disabled-section-around-eve.patch
index 9f07468..9a273e7 100644
--- a/debian/patches/features/all/rt/0025-mm-memcg-shorten-preempt-disabled-section-around-eve.patch
+++ b/debian/patches/features/all/rt/0025-mm-memcg-shorten-preempt-disabled-section-around-eve.patch
@@ -1,8 +1,8 @@
 From: Johannes Weiner <hannes at cmpxchg.org>
 Date: Thu, 17 Nov 2011 07:49:25 +0100
-Subject: [PATCH 025/374] mm: memcg: shorten preempt-disabled section around
+Subject: [PATCH 025/380] mm: memcg: shorten preempt-disabled section around
  event checks
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f2327f1b4cab24defc19809da93f8be05865b73e
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b475aaae8f8cbae0d36796460ead2cc451a5f346
 
 Only the ratelimit checks themselves have to run with preemption
 disabled, the resulting actions - checking for usage thresholds,
@@ -18,7 +18,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 35 insertions(+), 38 deletions(-)
 
 diff --git a/mm/memcontrol.c b/mm/memcontrol.c
-index 204de6a..f8bdd8d 100644
+index 9ba67dd6db34..95455f479ca4 100644
 --- a/mm/memcontrol.c
 +++ b/mm/memcontrol.c
 @@ -683,37 +683,32 @@ static unsigned long mem_cgroup_nr_lru_pages(struct mem_cgroup *memcg,
diff --git a/debian/patches/features/all/rt/0026-tracing-Account-for-preempt-off-in-preempt_schedule.patch b/debian/patches/features/all/rt/0026-tracing-Account-for-preempt-off-in-preempt_schedule.patch
index b039415..055b96a 100644
--- a/debian/patches/features/all/rt/0026-tracing-Account-for-preempt-off-in-preempt_schedule.patch
+++ b/debian/patches/features/all/rt/0026-tracing-Account-for-preempt-off-in-preempt_schedule.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Thu, 29 Sep 2011 12:24:30 -0500
-Subject: [PATCH 026/374] tracing: Account for preempt off in
+Subject: [PATCH 026/380] tracing: Account for preempt off in
  preempt_schedule()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1090b6820ff0edd19a48d1bd02315314392a6ea7
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=45982756ce35da901b5ae64537b9c5c0664d48eb
 
 The preempt_schedule() uses the preempt_disable_notrace() version
 because it can cause infinite recursion by the function tracer as
@@ -28,10 +28,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 9 insertions(+)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index e33da38..f084c93 100644
+index 29cc5549813f..aba70ca2f82d 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4717,7 +4717,16 @@ asmlinkage void __sched notrace preempt_schedule(void)
+@@ -4718,7 +4718,16 @@ asmlinkage void __sched notrace preempt_schedule(void)
  
  	do {
  		add_preempt_count_notrace(PREEMPT_ACTIVE);
diff --git a/debian/patches/features/all/rt/0027-signal-revert-ptrace-preempt-magic.patch.patch b/debian/patches/features/all/rt/0027-signal-revert-ptrace-preempt-magic.patch.patch
index e3b531f..3a6a04a 100644
--- a/debian/patches/features/all/rt/0027-signal-revert-ptrace-preempt-magic.patch.patch
+++ b/debian/patches/features/all/rt/0027-signal-revert-ptrace-preempt-magic.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 21 Sep 2011 19:57:12 +0200
-Subject: [PATCH 027/374] signal-revert-ptrace-preempt-magic.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ac4d0568557aed1a3b0d4ad1e92611f8e1b26d72
+Subject: [PATCH 027/380] signal-revert-ptrace-preempt-magic.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8afa133f7a98fd4746f3b4ed68fcc844eb0cf797
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 8 deletions(-)
 
 diff --git a/kernel/signal.c b/kernel/signal.c
-index 3ecf574..53c8d54 100644
+index 3ecf57489376..53c8d54a5697 100644
 --- a/kernel/signal.c
 +++ b/kernel/signal.c
 @@ -1867,15 +1867,7 @@ static void ptrace_stop(int exit_code, int why, int clear_code, siginfo_t *info)
diff --git a/debian/patches/features/all/rt/0028-arm-Mark-pmu-interupt-IRQF_NO_THREAD.patch b/debian/patches/features/all/rt/0028-arm-Mark-pmu-interupt-IRQF_NO_THREAD.patch
index 345fbca..c3896e0 100644
--- a/debian/patches/features/all/rt/0028-arm-Mark-pmu-interupt-IRQF_NO_THREAD.patch
+++ b/debian/patches/features/all/rt/0028-arm-Mark-pmu-interupt-IRQF_NO_THREAD.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 16 Mar 2011 14:45:31 +0100
-Subject: [PATCH 028/374] arm: Mark pmu interupt IRQF_NO_THREAD
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0727165b48860318383e4aff813302b9bef10a79
+Subject: [PATCH 028/380] arm: Mark pmu interupt IRQF_NO_THREAD
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=986ca7b49fd614894dec9b77abe0974996b9d98a
 
 PMU interrupt must not be threaded. Remove IRQF_DISABLED while at it
 as we run all handlers with interrupts disabled anyway.
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/arch/arm/kernel/perf_event.c b/arch/arm/kernel/perf_event.c
-index 4a2db48..c00abc9 100644
+index 4a2db48c148e..c00abc9ed204 100644
 --- a/arch/arm/kernel/perf_event.c
 +++ b/arch/arm/kernel/perf_event.c
 @@ -446,7 +446,7 @@ armpmu_reserve_hardware(struct arm_pmu *armpmu)
diff --git a/debian/patches/features/all/rt/0029-arm-Allow-forced-irq-threading.patch b/debian/patches/features/all/rt/0029-arm-Allow-forced-irq-threading.patch
index b0e1942..ca7dd34 100644
--- a/debian/patches/features/all/rt/0029-arm-Allow-forced-irq-threading.patch
+++ b/debian/patches/features/all/rt/0029-arm-Allow-forced-irq-threading.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 16 Jul 2011 13:15:20 +0200
-Subject: [PATCH 029/374] arm: Allow forced irq threading
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2da8fb111b122404d1bf74ab55ae38b60b89f1db
+Subject: [PATCH 029/380] arm: Allow forced irq threading
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4134e745ae18fd5a1bd19c3658102f9dd011cdf9
 
 All timer interrupts and the perf interrupt are marked NO_THREAD, so
 its safe to allow forced interrupt threading.
diff --git a/debian/patches/features/all/rt/0030-preempt-rt-Convert-arm-boot_lock-to-raw.patch b/debian/patches/features/all/rt/0030-preempt-rt-Convert-arm-boot_lock-to-raw.patch
index e5130c8..e04d0dd 100644
--- a/debian/patches/features/all/rt/0030-preempt-rt-Convert-arm-boot_lock-to-raw.patch
+++ b/debian/patches/features/all/rt/0030-preempt-rt-Convert-arm-boot_lock-to-raw.patch
@@ -1,7 +1,7 @@
 From: Frank Rowand <frank.rowand at am.sony.com>
 Date: Mon, 19 Sep 2011 14:51:14 -0700
-Subject: [PATCH 030/374] preempt-rt: Convert arm boot_lock to raw
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=41b5739f36c2a5650e3d747c42b7fb091ddb8876
+Subject: [PATCH 030/380] preempt-rt: Convert arm boot_lock to raw
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0ea76c439c8ac131242544e72fd0ae8cd2cf98d2
 
 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.
@@ -29,7 +29,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  6 files changed, 31 insertions(+), 31 deletions(-)
 
 diff --git a/arch/arm/mach-exynos/platsmp.c b/arch/arm/mach-exynos/platsmp.c
-index 69ffb2f..fe321b0 100644
+index 69ffb2fb3875..fe321b0d2ba9 100644
 --- a/arch/arm/mach-exynos/platsmp.c
 +++ b/arch/arm/mach-exynos/platsmp.c
 @@ -63,7 +63,7 @@ static void __iomem *scu_base_addr(void)
@@ -80,7 +80,7 @@ index 69ffb2f..fe321b0 100644
  	return pen_release != -1 ? -ENOSYS : 0;
  }
 diff --git a/arch/arm/mach-msm/platsmp.c b/arch/arm/mach-msm/platsmp.c
-index fdec58a..cad6b81 100644
+index fdec58aaa35c..cad6b8114a92 100644
 --- a/arch/arm/mach-msm/platsmp.c
 +++ b/arch/arm/mach-msm/platsmp.c
 @@ -39,7 +39,7 @@ extern void msm_secondary_startup(void);
@@ -122,7 +122,7 @@ index fdec58a..cad6b81 100644
  	return pen_release != -1 ? -ENOSYS : 0;
  }
 diff --git a/arch/arm/mach-omap2/omap-smp.c b/arch/arm/mach-omap2/omap-smp.c
-index 4412ddb..490de9c 100644
+index 4412ddb7b3f6..490de9c330cd 100644
 --- a/arch/arm/mach-omap2/omap-smp.c
 +++ b/arch/arm/mach-omap2/omap-smp.c
 @@ -29,7 +29,7 @@
@@ -164,7 +164,7 @@ index 4412ddb..490de9c 100644
  	return 0;
  }
 diff --git a/arch/arm/mach-tegra/platsmp.c b/arch/arm/mach-tegra/platsmp.c
-index 7d2b5d0..571f61a 100644
+index 7d2b5d03c1df..571f61a35894 100644
 --- a/arch/arm/mach-tegra/platsmp.c
 +++ b/arch/arm/mach-tegra/platsmp.c
 @@ -28,7 +28,7 @@
@@ -206,7 +206,7 @@ index 7d2b5d0..571f61a 100644
  	return 0;
  }
 diff --git a/arch/arm/mach-ux500/platsmp.c b/arch/arm/mach-ux500/platsmp.c
-index a19e398..9e92c6c 100644
+index a19e398dade3..9e92c6cc9817 100644
 --- a/arch/arm/mach-ux500/platsmp.c
 +++ b/arch/arm/mach-ux500/platsmp.c
 @@ -57,7 +57,7 @@ static void __iomem *scu_base_addr(void)
@@ -248,7 +248,7 @@ index a19e398..9e92c6c 100644
  	return pen_release != -1 ? -ENOSYS : 0;
  }
 diff --git a/arch/arm/plat-versatile/platsmp.c b/arch/arm/plat-versatile/platsmp.c
-index 92f18d3..287bbb5 100644
+index 92f18d372b69..287bbb5b6854 100644
 --- a/arch/arm/plat-versatile/platsmp.c
 +++ b/arch/arm/plat-versatile/platsmp.c
 @@ -37,7 +37,7 @@ static void __cpuinit write_pen_release(int val)
diff --git a/debian/patches/features/all/rt/0031-sched-Create-schedule_preempt_disabled.patch b/debian/patches/features/all/rt/0031-sched-Create-schedule_preempt_disabled.patch
index a94e6f4..ba8b3c0 100644
--- a/debian/patches/features/all/rt/0031-sched-Create-schedule_preempt_disabled.patch
+++ b/debian/patches/features/all/rt/0031-sched-Create-schedule_preempt_disabled.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 21 Mar 2011 12:09:35 +0100
-Subject: [PATCH 031/374] sched: Create schedule_preempt_disabled()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8c78993e6924dc3877631d668e745f27602cf060
+Subject: [PATCH 031/380] sched: Create schedule_preempt_disabled()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0f6ec43e29cc26724ce6d393762f368257c3b54e
 
 Get rid of the ever repeating:
 
@@ -16,7 +16,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 13 insertions(+)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 44e5f47..f023c2f 100644
+index 9b9ac291f66e..f631b4482fd2 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -360,6 +360,7 @@ extern signed long schedule_timeout_interruptible(signed long timeout);
@@ -28,10 +28,10 @@ index 44e5f47..f023c2f 100644
  
  struct nsproxy;
 diff --git a/kernel/sched.c b/kernel/sched.c
-index f084c93..fef0d3f 100644
+index aba70ca2f82d..74ca9290598b 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4653,6 +4653,18 @@ asmlinkage void __sched schedule(void)
+@@ -4654,6 +4654,18 @@ asmlinkage void __sched schedule(void)
  }
  EXPORT_SYMBOL(schedule);
  
diff --git a/debian/patches/features/all/rt/0032-sched-Use-schedule_preempt_disabled.patch b/debian/patches/features/all/rt/0032-sched-Use-schedule_preempt_disabled.patch
index 3791118..0573c1e 100644
--- a/debian/patches/features/all/rt/0032-sched-Use-schedule_preempt_disabled.patch
+++ b/debian/patches/features/all/rt/0032-sched-Use-schedule_preempt_disabled.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 21 Mar 2011 12:33:18 +0100
-Subject: [PATCH 032/374] sched: Use schedule_preempt_disabled()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5821ca634614ef3b62d2f0cb0e49e01e83c1e426
+Subject: [PATCH 032/380] sched: Use schedule_preempt_disabled()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=750bb052362978c46235d31515e2ed906e8cd574
 
 Coccinelle based conversion.
 
@@ -38,7 +38,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  28 files changed, 36 insertions(+), 95 deletions(-)
 
 diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c
-index d9e3c61..2a169b7 100644
+index d9e3c61d414d..2a169b74c1fd 100644
 --- a/arch/arm/kernel/process.c
 +++ b/arch/arm/kernel/process.c
 @@ -215,9 +215,7 @@ void cpu_idle(void)
@@ -53,7 +53,7 @@ index d9e3c61..2a169b7 100644
  }
  
 diff --git a/arch/avr32/kernel/process.c b/arch/avr32/kernel/process.c
-index ef5a2a0..c8724c9 100644
+index ef5a2a08fcca..c8724c90d4ca 100644
 --- a/arch/avr32/kernel/process.c
 +++ b/arch/avr32/kernel/process.c
 @@ -38,9 +38,7 @@ void cpu_idle(void)
@@ -68,7 +68,7 @@ index ef5a2a0..c8724c9 100644
  }
  
 diff --git a/arch/blackfin/kernel/process.c b/arch/blackfin/kernel/process.c
-index 6a80a9e..11acc10 100644
+index 6a80a9e9fc4a..11acc10e6381 100644
 --- a/arch/blackfin/kernel/process.c
 +++ b/arch/blackfin/kernel/process.c
 @@ -92,9 +92,7 @@ void cpu_idle(void)
@@ -83,7 +83,7 @@ index 6a80a9e..11acc10 100644
  }
  
 diff --git a/arch/cris/kernel/process.c b/arch/cris/kernel/process.c
-index aa585e4..d8f50ff 100644
+index aa585e4e979e..d8f50ff6fadd 100644
 --- a/arch/cris/kernel/process.c
 +++ b/arch/cris/kernel/process.c
 @@ -115,9 +115,7 @@ void cpu_idle (void)
@@ -98,7 +98,7 @@ index aa585e4..d8f50ff 100644
  }
  
 diff --git a/arch/frv/kernel/process.c b/arch/frv/kernel/process.c
-index 3901df1..29cc497 100644
+index 3901df1213c0..29cc49783787 100644
 --- a/arch/frv/kernel/process.c
 +++ b/arch/frv/kernel/process.c
 @@ -92,9 +92,7 @@ void cpu_idle(void)
@@ -113,7 +113,7 @@ index 3901df1..29cc497 100644
  }
  
 diff --git a/arch/h8300/kernel/process.c b/arch/h8300/kernel/process.c
-index 933bd38..1a173b3 100644
+index 933bd388efb2..1a173b35f475 100644
 --- a/arch/h8300/kernel/process.c
 +++ b/arch/h8300/kernel/process.c
 @@ -81,9 +81,7 @@ void cpu_idle(void)
@@ -128,7 +128,7 @@ index 933bd38..1a173b3 100644
  }
  
 diff --git a/arch/ia64/kernel/process.c b/arch/ia64/kernel/process.c
-index 6d33c5c..9dc52b6 100644
+index 6d33c5cc94f0..9dc52b63fc87 100644
 --- a/arch/ia64/kernel/process.c
 +++ b/arch/ia64/kernel/process.c
 @@ -330,9 +330,7 @@ cpu_idle (void)
@@ -143,7 +143,7 @@ index 6d33c5c..9dc52b6 100644
  		if (cpu_is_offline(cpu))
  			play_dead();
 diff --git a/arch/m32r/kernel/process.c b/arch/m32r/kernel/process.c
-index 422bea9..3a4a32b 100644
+index 422bea9f1dbc..3a4a32b27208 100644
 --- a/arch/m32r/kernel/process.c
 +++ b/arch/m32r/kernel/process.c
 @@ -90,9 +90,7 @@ void cpu_idle (void)
@@ -158,7 +158,7 @@ index 422bea9..3a4a32b 100644
  }
  
 diff --git a/arch/m68k/kernel/process_mm.c b/arch/m68k/kernel/process_mm.c
-index aa4ffb8..c413aa0 100644
+index aa4ffb882366..c413aa05e4f7 100644
 --- a/arch/m68k/kernel/process_mm.c
 +++ b/arch/m68k/kernel/process_mm.c
 @@ -94,9 +94,7 @@ void cpu_idle(void)
@@ -173,7 +173,7 @@ index aa4ffb8..c413aa0 100644
  }
  
 diff --git a/arch/m68k/kernel/process_no.c b/arch/m68k/kernel/process_no.c
-index 5e1078c..f7fe6c3 100644
+index 5e1078cabe0e..f7fe6c348595 100644
 --- a/arch/m68k/kernel/process_no.c
 +++ b/arch/m68k/kernel/process_no.c
 @@ -73,9 +73,7 @@ void cpu_idle(void)
@@ -188,7 +188,7 @@ index 5e1078c..f7fe6c3 100644
  }
  
 diff --git a/arch/microblaze/kernel/process.c b/arch/microblaze/kernel/process.c
-index 95cc295..d3b2b42 100644
+index 95cc295976a7..d3b2b42ad6ac 100644
 --- a/arch/microblaze/kernel/process.c
 +++ b/arch/microblaze/kernel/process.c
 @@ -108,9 +108,7 @@ void cpu_idle(void)
@@ -203,7 +203,7 @@ index 95cc295..d3b2b42 100644
  	}
  }
 diff --git a/arch/mips/kernel/process.c b/arch/mips/kernel/process.c
-index bf128d7..b476ace 100644
+index bf128d7425ea..b476ace18f2a 100644
 --- a/arch/mips/kernel/process.c
 +++ b/arch/mips/kernel/process.c
 @@ -76,9 +76,7 @@ void __noreturn cpu_idle(void)
@@ -218,7 +218,7 @@ index bf128d7..b476ace 100644
  }
  
 diff --git a/arch/mn10300/kernel/process.c b/arch/mn10300/kernel/process.c
-index 28eec31..cac401d 100644
+index 28eec3102535..cac401d37f75 100644
 --- a/arch/mn10300/kernel/process.c
 +++ b/arch/mn10300/kernel/process.c
 @@ -123,9 +123,7 @@ void cpu_idle(void)
@@ -233,7 +233,7 @@ index 28eec31..cac401d 100644
  }
  
 diff --git a/arch/parisc/kernel/process.c b/arch/parisc/kernel/process.c
-index 4b4b918..f6eb367 100644
+index 4b4b9181a1a0..f6eb36736cf0 100644
 --- a/arch/parisc/kernel/process.c
 +++ b/arch/parisc/kernel/process.c
 @@ -71,9 +71,7 @@ void cpu_idle(void)
@@ -248,7 +248,7 @@ index 4b4b918..f6eb367 100644
  	}
  }
 diff --git a/arch/powerpc/kernel/idle.c b/arch/powerpc/kernel/idle.c
-index 39a2baa..f46dae5 100644
+index 39a2baa6ad58..f46dae5a56ef 100644
 --- a/arch/powerpc/kernel/idle.c
 +++ b/arch/powerpc/kernel/idle.c
 @@ -94,11 +94,11 @@ void cpu_idle(void)
@@ -268,7 +268,7 @@ index 39a2baa..f46dae5 100644
  }
  
 diff --git a/arch/powerpc/platforms/iseries/setup.c b/arch/powerpc/platforms/iseries/setup.c
-index ea0acbd..e0c5b49 100644
+index ea0acbd8966d..e0c5b4953c2f 100644
 --- a/arch/powerpc/platforms/iseries/setup.c
 +++ b/arch/powerpc/platforms/iseries/setup.c
 @@ -582,9 +582,7 @@ static void iseries_shared_idle(void)
@@ -294,7 +294,7 @@ index ea0acbd..e0c5b49 100644
  }
  
 diff --git a/arch/s390/kernel/process.c b/arch/s390/kernel/process.c
-index 2ba1226..db9c038 100644
+index 2ba12263f8d4..db9c038259e0 100644
 --- a/arch/s390/kernel/process.c
 +++ b/arch/s390/kernel/process.c
 @@ -94,9 +94,7 @@ void cpu_idle(void)
@@ -309,7 +309,7 @@ index 2ba1226..db9c038 100644
  }
  
 diff --git a/arch/score/kernel/process.c b/arch/score/kernel/process.c
-index 25d0803..2707023 100644
+index 25d08030a883..2707023c7563 100644
 --- a/arch/score/kernel/process.c
 +++ b/arch/score/kernel/process.c
 @@ -53,9 +53,7 @@ void __noreturn cpu_idle(void)
@@ -324,7 +324,7 @@ index 25d0803..2707023 100644
  }
  
 diff --git a/arch/sh/kernel/idle.c b/arch/sh/kernel/idle.c
-index db4ecd7..b7c18f08 100644
+index db4ecd731a00..b7c18f0899c9 100644
 --- a/arch/sh/kernel/idle.c
 +++ b/arch/sh/kernel/idle.c
 @@ -112,9 +112,7 @@ void cpu_idle(void)
@@ -339,7 +339,7 @@ index db4ecd7..b7c18f08 100644
  }
  
 diff --git a/arch/sparc/kernel/process_32.c b/arch/sparc/kernel/process_32.c
-index f793742..935fdbc 100644
+index f793742eec2b..935fdbcd88c2 100644
 --- a/arch/sparc/kernel/process_32.c
 +++ b/arch/sparc/kernel/process_32.c
 @@ -113,9 +113,7 @@ void cpu_idle(void)
@@ -365,7 +365,7 @@ index f793742..935fdbc 100644
  	}
  }
 diff --git a/arch/sparc/kernel/process_64.c b/arch/sparc/kernel/process_64.c
-index 3739a06..8ba0dbe 100644
+index 3739a06a76cb..8ba0dbe63bdc 100644
 --- a/arch/sparc/kernel/process_64.c
 +++ b/arch/sparc/kernel/process_64.c
 @@ -102,15 +102,13 @@ void cpu_idle(void)
@@ -389,7 +389,7 @@ index 3739a06..8ba0dbe 100644
  }
  
 diff --git a/arch/tile/kernel/process.c b/arch/tile/kernel/process.c
-index 9c45d8b..5a8b631 100644
+index 9c45d8bbdf57..5a8b631eedff 100644
 --- a/arch/tile/kernel/process.c
 +++ b/arch/tile/kernel/process.c
 @@ -106,9 +106,7 @@ void cpu_idle(void)
@@ -404,7 +404,7 @@ index 9c45d8b..5a8b631 100644
  }
  
 diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
-index 8598296..ada175e 100644
+index 859829614085..ada175e33206 100644
 --- a/arch/x86/kernel/process_32.c
 +++ b/arch/x86/kernel/process_32.c
 @@ -117,9 +117,7 @@ void cpu_idle(void)
@@ -419,7 +419,7 @@ index 8598296..ada175e 100644
  }
  
 diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
-index 7e94abd..286b2ec 100644
+index ee2e70c9fdbf..4b6a12744fce 100644
 --- a/arch/x86/kernel/process_64.c
 +++ b/arch/x86/kernel/process_64.c
 @@ -150,9 +150,7 @@ void cpu_idle(void)
@@ -434,7 +434,7 @@ index 7e94abd..286b2ec 100644
  }
  
 diff --git a/arch/xtensa/kernel/process.c b/arch/xtensa/kernel/process.c
-index 47041e7..2c90047 100644
+index 47041e7c088c..2c9004770c4e 100644
 --- a/arch/xtensa/kernel/process.c
 +++ b/arch/xtensa/kernel/process.c
 @@ -113,9 +113,7 @@ void cpu_idle(void)
@@ -449,7 +449,7 @@ index 47041e7..2c90047 100644
  }
  
 diff --git a/init/main.c b/init/main.c
-index e937d9b..85b1b3d 100644
+index e937d9bda0f8..85b1b3dfa7fe 100644
 --- a/init/main.c
 +++ b/init/main.c
 @@ -379,11 +379,8 @@ static noinline void __init_refok rest_init(void)
@@ -466,7 +466,7 @@ index e937d9b..85b1b3d 100644
  }
  
 diff --git a/kernel/mutex.c b/kernel/mutex.c
-index 89096dd..a307cc9 100644
+index 89096dd8786f..a307cc9c9526 100644
 --- a/kernel/mutex.c
 +++ b/kernel/mutex.c
 @@ -240,9 +240,7 @@ __mutex_lock_common(struct mutex *lock, long state, unsigned int subclass,
@@ -481,7 +481,7 @@ index 89096dd..a307cc9 100644
  	}
  
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 44bc103..9e9e68b 100644
+index 44bc103acd7d..9e9e68b03942 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -752,9 +752,7 @@ static int run_ksoftirqd(void * __bind_cpu)
diff --git a/debian/patches/features/all/rt/0033-signals-Do-not-wakeup-self.patch b/debian/patches/features/all/rt/0033-signals-Do-not-wakeup-self.patch
index 305acfa..e9c10b9 100644
--- a/debian/patches/features/all/rt/0033-signals-Do-not-wakeup-self.patch
+++ b/debian/patches/features/all/rt/0033-signals-Do-not-wakeup-self.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 3 Jul 2009 08:44:44 -0500
-Subject: [PATCH 033/374] signals: Do not wakeup self
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ef0e1d97349bea9826fd027b7f45b159d15e9953
+Subject: [PATCH 033/380] signals: Do not wakeup self
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=856233c9f1ca1860c9b7cfa5747e2ba12377a6bb
 
 Signals which are delivered by current to current can do without
 waking up current :)
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 4 insertions(+)
 
 diff --git a/kernel/signal.c b/kernel/signal.c
-index 53c8d54..3cc8b93 100644
+index 53c8d54a5697..3cc8b934cf93 100644
 --- a/kernel/signal.c
 +++ b/kernel/signal.c
 @@ -682,6 +682,10 @@ int dequeue_signal(struct task_struct *tsk, sigset_t *mask, siginfo_t *info)
diff --git a/debian/patches/features/all/rt/0034-posix-timers-Prevent-broadcast-signals.patch b/debian/patches/features/all/rt/0034-posix-timers-Prevent-broadcast-signals.patch
index ac91c1a..dcab30c 100644
--- a/debian/patches/features/all/rt/0034-posix-timers-Prevent-broadcast-signals.patch
+++ b/debian/patches/features/all/rt/0034-posix-timers-Prevent-broadcast-signals.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 3 Jul 2009 08:29:20 -0500
-Subject: [PATCH 034/374] posix-timers: Prevent broadcast signals
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=449afc2d49f6c8ede74b71191a17ac1a32015ad7
+Subject: [PATCH 034/380] posix-timers: Prevent broadcast signals
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0434ed7a41fca9c257ee84417f4bde8cfb17a537
 
 Posix timers should not send broadcast signals and kernel only
 signals. Prevent it.
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 3 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c
-index 02824a5..81ad8aa 100644
+index 02824a5c2693..81ad8aa9e98f 100644
 --- a/kernel/posix-timers.c
 +++ b/kernel/posix-timers.c
 @@ -439,6 +439,7 @@ static enum hrtimer_restart posix_timer_fn(struct hrtimer *timer)
diff --git a/debian/patches/features/all/rt/0035-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch b/debian/patches/features/all/rt/0035-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch
index 5ed2806..6d66167 100644
--- a/debian/patches/features/all/rt/0035-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch
+++ b/debian/patches/features/all/rt/0035-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 3 Jul 2009 08:44:56 -0500
-Subject: [PATCH 035/374] signals: Allow rt tasks to cache one sigqueue struct
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9c7ecce31fee35a95cde197f0188a6d3abdb177e
+Subject: [PATCH 035/380] signals: Allow rt tasks to cache one sigqueue struct
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8d9aee7ece958e7b0e007b0347bc82f17b46d711
 
 To avoid allocation allow rt tasks to cache one sigqueue struct in
 task struct.
@@ -16,7 +16,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  5 files changed, 83 insertions(+), 5 deletions(-)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index f023c2f..4b9f29d 100644
+index f631b4482fd2..038ec7dd460e 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1396,6 +1396,7 @@ struct task_struct {
@@ -28,7 +28,7 @@ index f023c2f..4b9f29d 100644
  	sigset_t blocked, real_blocked;
  	sigset_t saved_sigmask;	/* restored if set_restore_sigmask() was used */
 diff --git a/include/linux/signal.h b/include/linux/signal.h
-index a822300..a448900 100644
+index a822300a253b..a4489006a5bb 100644
 --- a/include/linux/signal.h
 +++ b/include/linux/signal.h
 @@ -229,6 +229,7 @@ static inline void init_sigpending(struct sigpending *sig)
@@ -40,7 +40,7 @@ index a822300..a448900 100644
  /* Test if 'sig' is valid signal. Use this instead of testing _NSIG directly */
  static inline int valid_signal(unsigned long sig)
 diff --git a/kernel/exit.c b/kernel/exit.c
-index fde15f9..4176f80 100644
+index fde15f96b158..4176f80be06d 100644
 --- a/kernel/exit.c
 +++ b/kernel/exit.c
 @@ -141,7 +141,7 @@ static void __exit_signal(struct task_struct *tsk)
@@ -53,7 +53,7 @@ index fde15f9..4176f80 100644
  	spin_unlock(&sighand->siglock);
  
 diff --git a/kernel/fork.c b/kernel/fork.c
-index 29b4604..24887a0 100644
+index 29b460431c12..24887a0fddad 100644
 --- a/kernel/fork.c
 +++ b/kernel/fork.c
 @@ -1138,6 +1138,7 @@ static struct task_struct *copy_process(unsigned long clone_flags,
@@ -65,7 +65,7 @@ index 29b4604..24887a0 100644
  	p->utime = cputime_zero;
  	p->stime = cputime_zero;
 diff --git a/kernel/signal.c b/kernel/signal.c
-index 3cc8b93..7a68223 100644
+index 3cc8b934cf93..7a682231bad5 100644
 --- a/kernel/signal.c
 +++ b/kernel/signal.c
 @@ -344,13 +344,45 @@ static bool task_participate_group_stop(struct task_struct *task)
diff --git a/debian/patches/features/all/rt/0036-signal-x86-Delay-calling-signals-in-atomic.patch b/debian/patches/features/all/rt/0036-signal-x86-Delay-calling-signals-in-atomic.patch
index 189cd77..ce95cb5 100644
--- a/debian/patches/features/all/rt/0036-signal-x86-Delay-calling-signals-in-atomic.patch
+++ b/debian/patches/features/all/rt/0036-signal-x86-Delay-calling-signals-in-atomic.patch
@@ -1,7 +1,7 @@
 From: Oleg Nesterov <oleg at redhat.com>
 Date: Tue, 10 Apr 2012 14:33:53 -0400
-Subject: [PATCH 036/374] signal/x86: Delay calling signals in atomic
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=015a249c599c1de17069a9384377d3cb31151e47
+Subject: [PATCH 036/380] signal/x86: Delay calling signals in atomic
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4d3cff2f19a93ba8436c4efb73898994a7ceaa14
 
 On x86_64 we must disable preemption before we enable interrupts
 for stack faults, int3 and debugging, because the current task is using
@@ -37,7 +37,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  4 files changed, 61 insertions(+), 2 deletions(-)
 
 diff --git a/arch/x86/include/asm/signal.h b/arch/x86/include/asm/signal.h
-index 6cbc795..76475dc 100644
+index 6cbc795b7c58..76475dcea30e 100644
 --- a/arch/x86/include/asm/signal.h
 +++ b/arch/x86/include/asm/signal.h
 @@ -31,6 +31,19 @@ typedef struct {
@@ -61,7 +61,7 @@ index 6cbc795..76475dc 100644
  /* Here we must cater to libcs that poke about in kernel headers.  */
  
 diff --git a/arch/x86/kernel/signal.c b/arch/x86/kernel/signal.c
-index 54ddaeb2..12c4d53 100644
+index 54ddaeb221c1..12c4d53e09a1 100644
 --- a/arch/x86/kernel/signal.c
 +++ b/arch/x86/kernel/signal.c
 @@ -820,6 +820,15 @@ do_notify_resume(struct pt_regs *regs, void *unused, __u32 thread_info_flags)
@@ -81,7 +81,7 @@ index 54ddaeb2..12c4d53 100644
  	if (thread_info_flags & _TIF_SIGPENDING)
  		do_signal(regs);
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 4b9f29d..f1862bf 100644
+index 038ec7dd460e..37330104a0f1 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1401,6 +1401,10 @@ struct task_struct {
@@ -96,7 +96,7 @@ index 4b9f29d..f1862bf 100644
  	unsigned long sas_ss_sp;
  	size_t sas_ss_size;
 diff --git a/kernel/signal.c b/kernel/signal.c
-index 7a68223..3a41c81 100644
+index 7a682231bad5..3a41c81b4403 100644
 --- a/kernel/signal.c
 +++ b/kernel/signal.c
 @@ -1271,8 +1271,8 @@ int do_send_sig_info(int sig, struct siginfo *info, struct task_struct *p,
diff --git a/debian/patches/features/all/rt/0037-generic-Use-raw-local-irq-variant-for-generic-cmpxch.patch b/debian/patches/features/all/rt/0037-generic-Use-raw-local-irq-variant-for-generic-cmpxch.patch
index 9488d0b..4d9296b 100644
--- a/debian/patches/features/all/rt/0037-generic-Use-raw-local-irq-variant-for-generic-cmpxch.patch
+++ b/debian/patches/features/all/rt/0037-generic-Use-raw-local-irq-variant-for-generic-cmpxch.patch
@@ -1,8 +1,8 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:30 -0500
-Subject: [PATCH 037/374] generic: Use raw local irq variant for generic
+Subject: [PATCH 037/380] generic: Use raw local irq variant for generic
  cmpxchg
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fa1aa87578c21e27a561d4ea7de62fd9d7e1e5fd
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5385d0aab826cee384b32ff502277fed742d36ca
 
 No point in tracing those.
 
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/include/asm-generic/cmpxchg-local.h b/include/asm-generic/cmpxchg-local.h
-index 2533fdd..d8d4c89 100644
+index 2533fddd34a6..d8d4c898c1bb 100644
 --- a/include/asm-generic/cmpxchg-local.h
 +++ b/include/asm-generic/cmpxchg-local.h
 @@ -21,7 +21,7 @@ static inline unsigned long __cmpxchg_local_generic(volatile void *ptr,
diff --git a/debian/patches/features/all/rt/0038-drivers-random-Reduce-preempt-disabled-region.patch b/debian/patches/features/all/rt/0038-drivers-random-Reduce-preempt-disabled-region.patch
index 2382334..bcc61ff 100644
--- a/debian/patches/features/all/rt/0038-drivers-random-Reduce-preempt-disabled-region.patch
+++ b/debian/patches/features/all/rt/0038-drivers-random-Reduce-preempt-disabled-region.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:30 -0500
-Subject: [PATCH 038/374] drivers: random: Reduce preempt disabled region
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c33fdc8c940823ab25bf16a638bbef4b841dcd3f
+Subject: [PATCH 038/380] drivers: random: Reduce preempt disabled region
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e15df52f5e501906634ffd7105e7358a7e3d9a4c
 
 No need to keep preemption disabled across the whole function.
 
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 5 insertions(+), 4 deletions(-)
 
 diff --git a/drivers/char/random.c b/drivers/char/random.c
-index edf45ae..26af698 100644
+index edf45ae694a1..26af6985486b 100644
 --- a/drivers/char/random.c
 +++ b/drivers/char/random.c
 @@ -701,8 +701,11 @@ static void add_timer_randomness(struct timer_rand_state *state, unsigned num)
diff --git a/debian/patches/features/all/rt/0039-ARM-AT91-PIT-Remove-irq-handler-when-clock-event-is-.patch b/debian/patches/features/all/rt/0039-ARM-AT91-PIT-Remove-irq-handler-when-clock-event-is-.patch
index 7d340c4..67d9b4b 100644
--- a/debian/patches/features/all/rt/0039-ARM-AT91-PIT-Remove-irq-handler-when-clock-event-is-.patch
+++ b/debian/patches/features/all/rt/0039-ARM-AT91-PIT-Remove-irq-handler-when-clock-event-is-.patch
@@ -1,8 +1,8 @@
 From: Benedikt Spranger <b.spranger at linutronix.de>
 Date: Sat, 6 Mar 2010 17:47:10 +0100
-Subject: [PATCH 039/374] ARM: AT91: PIT: Remove irq handler when clock event
+Subject: [PATCH 039/380] ARM: AT91: PIT: Remove irq handler when clock event
  is unused
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=295465eb5023cdcec60a4d29f7325e9c78333560
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8970cb34d4b6b020f59da8166d3dd9ad74dedee4
 
 Setup and remove the interrupt handler in clock event mode selection.
 This avoids calling the (shared) interrupt handler when the device is
@@ -16,7 +16,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 7 insertions(+), 1 deletion(-)
 
 diff --git a/arch/arm/mach-at91/at91rm9200_time.c b/arch/arm/mach-at91/at91rm9200_time.c
-index 1dd69c8..0666570 100644
+index 1dd69c85dfec..06665701bebf 100644
 --- a/arch/arm/mach-at91/at91rm9200_time.c
 +++ b/arch/arm/mach-at91/at91rm9200_time.c
 @@ -114,6 +114,7 @@ clkevt32k_mode(enum clock_event_mode mode, struct clock_event_device *dev)
@@ -36,7 +36,7 @@ index 1dd69c8..0666570 100644
  		irqmask = 0;
  		break;
 diff --git a/arch/arm/mach-at91/at91sam926x_time.c b/arch/arm/mach-at91/at91sam926x_time.c
-index 4ba8549..97d1e14 100644
+index 4ba85499fa97..97d1e1459942 100644
 --- a/arch/arm/mach-at91/at91sam926x_time.c
 +++ b/arch/arm/mach-at91/at91sam926x_time.c
 @@ -54,7 +54,7 @@ static struct clocksource pit_clk = {
diff --git a/debian/patches/features/all/rt/0040-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch b/debian/patches/features/all/rt/0040-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch
index 2ae631b..6ca0bbb 100644
--- a/debian/patches/features/all/rt/0040-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch
+++ b/debian/patches/features/all/rt/0040-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch
@@ -1,8 +1,8 @@
 From: Benedikt Spranger <b.spranger at linutronix.de>
 Date: Mon, 8 Mar 2010 18:57:04 +0100
-Subject: [PATCH 040/374] clocksource: TCLIB: Allow higher clock rates for
+Subject: [PATCH 040/380] clocksource: TCLIB: Allow higher clock rates for
  clock events
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a70097f9c89d02d805bfa4925d08cd6de9ccd365
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c3059b58c83e5ab78288dded308821cf8254a55f
 
 As default the TCLIB uses the 32KiHz base clock rate for clock events.
 Add a compile time selection to allow higher clock resulution.
@@ -15,7 +15,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 35 insertions(+), 20 deletions(-)
 
 diff --git a/drivers/clocksource/tcb_clksrc.c b/drivers/clocksource/tcb_clksrc.c
-index 79c47e8..8976b3d 100644
+index 79c47e88d5d1..8976b3d10dc0 100644
 --- a/drivers/clocksource/tcb_clksrc.c
 +++ b/drivers/clocksource/tcb_clksrc.c
 @@ -21,8 +21,7 @@
@@ -134,7 +134,7 @@ index 79c47e8..8976b3d 100644
  }
  arch_initcall(tcb_clksrc_init);
 diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
-index 5664696..f3031a4 100644
+index 5664696f2d3a..f3031a4b46d8 100644
 --- a/drivers/misc/Kconfig
 +++ b/drivers/misc/Kconfig
 @@ -97,8 +97,7 @@ config ATMEL_TCB_CLKSRC
diff --git a/debian/patches/features/all/rt/0041-drivers-net-tulip_remove_one-needs-to-call-pci_disab.patch b/debian/patches/features/all/rt/0041-drivers-net-tulip_remove_one-needs-to-call-pci_disab.patch
index d1abcf1..3aa2b7f 100644
--- a/debian/patches/features/all/rt/0041-drivers-net-tulip_remove_one-needs-to-call-pci_disab.patch
+++ b/debian/patches/features/all/rt/0041-drivers-net-tulip_remove_one-needs-to-call-pci_disab.patch
@@ -1,8 +1,8 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:18 -0500
-Subject: [PATCH 041/374] drivers/net: tulip_remove_one needs to call
+Subject: [PATCH 041/380] drivers/net: tulip_remove_one needs to call
  pci_disable_device()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f92353e0da6a5eef1ace56a20ce5ab4a9b3cf18b
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=096a357e734011a780cbc93fe82df3c9761b6e31
 
 Otherwise the device is not completely shut down.
 
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+)
 
 diff --git a/drivers/net/ethernet/dec/tulip/tulip_core.c b/drivers/net/ethernet/dec/tulip/tulip_core.c
-index 9656dd0..ef7df09 100644
+index 9656dd0647d9..ef7df09c7585 100644
 --- a/drivers/net/ethernet/dec/tulip/tulip_core.c
 +++ b/drivers/net/ethernet/dec/tulip/tulip_core.c
 @@ -1949,6 +1949,7 @@ static void __devexit tulip_remove_one (struct pci_dev *pdev)
diff --git a/debian/patches/features/all/rt/0042-drivers-net-Use-disable_irq_nosync-in-8139too.patch b/debian/patches/features/all/rt/0042-drivers-net-Use-disable_irq_nosync-in-8139too.patch
index adb43ad..4e3cd40 100644
--- a/debian/patches/features/all/rt/0042-drivers-net-Use-disable_irq_nosync-in-8139too.patch
+++ b/debian/patches/features/all/rt/0042-drivers-net-Use-disable_irq_nosync-in-8139too.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:24 -0500
-Subject: [PATCH 042/374] drivers/net: Use disable_irq_nosync() in 8139too
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b0ecd31ce6f822b53c841633f1e1103faf5c0252
+Subject: [PATCH 042/380] drivers/net: Use disable_irq_nosync() in 8139too
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9446702d289e176a344dd69a41b531014bcff525
 
 Use disable_irq_nosync() instead of disable_irq() as this might be
 called in atomic context with netpoll.
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/drivers/net/ethernet/realtek/8139too.c b/drivers/net/ethernet/realtek/8139too.c
-index 728805f..274cb0a 100644
+index 728805f9aacb..274cb0a0b2fb 100644
 --- a/drivers/net/ethernet/realtek/8139too.c
 +++ b/drivers/net/ethernet/realtek/8139too.c
 @@ -2174,7 +2174,7 @@ static irqreturn_t rtl8139_interrupt (int irq, void *dev_instance)
diff --git a/debian/patches/features/all/rt/0043-drivers-net-ehea-Make-rx-irq-handler-non-threaded-IR.patch b/debian/patches/features/all/rt/0043-drivers-net-ehea-Make-rx-irq-handler-non-threaded-IR.patch
index be5cf66..a92fe56 100644
--- a/debian/patches/features/all/rt/0043-drivers-net-ehea-Make-rx-irq-handler-non-threaded-IR.patch
+++ b/debian/patches/features/all/rt/0043-drivers-net-ehea-Make-rx-irq-handler-non-threaded-IR.patch
@@ -1,8 +1,8 @@
 From: Darren Hart <dvhltc at us.ibm.com>
 Date: Tue, 18 May 2010 14:33:07 -0700
-Subject: [PATCH 043/374] drivers: net: ehea: Make rx irq handler non-threaded
+Subject: [PATCH 043/380] drivers: net: ehea: Make rx irq handler non-threaded
  (IRQF_NO_THREAD)
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fc6e4a2fbfee7d4cf32fc0c6d076067f7d5dfc20
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c1c3a95f3302eb5bfddbbf7d88f8ed442beeab1f
 
 The underlying hardware is edge triggered but presented by XICS as level
 triggered. The edge triggered interrupts are not reissued after masking. This
@@ -40,7 +40,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/drivers/net/ethernet/ibm/ehea/ehea_main.c b/drivers/net/ethernet/ibm/ehea/ehea_main.c
-index 297f0b6..114bee9 100644
+index 297f0b6818be..114bee91b6f2 100644
 --- a/drivers/net/ethernet/ibm/ehea/ehea_main.c
 +++ b/drivers/net/ethernet/ibm/ehea/ehea_main.c
 @@ -1304,7 +1304,7 @@ static int ehea_reg_interrupts(struct net_device *dev)
diff --git a/debian/patches/features/all/rt/0044-drivers-net-at91_ether-Make-mdio-protection-rt-safe.patch b/debian/patches/features/all/rt/0044-drivers-net-at91_ether-Make-mdio-protection-rt-safe.patch
index 703808a..0ae34f9 100644
--- a/debian/patches/features/all/rt/0044-drivers-net-at91_ether-Make-mdio-protection-rt-safe.patch
+++ b/debian/patches/features/all/rt/0044-drivers-net-at91_ether-Make-mdio-protection-rt-safe.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 17 Nov 2009 12:02:43 +0100
-Subject: [PATCH 044/374] drivers: net: at91_ether: Make mdio protection -rt
+Subject: [PATCH 044/380] drivers: net: at91_ether: Make mdio protection -rt
  safe
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ed6c2fd029e7bc42fdbacc29af7022acfda8e6ae
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7cc1056ef5781a63071f6376ec22ad9faa0cd749
 
 Neither the phy interrupt nor the timer callback which updates the
 link status in absense of a phy interrupt are taking lp->lock which
@@ -20,7 +20,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 5 insertions(+)
 
 diff --git a/drivers/net/ethernet/cadence/at91_ether.c b/drivers/net/ethernet/cadence/at91_ether.c
-index 56624d3..ad4dbea 100644
+index 56624d303487..ad4dbea804d4 100644
 --- a/drivers/net/ethernet/cadence/at91_ether.c
 +++ b/drivers/net/ethernet/cadence/at91_ether.c
 @@ -200,7 +200,9 @@ static irqreturn_t at91ether_phy_interrupt(int irq, void *dev_id)
diff --git a/debian/patches/features/all/rt/0045-preempt-mark-legitimated-no-resched-sites.patch.patch b/debian/patches/features/all/rt/0045-preempt-mark-legitimated-no-resched-sites.patch.patch
index 9140dc4..350447f 100644
--- a/debian/patches/features/all/rt/0045-preempt-mark-legitimated-no-resched-sites.patch.patch
+++ b/debian/patches/features/all/rt/0045-preempt-mark-legitimated-no-resched-sites.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 21 Mar 2011 13:32:17 +0100
-Subject: [PATCH 045/374] preempt-mark-legitimated-no-resched-sites.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=dfe6c250a3a2d76e513d76a7f54c69f1bffe7fc7
+Subject: [PATCH 045/380] preempt-mark-legitimated-no-resched-sites.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c9f1f4eaaeed80eaa8c6d714ef6b87cb770b9686
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  5 files changed, 11 insertions(+), 8 deletions(-)
 
 diff --git a/arch/powerpc/kernel/idle.c b/arch/powerpc/kernel/idle.c
-index f46dae5..5d70d10 100644
+index f46dae5a56ef..5d70d1046e11 100644
 --- a/arch/powerpc/kernel/idle.c
 +++ b/arch/powerpc/kernel/idle.c
 @@ -95,7 +95,7 @@ void cpu_idle(void)
@@ -26,7 +26,7 @@ index f46dae5..5d70d10 100644
  		}
  		schedule_preempt_disabled();
 diff --git a/arch/sparc/kernel/process_64.c b/arch/sparc/kernel/process_64.c
-index 8ba0dbe..86fe09a 100644
+index 8ba0dbe63bdc..86fe09afc89a 100644
 --- a/arch/sparc/kernel/process_64.c
 +++ b/arch/sparc/kernel/process_64.c
 @@ -104,7 +104,7 @@ void cpu_idle(void)
@@ -39,7 +39,7 @@ index 8ba0dbe..86fe09a 100644
  		}
  #endif
 diff --git a/include/linux/preempt.h b/include/linux/preempt.h
-index e86bf01..281f0ff 100644
+index e86bf010fbc4..281f0ffbab67 100644
 --- a/include/linux/preempt.h
 +++ b/include/linux/preempt.h
 @@ -48,12 +48,14 @@ do { \
@@ -67,10 +67,10 @@ index e86bf01..281f0ff 100644
  #define preempt_enable()		barrier()
  
 diff --git a/kernel/sched.c b/kernel/sched.c
-index fef0d3f..9a43861 100644
+index 74ca9290598b..c0af60d89b2a 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4612,7 +4612,7 @@ need_resched:
+@@ -4613,7 +4613,7 @@ need_resched:
  
  	post_schedule(rq);
  
@@ -79,7 +79,7 @@ index fef0d3f..9a43861 100644
  	if (need_resched())
  		goto need_resched;
  }
-@@ -4660,7 +4660,7 @@ EXPORT_SYMBOL(schedule);
+@@ -4661,7 +4661,7 @@ EXPORT_SYMBOL(schedule);
   */
  void __sched schedule_preempt_disabled(void)
  {
@@ -88,7 +88,7 @@ index fef0d3f..9a43861 100644
  	schedule();
  	preempt_disable();
  }
-@@ -5905,7 +5905,7 @@ SYSCALL_DEFINE0(sched_yield)
+@@ -5906,7 +5906,7 @@ SYSCALL_DEFINE0(sched_yield)
  	__release(rq->lock);
  	spin_release(&rq->lock.dep_map, 1, _THIS_IP_);
  	do_raw_spin_unlock(&rq->lock);
@@ -98,7 +98,7 @@ index fef0d3f..9a43861 100644
  	schedule();
  
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 9e9e68b..4248ac2 100644
+index 9e9e68b03942..4248ac26d5b4 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -361,7 +361,7 @@ void irq_exit(void)
diff --git a/debian/patches/features/all/rt/0046-mm-Prepare-decoupling-the-page-fault-disabling-logic.patch b/debian/patches/features/all/rt/0046-mm-Prepare-decoupling-the-page-fault-disabling-logic.patch
index 1b113b2..c3be7f1 100644
--- a/debian/patches/features/all/rt/0046-mm-Prepare-decoupling-the-page-fault-disabling-logic.patch
+++ b/debian/patches/features/all/rt/0046-mm-Prepare-decoupling-the-page-fault-disabling-logic.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:37 -0500
-Subject: [PATCH 046/374] mm: Prepare decoupling the page fault disabling logic
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d2bcc40e9a34076bf4e071adc33f39039704b24f
+Subject: [PATCH 046/380] mm: Prepare decoupling the page fault disabling logic
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b123afded4e515b6534dd4a962bbf9a863ed1b0e
 
 Add a pagefault_disabled variable to task_struct to allow decoupling
 the pagefault-disabled logic from the preempt count.
@@ -16,7 +16,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  4 files changed, 34 insertions(+), 30 deletions(-)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index f1862bf..d96c69d 100644
+index 37330104a0f1..7fad3e1ad2e0 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1444,6 +1444,7 @@ struct task_struct {
@@ -28,7 +28,7 @@ index f1862bf..d96c69d 100644
  	unsigned int irq_events;
  	unsigned long hardirq_enable_ip;
 diff --git a/include/linux/uaccess.h b/include/linux/uaccess.h
-index 5ca0951..9414a1b 100644
+index 5ca0951e1855..9414a1b48f5c 100644
 --- a/include/linux/uaccess.h
 +++ b/include/linux/uaccess.h
 @@ -6,37 +6,10 @@
@@ -73,7 +73,7 @@ index 5ca0951..9414a1b 100644
  #ifndef ARCH_HAS_NOCACHE_UACCESS
  
 diff --git a/kernel/fork.c b/kernel/fork.c
-index 24887a0..2d1ceb1 100644
+index 24887a0fddad..2d1ceb141637 100644
 --- a/kernel/fork.c
 +++ b/kernel/fork.c
 @@ -1200,6 +1200,7 @@ static struct task_struct *copy_process(unsigned long clone_flags,
@@ -85,7 +85,7 @@ index 24887a0..2d1ceb1 100644
  	p->lockdep_depth = 0; /* no locks held yet */
  	p->curr_chain_key = 0;
 diff --git a/mm/memory.c b/mm/memory.c
-index 7762b1d..072c715 100644
+index 7762b1d59a29..072c715ab45a 100644
 --- a/mm/memory.c
 +++ b/mm/memory.c
 @@ -3518,6 +3518,35 @@ unlock:
diff --git a/debian/patches/features/all/rt/0047-mm-Fixup-all-fault-handlers-to-check-current-pagefau.patch b/debian/patches/features/all/rt/0047-mm-Fixup-all-fault-handlers-to-check-current-pagefau.patch
index 0034a98..2a34912 100644
--- a/debian/patches/features/all/rt/0047-mm-Fixup-all-fault-handlers-to-check-current-pagefau.patch
+++ b/debian/patches/features/all/rt/0047-mm-Fixup-all-fault-handlers-to-check-current-pagefau.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 17 Mar 2011 11:32:28 +0100
-Subject: [PATCH 047/374] mm: Fixup all fault handlers to check
+Subject: [PATCH 047/380] mm: Fixup all fault handlers to check
  current->pagefault_disable
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d368c3318079353250d347899a7420e788a5d7d7
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=445d8ca8aedbbabed056492bc71eb8782e9541b0
 
 Necessary for decoupling pagefault disable from preempt count.
 
@@ -33,7 +33,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  22 files changed, 27 insertions(+), 24 deletions(-)
 
 diff --git a/arch/alpha/mm/fault.c b/arch/alpha/mm/fault.c
-index e576b91..5e04e97 100644
+index e576b912536e..5e04e976d7a4 100644
 --- a/arch/alpha/mm/fault.c
 +++ b/arch/alpha/mm/fault.c
 @@ -107,7 +107,7 @@ do_page_fault(unsigned long address, unsigned long mmcsr,
@@ -46,7 +46,7 @@ index e576b91..5e04e97 100644
  
  #ifdef CONFIG_ALPHA_LARGE_VMALLOC
 diff --git a/arch/arm/mm/fault.c b/arch/arm/mm/fault.c
-index 4b0bc37..0fe9b9b 100644
+index 4b0bc37b943d..0fe9b9b3cc73 100644
 --- a/arch/arm/mm/fault.c
 +++ b/arch/arm/mm/fault.c
 @@ -296,7 +296,7 @@ do_page_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
@@ -59,7 +59,7 @@ index 4b0bc37..0fe9b9b 100644
  
  	/*
 diff --git a/arch/avr32/mm/fault.c b/arch/avr32/mm/fault.c
-index 632b649..12d7c1d 100644
+index 632b649c7be0..12d7c1d8c0ca 100644
 --- a/arch/avr32/mm/fault.c
 +++ b/arch/avr32/mm/fault.c
 @@ -81,7 +81,8 @@ asmlinkage void do_page_fault(unsigned long ecr, struct pt_regs *regs)
@@ -73,7 +73,7 @@ index 632b649..12d7c1d 100644
  
  	local_irq_enable();
 diff --git a/arch/cris/mm/fault.c b/arch/cris/mm/fault.c
-index 280c8ea..10d6ef5 100644
+index 280c8eafd1b5..10d6ef521d59 100644
 --- a/arch/cris/mm/fault.c
 +++ b/arch/cris/mm/fault.c
 @@ -111,7 +111,7 @@ do_page_fault(unsigned long address, struct pt_regs *regs,
@@ -86,7 +86,7 @@ index 280c8ea..10d6ef5 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/frv/mm/fault.c b/arch/frv/mm/fault.c
-index 46a3c18..ae89e6b 100644
+index 46a3c185444c..ae89e6bccd68 100644
 --- a/arch/frv/mm/fault.c
 +++ b/arch/frv/mm/fault.c
 @@ -79,7 +79,7 @@ asmlinkage void do_page_fault(int datammu, unsigned long esr0, unsigned long ear
@@ -99,7 +99,7 @@ index 46a3c18..ae89e6b 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/ia64/mm/fault.c b/arch/ia64/mm/fault.c
-index 1e362cd..b1049827 100644
+index 1e362cdb9614..b1049827b15f 100644
 --- a/arch/ia64/mm/fault.c
 +++ b/arch/ia64/mm/fault.c
 @@ -89,7 +89,7 @@ ia64_do_page_fault (unsigned long address, unsigned long isr, struct pt_regs *re
@@ -112,7 +112,7 @@ index 1e362cd..b1049827 100644
  
  #ifdef CONFIG_VIRTUAL_MEM_MAP
 diff --git a/arch/m32r/mm/fault.c b/arch/m32r/mm/fault.c
-index beda9cc..d9100a8 100644
+index beda9cc8e943..d9100a84701d 100644
 --- a/arch/m32r/mm/fault.c
 +++ b/arch/m32r/mm/fault.c
 @@ -115,7 +115,7 @@ asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long error_code,
@@ -125,7 +125,7 @@ index beda9cc..d9100a8 100644
  
  	/* When running in the kernel we expect faults to occur only to
 diff --git a/arch/m68k/mm/fault.c b/arch/m68k/mm/fault.c
-index d605b93..ad3cbf6 100644
+index d605b93e67a5..ad3cbf61e2fb 100644
 --- a/arch/m68k/mm/fault.c
 +++ b/arch/m68k/mm/fault.c
 @@ -85,7 +85,7 @@ int do_page_fault(struct pt_regs *regs, unsigned long address,
@@ -138,7 +138,7 @@ index d605b93..ad3cbf6 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/microblaze/mm/fault.c b/arch/microblaze/mm/fault.c
-index 31bb381..70bc11e 100644
+index 31bb38181003..70bc11e3a6f9 100644
 --- a/arch/microblaze/mm/fault.c
 +++ b/arch/microblaze/mm/fault.c
 @@ -107,7 +107,7 @@ void do_page_fault(struct pt_regs *regs, unsigned long address,
@@ -151,7 +151,7 @@ index 31bb381..70bc11e 100644
  			goto bad_area_nosemaphore;
  
 diff --git a/arch/mips/mm/fault.c b/arch/mips/mm/fault.c
-index b8314cfe..cad2a11 100644
+index b8314cfe3368..cad2a114de56 100644
 --- a/arch/mips/mm/fault.c
 +++ b/arch/mips/mm/fault.c
 @@ -88,7 +88,7 @@ asmlinkage void __kprobes do_page_fault(struct pt_regs *regs, unsigned long writ
@@ -164,7 +164,7 @@ index b8314cfe..cad2a11 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/mn10300/mm/fault.c b/arch/mn10300/mm/fault.c
-index fe2ceb7..4b7e547 100644
+index fe2ceb727f35..4b7e547b42de 100644
 --- a/arch/mn10300/mm/fault.c
 +++ b/arch/mn10300/mm/fault.c
 @@ -168,7 +168,7 @@ asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long fault_code,
@@ -177,7 +177,7 @@ index fe2ceb7..4b7e547 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/parisc/mm/fault.c b/arch/parisc/mm/fault.c
-index a9b765a..379e9e7 100644
+index a9b765a999ef..379e9e707227 100644
 --- a/arch/parisc/mm/fault.c
 +++ b/arch/parisc/mm/fault.c
 @@ -176,7 +176,7 @@ void do_page_fault(struct pt_regs *regs, unsigned long code,
@@ -190,7 +190,7 @@ index a9b765a..379e9e7 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/powerpc/mm/fault.c b/arch/powerpc/mm/fault.c
-index 7450843..c9216c9 100644
+index 7450843aa739..c9216c9a4916 100644
 --- a/arch/powerpc/mm/fault.c
 +++ b/arch/powerpc/mm/fault.c
 @@ -162,7 +162,7 @@ int __kprobes do_page_fault(struct pt_regs *regs, unsigned long address,
@@ -203,7 +203,7 @@ index 7450843..c9216c9 100644
  			return SIGSEGV;
  		/* in_atomic() in user mode is really bad,
 diff --git a/arch/s390/mm/fault.c b/arch/s390/mm/fault.c
-index b53339d..fda8532 100644
+index b53339d9045b..fda8532d87bc 100644
 --- a/arch/s390/mm/fault.c
 +++ b/arch/s390/mm/fault.c
 @@ -301,7 +301,8 @@ static inline int do_exception(struct pt_regs *regs, int access,
@@ -227,7 +227,7 @@ index b53339d..fda8532 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/score/mm/fault.c b/arch/score/mm/fault.c
-index b3744ca..02fc71a 100644
+index b3744ca70be6..02fc71a1dbf8 100644
 --- a/arch/score/mm/fault.c
 +++ b/arch/score/mm/fault.c
 @@ -72,7 +72,7 @@ asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long write,
@@ -240,7 +240,7 @@ index b3744ca..02fc71a 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/sh/mm/fault_32.c b/arch/sh/mm/fault_32.c
-index db14482..12dcaf7 100644
+index db1448247a5c..12dcaf7e870d 100644
 --- a/arch/sh/mm/fault_32.c
 +++ b/arch/sh/mm/fault_32.c
 @@ -166,7 +166,7 @@ asmlinkage void __kprobes do_page_fault(struct pt_regs *regs,
@@ -253,7 +253,7 @@ index db14482..12dcaf7 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/sparc/mm/fault_32.c b/arch/sparc/mm/fault_32.c
-index 802b806..434c714 100644
+index 802b80688933..434c714eb73b 100644
 --- a/arch/sparc/mm/fault_32.c
 +++ b/arch/sparc/mm/fault_32.c
 @@ -247,8 +247,8 @@ asmlinkage void do_sparc_fault(struct pt_regs *regs, int text_fault, int write,
@@ -268,7 +268,7 @@ index 802b806..434c714 100644
  	perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, regs, address);
  
 diff --git a/arch/sparc/mm/fault_64.c b/arch/sparc/mm/fault_64.c
-index bfd7c02..e2a8e85 100644
+index bfd7c029ed43..e2a8e858e394 100644
 --- a/arch/sparc/mm/fault_64.c
 +++ b/arch/sparc/mm/fault_64.c
 @@ -330,7 +330,7 @@ asmlinkage void __kprobes do_sparc64_fault(struct pt_regs *regs)
@@ -281,7 +281,7 @@ index bfd7c02..e2a8e85 100644
  
  	perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, regs, address);
 diff --git a/arch/tile/mm/fault.c b/arch/tile/mm/fault.c
-index c796ce44..93cf4c9 100644
+index c796ce44fc8f..93cf4c9a4ee0 100644
 --- a/arch/tile/mm/fault.c
 +++ b/arch/tile/mm/fault.c
 @@ -346,7 +346,7 @@ static int handle_page_fault(struct pt_regs *regs,
@@ -294,7 +294,7 @@ index c796ce44..93cf4c9 100644
  		goto bad_area_nosemaphore;
  	}
 diff --git a/arch/um/kernel/trap.c b/arch/um/kernel/trap.c
-index f79ffc9..c402252 100644
+index f79ffc901d0e..c4022529c121 100644
 --- a/arch/um/kernel/trap.c
 +++ b/arch/um/kernel/trap.c
 @@ -37,7 +37,7 @@ int handle_page_fault(unsigned long address, unsigned long ip,
@@ -307,7 +307,7 @@ index f79ffc9..c402252 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
-index 351590e..16a0d86 100644
+index 351590ec87b8..16a0d86a8878 100644
 --- a/arch/x86/mm/fault.c
 +++ b/arch/x86/mm/fault.c
 @@ -1090,7 +1090,7 @@ do_page_fault(struct pt_regs *regs, unsigned long error_code)
@@ -320,7 +320,7 @@ index 351590e..16a0d86 100644
  		return;
  	}
 diff --git a/arch/xtensa/mm/fault.c b/arch/xtensa/mm/fault.c
-index 4439a1d..1ab0754 100644
+index 4439a1d6babf..1ab0754a3872 100644
 --- a/arch/xtensa/mm/fault.c
 +++ b/arch/xtensa/mm/fault.c
 @@ -57,7 +57,7 @@ void do_page_fault(struct pt_regs *regs)
diff --git a/debian/patches/features/all/rt/0048-mm-pagefault_disabled.patch b/debian/patches/features/all/rt/0048-mm-pagefault_disabled.patch
index a460dbb..84397d4 100644
--- a/debian/patches/features/all/rt/0048-mm-pagefault_disabled.patch
+++ b/debian/patches/features/all/rt/0048-mm-pagefault_disabled.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Thu, 11 Aug 2011 15:31:31 +0200
-Subject: [PATCH 048/374] mm: pagefault_disabled()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7f97b8898c3260f4277468433b56e2c97bbd1dac
+Subject: [PATCH 048/380] mm: pagefault_disabled()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=89c772c5288d8d3354b07208b06931381dc9574e
 
 Wrap the test for pagefault_disabled() into a helper, this allows us
 to remove the need for current->pagefault_disabled on !-rt kernels.
@@ -36,7 +36,7 @@ Link: http://lkml.kernel.org/n/tip-3yy517m8zsi9fpsf14xfaqkw@git.kernel.org
  24 files changed, 41 insertions(+), 26 deletions(-)
 
 diff --git a/arch/alpha/mm/fault.c b/arch/alpha/mm/fault.c
-index 5e04e97..d913e9b 100644
+index 5e04e976d7a4..d913e9bac72d 100644
 --- a/arch/alpha/mm/fault.c
 +++ b/arch/alpha/mm/fault.c
 @@ -107,7 +107,7 @@ do_page_fault(unsigned long address, unsigned long mmcsr,
@@ -49,7 +49,7 @@ index 5e04e97..d913e9b 100644
  
  #ifdef CONFIG_ALPHA_LARGE_VMALLOC
 diff --git a/arch/arm/mm/fault.c b/arch/arm/mm/fault.c
-index 0fe9b9b..4c306f2 100644
+index 0fe9b9b3cc73..4c306f2ec750 100644
 --- a/arch/arm/mm/fault.c
 +++ b/arch/arm/mm/fault.c
 @@ -296,7 +296,7 @@ do_page_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
@@ -62,7 +62,7 @@ index 0fe9b9b..4c306f2 100644
  
  	/*
 diff --git a/arch/avr32/mm/fault.c b/arch/avr32/mm/fault.c
-index 12d7c1d..fe16234 100644
+index 12d7c1d8c0ca..fe16234be8af 100644
 --- a/arch/avr32/mm/fault.c
 +++ b/arch/avr32/mm/fault.c
 @@ -81,8 +81,7 @@ asmlinkage void do_page_fault(unsigned long ecr, struct pt_regs *regs)
@@ -76,7 +76,7 @@ index 12d7c1d..fe16234 100644
  
  	local_irq_enable();
 diff --git a/arch/cris/mm/fault.c b/arch/cris/mm/fault.c
-index 10d6ef5..35aa283 100644
+index 10d6ef521d59..35aa283be5d1 100644
 --- a/arch/cris/mm/fault.c
 +++ b/arch/cris/mm/fault.c
 @@ -111,7 +111,7 @@ do_page_fault(unsigned long address, struct pt_regs *regs,
@@ -89,7 +89,7 @@ index 10d6ef5..35aa283 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/frv/mm/fault.c b/arch/frv/mm/fault.c
-index ae89e6b..176093c 100644
+index ae89e6bccd68..176093c9de42 100644
 --- a/arch/frv/mm/fault.c
 +++ b/arch/frv/mm/fault.c
 @@ -79,7 +79,7 @@ asmlinkage void do_page_fault(int datammu, unsigned long esr0, unsigned long ear
@@ -102,7 +102,7 @@ index ae89e6b..176093c 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/ia64/mm/fault.c b/arch/ia64/mm/fault.c
-index b1049827..d643140 100644
+index b1049827b15f..d643140e7eae 100644
 --- a/arch/ia64/mm/fault.c
 +++ b/arch/ia64/mm/fault.c
 @@ -89,7 +89,7 @@ ia64_do_page_fault (unsigned long address, unsigned long isr, struct pt_regs *re
@@ -115,7 +115,7 @@ index b1049827..d643140 100644
  
  #ifdef CONFIG_VIRTUAL_MEM_MAP
 diff --git a/arch/m32r/mm/fault.c b/arch/m32r/mm/fault.c
-index d9100a8..af29c04 100644
+index d9100a84701d..af29c04ae1ea 100644
 --- a/arch/m32r/mm/fault.c
 +++ b/arch/m32r/mm/fault.c
 @@ -115,7 +115,7 @@ asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long error_code,
@@ -128,7 +128,7 @@ index d9100a8..af29c04 100644
  
  	/* When running in the kernel we expect faults to occur only to
 diff --git a/arch/m68k/mm/fault.c b/arch/m68k/mm/fault.c
-index ad3cbf6..ecefbdb 100644
+index ad3cbf61e2fb..ecefbdb1e42f 100644
 --- a/arch/m68k/mm/fault.c
 +++ b/arch/m68k/mm/fault.c
 @@ -85,7 +85,7 @@ int do_page_fault(struct pt_regs *regs, unsigned long address,
@@ -141,7 +141,7 @@ index ad3cbf6..ecefbdb 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/microblaze/mm/fault.c b/arch/microblaze/mm/fault.c
-index 70bc11e..35bf03d 100644
+index 70bc11e3a6f9..35bf03d1df55 100644
 --- a/arch/microblaze/mm/fault.c
 +++ b/arch/microblaze/mm/fault.c
 @@ -107,7 +107,7 @@ void do_page_fault(struct pt_regs *regs, unsigned long address,
@@ -154,7 +154,7 @@ index 70bc11e..35bf03d 100644
  			goto bad_area_nosemaphore;
  
 diff --git a/arch/mips/mm/fault.c b/arch/mips/mm/fault.c
-index cad2a11..42f77e9 100644
+index cad2a114de56..42f77e99920e 100644
 --- a/arch/mips/mm/fault.c
 +++ b/arch/mips/mm/fault.c
 @@ -88,7 +88,7 @@ asmlinkage void __kprobes do_page_fault(struct pt_regs *regs, unsigned long writ
@@ -167,7 +167,7 @@ index cad2a11..42f77e9 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/mn10300/mm/fault.c b/arch/mn10300/mm/fault.c
-index 4b7e547..f8bdd57 100644
+index 4b7e547b42de..f8bdd57f08de 100644
 --- a/arch/mn10300/mm/fault.c
 +++ b/arch/mn10300/mm/fault.c
 @@ -168,7 +168,7 @@ asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long fault_code,
@@ -180,7 +180,7 @@ index 4b7e547..f8bdd57 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/parisc/mm/fault.c b/arch/parisc/mm/fault.c
-index 379e9e7..34a5c37 100644
+index 379e9e707227..34a5c3713587 100644
 --- a/arch/parisc/mm/fault.c
 +++ b/arch/parisc/mm/fault.c
 @@ -176,7 +176,7 @@ void do_page_fault(struct pt_regs *regs, unsigned long code,
@@ -193,7 +193,7 @@ index 379e9e7..34a5c37 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/powerpc/mm/fault.c b/arch/powerpc/mm/fault.c
-index c9216c9..e605ce8 100644
+index c9216c9a4916..e605ce8a6628 100644
 --- a/arch/powerpc/mm/fault.c
 +++ b/arch/powerpc/mm/fault.c
 @@ -162,7 +162,7 @@ int __kprobes do_page_fault(struct pt_regs *regs, unsigned long address,
@@ -206,7 +206,7 @@ index c9216c9..e605ce8 100644
  			return SIGSEGV;
  		/* in_atomic() in user mode is really bad,
 diff --git a/arch/s390/mm/fault.c b/arch/s390/mm/fault.c
-index fda8532..229ca60 100644
+index fda8532d87bc..229ca60ef20e 100644
 --- a/arch/s390/mm/fault.c
 +++ b/arch/s390/mm/fault.c
 @@ -301,8 +301,8 @@ static inline int do_exception(struct pt_regs *regs, int access,
@@ -232,7 +232,7 @@ index fda8532..229ca60 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/score/mm/fault.c b/arch/score/mm/fault.c
-index 02fc71a..7dce742 100644
+index 02fc71a1dbf8..7dce7429fd47 100644
 --- a/arch/score/mm/fault.c
 +++ b/arch/score/mm/fault.c
 @@ -72,7 +72,7 @@ asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long write,
@@ -245,7 +245,7 @@ index 02fc71a..7dce742 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/sh/mm/fault_32.c b/arch/sh/mm/fault_32.c
-index 12dcaf7..da16a99 100644
+index 12dcaf7e870d..da16a990d0aa 100644
 --- a/arch/sh/mm/fault_32.c
 +++ b/arch/sh/mm/fault_32.c
 @@ -166,7 +166,7 @@ asmlinkage void __kprobes do_page_fault(struct pt_regs *regs,
@@ -258,7 +258,7 @@ index 12dcaf7..da16a99 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/sparc/mm/fault_32.c b/arch/sparc/mm/fault_32.c
-index 434c714..76fd06d 100644
+index 434c714eb73b..76fd06d2ae7a 100644
 --- a/arch/sparc/mm/fault_32.c
 +++ b/arch/sparc/mm/fault_32.c
 @@ -247,7 +247,7 @@ asmlinkage void do_sparc_fault(struct pt_regs *regs, int text_fault, int write,
@@ -271,7 +271,7 @@ index 434c714..76fd06d 100644
  
  	perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, regs, address);
 diff --git a/arch/sparc/mm/fault_64.c b/arch/sparc/mm/fault_64.c
-index e2a8e85..6255243 100644
+index e2a8e858e394..62552439e13a 100644
 --- a/arch/sparc/mm/fault_64.c
 +++ b/arch/sparc/mm/fault_64.c
 @@ -330,7 +330,7 @@ asmlinkage void __kprobes do_sparc64_fault(struct pt_regs *regs)
@@ -284,7 +284,7 @@ index e2a8e85..6255243 100644
  
  	perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, regs, address);
 diff --git a/arch/tile/mm/fault.c b/arch/tile/mm/fault.c
-index 93cf4c9..bd8f35c 100644
+index 93cf4c9a4ee0..bd8f35cba994 100644
 --- a/arch/tile/mm/fault.c
 +++ b/arch/tile/mm/fault.c
 @@ -346,7 +346,7 @@ static int handle_page_fault(struct pt_regs *regs,
@@ -297,7 +297,7 @@ index 93cf4c9..bd8f35c 100644
  		goto bad_area_nosemaphore;
  	}
 diff --git a/arch/um/kernel/trap.c b/arch/um/kernel/trap.c
-index c402252..846737e 100644
+index c4022529c121..846737e5dc05 100644
 --- a/arch/um/kernel/trap.c
 +++ b/arch/um/kernel/trap.c
 @@ -37,7 +37,7 @@ int handle_page_fault(unsigned long address, unsigned long ip,
@@ -310,7 +310,7 @@ index c402252..846737e 100644
  
  	down_read(&mm->mmap_sem);
 diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
-index 16a0d86..151d957 100644
+index 16a0d86a8878..151d95707394 100644
 --- a/arch/x86/mm/fault.c
 +++ b/arch/x86/mm/fault.c
 @@ -1090,7 +1090,7 @@ do_page_fault(struct pt_regs *regs, unsigned long error_code)
@@ -323,7 +323,7 @@ index 16a0d86..151d957 100644
  		return;
  	}
 diff --git a/arch/xtensa/mm/fault.c b/arch/xtensa/mm/fault.c
-index 1ab0754..e1cdf65 100644
+index 1ab0754a3872..e1cdf65dfc75 100644
 --- a/arch/xtensa/mm/fault.c
 +++ b/arch/xtensa/mm/fault.c
 @@ -57,7 +57,7 @@ void do_page_fault(struct pt_regs *regs)
@@ -336,7 +336,7 @@ index 1ab0754..e1cdf65 100644
  		return;
  	}
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index d96c69d..3328cac 100644
+index 7fad3e1ad2e0..c2a038d52568 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -91,6 +91,7 @@ struct sched_param {
@@ -376,7 +376,7 @@ index d96c69d..3328cac 100644
   * Priority of a process goes from 0..MAX_PRIO-1, valid RT
   * priority is 0..MAX_RT_PRIO-1, and SCHED_NORMAL/SCHED_BATCH
 diff --git a/kernel/fork.c b/kernel/fork.c
-index 2d1ceb1..ed468a3 100644
+index 2d1ceb141637..ed468a34b333 100644
 --- a/kernel/fork.c
 +++ b/kernel/fork.c
 @@ -1200,7 +1200,9 @@ static struct task_struct *copy_process(unsigned long clone_flags,
diff --git a/debian/patches/features/all/rt/0049-mm-raw_pagefault_disable.patch b/debian/patches/features/all/rt/0049-mm-raw_pagefault_disable.patch
index 966526a..01e3121 100644
--- a/debian/patches/features/all/rt/0049-mm-raw_pagefault_disable.patch
+++ b/debian/patches/features/all/rt/0049-mm-raw_pagefault_disable.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Fri, 5 Aug 2011 17:16:58 +0200
-Subject: [PATCH 049/374] mm: raw_pagefault_disable
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f853157bf1628effee5c5624cd78916eaf084754
+Subject: [PATCH 049/380] mm: raw_pagefault_disable
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5240e9dc9548192fd2b8e0d8a16803ac06c2c6cb
 
 Adding migrate_disable() to pagefault_disable() to preserve the
 per-cpu thing for kmap_atomic might not have been the best of choices.
@@ -79,7 +79,7 @@ Link: http://lkml.kernel.org/n/tip-31keae8mkjiv8esq4rl76cib@git.kernel.org
  2 files changed, 30 insertions(+), 2 deletions(-)
 
 diff --git a/include/linux/uaccess.h b/include/linux/uaccess.h
-index 9414a1b..44b3751 100644
+index 9414a1b48f5c..44b37510c14f 100644
 --- a/include/linux/uaccess.h
 +++ b/include/linux/uaccess.h
 @@ -8,8 +8,34 @@
@@ -130,7 +130,7 @@ index 9414a1b..44b3751 100644
  		ret;					\
  	})
 diff --git a/mm/memory.c b/mm/memory.c
-index 072c715..0a2fec9 100644
+index 072c715ab45a..0a2fec9d69d6 100644
 --- a/mm/memory.c
 +++ b/mm/memory.c
 @@ -3518,6 +3518,7 @@ unlock:
diff --git a/debian/patches/features/all/rt/0050-filemap-fix-up.patch.patch b/debian/patches/features/all/rt/0050-filemap-fix-up.patch.patch
index 9cc24f7..5d38d4b 100644
--- a/debian/patches/features/all/rt/0050-filemap-fix-up.patch.patch
+++ b/debian/patches/features/all/rt/0050-filemap-fix-up.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 17 Jun 2011 18:56:24 +0200
-Subject: [PATCH 050/374] filemap-fix-up.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3613abae93c1e11321e812d9669f6d071ad3de5b
+Subject: [PATCH 050/380] filemap-fix-up.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=61396848342d45c8d4a32f93e2a1695d9d99aa6e
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 Wrecked-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
@@ -11,7 +11,7 @@ Link: http://lkml.kernel.org/n/tip-m6yuzd6ul717hlnl2gj6p3ou@git.kernel.org
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/mm/filemap.c b/mm/filemap.c
-index 6c009c2..c32314c 100644
+index f2f52478dd75..d13f4a98b248 100644
 --- a/mm/filemap.c
 +++ b/mm/filemap.c
 @@ -2047,7 +2047,7 @@ size_t iov_iter_copy_from_user_atomic(struct page *page,
diff --git a/debian/patches/features/all/rt/0051-mm-Remove-preempt-count-from-pagefault-disable-enabl.patch b/debian/patches/features/all/rt/0051-mm-Remove-preempt-count-from-pagefault-disable-enabl.patch
index da67037..3478960 100644
--- a/debian/patches/features/all/rt/0051-mm-Remove-preempt-count-from-pagefault-disable-enabl.patch
+++ b/debian/patches/features/all/rt/0051-mm-Remove-preempt-count-from-pagefault-disable-enabl.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 25 Jul 2009 22:06:27 +0200
-Subject: [PATCH 051/374] mm: Remove preempt count from pagefault
+Subject: [PATCH 051/380] mm: Remove preempt count from pagefault
  disable/enable
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f806f735af4ee39d34628b5d7d0ce1cf1322e5ee
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d85db801235fb9f868700daf378b4b05f773506d
 
 Now that all users are cleaned up, we can remove the preemption count.
 
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 7 deletions(-)
 
 diff --git a/mm/memory.c b/mm/memory.c
-index 0a2fec9..5a73d8a 100644
+index 0a2fec9d69d6..5a73d8a73986 100644
 --- a/mm/memory.c
 +++ b/mm/memory.c
 @@ -3521,7 +3521,6 @@ unlock:
diff --git a/debian/patches/features/all/rt/0052-x86-highmem-Replace-BUG_ON-by-WARN_ON.patch b/debian/patches/features/all/rt/0052-x86-highmem-Replace-BUG_ON-by-WARN_ON.patch
index e3c1be4..b63ac8a 100644
--- a/debian/patches/features/all/rt/0052-x86-highmem-Replace-BUG_ON-by-WARN_ON.patch
+++ b/debian/patches/features/all/rt/0052-x86-highmem-Replace-BUG_ON-by-WARN_ON.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:25 -0500
-Subject: [PATCH 052/374] x86: highmem: Replace BUG_ON by WARN_ON
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0af79c5a413734523c53fda751aa06848b0efb2f
+Subject: [PATCH 052/380] x86: highmem: Replace BUG_ON by WARN_ON
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=884de610f9ed1cb4d42e4f13451f18f7be7b6d64
 
 The machine might survive that problem and be at least in a state
 which allows us to get more information about the problem.
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/arch/x86/mm/highmem_32.c b/arch/x86/mm/highmem_32.c
-index f4f29b1..71bd7d6 100644
+index f4f29b19fac5..71bd7d64e63c 100644
 --- a/arch/x86/mm/highmem_32.c
 +++ b/arch/x86/mm/highmem_32.c
 @@ -43,7 +43,7 @@ void *kmap_atomic_prot(struct page *page, pgprot_t prot)
diff --git a/debian/patches/features/all/rt/0053-suspend-Prevent-might-sleep-splats.patch b/debian/patches/features/all/rt/0053-suspend-Prevent-might-sleep-splats.patch
index ee8dc94..763b6ab 100644
--- a/debian/patches/features/all/rt/0053-suspend-Prevent-might-sleep-splats.patch
+++ b/debian/patches/features/all/rt/0053-suspend-Prevent-might-sleep-splats.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 15 Jul 2010 10:29:00 +0200
-Subject: [PATCH 053/374] suspend: Prevent might sleep splats
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0285a788d36eda60586f1ce55e071d25a1b27d57
+Subject: [PATCH 053/380] suspend: Prevent might sleep splats
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6132ebca84bef435c215b51bfaa9be9861f9ac5d
 
 timekeeping suspend/resume calls read_persistant_clock() which takes
 rtc_lock. That results in might sleep warnings because at that point
@@ -24,7 +24,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 12 insertions(+), 1 deletion(-)
 
 diff --git a/include/linux/kernel.h b/include/linux/kernel.h
-index dcf6a8b..7551546 100644
+index dcf6a8b6412b..75515461b4ac 100644
 --- a/include/linux/kernel.h
 +++ b/include/linux/kernel.h
 @@ -370,7 +370,7 @@ extern enum system_states {
@@ -37,7 +37,7 @@ index dcf6a8b..7551546 100644
  
  #define TAINT_PROPRIETARY_MODULE	0
 diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c
-index e4ce628..6187c03 100644
+index e4ce628e73f0..6187c03131f0 100644
 --- a/kernel/power/hibernate.c
 +++ b/kernel/power/hibernate.c
 @@ -284,6 +284,8 @@ static int create_image(int platform_mode)
@@ -90,7 +90,7 @@ index e4ce628..6187c03 100644
  	enable_nonboot_cpus();
  
 diff --git a/kernel/power/suspend.c b/kernel/power/suspend.c
-index af48faa..ad3690c 100644
+index af48faa3537f..ad3690c46a59 100644
 --- a/kernel/power/suspend.c
 +++ b/kernel/power/suspend.c
 @@ -172,6 +172,8 @@ static int suspend_enter(suspend_state_t state, bool *wakeup)
diff --git a/debian/patches/features/all/rt/0054-OF-Fixup-resursive-locking-code-paths.patch b/debian/patches/features/all/rt/0054-OF-Fixup-resursive-locking-code-paths.patch
index 25a1bf3..3421833 100644
--- a/debian/patches/features/all/rt/0054-OF-Fixup-resursive-locking-code-paths.patch
+++ b/debian/patches/features/all/rt/0054-OF-Fixup-resursive-locking-code-paths.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 13 Aug 2009 09:04:10 +0200
-Subject: [PATCH 054/374] OF: Fixup resursive locking code paths
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=27deb11b883d3b66bcd266f9be70798218c42026
+Subject: [PATCH 054/380] OF: Fixup resursive locking code paths
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=77d1e91e14c23b28472a71fea540a46b0cc8b4a9
 
 There is no real reason to use a rwlock for devtree_lock. It even
 could be a mutex, but unfortunately it's locked from cpu hotplug
@@ -18,7 +18,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 71 insertions(+), 22 deletions(-)
 
 diff --git a/drivers/of/base.c b/drivers/of/base.c
-index 21935580..c5a319c 100644
+index 219355803a2f..c5a319cb426e 100644
 --- a/drivers/of/base.c
 +++ b/drivers/of/base.c
 @@ -163,16 +163,14 @@ void of_node_put(struct device_node *node)
diff --git a/debian/patches/features/all/rt/0055-of-convert-devtree-lock.patch.patch b/debian/patches/features/all/rt/0055-of-convert-devtree-lock.patch.patch
index efd161d..7bd9b32 100644
--- a/debian/patches/features/all/rt/0055-of-convert-devtree-lock.patch.patch
+++ b/debian/patches/features/all/rt/0055-of-convert-devtree-lock.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 21 Mar 2011 14:35:34 +0100
-Subject: [PATCH 055/374] of-convert-devtree-lock.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6b93bcf63d6fc13ad3a594c211dd8e68189d1ec4
+Subject: [PATCH 055/380] of-convert-devtree-lock.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a7969c7e19589b82b64c0fb7df22f28281374bf3
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 55 insertions(+), 43 deletions(-)
 
 diff --git a/arch/sparc/kernel/prom_common.c b/arch/sparc/kernel/prom_common.c
-index 741df91..ca73a28 100644
+index 741df916c124..ca73a288e179 100644
 --- a/arch/sparc/kernel/prom_common.c
 +++ b/arch/sparc/kernel/prom_common.c
 @@ -65,7 +65,7 @@ int of_set_property(struct device_node *dp, const char *name, void *val, int len
@@ -33,7 +33,7 @@ index 741df91..ca73a28 100644
  
  	/* XXX Upate procfs if necessary... */
 diff --git a/drivers/of/base.c b/drivers/of/base.c
-index c5a319c..ee59362 100644
+index c5a319cb426e..ee59362ccfa9 100644
 --- a/drivers/of/base.c
 +++ b/drivers/of/base.c
 @@ -54,7 +54,7 @@ static DEFINE_MUTEX(of_aliases_mutex);
@@ -379,7 +379,7 @@ index c5a319c..ee59362 100644
  #endif /* defined(CONFIG_OF_DYNAMIC) */
  
 diff --git a/include/linux/of.h b/include/linux/of.h
-index c81ef31..ea21881 100644
+index c81ef31a1efd..ea2188128af0 100644
 --- a/include/linux/of.h
 +++ b/include/linux/of.h
 @@ -71,7 +71,7 @@ struct device_node {
diff --git a/debian/patches/features/all/rt/0056-list-add-list-last-entry.patch.patch b/debian/patches/features/all/rt/0056-list-add-list-last-entry.patch.patch
index 0630a63..b58b221 100644
--- a/debian/patches/features/all/rt/0056-list-add-list-last-entry.patch.patch
+++ b/debian/patches/features/all/rt/0056-list-add-list-last-entry.patch.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <peterz at infradead.org>
 Date: Tue, 21 Jun 2011 11:22:36 +0200
-Subject: [PATCH 056/374] list-add-list-last-entry.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=11d0c75cd64c441d1a83a014d07e50bb22f69c79
+Subject: [PATCH 056/380] list-add-list-last-entry.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7c172a25ce5eb0afa6a851dea3f7b300f3681d2c
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 11 insertions(+)
 
 diff --git a/include/linux/list.h b/include/linux/list.h
-index cc6d2aa..7a9851b 100644
+index cc6d2aa6b415..7a9851bbef04 100644
 --- a/include/linux/list.h
 +++ b/include/linux/list.h
 @@ -362,6 +362,17 @@ static inline void list_splice_tail_init(struct list_head *list,
diff --git a/debian/patches/features/all/rt/0057-mm-page-alloc-use-list-last-entry.patch.patch b/debian/patches/features/all/rt/0057-mm-page-alloc-use-list-last-entry.patch.patch
index 763afbf..08bdea4 100644
--- a/debian/patches/features/all/rt/0057-mm-page-alloc-use-list-last-entry.patch.patch
+++ b/debian/patches/features/all/rt/0057-mm-page-alloc-use-list-last-entry.patch.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <peterz at infradead.org>
 Date: Tue, 21 Jun 2011 11:24:35 +0200
-Subject: [PATCH 057/374] mm-page-alloc-use-list-last-entry.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bbe40d6129ffc978644e91e6de798c448849eb37
+Subject: [PATCH 057/380] mm-page-alloc-use-list-last-entry.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=79fcc9d3578a54765a57f1ff2df4701b0f573d44
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 62a7fa23..b32ce90 100644
+index 62a7fa23d328..b32ce9009f24 100644
 --- a/mm/page_alloc.c
 +++ b/mm/page_alloc.c
 @@ -625,7 +625,7 @@ static void free_pcppages_bulk(struct zone *zone, int count,
diff --git a/debian/patches/features/all/rt/0058-mm-slab-move-debug-out.patch.patch b/debian/patches/features/all/rt/0058-mm-slab-move-debug-out.patch.patch
index a61d49f..c3ed3de 100644
--- a/debian/patches/features/all/rt/0058-mm-slab-move-debug-out.patch.patch
+++ b/debian/patches/features/all/rt/0058-mm-slab-move-debug-out.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 20 Jun 2011 10:42:04 +0200
-Subject: [PATCH 058/374] mm-slab-move-debug-out.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e924ca49d74614049d3a5cf1599e104d54b8c1c5
+Subject: [PATCH 058/380] mm-slab-move-debug-out.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=05432b5be392634ce8204d56d748f0f9f5f120bc
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/mm/slab.c b/mm/slab.c
-index 92d11c6..a02c5d57 100644
+index 92d11c622f9c..a02c5d57ecac 100644
 --- a/mm/slab.c
 +++ b/mm/slab.c
 @@ -3857,10 +3857,10 @@ void kmem_cache_free(struct kmem_cache *cachep, void *objp)
diff --git a/debian/patches/features/all/rt/0059-rwsem-inlcude-fix.patch.patch b/debian/patches/features/all/rt/0059-rwsem-inlcude-fix.patch.patch
index 22ed304..5e621af 100644
--- a/debian/patches/features/all/rt/0059-rwsem-inlcude-fix.patch.patch
+++ b/debian/patches/features/all/rt/0059-rwsem-inlcude-fix.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 15 Jul 2011 21:24:27 +0200
-Subject: [PATCH 059/374] rwsem-inlcude-fix.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=faf550e30ce67f3153cb9a30d31fb5f69206c799
+Subject: [PATCH 059/380] rwsem-inlcude-fix.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b38b50bbe79fb74e7924a3519e894e2bae1fab6f
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+)
 
 diff --git a/include/linux/pid.h b/include/linux/pid.h
-index b152d44..7f33683 100644
+index b152d44fb181..7f336833f2c5 100644
 --- a/include/linux/pid.h
 +++ b/include/linux/pid.h
 @@ -2,6 +2,7 @@
diff --git a/debian/patches/features/all/rt/0060-sysctl-include-fix.patch.patch b/debian/patches/features/all/rt/0060-sysctl-include-fix.patch.patch
index f82c809..9ad6e7e 100644
--- a/debian/patches/features/all/rt/0060-sysctl-include-fix.patch.patch
+++ b/debian/patches/features/all/rt/0060-sysctl-include-fix.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 14 Nov 2011 10:52:34 +0100
-Subject: [PATCH 060/374] sysctl-include-fix.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=50a5052619f500ac07ecbcb4d82e1568140efd1f
+Subject: [PATCH 060/380] sysctl-include-fix.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f8aae87d574628ec45ac1cc037248f982dbc3937
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+)
 
 diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h
-index 703cfa33..b954c41 100644
+index 703cfa33a3ca..b954c4136da3 100644
 --- a/include/linux/sysctl.h
 +++ b/include/linux/sysctl.h
 @@ -932,6 +932,7 @@ enum
diff --git a/debian/patches/features/all/rt/0061-net-flip-lock-dep-thingy.patch.patch b/debian/patches/features/all/rt/0061-net-flip-lock-dep-thingy.patch.patch
index 1b422e3..f9270f6 100644
--- a/debian/patches/features/all/rt/0061-net-flip-lock-dep-thingy.patch.patch
+++ b/debian/patches/features/all/rt/0061-net-flip-lock-dep-thingy.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 28 Jun 2011 10:59:58 +0200
-Subject: [PATCH 061/374] net-flip-lock-dep-thingy.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9b6f6972e0af1a756b6f8b4cd5684006f3da8b0a
+Subject: [PATCH 061/380] net-flip-lock-dep-thingy.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1118ddb763861ec41d964e93959a5ea89ee53cf4
 
 =======================================================
 [ INFO: possible circular locking dependency detected ]
@@ -93,7 +93,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 2 deletions(-)
 
 diff --git a/net/core/sock.c b/net/core/sock.c
-index e093528..fb9464e 100644
+index e0935282945f..fb9464edeaa0 100644
 --- a/net/core/sock.c
 +++ b/net/core/sock.c
 @@ -2037,12 +2037,11 @@ void lock_sock_nested(struct sock *sk, int subclass)
diff --git a/debian/patches/features/all/rt/0062-softirq-thread-do-softirq.patch.patch b/debian/patches/features/all/rt/0062-softirq-thread-do-softirq.patch.patch
index 5aa27b4..fcb3856 100644
--- a/debian/patches/features/all/rt/0062-softirq-thread-do-softirq.patch.patch
+++ b/debian/patches/features/all/rt/0062-softirq-thread-do-softirq.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 28 Jun 2011 15:44:15 +0200
-Subject: [PATCH 062/374] softirq-thread-do-softirq.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=35375f2614623b1295beeb9e9d3d567801368b17
+Subject: [PATCH 062/380] softirq-thread-do-softirq.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e0eabf5c16a680d4df783f89e35f3aedd13c5674
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 3 insertions(+), 1 deletion(-)
 
 diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index a64b00e..21b94de 100644
+index a64b00e286f5..21b94de06788 100644
 --- a/include/linux/interrupt.h
 +++ b/include/linux/interrupt.h
 @@ -454,6 +454,8 @@ struct softirq_action
@@ -23,7 +23,7 @@ index a64b00e..21b94de 100644
  extern void softirq_init(void);
  static inline void __raise_softirq_irqoff(unsigned int nr)
 diff --git a/net/core/dev.c b/net/core/dev.c
-index 7f43202..1597c0b 100644
+index ec299588f45a..459779a87dd8 100644
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
 @@ -3042,7 +3042,7 @@ int netif_rx_ni(struct sk_buff *skb)
diff --git a/debian/patches/features/all/rt/0063-softirq-split-out-code.patch.patch b/debian/patches/features/all/rt/0063-softirq-split-out-code.patch.patch
index 1fd0bbf..c1d4a7d 100644
--- a/debian/patches/features/all/rt/0063-softirq-split-out-code.patch.patch
+++ b/debian/patches/features/all/rt/0063-softirq-split-out-code.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 28 Jun 2011 15:46:49 +0200
-Subject: [PATCH 063/374] softirq-split-out-code.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=273bbdf33d36cab3ea2d7474fbdd4c37c75bcd9a
+Subject: [PATCH 063/380] softirq-split-out-code.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=de409f77420f4553570186815971a9265801a1f8
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 52 insertions(+), 42 deletions(-)
 
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 4248ac2..b7b4c0c 100644
+index 4248ac26d5b4..b7b4c0ce4ae6 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -76,6 +76,34 @@ static void wakeup_softirqd(void)
diff --git a/debian/patches/features/all/rt/0064-x86-Do-not-unmask-io_apic-when-interrupt-is-in-progr.patch b/debian/patches/features/all/rt/0064-x86-Do-not-unmask-io_apic-when-interrupt-is-in-progr.patch
index 286d225..1c36996 100644
--- a/debian/patches/features/all/rt/0064-x86-Do-not-unmask-io_apic-when-interrupt-is-in-progr.patch
+++ b/debian/patches/features/all/rt/0064-x86-Do-not-unmask-io_apic-when-interrupt-is-in-progr.patch
@@ -1,8 +1,8 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:27 -0500
-Subject: [PATCH 064/374] x86: Do not unmask io_apic when interrupt is in
+Subject: [PATCH 064/380] x86: Do not unmask io_apic when interrupt is in
  progress
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=04f585015c16a69b844f9e36cb97deccc59af560
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0d44eadd8ba229ef58aaa835686f21958efead16
 
 With threaded interrupts we might see an interrupt in progress on
 migration. Do not unmask it when this is the case.
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
-index 8980555..91527bc 100644
+index 898055585516..91527bc8a621 100644
 --- a/arch/x86/kernel/apic/io_apic.c
 +++ b/arch/x86/kernel/apic/io_apic.c
 @@ -2521,7 +2521,8 @@ static void ack_apic_level(struct irq_data *data)
diff --git a/debian/patches/features/all/rt/0065-x86-32-fix-signal-crap.patch.patch b/debian/patches/features/all/rt/0065-x86-32-fix-signal-crap.patch.patch
index c1e6495..21239db 100644
--- a/debian/patches/features/all/rt/0065-x86-32-fix-signal-crap.patch.patch
+++ b/debian/patches/features/all/rt/0065-x86-32-fix-signal-crap.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 18 Jul 2011 15:59:38 +0200
-Subject: [PATCH 065/374] x86-32-fix-signal-crap.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=00ab20ce6126a8796d6c6aa2e1465d445731eb28
+Subject: [PATCH 065/380] x86-32-fix-signal-crap.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b72172d61ecad65ef8089c15b68c8b6d879b53cf
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 8 insertions(+)
 
 diff --git a/arch/x86/kernel/entry_32.S b/arch/x86/kernel/entry_32.S
-index 0fa4f89..5b7e058 100644
+index 0fa4f89125ae..5b7e058e0631 100644
 --- a/arch/x86/kernel/entry_32.S
 +++ b/arch/x86/kernel/entry_32.S
 @@ -630,7 +630,11 @@ work_notifysig:				# deal with pending signals and
diff --git a/debian/patches/features/all/rt/0066-x86-Do-not-disable-preemption-in-int3-on-32bit.patch b/debian/patches/features/all/rt/0066-x86-Do-not-disable-preemption-in-int3-on-32bit.patch
index 69fd15d..0f8b114 100644
--- a/debian/patches/features/all/rt/0066-x86-Do-not-disable-preemption-in-int3-on-32bit.patch
+++ b/debian/patches/features/all/rt/0066-x86-Do-not-disable-preemption-in-int3-on-32bit.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Tue, 10 Apr 2012 14:33:57 -0400
-Subject: [PATCH 066/374] x86: Do not disable preemption in int3 on 32bit
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e721e8eb4245e31ffb547aaca5cf855cf7131c34
+Subject: [PATCH 066/380] x86: Do not disable preemption in int3 on 32bit
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=214ef34d59bb191beabc1c81614a9c38b560e915
 
 Preemption must be disabled before enabling interrupts in do_trap
 on x86_64 because the stack in use for int3 and debug is a per CPU
@@ -24,7 +24,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 21 insertions(+), 7 deletions(-)
 
 diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
-index edbd30a..7cbf5e3 100644
+index edbd30a152c1..7cbf5e30b3e9 100644
 --- a/arch/x86/kernel/traps.c
 +++ b/arch/x86/kernel/traps.c
 @@ -87,9 +87,21 @@ static inline void conditional_sti(struct pt_regs *regs)
diff --git a/debian/patches/features/all/rt/0067-rcu-Reduce-lock-section.patch b/debian/patches/features/all/rt/0067-rcu-Reduce-lock-section.patch
index d6c4a2b..0c0aba9 100644
--- a/debian/patches/features/all/rt/0067-rcu-Reduce-lock-section.patch
+++ b/debian/patches/features/all/rt/0067-rcu-Reduce-lock-section.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 24 Jun 2011 22:23:02 +0200
-Subject: [PATCH 067/374] rcu: Reduce lock section
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4e218082f06dab3004923bd4dc1747d09f717ddc
+Subject: [PATCH 067/380] rcu: Reduce lock section
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e0eac81df8e8eb70739d4b6af097055a33c2f0b9
 
 So the waitqueue wakeup is outside the raw locked section.
 
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 11 insertions(+), 8 deletions(-)
 
 diff --git a/kernel/rcutree.c b/kernel/rcutree.c
-index 1aa52af..d0e5491 100644
+index 1aa52afdf4e1..d0e549120f98 100644
 --- a/kernel/rcutree.c
 +++ b/kernel/rcutree.c
 @@ -1223,7 +1223,7 @@ static void __rcu_offline_cpu(int cpu, struct rcu_state *rsp)
@@ -26,7 +26,7 @@ index 1aa52af..d0e5491 100644
  }
  
 diff --git a/kernel/rcutree.h b/kernel/rcutree.h
-index 849ce9e..dca495d 100644
+index 849ce9ec51fe..dca495d81304 100644
 --- a/kernel/rcutree.h
 +++ b/kernel/rcutree.h
 @@ -451,7 +451,8 @@ static void rcu_preempt_check_callbacks(int cpu);
@@ -40,7 +40,7 @@ index 849ce9e..dca495d 100644
  static int rcu_preempt_pending(int cpu);
  static int rcu_preempt_needs_cpu(int cpu);
 diff --git a/kernel/rcutree_plugin.h b/kernel/rcutree_plugin.h
-index 4b9b9f8..73cab33 100644
+index 4b9b9f8a4184..73cab33488b8 100644
 --- a/kernel/rcutree_plugin.h
 +++ b/kernel/rcutree_plugin.h
 @@ -407,7 +407,7 @@ static noinline void rcu_read_unlock_special(struct task_struct *t)
diff --git a/debian/patches/features/all/rt/0068-locking-various-init-fixes.patch.patch b/debian/patches/features/all/rt/0068-locking-various-init-fixes.patch.patch
index 4f992d9..97c292e 100644
--- a/debian/patches/features/all/rt/0068-locking-various-init-fixes.patch.patch
+++ b/debian/patches/features/all/rt/0068-locking-various-init-fixes.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 21:25:03 +0200
-Subject: [PATCH 068/374] locking-various-init-fixes.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0a2e3b49c287e18a1cf7cf1c05cc479d132c2c0c
+Subject: [PATCH 068/380] locking-various-init-fixes.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=912209674e8a4e65cb695973a465ae2cdc6e95d3
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  5 files changed, 7 insertions(+), 7 deletions(-)
 
 diff --git a/drivers/char/random.c b/drivers/char/random.c
-index 26af698..6eeed0d 100644
+index 26af6985486b..6eeed0de7e24 100644
 --- a/drivers/char/random.c
 +++ b/drivers/char/random.c
 @@ -445,7 +445,7 @@ static struct entropy_store input_pool = {
@@ -44,7 +44,7 @@ index 26af698..6eeed0d 100644
  };
  
 diff --git a/drivers/usb/gadget/ci13xxx_udc.c b/drivers/usb/gadget/ci13xxx_udc.c
-index 9a0c397..f526873 100644
+index 9a0c3979ff43..f526873313e5 100644
 --- a/drivers/usb/gadget/ci13xxx_udc.c
 +++ b/drivers/usb/gadget/ci13xxx_udc.c
 @@ -819,7 +819,7 @@ static struct {
@@ -57,7 +57,7 @@ index 9a0c397..f526873 100644
  
  /**
 diff --git a/fs/file.c b/fs/file.c
-index 30bfc99..05e88e2 100644
+index 30bfc997cc49..05e88e2aa148 100644
 --- a/fs/file.c
 +++ b/fs/file.c
 @@ -422,7 +422,7 @@ struct files_struct init_files = {
@@ -70,7 +70,7 @@ index 30bfc99..05e88e2 100644
  
  /*
 diff --git a/include/linux/idr.h b/include/linux/idr.h
-index 52a9da2..dffed8f 100644
+index 52a9da295296..dffed8f9b073 100644
 --- a/include/linux/idr.h
 +++ b/include/linux/idr.h
 @@ -136,7 +136,7 @@ struct ida {
@@ -83,7 +83,7 @@ index 52a9da2..dffed8f 100644
  
  int ida_pre_get(struct ida *ida, gfp_t gfp_mask);
 diff --git a/kernel/cred.c b/kernel/cred.c
-index 48c6fd3..482a0e3 100644
+index 48c6fd3bc848..482a0e3bdd75 100644
 --- a/kernel/cred.c
 +++ b/kernel/cred.c
 @@ -35,7 +35,7 @@ static struct kmem_cache *cred_jar;
diff --git a/debian/patches/features/all/rt/0069-wait-Provide-__wake_up_all_locked.patch b/debian/patches/features/all/rt/0069-wait-Provide-__wake_up_all_locked.patch
index c3c6156..5d0c995 100644
--- a/debian/patches/features/all/rt/0069-wait-Provide-__wake_up_all_locked.patch
+++ b/debian/patches/features/all/rt/0069-wait-Provide-__wake_up_all_locked.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 1 Dec 2011 00:04:00 +0100
-Subject: [PATCH 069/374] wait: Provide __wake_up_all_locked
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=45d6adfe9d6c13e8f0d91758a7d78f3cf5c31652
+Subject: [PATCH 069/380] wait: Provide __wake_up_all_locked
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=49e67affd70e2ca044566b69298288be3cfb14e2
 
 For code which protects the waitqueue itself with another lock it
 makes no sense to acquire the waitqueue lock for wakeup all. Provide
@@ -15,7 +15,7 @@ Cc: stable-rt at vger.kernel.org
  2 files changed, 5 insertions(+), 4 deletions(-)
 
 diff --git a/include/linux/wait.h b/include/linux/wait.h
-index e007f76..497fa20 100644
+index e007f76f3502..497fa20d2d4e 100644
 --- a/include/linux/wait.h
 +++ b/include/linux/wait.h
 @@ -157,7 +157,7 @@ void __wake_up(wait_queue_head_t *q, unsigned int mode, int nr, void *key);
@@ -38,10 +38,10 @@ index e007f76..497fa20 100644
  #define wake_up_interruptible(x)	__wake_up(x, TASK_INTERRUPTIBLE, 1, NULL)
  #define wake_up_interruptible_nr(x, nr)	__wake_up(x, TASK_INTERRUPTIBLE, nr, NULL)
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 9a43861..c729029 100644
+index c0af60d89b2a..5f27fecaeac0 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4834,9 +4834,9 @@ EXPORT_SYMBOL(__wake_up);
+@@ -4835,9 +4835,9 @@ EXPORT_SYMBOL(__wake_up);
  /*
   * Same as __wake_up but called with the spinlock in wait_queue_head_t held.
   */
diff --git a/debian/patches/features/all/rt/0070-pci-Use-__wake_up_all_locked-pci_unblock_user_cfg_ac.patch b/debian/patches/features/all/rt/0070-pci-Use-__wake_up_all_locked-pci_unblock_user_cfg_ac.patch
index aa22ad8..e0d1ea6 100644
--- a/debian/patches/features/all/rt/0070-pci-Use-__wake_up_all_locked-pci_unblock_user_cfg_ac.patch
+++ b/debian/patches/features/all/rt/0070-pci-Use-__wake_up_all_locked-pci_unblock_user_cfg_ac.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 1 Dec 2011 00:07:16 +0100
-Subject: [PATCH 070/374] pci: Use __wake_up_all_locked
+Subject: [PATCH 070/380] pci: Use __wake_up_all_locked
  pci_unblock_user_cfg_access()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=62f6663a640ae3ac6095bfaa3d360bbde72f0028
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9b3882f6c26a30e92093d86cd336511188364869
 
 The waitqueue is protected by the pci_lock, so we can just avoid to
 lock the waitqueue lock itself. That prevents the
@@ -15,10 +15,10 @@ Cc: stable-rt at vger.kernel.org
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/drivers/pci/access.c b/drivers/pci/access.c
-index fac01f8..64d206e 100644
+index 32785cd72e40..c969ac35cb9e 100644
 --- a/drivers/pci/access.c
 +++ b/drivers/pci/access.c
-@@ -500,7 +500,7 @@ void pci_unblock_user_cfg_access(struct pci_dev *dev)
+@@ -481,7 +481,7 @@ void pci_unblock_user_cfg_access(struct pci_dev *dev)
  	WARN_ON(!dev->block_ucfg_access);
  
  	dev->block_ucfg_access = 0;
diff --git a/debian/patches/features/all/rt/0071-latency-hist.patch.patch b/debian/patches/features/all/rt/0071-latency-hist.patch.patch
index 6506458..7e65ced 100644
--- a/debian/patches/features/all/rt/0071-latency-hist.patch.patch
+++ b/debian/patches/features/all/rt/0071-latency-hist.patch.patch
@@ -1,7 +1,7 @@
 From: Carsten Emde <C.Emde at osadl.org>
 Date: Tue, 19 Jul 2011 14:03:41 +0100
-Subject: [PATCH 071/374] latency-hist.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6e82cf5d93420e735451f00faa588b25bf24fabc
+Subject: [PATCH 071/380] latency-hist.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7a567d80acdcc88f51baf79a4a0d73d5e75b0f75
 
 This patch provides a recording mechanism to store data of potential
 sources of system latencies. The recordings separately determine the
@@ -30,7 +30,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 
 diff --git a/Documentation/trace/histograms.txt b/Documentation/trace/histograms.txt
 new file mode 100644
-index 0000000..6f2aeab
+index 000000000000..6f2aeabf7faa
 --- /dev/null
 +++ b/Documentation/trace/histograms.txt
 @@ -0,0 +1,186 @@
@@ -221,7 +221,7 @@ index 0000000..6f2aeab
 +
 +These data are also reset when the wakeup histogram is reset.
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 3328cac..514bb5d 100644
+index c2a038d52568..6044cecea4ba 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1579,6 +1579,12 @@ struct task_struct {
@@ -239,7 +239,7 @@ index 3328cac..514bb5d 100644
  	struct memcg_batch_info {
 diff --git a/include/trace/events/hist.h b/include/trace/events/hist.h
 new file mode 100644
-index 0000000..28646db
+index 000000000000..28646db2c775
 --- /dev/null
 +++ b/include/trace/events/hist.h
 @@ -0,0 +1,69 @@
@@ -314,7 +314,7 @@ index 0000000..28646db
 +#include <trace/define_trace.h>
 diff --git a/include/trace/events/latency_hist.h b/include/trace/events/latency_hist.h
 new file mode 100644
-index 0000000..d6b5d77
+index 000000000000..d6b5d77c57aa
 --- /dev/null
 +++ b/include/trace/events/latency_hist.h
 @@ -0,0 +1,30 @@
@@ -349,7 +349,7 @@ index 0000000..d6b5d77
 +#endif /* _LATENCY_HIST_H */
 +
 diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index d9ce3d4..fa8c09b 100644
+index d9ce3d484231..fa8c09b7eb92 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
 @@ -49,6 +49,7 @@
@@ -385,7 +385,7 @@ index d9ce3d4..fa8c09b 100644
  			 * The immediate goal for using the softexpires is
  			 * minimizing wakeups, not running timers at the
 diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
-index 762264d..1e0f12c 100644
+index 762264d17dce..1e0f12c9e61d 100644
 --- a/kernel/trace/Kconfig
 +++ b/kernel/trace/Kconfig
 @@ -192,6 +192,24 @@ config IRQSOFF_TRACER
@@ -514,7 +514,7 @@ index 762264d..1e0f12c 100644
  	bool "Trace process context switches and events"
  	depends on !GENERIC_TRACER
 diff --git a/kernel/trace/Makefile b/kernel/trace/Makefile
-index 5f39a07..108a387 100644
+index 5f39a07fe5ea..108a387e1459 100644
 --- a/kernel/trace/Makefile
 +++ b/kernel/trace/Makefile
 @@ -36,6 +36,10 @@ obj-$(CONFIG_FUNCTION_TRACER) += trace_functions.o
@@ -530,7 +530,7 @@ index 5f39a07..108a387 100644
  obj-$(CONFIG_MMIOTRACE) += trace_mmiotrace.o
 diff --git a/kernel/trace/latency_hist.c b/kernel/trace/latency_hist.c
 new file mode 100644
-index 0000000..9d49fcb
+index 000000000000..9d49fcb8962f
 --- /dev/null
 +++ b/kernel/trace/latency_hist.c
 @@ -0,0 +1,1170 @@
@@ -1705,7 +1705,7 @@ index 0000000..9d49fcb
 +
 +__initcall(latency_hist_init);
 diff --git a/kernel/trace/trace_irqsoff.c b/kernel/trace/trace_irqsoff.c
-index 1626e1a..35882e7 100644
+index 1626e1aee71a..35882e792c2f 100644
 --- a/kernel/trace/trace_irqsoff.c
 +++ b/kernel/trace/trace_irqsoff.c
 @@ -17,6 +17,7 @@
diff --git a/debian/patches/features/all/rt/0072-hwlatdetect.patch.patch b/debian/patches/features/all/rt/0072-hwlatdetect.patch.patch
index b671e84..1ae0282 100644
--- a/debian/patches/features/all/rt/0072-hwlatdetect.patch.patch
+++ b/debian/patches/features/all/rt/0072-hwlatdetect.patch.patch
@@ -1,7 +1,7 @@
 From: Carsten Emde <C.Emde at osadl.org>
 Date: Tue, 19 Jul 2011 13:53:12 +0100
-Subject: [PATCH 072/374] hwlatdetect.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f19600d8d543e25bebf68c3f332bb8155c937291
+Subject: [PATCH 072/380] hwlatdetect.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1c84a5d938f022229dd7b4b0e5200e2f81cb9561
 
 Jon Masters developed this wonderful SMI detector. For details please
 consult Documentation/hwlat_detector.txt. It could be ported to Linux
@@ -20,7 +20,7 @@ Signed-off-by: Carsten Emde <C.Emde at osadl.org>
 
 diff --git a/Documentation/hwlat_detector.txt b/Documentation/hwlat_detector.txt
 new file mode 100644
-index 0000000..cb61516
+index 000000000000..cb61516483d3
 --- /dev/null
 +++ b/Documentation/hwlat_detector.txt
 @@ -0,0 +1,64 @@
@@ -89,7 +89,7 @@ index 0000000..cb61516
 +then we write to a global sample ring buffer of 8K samples, which is
 +consumed by reading from the "sample" (pipe) debugfs file interface.
 diff --git a/MAINTAINERS b/MAINTAINERS
-index 8659eba..35c5c22 100644
+index 8659eba2703d..35c5c22df1a5 100644
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
 @@ -3008,6 +3008,15 @@ L:	linuxppc-dev at lists.ozlabs.org
@@ -109,7 +109,7 @@ index 8659eba..35c5c22 100644
  M:	Jean Delvare <khali at linux-fr.org>
  M:	Guenter Roeck <guenter.roeck at ericsson.com>
 diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
-index f3031a4..1cb530c 100644
+index f3031a4b46d8..1cb530c1bc3c 100644
 --- a/drivers/misc/Kconfig
 +++ b/drivers/misc/Kconfig
 @@ -140,6 +140,35 @@ config IBM_ASM
@@ -149,7 +149,7 @@ index f3031a4..1cb530c 100644
  	tristate "Sensable PHANToM (PCI)"
  	depends on PCI
 diff --git a/drivers/misc/Makefile b/drivers/misc/Makefile
-index b26495a..84c4554 100644
+index b26495a02554..84c45540db3a 100644
 --- a/drivers/misc/Makefile
 +++ b/drivers/misc/Makefile
 @@ -48,3 +48,4 @@ obj-y				+= lis3lv02d/
@@ -159,7 +159,7 @@ index b26495a..84c4554 100644
 +obj-$(CONFIG_HWLAT_DETECTOR)	+= hwlat_detector.o
 diff --git a/drivers/misc/hwlat_detector.c b/drivers/misc/hwlat_detector.c
 new file mode 100644
-index 0000000..b7b7c90
+index 000000000000..b7b7c903f88d
 --- /dev/null
 +++ b/drivers/misc/hwlat_detector.c
 @@ -0,0 +1,1212 @@
diff --git a/debian/patches/features/all/rt/0073-localversion.patch.patch b/debian/patches/features/all/rt/0073-localversion.patch.patch
index 74ba056..bf5441e 100644
--- a/debian/patches/features/all/rt/0073-localversion.patch.patch
+++ b/debian/patches/features/all/rt/0073-localversion.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 8 Jul 2011 20:25:16 +0200
-Subject: [PATCH 073/374] localversion.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=543971f515da43695b47f48a01807728b19f773d
+Subject: [PATCH 073/380] localversion.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=82bb0815d028d6c09bf79f0bb9dfd014fe6c660c
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
@@ -13,7 +13,7 @@ Link: http://lkml.kernel.org/n/tip-8vdw4bfcsds27cvox6rpb334@git.kernel.org
 
 diff --git a/localversion-rt b/localversion-rt
 new file mode 100644
-index 0000000..b2111a2
+index 000000000000..b2111a212663
 --- /dev/null
 +++ b/localversion-rt
 @@ -0,0 +1 @@
diff --git a/debian/patches/features/all/rt/0074-early-printk-consolidate.patch.patch b/debian/patches/features/all/rt/0074-early-printk-consolidate.patch.patch
index e6e765d..37d7a53 100644
--- a/debian/patches/features/all/rt/0074-early-printk-consolidate.patch.patch
+++ b/debian/patches/features/all/rt/0074-early-printk-consolidate.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 23 Jul 2011 11:04:08 +0200
-Subject: [PATCH 074/374] early-printk-consolidate.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2bc7b4b995b1d5a5e504d59877632bc0b567fa3a
+Subject: [PATCH 074/380] early-printk-consolidate.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2d37d1b4ec629c61a6bd4f9c2378903bf72d1f31
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -23,7 +23,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  15 files changed, 62 insertions(+), 110 deletions(-)
 
 diff --git a/arch/arm/kernel/early_printk.c b/arch/arm/kernel/early_printk.c
-index 85aa2b2..4307653 100644
+index 85aa2b292692..43076536965c 100644
 --- a/arch/arm/kernel/early_printk.c
 +++ b/arch/arm/kernel/early_printk.c
 @@ -29,28 +29,17 @@ static void early_console_write(struct console *con, const char *s, unsigned n)
@@ -59,7 +59,7 @@ index 85aa2b2..4307653 100644
  }
  
 diff --git a/arch/blackfin/kernel/early_printk.c b/arch/blackfin/kernel/early_printk.c
-index 84ed837..61fbd2d 100644
+index 84ed8375113c..61fbd2de993d 100644
 --- a/arch/blackfin/kernel/early_printk.c
 +++ b/arch/blackfin/kernel/early_printk.c
 @@ -25,8 +25,6 @@ extern struct console *bfin_earlyserial_init(unsigned int port,
@@ -72,7 +72,7 @@ index 84ed837..61fbd2d 100644
  #define DEFAULT_PORT 0
  #define DEFAULT_CFLAG CS8|B57600
 diff --git a/arch/microblaze/kernel/early_printk.c b/arch/microblaze/kernel/early_printk.c
-index d26d92d..0420624 100644
+index d26d92d47754..04206249fb0d 100644
 --- a/arch/microblaze/kernel/early_printk.c
 +++ b/arch/microblaze/kernel/early_printk.c
 @@ -21,7 +21,6 @@
@@ -142,7 +142,7 @@ index d26d92d..0420624 100644
 +	early_console = NULL;
  }
 diff --git a/arch/mips/kernel/early_printk.c b/arch/mips/kernel/early_printk.c
-index 9ae813e..973c995 100644
+index 9ae813eb782e..973c995c0a86 100644
 --- a/arch/mips/kernel/early_printk.c
 +++ b/arch/mips/kernel/early_printk.c
 @@ -25,20 +25,18 @@ early_console_write(struct console *con, const char *s, unsigned n)
@@ -171,7 +171,7 @@ index 9ae813e..973c995 100644
 +	register_console(&early_console_prom);
  }
 diff --git a/arch/powerpc/kernel/udbg.c b/arch/powerpc/kernel/udbg.c
-index 57fa2c0..1b9174d 100644
+index 57fa2c0a531c..1b9174d96dcc 100644
 --- a/arch/powerpc/kernel/udbg.c
 +++ b/arch/powerpc/kernel/udbg.c
 @@ -182,15 +182,13 @@ static struct console udbg_console = {
@@ -201,7 +201,7 @@ index 57fa2c0..1b9174d 100644
  }
  
 diff --git a/arch/sh/kernel/sh_bios.c b/arch/sh/kernel/sh_bios.c
-index 47475cc..a5b51b9 100644
+index 47475cca068a..a5b51b9d7338 100644
 --- a/arch/sh/kernel/sh_bios.c
 +++ b/arch/sh/kernel/sh_bios.c
 @@ -144,8 +144,6 @@ static struct console bios_console = {
@@ -214,7 +214,7 @@ index 47475cc..a5b51b9 100644
  {
  	int keep_early = 0;
 diff --git a/arch/sparc/kernel/setup_32.c b/arch/sparc/kernel/setup_32.c
-index fe1e3fc..e6475f0 100644
+index fe1e3fc31bc5..e6475f03231d 100644
 --- a/arch/sparc/kernel/setup_32.c
 +++ b/arch/sparc/kernel/setup_32.c
 @@ -221,6 +221,7 @@ void __init setup_arch(char **cmdline_p)
@@ -226,7 +226,7 @@ index fe1e3fc..e6475f0 100644
  
  	/* Set sparc_cpu_model */
 diff --git a/arch/sparc/kernel/setup_64.c b/arch/sparc/kernel/setup_64.c
-index a854a1c..b85d039 100644
+index a854a1c240ff..b85d039678af 100644
 --- a/arch/sparc/kernel/setup_64.c
 +++ b/arch/sparc/kernel/setup_64.c
 @@ -487,6 +487,12 @@ static void __init init_sparc64_elf_hwcap(void)
@@ -252,7 +252,7 @@ index a854a1c..b85d039 100644
  	if (tlb_type == hypervisor)
  		printk("ARCH: SUN4V\n");
 diff --git a/arch/tile/kernel/early_printk.c b/arch/tile/kernel/early_printk.c
-index 493a0e6..ba2ac00 100644
+index 493a0e66d916..ba2ac0028f2e 100644
 --- a/arch/tile/kernel/early_printk.c
 +++ b/arch/tile/kernel/early_printk.c
 @@ -32,25 +32,8 @@ static struct console early_hv_console = {
@@ -322,7 +322,7 @@ index 493a0e6..ba2ac00 100644
  	early_printk("\
  Machine shutting down before console output is fully initialized.\n\
 diff --git a/arch/um/kernel/early_printk.c b/arch/um/kernel/early_printk.c
-index ec649bf..183060f 100644
+index ec649bf72f68..183060f76a11 100644
 --- a/arch/um/kernel/early_printk.c
 +++ b/arch/um/kernel/early_printk.c
 @@ -16,7 +16,7 @@ static void early_console_write(struct console *con, const char *s, unsigned int
@@ -348,7 +348,7 @@ index ec649bf..183060f 100644
  }
  
 diff --git a/arch/unicore32/kernel/early_printk.c b/arch/unicore32/kernel/early_printk.c
-index 3922255..9be0d5d 100644
+index 3922255f1fa8..9be0d5d02a9a 100644
 --- a/arch/unicore32/kernel/early_printk.c
 +++ b/arch/unicore32/kernel/early_printk.c
 @@ -33,21 +33,17 @@ static struct console early_ocd_console = {
@@ -378,7 +378,7 @@ index 3922255..9be0d5d 100644
  	if (keep_early)
  		early_console->flags &= ~CON_BOOT;
 diff --git a/arch/x86/kernel/early_printk.c b/arch/x86/kernel/early_printk.c
-index cd28a35..5f3d9c5 100644
+index cd28a350f7f9..5f3d9c5e89c7 100644
 --- a/arch/x86/kernel/early_printk.c
 +++ b/arch/x86/kernel/early_printk.c
 @@ -169,25 +169,9 @@ static struct console early_serial_console = {
@@ -420,7 +420,7 @@ index cd28a35..5f3d9c5 100644
  	keep = (strstr(buf, "keep") != NULL);
  
 diff --git a/include/linux/console.h b/include/linux/console.h
-index 6ae6a15..5695804 100644
+index 6ae6a15eb95c..569580424f67 100644
 --- a/include/linux/console.h
 +++ b/include/linux/console.h
 @@ -135,6 +135,7 @@ struct console {
@@ -432,12 +432,12 @@ index 6ae6a15..5695804 100644
  extern int add_preferred_console(char *name, int idx, char *options);
  extern int update_console_cmdline(char *name, int idx, char *name_new, int idx_new, char *options);
 diff --git a/include/linux/printk.h b/include/linux/printk.h
-index f0e22f7..be10455 100644
+index 13abc065e718..00ca460ec3f4 100644
 --- a/include/linux/printk.h
 +++ b/include/linux/printk.h
-@@ -88,8 +88,13 @@ int no_printk(const char *fmt, ...)
- 	return 0;
- }
+@@ -88,8 +88,13 @@ do {						\
+ 		printk(fmt, ##__VA_ARGS__);	\
+ } while (0)
  
 +#ifdef CONFIG_EARLY_PRINTK
  extern asmlinkage __printf(1, 2)
@@ -450,7 +450,7 @@ index f0e22f7..be10455 100644
  extern int printk_needs_cpu(int cpu);
  extern void printk_tick(void);
 diff --git a/kernel/printk.c b/kernel/printk.c
-index c073f43..4915f43 100644
+index c073f4395a05..4915f4305cea 100644
 --- a/kernel/printk.c
 +++ b/kernel/printk.c
 @@ -44,13 +44,6 @@
diff --git a/debian/patches/features/all/rt/0075-printk-kill.patch.patch b/debian/patches/features/all/rt/0075-printk-kill.patch.patch
index 81ab9e6..ed8998c 100644
--- a/debian/patches/features/all/rt/0075-printk-kill.patch.patch
+++ b/debian/patches/features/all/rt/0075-printk-kill.patch.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 22 Jul 2011 17:58:40 +0200
-Subject: [PATCH 075/374] printk-kill.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bed99f5962d5e4d18bbca7154a67023d62f18ed0
+Subject: [PATCH 075/380] printk-kill.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8e31e0d6f2c32ac446110604223969b7b1714006
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,10 +11,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 48 insertions(+), 3 deletions(-)
 
 diff --git a/include/linux/printk.h b/include/linux/printk.h
-index be10455..a53adf6 100644
+index 00ca460ec3f4..7217963ba8cd 100644
 --- a/include/linux/printk.h
 +++ b/include/linux/printk.h
-@@ -91,9 +91,11 @@ int no_printk(const char *fmt, ...)
+@@ -91,9 +91,11 @@ do {						\
  #ifdef CONFIG_EARLY_PRINTK
  extern asmlinkage __printf(1, 2)
  void early_printk(const char *fmt, ...);
@@ -35,7 +35,7 @@ index be10455..a53adf6 100644
  extern int dmesg_restrict;
  extern int kptr_restrict;
 diff --git a/kernel/printk.c b/kernel/printk.c
-index 4915f43..1ef1226 100644
+index 4915f4305cea..1ef12269b985 100644
 --- a/kernel/printk.c
 +++ b/kernel/printk.c
 @@ -532,6 +532,32 @@ asmlinkage void early_printk(const char *fmt, ...)
@@ -86,7 +86,7 @@ index 4915f43..1ef1226 100644
  	printk_delay();
  
 diff --git a/kernel/watchdog.c b/kernel/watchdog.c
-index a8bc4d9..7016b38 100644
+index a8bc4d94e06d..7016b38b6da7 100644
 --- a/kernel/watchdog.c
 +++ b/kernel/watchdog.c
 @@ -201,6 +201,8 @@ static int is_softlockup(unsigned long touch_ts)
diff --git a/debian/patches/features/all/rt/0076-printk-force_early_printk-boot-param-to-help-with-de.patch b/debian/patches/features/all/rt/0076-printk-force_early_printk-boot-param-to-help-with-de.patch
index 9a68f37..97d754f 100644
--- a/debian/patches/features/all/rt/0076-printk-force_early_printk-boot-param-to-help-with-de.patch
+++ b/debian/patches/features/all/rt/0076-printk-force_early_printk-boot-param-to-help-with-de.patch
@@ -1,8 +1,8 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Fri, 2 Sep 2011 14:29:33 +0200
-Subject: [PATCH 076/374] printk: 'force_early_printk' boot param to help with
+Subject: [PATCH 076/380] printk: 'force_early_printk' boot param to help with
  debugging
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=cb4307c71ac2ad94a3b7a4a9b424a954d2b7ab12
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c753be7b1794d9fd5f456b2dac158cddc5c0113c
 
 Gives me an option to screw printk and actually see what the machine
 says.
@@ -16,7 +16,7 @@ Link: http://lkml.kernel.org/n/tip-ykb97nsfmobq44xketrxs977@git.kernel.org
  1 file changed, 7 insertions(+)
 
 diff --git a/kernel/printk.c b/kernel/printk.c
-index 1ef1226..6545c60 100644
+index 1ef12269b985..6545c602fa04 100644
 --- a/kernel/printk.c
 +++ b/kernel/printk.c
 @@ -541,6 +541,13 @@ asmlinkage void early_printk(const char *fmt, ...)
diff --git a/debian/patches/features/all/rt/0077-rt-preempt-base-config.patch.patch b/debian/patches/features/all/rt/0077-rt-preempt-base-config.patch.patch
index 2a14563..65d849c 100644
--- a/debian/patches/features/all/rt/0077-rt-preempt-base-config.patch.patch
+++ b/debian/patches/features/all/rt/0077-rt-preempt-base-config.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 17 Jun 2011 12:39:57 +0200
-Subject: [PATCH 077/374] rt-preempt-base-config.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=540b1fff9d310790ab78c6205669b6f78b4cd4a4
+Subject: [PATCH 077/380] rt-preempt-base-config.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a306eaefb3620c0176e569232cdf5d6e9103a042
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 17 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt
-index 24e7cb0..35c6f20 100644
+index 24e7cb0ba26a..35c6f2011e6b 100644
 --- a/kernel/Kconfig.preempt
 +++ b/kernel/Kconfig.preempt
 @@ -1,3 +1,10 @@
diff --git a/debian/patches/features/all/rt/0078-bug-BUG_ON-WARN_ON-variants-dependend-on-RT-RT.patch b/debian/patches/features/all/rt/0078-bug-BUG_ON-WARN_ON-variants-dependend-on-RT-RT.patch
index 1e17d43..c912641 100644
--- a/debian/patches/features/all/rt/0078-bug-BUG_ON-WARN_ON-variants-dependend-on-RT-RT.patch
+++ b/debian/patches/features/all/rt/0078-bug-BUG_ON-WARN_ON-variants-dependend-on-RT-RT.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:58 -0500
-Subject: [PATCH 078/374] bug: BUG_ON/WARN_ON variants dependend on RT/!RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=aa4f7ae96cf461596ac3ec062c2ccbe1f56f1c0f
+Subject: [PATCH 078/380] bug: BUG_ON/WARN_ON variants dependend on RT/!RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=940fe468ffd418c2698d58f8dce4d8ef2ead07ea
 
 Signed-off-by: Ingo Molnar <mingo at elte.hu>
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 18 insertions(+)
 
 diff --git a/include/asm-generic/bug.h b/include/asm-generic/bug.h
-index 84458b0..97c1eaf 100644
+index 84458b0c38d1..97c1eafe24c3 100644
 --- a/include/asm-generic/bug.h
 +++ b/include/asm-generic/bug.h
 @@ -3,6 +3,10 @@
diff --git a/debian/patches/features/all/rt/0079-rt-local_irq_-variants-depending-on-RT-RT.patch b/debian/patches/features/all/rt/0079-rt-local_irq_-variants-depending-on-RT-RT.patch
index 74ed1ce..e5d858d 100644
--- a/debian/patches/features/all/rt/0079-rt-local_irq_-variants-depending-on-RT-RT.patch
+++ b/debian/patches/features/all/rt/0079-rt-local_irq_-variants-depending-on-RT-RT.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 21 Jul 2009 22:34:14 +0200
-Subject: [PATCH 079/374] rt: local_irq_* variants depending on RT/!RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c60e735118555816bd5b6b56a3edb5df070d1dfa
+Subject: [PATCH 079/380] rt: local_irq_* variants depending on RT/!RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c560bff51f89465874dedd836908b672cbfcdf38
 
 Add local_irq_*_(no)rt variant which are mainly used to break
 interrupt disabled sections on PREEMPT_RT or to explicitely disable
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 20 insertions(+), 1 deletion(-)
 
 diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index 21b94de..ddd6b2a 100644
+index 21b94de06788..ddd6b2a5a42e 100644
 --- a/include/linux/interrupt.h
 +++ b/include/linux/interrupt.h
 @@ -219,7 +219,7 @@ extern void devm_free_irq(struct device *dev, unsigned int irq, void *dev_id);
@@ -27,7 +27,7 @@ index 21b94de..ddd6b2a 100644
  
  extern void disable_irq_nosync(unsigned int irq);
 diff --git a/include/linux/irqflags.h b/include/linux/irqflags.h
-index d176d65..37b13c4 100644
+index d176d658fe25..37b13c41a12a 100644
 --- a/include/linux/irqflags.h
 +++ b/include/linux/irqflags.h
 @@ -147,4 +147,23 @@
diff --git a/debian/patches/features/all/rt/0080-preempt-Provide-preempt_-_-no-rt-variants.patch b/debian/patches/features/all/rt/0080-preempt-Provide-preempt_-_-no-rt-variants.patch
index e6f2518..ccbffd3 100644
--- a/debian/patches/features/all/rt/0080-preempt-Provide-preempt_-_-no-rt-variants.patch
+++ b/debian/patches/features/all/rt/0080-preempt-Provide-preempt_-_-no-rt-variants.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 24 Jul 2009 12:38:56 +0200
-Subject: [PATCH 080/374] preempt: Provide preempt_*_(no)rt variants
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=99ae7fe3c661d1e2e54a9339bb8e37ea20fabfad
+Subject: [PATCH 080/380] preempt: Provide preempt_*_(no)rt variants
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=993a55736f919bf02d9f80918a658bbe60ef0c75
 
 RT needs a few preempt_disable/enable points which are not necessary
 otherwise. Implement variants to avoid #ifdeffery.
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 18 insertions(+), 2 deletions(-)
 
 diff --git a/include/linux/preempt.h b/include/linux/preempt.h
-index 281f0ff..d58f158 100644
+index 281f0ffbab67..d58f1585fef8 100644
 --- a/include/linux/preempt.h
 +++ b/include/linux/preempt.h
 @@ -54,11 +54,15 @@ do { \
diff --git a/debian/patches/features/all/rt/0081-ata-Do-not-disable-interrupts-in-ide-code-for-preemp.patch b/debian/patches/features/all/rt/0081-ata-Do-not-disable-interrupts-in-ide-code-for-preemp.patch
index 2f4535e..1575ab0 100644
--- a/debian/patches/features/all/rt/0081-ata-Do-not-disable-interrupts-in-ide-code-for-preemp.patch
+++ b/debian/patches/features/all/rt/0081-ata-Do-not-disable-interrupts-in-ide-code-for-preemp.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <srostedt at redhat.com>
 Date: Fri, 3 Jul 2009 08:44:29 -0500
-Subject: [PATCH 081/374] ata: Do not disable interrupts in ide code for
+Subject: [PATCH 081/380] ata: Do not disable interrupts in ide code for
  preempt-rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=948b763ea2517b217dc2408c6d0e74dd42f3f77f
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9df08bc53de6023a1078d508f914abec6a922b39
 
 Use the local_irq_*_nort variants.
 
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 6 insertions(+), 6 deletions(-)
 
 diff --git a/drivers/ata/libata-sff.c b/drivers/ata/libata-sff.c
-index 22edc92..e73dc2d 100644
+index 22edc9271a3a..e73dc2d6ae88 100644
 --- a/drivers/ata/libata-sff.c
 +++ b/drivers/ata/libata-sff.c
 @@ -678,9 +678,9 @@ unsigned int ata_sff_data_xfer_noirq(struct ata_device *dev, unsigned char *buf,
diff --git a/debian/patches/features/all/rt/0082-ide-Do-not-disable-interrupts-for-PREEMPT-RT.patch b/debian/patches/features/all/rt/0082-ide-Do-not-disable-interrupts-for-PREEMPT-RT.patch
index 9c57a75..5ec0858 100644
--- a/debian/patches/features/all/rt/0082-ide-Do-not-disable-interrupts-for-PREEMPT-RT.patch
+++ b/debian/patches/features/all/rt/0082-ide-Do-not-disable-interrupts-for-PREEMPT-RT.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:16 -0500
-Subject: [PATCH 082/374] ide: Do not disable interrupts for PREEMPT-RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8159ec6df0ecd7de9c68198a26df235843da6185
+Subject: [PATCH 082/380] ide: Do not disable interrupts for PREEMPT-RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d4cf54294d139a6580192fadc242a9b282702dd7
 
 Use the local_irq_*_nort variants.
 
@@ -18,7 +18,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  7 files changed, 16 insertions(+), 16 deletions(-)
 
 diff --git a/drivers/ide/alim15x3.c b/drivers/ide/alim15x3.c
-index 2c8016a..6fd6037 100644
+index 2c8016ad0e26..6fd6037741b1 100644
 --- a/drivers/ide/alim15x3.c
 +++ b/drivers/ide/alim15x3.c
 @@ -234,7 +234,7 @@ static int init_chipset_ali15x3(struct pci_dev *dev)
@@ -40,7 +40,7 @@ index 2c8016a..6fd6037 100644
  }
  
 diff --git a/drivers/ide/hpt366.c b/drivers/ide/hpt366.c
-index 58c51cd..d2a4059 100644
+index 58c51cddc100..d2a40595b334 100644
 --- a/drivers/ide/hpt366.c
 +++ b/drivers/ide/hpt366.c
 @@ -1241,7 +1241,7 @@ static int __devinit init_dma_hpt366(ide_hwif_t *hwif,
@@ -62,7 +62,7 @@ index 58c51cd..d2a4059 100644
  	printk(KERN_INFO "    %s: BM-DMA at 0x%04lx-0x%04lx\n",
  			 hwif->name, base, base + 7);
 diff --git a/drivers/ide/ide-io-std.c b/drivers/ide/ide-io-std.c
-index 1976397..4169433 100644
+index 19763977568c..4169433faab5 100644
 --- a/drivers/ide/ide-io-std.c
 +++ b/drivers/ide/ide-io-std.c
 @@ -175,7 +175,7 @@ void ide_input_data(ide_drive_t *drive, struct ide_cmd *cmd, void *buf,
@@ -102,7 +102,7 @@ index 1976397..4169433 100644
  		if (((len + 1) & 3) < 2)
  			return;
 diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c
-index 177db6d..079ae6b 100644
+index 177db6d5b2f5..079ae6bebf18 100644
 --- a/drivers/ide/ide-io.c
 +++ b/drivers/ide/ide-io.c
 @@ -659,7 +659,7 @@ void ide_timer_expiry (unsigned long data)
@@ -115,7 +115,7 @@ index 177db6d..079ae6b 100644
  			startstop = handler(drive);
  		} else if (drive_is_ready(drive)) {
 diff --git a/drivers/ide/ide-iops.c b/drivers/ide/ide-iops.c
-index 376f2dc..f014dd1 100644
+index 376f2dc410c5..f014dd1b73dc 100644
 --- a/drivers/ide/ide-iops.c
 +++ b/drivers/ide/ide-iops.c
 @@ -129,12 +129,12 @@ int __ide_wait_stat(ide_drive_t *drive, u8 good, u8 bad,
@@ -134,7 +134,7 @@ index 376f2dc..f014dd1 100644
  	/*
  	 * Allow status to settle, then read it again.
 diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c
-index 068cef0..38e69e1 100644
+index 068cef0a987a..38e69e1793d8 100644
 --- a/drivers/ide/ide-probe.c
 +++ b/drivers/ide/ide-probe.c
 @@ -196,10 +196,10 @@ static void do_identify(ide_drive_t *drive, u8 cmd, u16 *id)
@@ -151,7 +151,7 @@ index 068cef0..38e69e1 100644
  	drive->dev_flags |= IDE_DFLAG_ID_READ;
  #ifdef DEBUG
 diff --git a/drivers/ide/ide-taskfile.c b/drivers/ide/ide-taskfile.c
-index 5bc2839..da861a6 100644
+index 5bc2839ebcfd..da861a680f09 100644
 --- a/drivers/ide/ide-taskfile.c
 +++ b/drivers/ide/ide-taskfile.c
 @@ -251,7 +251,7 @@ void ide_pio_bytes(ide_drive_t *drive, struct ide_cmd *cmd,
diff --git a/debian/patches/features/all/rt/0083-infiniband-Mellanox-IB-driver-patch-use-_nort-primit.patch b/debian/patches/features/all/rt/0083-infiniband-Mellanox-IB-driver-patch-use-_nort-primit.patch
index 1778c57..b8a34b2 100644
--- a/debian/patches/features/all/rt/0083-infiniband-Mellanox-IB-driver-patch-use-_nort-primit.patch
+++ b/debian/patches/features/all/rt/0083-infiniband-Mellanox-IB-driver-patch-use-_nort-primit.patch
@@ -1,8 +1,8 @@
 From: Sven-Thorsten Dietrich <sdietrich at novell.com>
 Date: Fri, 3 Jul 2009 08:30:35 -0500
-Subject: [PATCH 083/374] infiniband: Mellanox IB driver patch use _nort()
+Subject: [PATCH 083/380] infiniband: Mellanox IB driver patch use _nort()
  primitives
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1f31697a01f1f4550cc0993d869b15cbeb4b394a
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=96e6bcf85dc3c4c8b98de0a4a96c73d228d553eb
 
 Fixes in_atomic stack-dump, when Mellanox module is loaded into the RT
 Kernel.
@@ -20,7 +20,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/drivers/infiniband/ulp/ipoib/ipoib_multicast.c b/drivers/infiniband/ulp/ipoib/ipoib_multicast.c
-index 80799c0..014589a8 100644
+index 80799c0ee767..014589a86aad 100644
 --- a/drivers/infiniband/ulp/ipoib/ipoib_multicast.c
 +++ b/drivers/infiniband/ulp/ipoib/ipoib_multicast.c
 @@ -800,7 +800,7 @@ void ipoib_mcast_restart_task(struct work_struct *work)
diff --git a/debian/patches/features/all/rt/0084-input-gameport-Do-not-disable-interrupts-on-PREEMPT_.patch b/debian/patches/features/all/rt/0084-input-gameport-Do-not-disable-interrupts-on-PREEMPT_.patch
index fdb8ce8..2117f2a 100644
--- a/debian/patches/features/all/rt/0084-input-gameport-Do-not-disable-interrupts-on-PREEMPT_.patch
+++ b/debian/patches/features/all/rt/0084-input-gameport-Do-not-disable-interrupts-on-PREEMPT_.patch
@@ -1,8 +1,8 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:16 -0500
-Subject: [PATCH 084/374] input: gameport: Do not disable interrupts on
+Subject: [PATCH 084/380] input: gameport: Do not disable interrupts on
  PREEMPT_RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c6b3c2c6e279d0dff0dccb61e6b29229bf415e29
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9019dca27d6331a115087584ca21bd086e79d1ff
 
 Use the _nort() primitives.
 
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/drivers/input/gameport/gameport.c b/drivers/input/gameport/gameport.c
-index c351aa4..1ecaf60 100644
+index c351aa421f8f..1ecaf60a564e 100644
 --- a/drivers/input/gameport/gameport.c
 +++ b/drivers/input/gameport/gameport.c
 @@ -87,12 +87,12 @@ static int gameport_measure_speed(struct gameport *gameport)
diff --git a/debian/patches/features/all/rt/0085-acpi-Do-not-disable-interrupts-on-PREEMPT_RT.patch b/debian/patches/features/all/rt/0085-acpi-Do-not-disable-interrupts-on-PREEMPT_RT.patch
index b5410a9..0fe6761 100644
--- a/debian/patches/features/all/rt/0085-acpi-Do-not-disable-interrupts-on-PREEMPT_RT.patch
+++ b/debian/patches/features/all/rt/0085-acpi-Do-not-disable-interrupts-on-PREEMPT_RT.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 21 Jul 2009 22:54:51 +0200
-Subject: [PATCH 085/374] acpi: Do not disable interrupts on PREEMPT_RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7bbf71a65b2d2621214a8377c71e0e9e75abc27e
+Subject: [PATCH 085/380] acpi: Do not disable interrupts on PREEMPT_RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=89ec8b696932812a172bbeafbf8f41748d1c979c
 
 Use the local_irq_*_nort() variants.
 
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/arch/x86/include/asm/acpi.h b/arch/x86/include/asm/acpi.h
-index 610001d..c1c23d2 100644
+index 610001d385dd..c1c23d256ac6 100644
 --- a/arch/x86/include/asm/acpi.h
 +++ b/arch/x86/include/asm/acpi.h
 @@ -51,8 +51,8 @@
diff --git a/debian/patches/features/all/rt/0086-core-Do-not-disable-interrupts-on-RT-in-kernel-users.patch b/debian/patches/features/all/rt/0086-core-Do-not-disable-interrupts-on-RT-in-kernel-users.patch
index 5e33532..b26f12b 100644
--- a/debian/patches/features/all/rt/0086-core-Do-not-disable-interrupts-on-RT-in-kernel-users.patch
+++ b/debian/patches/features/all/rt/0086-core-Do-not-disable-interrupts-on-RT-in-kernel-users.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 21 Jul 2009 23:06:05 +0200
-Subject: [PATCH 086/374] core: Do not disable interrupts on RT in
+Subject: [PATCH 086/380] core: Do not disable interrupts on RT in
  kernel/users.c
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=732909cc0a1c07a16fbd2365e713d3f091daa2c1
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d5226e1c035d9c064f45e067c4281bcae01f2504
 
 Use the local_irq_*_nort variants to reduce latencies in RT. The code
 is serialized by the locks. No need to disable interrupts.
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/user.c b/kernel/user.c
-index 71dd236..b831e51 100644
+index 71dd2363ab0f..b831e51c3489 100644
 --- a/kernel/user.c
 +++ b/kernel/user.c
 @@ -129,11 +129,11 @@ void free_uid(struct user_struct *up)
diff --git a/debian/patches/features/all/rt/0087-core-Do-not-disable-interrupts-on-RT-in-res_counter..patch b/debian/patches/features/all/rt/0087-core-Do-not-disable-interrupts-on-RT-in-res_counter..patch
index 8ed4117..6edc923 100644
--- a/debian/patches/features/all/rt/0087-core-Do-not-disable-interrupts-on-RT-in-res_counter..patch
+++ b/debian/patches/features/all/rt/0087-core-Do-not-disable-interrupts-on-RT-in-res_counter..patch
@@ -1,8 +1,8 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:44:33 -0500
-Subject: [PATCH 087/374] core: Do not disable interrupts on RT in
+Subject: [PATCH 087/380] core: Do not disable interrupts on RT in
  res_counter.c
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=36c63b27f754fe996bdf53e1ebb28b73f30f4738
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bc05d1920d2258aa6ad9b2d310cdf32999f86984
 
 Frederic Weisbecker reported this warning:
 
@@ -48,7 +48,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/kernel/res_counter.c b/kernel/res_counter.c
-index 34683ef..21e9ec4 100644
+index 34683efa2cce..21e9ec4a96cf 100644
 --- a/kernel/res_counter.c
 +++ b/kernel/res_counter.c
 @@ -43,7 +43,7 @@ int res_counter_charge(struct res_counter *counter, unsigned long val,
diff --git a/debian/patches/features/all/rt/0088-usb-Use-local_irq_-_nort-variants.patch b/debian/patches/features/all/rt/0088-usb-Use-local_irq_-_nort-variants.patch
index b00d955..0f4198a 100644
--- a/debian/patches/features/all/rt/0088-usb-Use-local_irq_-_nort-variants.patch
+++ b/debian/patches/features/all/rt/0088-usb-Use-local_irq_-_nort-variants.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <srostedt at redhat.com>
 Date: Fri, 3 Jul 2009 08:44:26 -0500
-Subject: [PATCH 088/374] usb: Use local_irq_*_nort() variants
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=99ba64d8b465b5edf755f3c2efc0c7c4605e9696
+Subject: [PATCH 088/380] usb: Use local_irq_*_nort() variants
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7e50b6b9fbad4c39758c0a568cee0c42720b110d
 
 [ tglx: Now that irqf_disabled is dead we should kill that ]
 
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c
-index eb2c3bd..9e9fc4e 100644
+index eb2c3bd28db0..9e9fc4e9168d 100644
 --- a/drivers/usb/core/hcd.c
 +++ b/drivers/usb/core/hcd.c
 @@ -2145,7 +2145,7 @@ irqreturn_t usb_hcd_irq (int irq, void *__hcd)
diff --git a/debian/patches/features/all/rt/0089-tty-Do-not-disable-interrupts-in-put_ldisc-on-rt.patch b/debian/patches/features/all/rt/0089-tty-Do-not-disable-interrupts-in-put_ldisc-on-rt.patch
index baf24ba..7b5b6f1 100644
--- a/debian/patches/features/all/rt/0089-tty-Do-not-disable-interrupts-in-put_ldisc-on-rt.patch
+++ b/debian/patches/features/all/rt/0089-tty-Do-not-disable-interrupts-in-put_ldisc-on-rt.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 17 Aug 2009 19:49:19 +0200
-Subject: [PATCH 089/374] tty: Do not disable interrupts in put_ldisc on -rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=91fc35eaf3bcc2d989223f5f8d06878408bffbcc
+Subject: [PATCH 089/380] tty: Do not disable interrupts in put_ldisc on -rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4063bc1de4acd4b4385bd5e244631b8fae363418
 
 Fixes the following on PREEMPT_RT:
 
@@ -26,7 +26,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/drivers/tty/tty_ldisc.c b/drivers/tty/tty_ldisc.c
-index 8e0924f..820f7dc 100644
+index 8e0924f55446..820f7dc90061 100644
 --- a/drivers/tty/tty_ldisc.c
 +++ b/drivers/tty/tty_ldisc.c
 @@ -71,7 +71,7 @@ static void put_ldisc(struct tty_ldisc *ld)
diff --git a/debian/patches/features/all/rt/0090-mm-scatterlist-dont-disable-irqs-on-RT.patch b/debian/patches/features/all/rt/0090-mm-scatterlist-dont-disable-irqs-on-RT.patch
index bf3e452..4f4ef99 100644
--- a/debian/patches/features/all/rt/0090-mm-scatterlist-dont-disable-irqs-on-RT.patch
+++ b/debian/patches/features/all/rt/0090-mm-scatterlist-dont-disable-irqs-on-RT.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 3 Jul 2009 08:44:34 -0500
-Subject: [PATCH 090/374] mm: scatterlist dont disable irqs on RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0348a87989c7b5c71f21c9e49e2dcdd466219ad2
+Subject: [PATCH 090/380] mm: scatterlist dont disable irqs on RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9dc1e0e8bc6ee5d5fa49df8027c574c4920643b7
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/lib/scatterlist.c b/lib/scatterlist.c
-index 2ffcb3c..7a594cd 100644
+index 2ffcb3c601ea..7a594cded867 100644
 --- a/lib/scatterlist.c
 +++ b/lib/scatterlist.c
 @@ -424,7 +424,7 @@ void sg_miter_stop(struct sg_mapping_iter *miter)
diff --git a/debian/patches/features/all/rt/0091-signal-fix-up-rcu-wreckage.patch.patch b/debian/patches/features/all/rt/0091-signal-fix-up-rcu-wreckage.patch.patch
index ece1328..9c99572 100644
--- a/debian/patches/features/all/rt/0091-signal-fix-up-rcu-wreckage.patch.patch
+++ b/debian/patches/features/all/rt/0091-signal-fix-up-rcu-wreckage.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 22 Jul 2011 08:07:08 +0200
-Subject: [PATCH 091/374] signal-fix-up-rcu-wreckage.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=cede735942d6b80357f8321f42f5fe3ba4789e8e
+Subject: [PATCH 091/380] signal-fix-up-rcu-wreckage.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e6215b453fca9a0370a70a3e1877e9c56c51f78b
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/kernel/signal.c b/kernel/signal.c
-index 3a41c81..459df74 100644
+index 3a41c81b4403..459df74a154d 100644
 --- a/kernel/signal.c
 +++ b/kernel/signal.c
 @@ -1360,12 +1360,12 @@ struct sighand_struct *__lock_task_sighand(struct task_struct *tsk,
diff --git a/debian/patches/features/all/rt/0092-net-wireless-warn-nort.patch.patch b/debian/patches/features/all/rt/0092-net-wireless-warn-nort.patch.patch
index a3a95e6..876990f 100644
--- a/debian/patches/features/all/rt/0092-net-wireless-warn-nort.patch.patch
+++ b/debian/patches/features/all/rt/0092-net-wireless-warn-nort.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 21 Jul 2011 21:05:33 +0200
-Subject: [PATCH 092/374] net-wireless-warn-nort.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4532291b757c51efc8c5ad49f4f9066ba5d1c2d0
+Subject: [PATCH 092/380] net-wireless-warn-nort.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a7b985de83e609935e8e9f261e71a324e5b90628
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
-index 7c53eff..bedade3 100644
+index 7c53effb6eda..bedade3ddd05 100644
 --- a/net/mac80211/rx.c
 +++ b/net/mac80211/rx.c
 @@ -3017,7 +3017,7 @@ void ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb)
diff --git a/debian/patches/features/all/rt/0093-mm-Replace-cgroup_page-bit-spinlock.patch b/debian/patches/features/all/rt/0093-mm-Replace-cgroup_page-bit-spinlock.patch
index ebf9628..e0d8a82 100644
--- a/debian/patches/features/all/rt/0093-mm-Replace-cgroup_page-bit-spinlock.patch
+++ b/debian/patches/features/all/rt/0093-mm-Replace-cgroup_page-bit-spinlock.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 19 Aug 2009 09:56:42 +0200
-Subject: [PATCH 093/374] mm: Replace cgroup_page bit spinlock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1f0c0063c5756088e17c98dac3cbb15389d3c350
+Subject: [PATCH 093/380] mm: Replace cgroup_page bit spinlock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=83ad4e785be485d3cc4586d708022008f6272703
 
 Bit spinlocks are not working on RT. Replace them.
 
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 29 insertions(+)
 
 diff --git a/include/linux/page_cgroup.h b/include/linux/page_cgroup.h
-index 961ecc7..2927c08 100644
+index 961ecc7d30bc..2927c084ff50 100644
 --- a/include/linux/page_cgroup.h
 +++ b/include/linux/page_cgroup.h
 @@ -30,6 +30,10 @@ enum {
@@ -82,7 +82,7 @@ index 961ecc7..2927c08 100644
  
  #ifdef CONFIG_SPARSEMEM
 diff --git a/mm/page_cgroup.c b/mm/page_cgroup.c
-index 6f4ef53..8e854bf 100644
+index 6f4ef535c5af..8e854bf333e8 100644
 --- a/mm/page_cgroup.c
 +++ b/mm/page_cgroup.c
 @@ -17,6 +17,7 @@ static void __meminit init_page_cgroup(struct page_cgroup *pc, unsigned long id)
diff --git a/debian/patches/features/all/rt/0094-buffer_head-Replace-bh_uptodate_lock-for-rt.patch b/debian/patches/features/all/rt/0094-buffer_head-Replace-bh_uptodate_lock-for-rt.patch
index bd01c58..88daec8 100644
--- a/debian/patches/features/all/rt/0094-buffer_head-Replace-bh_uptodate_lock-for-rt.patch
+++ b/debian/patches/features/all/rt/0094-buffer_head-Replace-bh_uptodate_lock-for-rt.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 18 Mar 2011 09:18:52 +0100
-Subject: [PATCH 094/374] buffer_head: Replace bh_uptodate_lock for -rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9d23089ba1f0517f747c1f3b78a311ee3dec55f8
+Subject: [PATCH 094/380] buffer_head: Replace bh_uptodate_lock for -rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5f12801fbe97bf8a21af8aaa649c3494c0a6425d
 
 Wrap the bit_spin_lock calls into a separate inline and add the RT
 replacements with a real spinlock.
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 44 insertions(+), 21 deletions(-)
 
 diff --git a/fs/buffer.c b/fs/buffer.c
-index 7eb4da4..1797c7c 100644
+index 7eb4da4a7c2b..1797c7cf4ba4 100644
 --- a/fs/buffer.c
 +++ b/fs/buffer.c
 @@ -331,8 +331,7 @@ static void end_buffer_async_read(struct buffer_head *bh, int uptodate)
@@ -85,7 +85,7 @@ index 7eb4da4..1797c7c 100644
  		__this_cpu_inc(bh_accounting.nr);
  		recalc_bh_state();
 diff --git a/fs/ntfs/aops.c b/fs/ntfs/aops.c
-index 0b1e885b..7fb7f1b 100644
+index 0b1e885b8cf8..7fb7f1b2dfcf 100644
 --- a/fs/ntfs/aops.c
 +++ b/fs/ntfs/aops.c
 @@ -108,8 +108,7 @@ static void ntfs_end_buffer_async_read(struct buffer_head *bh, int uptodate)
@@ -120,7 +120,7 @@ index 0b1e885b..7fb7f1b 100644
  
  /**
 diff --git a/include/linux/buffer_head.h b/include/linux/buffer_head.h
-index fed3f3a..81a571d 100644
+index fed3f3ac489d..81a571d8e758 100644
 --- a/include/linux/buffer_head.h
 +++ b/include/linux/buffer_head.h
 @@ -72,8 +72,42 @@ struct buffer_head {
diff --git a/debian/patches/features/all/rt/0095-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch b/debian/patches/features/all/rt/0095-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch
index c44c54e..7dce72f 100644
--- a/debian/patches/features/all/rt/0095-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch
+++ b/debian/patches/features/all/rt/0095-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 18 Mar 2011 10:11:25 +0100
-Subject: [PATCH 095/374] fs: jbd/jbd2: Make state lock and journal head lock
+Subject: [PATCH 095/380] fs: jbd/jbd2: Make state lock and journal head lock
  rt safe
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4e6f963ff551b3f8ed2d970322405be2fe7a1727
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=332b8a9f5631567b506e13e1494f8cced4b5636c
 
 bit_spin_locks break under RT.
 
@@ -20,7 +20,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 34 insertions(+)
 
 diff --git a/include/linux/buffer_head.h b/include/linux/buffer_head.h
-index 81a571d..7a0f7d2 100644
+index 81a571d8e758..7a0f7d20fb66 100644
 --- a/include/linux/buffer_head.h
 +++ b/include/linux/buffer_head.h
 @@ -74,6 +74,11 @@ struct buffer_head {
@@ -48,7 +48,7 @@ index 81a571d..7a0f7d2 100644
  }
  
 diff --git a/include/linux/jbd_common.h b/include/linux/jbd_common.h
-index 6230f85..11c313e 100644
+index 6230f8556a4e..11c313e8561d 100644
 --- a/include/linux/jbd_common.h
 +++ b/include/linux/jbd_common.h
 @@ -37,32 +37,56 @@ static inline struct journal_head *bh2jh(struct buffer_head *bh)
diff --git a/debian/patches/features/all/rt/0096-genirq-Disable-DEBUG_SHIRQ-for-rt.patch b/debian/patches/features/all/rt/0096-genirq-Disable-DEBUG_SHIRQ-for-rt.patch
index 7179371..507808c 100644
--- a/debian/patches/features/all/rt/0096-genirq-Disable-DEBUG_SHIRQ-for-rt.patch
+++ b/debian/patches/features/all/rt/0096-genirq-Disable-DEBUG_SHIRQ-for-rt.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 18 Mar 2011 10:22:04 +0100
-Subject: [PATCH 096/374] genirq: Disable DEBUG_SHIRQ for rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b18b63f5b09987e829d3bb0334920533bba0f8aa
+Subject: [PATCH 096/380] genirq: Disable DEBUG_SHIRQ for rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c176b50d4cd33cbd4db7801b1cbca50bdad2725e
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
-index 82928f5..c347db3 100644
+index 82928f5ea049..c347db3e08c2 100644
 --- a/lib/Kconfig.debug
 +++ b/lib/Kconfig.debug
 @@ -151,7 +151,7 @@ config DEBUG_KERNEL
diff --git a/debian/patches/features/all/rt/0097-genirq-Disable-random-call-on-preempt-rt.patch b/debian/patches/features/all/rt/0097-genirq-Disable-random-call-on-preempt-rt.patch
index 895d9ec..557d5de 100644
--- a/debian/patches/features/all/rt/0097-genirq-Disable-random-call-on-preempt-rt.patch
+++ b/debian/patches/features/all/rt/0097-genirq-Disable-random-call-on-preempt-rt.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 21 Jul 2009 16:07:37 +0200
-Subject: [PATCH 097/374] genirq: Disable random call on preempt-rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7be46819a74c594b2d636b4c3a84124df5864644
+Subject: [PATCH 097/380] genirq: Disable random call on preempt-rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f6635e3ad7163a14cce04bef2eb5b68a8e6cd698
 
 The random call introduces high latencies and is almost
 unused. Disable it for -rt.
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 3 insertions(+)
 
 diff --git a/kernel/irq/handle.c b/kernel/irq/handle.c
-index 10e0772..a768885 100644
+index 10e077289c8d..a7688853397e 100644
 --- a/kernel/irq/handle.c
 +++ b/kernel/irq/handle.c
 @@ -156,7 +156,10 @@ handle_irq_event_percpu(struct irq_desc *desc, struct irqaction *action)
diff --git a/debian/patches/features/all/rt/0098-genirq-disable-irqpoll-on-rt.patch b/debian/patches/features/all/rt/0098-genirq-disable-irqpoll-on-rt.patch
index 6d853fd..e05ccb7 100644
--- a/debian/patches/features/all/rt/0098-genirq-disable-irqpoll-on-rt.patch
+++ b/debian/patches/features/all/rt/0098-genirq-disable-irqpoll-on-rt.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:57 -0500
-Subject: [PATCH 098/374] genirq: disable irqpoll on -rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=cc416fce30ac85ffae2c0e1198a2c91724cfbbab
+Subject: [PATCH 098/380] genirq: disable irqpoll on -rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7c91c6c15de6af8a9d16e8ee0b7ee975f136649e
 
 Creates long latencies for no value
 
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 10 insertions(+)
 
 diff --git a/kernel/irq/spurious.c b/kernel/irq/spurious.c
-index 6d426eb..0d11a24 100644
+index 6d426ebb218f..0d11a248f058 100644
 --- a/kernel/irq/spurious.c
 +++ b/kernel/irq/spurious.c
 @@ -438,6 +438,11 @@ MODULE_PARM_DESC(noirqdebug, "Disable irq lockup detection when true");
diff --git a/debian/patches/features/all/rt/0099-genirq-force-threading.patch.patch b/debian/patches/features/all/rt/0099-genirq-force-threading.patch.patch
index 57dfd00..9396612 100644
--- a/debian/patches/features/all/rt/0099-genirq-force-threading.patch.patch
+++ b/debian/patches/features/all/rt/0099-genirq-force-threading.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 3 Apr 2011 11:57:29 +0200
-Subject: [PATCH 099/374] genirq-force-threading.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8c5e12a7a278ef1dd5a6cf32b8d1943adb461799
+Subject: [PATCH 099/380] genirq-force-threading.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a823ec2ae37226430352f9d5362be895f0c030af
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 8 insertions(+), 2 deletions(-)
 
 diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index ddd6b2a..b9162dc 100644
+index ddd6b2a5a42e..b9162dc541ff 100644
 --- a/include/linux/interrupt.h
 +++ b/include/linux/interrupt.h
 @@ -396,9 +396,13 @@ static inline int disable_irq_wake(unsigned int irq)
@@ -30,7 +30,7 @@ index ddd6b2a..b9162dc 100644
  
  #ifndef __ARCH_SET_SOFTIRQ_PENDING
 diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index 127a32e..d1ceaba 100644
+index 8080f98db428..152dca2fa96e 100644
 --- a/kernel/irq/manage.c
 +++ b/kernel/irq/manage.c
 @@ -18,6 +18,7 @@
diff --git a/debian/patches/features/all/rt/0100-drivers-net-fix-livelock-issues.patch b/debian/patches/features/all/rt/0100-drivers-net-fix-livelock-issues.patch
index 324b88d..7517edd 100644
--- a/debian/patches/features/all/rt/0100-drivers-net-fix-livelock-issues.patch
+++ b/debian/patches/features/all/rt/0100-drivers-net-fix-livelock-issues.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 20 Jun 2009 11:36:54 +0200
-Subject: [PATCH 100/374] drivers/net: fix livelock issues
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9ce99eb3c25846e2736fc750b0a3d2e2bc299498
+Subject: [PATCH 100/380] drivers/net: fix livelock issues
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=198fd7b69dbf096ded17ae68609233f7377d582c
 
 Preempt-RT runs into a live lock issue with the NETDEV_TX_LOCKED micro
 optimization. The reason is that the softirq thread is rescheduling
@@ -22,10 +22,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  7 files changed, 10 insertions(+), 31 deletions(-)
 
 diff --git a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
-index 5ae7df7..9500316 100644
+index 790f643366f4..85cdc91f5329 100644
 --- a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
 +++ b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
-@@ -2235,11 +2235,7 @@ static netdev_tx_t atl1c_xmit_frame(struct sk_buff *skb,
+@@ -2234,11 +2234,7 @@ static netdev_tx_t atl1c_xmit_frame(struct sk_buff *skb,
  	}
  
  	tpd_req = atl1c_cal_tpd_req(skb);
@@ -39,7 +39,7 @@ index 5ae7df7..9500316 100644
  	if (atl1c_tpd_avail(adapter, type) < tpd_req) {
  		/* no enough descriptor, just stop queue */
 diff --git a/drivers/net/ethernet/atheros/atl1e/atl1e_main.c b/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
-index 87851f0..9704ef6 100644
+index 87851f09e92e..9704ef6950aa 100644
 --- a/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
 +++ b/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
 @@ -1858,8 +1858,7 @@ static netdev_tx_t atl1e_xmit_frame(struct sk_buff *skb,
@@ -53,7 +53,7 @@ index 87851f0..9704ef6 100644
  	if (atl1e_tpd_avail(adapter) < tpd_req) {
  		/* no enough descriptor, just stop queue */
 diff --git a/drivers/net/ethernet/chelsio/cxgb/sge.c b/drivers/net/ethernet/chelsio/cxgb/sge.c
-index f9b6023..6d7412a 100644
+index f9b602300040..6d7412a67927 100644
 --- a/drivers/net/ethernet/chelsio/cxgb/sge.c
 +++ b/drivers/net/ethernet/chelsio/cxgb/sge.c
 @@ -1678,8 +1678,7 @@ static int t1_sge_tx(struct sk_buff *skb, struct adapter *adapter,
@@ -67,7 +67,7 @@ index f9b6023..6d7412a 100644
  	reclaim_completed_tx(sge, q);
  
 diff --git a/drivers/net/ethernet/neterion/s2io.c b/drivers/net/ethernet/neterion/s2io.c
-index c27fb3d..4624278 100644
+index c27fb3dda9f4..462427825cdd 100644
 --- a/drivers/net/ethernet/neterion/s2io.c
 +++ b/drivers/net/ethernet/neterion/s2io.c
 @@ -4090,12 +4090,7 @@ static netdev_tx_t s2io_xmit(struct sk_buff *skb, struct net_device *dev)
@@ -85,7 +85,7 @@ index c27fb3d..4624278 100644
  	if (sp->config.multiq) {
  		if (__netif_subqueue_stopped(dev, fifo->fifo_no)) {
 diff --git a/drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c b/drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c
-index 495d65c..6b2a684 100644
+index 495d65c61e12..6b2a6845f474 100644
 --- a/drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c
 +++ b/drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c
 @@ -1937,10 +1937,9 @@ static int pch_gbe_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
@@ -103,7 +103,7 @@ index 495d65c..6b2a684 100644
  		netif_stop_queue(netdev);
  		spin_unlock_irqrestore(&tx_ring->tx_lock, flags);
 diff --git a/drivers/net/ethernet/tehuti/tehuti.c b/drivers/net/ethernet/tehuti/tehuti.c
-index cc7e7de..900f6f4 100644
+index cc7e7def9b19..900f6f4d2ed2 100644
 --- a/drivers/net/ethernet/tehuti/tehuti.c
 +++ b/drivers/net/ethernet/tehuti/tehuti.c
 @@ -1605,13 +1605,8 @@ static netdev_tx_t bdx_tx_transmit(struct sk_buff *skb,
@@ -123,7 +123,7 @@ index cc7e7de..900f6f4 100644
  	/* build tx descriptor */
  	BDX_ASSERT(f->m.wptr >= f->m.memsz);	/* started with valid wptr */
 diff --git a/drivers/net/rionet.c b/drivers/net/rionet.c
-index c0f097b..3e914bd 100644
+index c0f097b19403..3e914bde66fb 100644
 --- a/drivers/net/rionet.c
 +++ b/drivers/net/rionet.c
 @@ -178,11 +178,7 @@ static int rionet_start_xmit(struct sk_buff *skb, struct net_device *ndev)
diff --git a/debian/patches/features/all/rt/0101-drivers-net-vortex-fix-locking-issues.patch b/debian/patches/features/all/rt/0101-drivers-net-vortex-fix-locking-issues.patch
index f836e60..14eddcd 100644
--- a/debian/patches/features/all/rt/0101-drivers-net-vortex-fix-locking-issues.patch
+++ b/debian/patches/features/all/rt/0101-drivers-net-vortex-fix-locking-issues.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Fri, 3 Jul 2009 08:30:00 -0500
-Subject: [PATCH 101/374] drivers/net: vortex fix locking issues
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7b422c35bba4044294f4f4b19d697f53fdda6209
+Subject: [PATCH 101/380] drivers/net: vortex fix locking issues
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fbfc80b33de8e0057b1188c9ed893290c4d684fb
 
 Argh, cut and paste wasn't enough...
 
@@ -22,7 +22,7 @@ Signed-off-by: Ingo Molnar <mingo at elte.hu>
  1 file changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/drivers/net/ethernet/3com/3c59x.c b/drivers/net/ethernet/3com/3c59x.c
-index efc9dee..2500aa4 100644
+index efc9dee5f9b4..2500aa4fc49d 100644
 --- a/drivers/net/ethernet/3com/3c59x.c
 +++ b/drivers/net/ethernet/3com/3c59x.c
 @@ -842,9 +842,9 @@ static void poll_vortex(struct net_device *dev)
diff --git a/debian/patches/features/all/rt/0102-drivers-net-gianfar-Make-RT-aware.patch b/debian/patches/features/all/rt/0102-drivers-net-gianfar-Make-RT-aware.patch
index abe0ccf..3e20733 100644
--- a/debian/patches/features/all/rt/0102-drivers-net-gianfar-Make-RT-aware.patch
+++ b/debian/patches/features/all/rt/0102-drivers-net-gianfar-Make-RT-aware.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 1 Apr 2010 20:20:57 +0200
-Subject: [PATCH 102/374] drivers: net: gianfar: Make RT aware
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ecee15225c2393e18c63d1832f30c88103a854b2
+Subject: [PATCH 102/380] drivers: net: gianfar: Make RT aware
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1d20c0d4f615cfee0fa1ddca2a52cbcac051596a
 
 The adjust_link() disables interrupts before taking the queue
 locks. On RT those locks are converted to "sleeping" locks and
@@ -16,7 +16,7 @@ Tested-by: Xianghua Xiao <xiaoxianghua at gmail.com>
  1 file changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/drivers/net/ethernet/freescale/gianfar.c b/drivers/net/ethernet/freescale/gianfar.c
-index b167e38..9510618 100644
+index b167e38ed581..95106185938e 100644
 --- a/drivers/net/ethernet/freescale/gianfar.c
 +++ b/drivers/net/ethernet/freescale/gianfar.c
 @@ -1680,7 +1680,7 @@ void stop_gfar(struct net_device *dev)
diff --git a/debian/patches/features/all/rt/0103-USB-Fix-the-mouse-problem-when-copying-large-amounts.patch b/debian/patches/features/all/rt/0103-USB-Fix-the-mouse-problem-when-copying-large-amounts.patch
index 7504c6c..e4a1f63 100644
--- a/debian/patches/features/all/rt/0103-USB-Fix-the-mouse-problem-when-copying-large-amounts.patch
+++ b/debian/patches/features/all/rt/0103-USB-Fix-the-mouse-problem-when-copying-large-amounts.patch
@@ -1,8 +1,8 @@
 From: Wu Zhangjin <wuzj at lemote.com>
 Date: Mon, 4 Jan 2010 11:33:02 +0800
-Subject: [PATCH 103/374] USB: Fix the mouse problem when copying large amounts
+Subject: [PATCH 103/380] USB: Fix the mouse problem when copying large amounts
  of data
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f8601ab5133589571f8fb71313e351ea0d3a4406
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=904e3ddac83d90cbeb38b9057ac394de332e178e
 
 When copying large amounts of data between the USB storage devices and
 the hard disk, the USB mouse will not work, this patch fixes it.
@@ -17,7 +17,7 @@ Signed-off-by: Wu Zhangjin <wuzhangjin at gmail.com>
  1 file changed, 7 insertions(+), 3 deletions(-)
 
 diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
-index b263919..d4b05d1 100644
+index b2639191549e..d4b05d1106af 100644
 --- a/drivers/usb/host/ohci-hcd.c
 +++ b/drivers/usb/host/ohci-hcd.c
 @@ -830,9 +830,13 @@ static irqreturn_t ohci_irq (struct usb_hcd *hcd)
diff --git a/debian/patches/features/all/rt/0104-local-var.patch.patch b/debian/patches/features/all/rt/0104-local-var.patch.patch
index aaa472c..8975493 100644
--- a/debian/patches/features/all/rt/0104-local-var.patch.patch
+++ b/debian/patches/features/all/rt/0104-local-var.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 24 Jun 2011 18:40:37 +0200
-Subject: [PATCH 104/374] local-var.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6dcb37386afefd4fd5efecbc7866551ecae30531
+Subject: [PATCH 104/380] local-var.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=df68a1eea24a6424bb7e74455a1d781e35afbdb6
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 5 insertions(+)
 
 diff --git a/include/linux/percpu.h b/include/linux/percpu.h
-index 9ca008f..3941ea4 100644
+index 9ca008f0c542..3941ea401f3d 100644
 --- a/include/linux/percpu.h
 +++ b/include/linux/percpu.h
 @@ -48,6 +48,11 @@
diff --git a/debian/patches/features/all/rt/0105-rt-local-irq-lock.patch.patch b/debian/patches/features/all/rt/0105-rt-local-irq-lock.patch.patch
index dba271d..ee29943 100644
--- a/debian/patches/features/all/rt/0105-rt-local-irq-lock.patch.patch
+++ b/debian/patches/features/all/rt/0105-rt-local-irq-lock.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 20 Jun 2011 09:03:47 +0200
-Subject: [PATCH 105/374] rt-local-irq-lock.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7ea8b374ccd8fe7a7d0c444f2ea942f785fcd538
+Subject: [PATCH 105/380] rt-local-irq-lock.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b56610c5ab6574d4bb21093528721cb373dba63b
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 
 diff --git a/include/linux/locallock.h b/include/linux/locallock.h
 new file mode 100644
-index 0000000..8fbc393
+index 000000000000..8fbc3938638f
 --- /dev/null
 +++ b/include/linux/locallock.h
 @@ -0,0 +1,230 @@
diff --git a/debian/patches/features/all/rt/0106-cpu-rt-variants.patch.patch b/debian/patches/features/all/rt/0106-cpu-rt-variants.patch.patch
index e8aad3c..df45adb 100644
--- a/debian/patches/features/all/rt/0106-cpu-rt-variants.patch.patch
+++ b/debian/patches/features/all/rt/0106-cpu-rt-variants.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 17 Jun 2011 15:42:38 +0200
-Subject: [PATCH 106/374] cpu-rt-variants.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=68915a9720a29ba8ccbd1d951a150fe3bdeccbc7
+Subject: [PATCH 106/380] cpu-rt-variants.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4d617e4bcca44824bf93373a4630e478cd62de1a
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 8 insertions(+)
 
 diff --git a/include/linux/smp.h b/include/linux/smp.h
-index 8cc38d3..e6c58d8 100644
+index 8cc38d3bab0c..e6c58d8796b3 100644
 --- a/include/linux/smp.h
 +++ b/include/linux/smp.h
 @@ -173,6 +173,14 @@ smp_call_function_any(const struct cpumask *mask, smp_call_func_t func,
diff --git a/debian/patches/features/all/rt/0107-mm-slab-wrap-functions.patch.patch b/debian/patches/features/all/rt/0107-mm-slab-wrap-functions.patch.patch
index 4d1c004..82c3411 100644
--- a/debian/patches/features/all/rt/0107-mm-slab-wrap-functions.patch.patch
+++ b/debian/patches/features/all/rt/0107-mm-slab-wrap-functions.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 18 Jun 2011 19:44:43 +0200
-Subject: [PATCH 107/374] mm-slab-wrap-functions.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8108969560d15c7ad7b5527398c40c10686da3dd
+Subject: [PATCH 107/380] mm-slab-wrap-functions.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b90dec6f83659ff5243926191a4f7c97941ff508
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 104 insertions(+), 48 deletions(-)
 
 diff --git a/mm/slab.c b/mm/slab.c
-index a02c5d57..53af5ab 100644
+index a02c5d57ecac..53af5ab20049 100644
 --- a/mm/slab.c
 +++ b/mm/slab.c
 @@ -116,6 +116,7 @@
diff --git a/debian/patches/features/all/rt/0108-slab-Fix-__do_drain-to-use-the-right-array-cache.patch b/debian/patches/features/all/rt/0108-slab-Fix-__do_drain-to-use-the-right-array-cache.patch
index 5f1b856..73c8ade 100644
--- a/debian/patches/features/all/rt/0108-slab-Fix-__do_drain-to-use-the-right-array-cache.patch
+++ b/debian/patches/features/all/rt/0108-slab-Fix-__do_drain-to-use-the-right-array-cache.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Tue, 11 Oct 2011 23:56:23 -0400
-Subject: [PATCH 108/374] slab: Fix __do_drain to use the right array cache
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=357ff59cbf1db99d8310a6ff1c396a7844998aee
+Subject: [PATCH 108/380] slab: Fix __do_drain to use the right array cache
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4c3353df7bbf0672e5707b9230cbb4ac3249cdeb
 
 The array cache in __do_drain() was using the cpu_cache_get() function
 which uses smp_processor_id() to get the proper array. On mainline, this
@@ -39,7 +39,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/mm/slab.c b/mm/slab.c
-index 53af5ab..3873920 100644
+index 53af5ab20049..387392086214 100644
 --- a/mm/slab.c
 +++ b/mm/slab.c
 @@ -2576,7 +2576,7 @@ static void __do_drain(void *arg, unsigned int cpu)
diff --git a/debian/patches/features/all/rt/0109-mm-More-lock-breaks-in-slab.c.patch b/debian/patches/features/all/rt/0109-mm-More-lock-breaks-in-slab.c.patch
index 16f5e74..fafaf8b 100644
--- a/debian/patches/features/all/rt/0109-mm-More-lock-breaks-in-slab.c.patch
+++ b/debian/patches/features/all/rt/0109-mm-More-lock-breaks-in-slab.c.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Fri, 3 Jul 2009 08:44:43 -0500
-Subject: [PATCH 109/374] mm: More lock breaks in slab.c
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4d9bcf235e0cffc15413bc8ec20c2083b986c266
+Subject: [PATCH 109/380] mm: More lock breaks in slab.c
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fb779be250fc94951acc5984ded69459961a55b2
 
 Handle __free_pages outside of the locked regions. This reduces the
 lock contention on the percpu slab locks in -rt significantly.
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 68 insertions(+), 22 deletions(-)
 
 diff --git a/mm/slab.c b/mm/slab.c
-index 3873920..dbeaf7e 100644
+index 387392086214..dbeaf7e47bf3 100644
 --- a/mm/slab.c
 +++ b/mm/slab.c
 @@ -723,6 +723,7 @@ static void slab_set_debugobj_lock_classes(struct kmem_cache *cachep)
diff --git a/debian/patches/features/all/rt/0110-mm-page_alloc-rt-friendly-per-cpu-pages.patch b/debian/patches/features/all/rt/0110-mm-page_alloc-rt-friendly-per-cpu-pages.patch
index 182dda2..d21771a 100644
--- a/debian/patches/features/all/rt/0110-mm-page_alloc-rt-friendly-per-cpu-pages.patch
+++ b/debian/patches/features/all/rt/0110-mm-page_alloc-rt-friendly-per-cpu-pages.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:37 -0500
-Subject: [PATCH 110/374] mm: page_alloc: rt-friendly per-cpu pages
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=49da6f40b63b32dfbcfb9bc27dc6345199541032
+Subject: [PATCH 110/380] mm: page_alloc: rt-friendly per-cpu pages
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=193eaca01f91cd950ec96013267d4a7fa847ad02
 
 rt-friendly per-cpu pages: convert the irqs-off per-cpu locking
 method into a preemptible, explicit-per-cpu-locks method.
@@ -17,7 +17,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 39 insertions(+), 16 deletions(-)
 
 diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index b32ce90..7e3d64f 100644
+index b32ce9009f24..7e3d64fe62e3 100644
 --- a/mm/page_alloc.c
 +++ b/mm/page_alloc.c
 @@ -57,6 +57,7 @@
diff --git a/debian/patches/features/all/rt/0111-mm-page_alloc-reduce-lock-sections-further.patch b/debian/patches/features/all/rt/0111-mm-page_alloc-reduce-lock-sections-further.patch
index 144d2a8..1cfbb71 100644
--- a/debian/patches/features/all/rt/0111-mm-page_alloc-reduce-lock-sections-further.patch
+++ b/debian/patches/features/all/rt/0111-mm-page_alloc-reduce-lock-sections-further.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Fri, 3 Jul 2009 08:44:37 -0500
-Subject: [PATCH 111/374] mm: page_alloc reduce lock sections further
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=388a39eb8b48d430eb652f4d7626b7a73a4282b7
+Subject: [PATCH 111/380] mm: page_alloc reduce lock sections further
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=82ab17df8c9620faf600c22e975f0b6dadefa4ed
 
 Split out the pages which are to be freed into a separate list and
 call free_pages_bulk() outside of the percpu page allocator locks.
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 58 insertions(+), 19 deletions(-)
 
 diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 7e3d64f..d3f6c02 100644
+index 7e3d64fe62e3..d3f6c02b0d44 100644
 --- a/mm/page_alloc.c
 +++ b/mm/page_alloc.c
 @@ -594,7 +594,7 @@ static inline int free_pages_check(struct page *page)
diff --git a/debian/patches/features/all/rt/0112-mm-page-alloc-fix.patch.patch b/debian/patches/features/all/rt/0112-mm-page-alloc-fix.patch.patch
index 3d3c65c..7cb97f3 100644
--- a/debian/patches/features/all/rt/0112-mm-page-alloc-fix.patch.patch
+++ b/debian/patches/features/all/rt/0112-mm-page-alloc-fix.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 21 Jul 2011 16:47:49 +0200
-Subject: [PATCH 112/374] mm-page-alloc-fix.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7cee10822ddabfd9c722cdb1842d00c5db6c09d1
+Subject: [PATCH 112/380] mm-page-alloc-fix.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6db6385409bdffd9750bb2989ae8c415ff0ef748
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index d3f6c02..3746038 100644
+index d3f6c02b0d44..374603834a66 100644
 --- a/mm/page_alloc.c
 +++ b/mm/page_alloc.c
 @@ -1973,8 +1973,8 @@ __alloc_pages_direct_compact(gfp_t gfp_mask, unsigned int order,
diff --git a/debian/patches/features/all/rt/0113-mm-convert-swap-to-percpu-locked.patch b/debian/patches/features/all/rt/0113-mm-convert-swap-to-percpu-locked.patch
index ab27d06..6006ed5 100644
--- a/debian/patches/features/all/rt/0113-mm-convert-swap-to-percpu-locked.patch
+++ b/debian/patches/features/all/rt/0113-mm-convert-swap-to-percpu-locked.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:51 -0500
-Subject: [PATCH 113/374] mm: convert swap to percpu locked
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=df04fc94b73e3ff83177f07f88a5d0324d080228
+Subject: [PATCH 113/380] mm: convert swap to percpu locked
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=364dea01e2525815d6e8791d9878beb891c984ac
 
 Signed-off-by: Ingo Molnar <mingo at elte.hu>
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
diff --git a/debian/patches/features/all/rt/0114-mm-vmstat-fix-the-irq-lock-asymetry.patch.patch b/debian/patches/features/all/rt/0114-mm-vmstat-fix-the-irq-lock-asymetry.patch.patch
index 5da7bf1..54dd975 100644
--- a/debian/patches/features/all/rt/0114-mm-vmstat-fix-the-irq-lock-asymetry.patch.patch
+++ b/debian/patches/features/all/rt/0114-mm-vmstat-fix-the-irq-lock-asymetry.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 22 Jun 2011 20:47:08 +0200
-Subject: [PATCH 114/374] mm-vmstat-fix-the-irq-lock-asymetry.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d6124be0ecc7d359d477a1ad4836f590099fc5cf
+Subject: [PATCH 114/380] mm-vmstat-fix-the-irq-lock-asymetry.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b3799751a59cc0d4f065a0d77c6ee0d794427f5f
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 9 insertions(+), 9 deletions(-)
 
 diff --git a/mm/vmscan.c b/mm/vmscan.c
-index ab98dc6..dacf892 100644
+index ab98dc6b1677..dacf892f16d2 100644
 --- a/mm/vmscan.c
 +++ b/mm/vmscan.c
 @@ -1381,8 +1381,8 @@ static int too_many_isolated(struct zone *zone, int file,
diff --git a/debian/patches/features/all/rt/0115-mm-make-vmstat-rt-aware.patch b/debian/patches/features/all/rt/0115-mm-make-vmstat-rt-aware.patch
index eeb800d..8ce15c9 100644
--- a/debian/patches/features/all/rt/0115-mm-make-vmstat-rt-aware.patch
+++ b/debian/patches/features/all/rt/0115-mm-make-vmstat-rt-aware.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:13 -0500
-Subject: [PATCH 115/374] mm: make vmstat -rt aware
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c7c3c7c8ad133e56477eebf85f9cc5f5e5673319
+Subject: [PATCH 115/380] mm: make vmstat -rt aware
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=006e7f1c7ef721aca5c066622c3b2de639f36be6
 
 Signed-off-by: Ingo Molnar <mingo at elte.hu>
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 10 insertions(+)
 
 diff --git a/include/linux/vmstat.h b/include/linux/vmstat.h
-index 65efb92..1b3f2ef 100644
+index 65efb92da996..1b3f2efd3ad0 100644
 --- a/include/linux/vmstat.h
 +++ b/include/linux/vmstat.h
 @@ -29,7 +29,9 @@ DECLARE_PER_CPU(struct vm_event_state, vm_event_states);
@@ -35,7 +35,7 @@ index 65efb92..1b3f2ef 100644
  
  static inline void count_vm_events(enum vm_event_item item, long delta)
 diff --git a/mm/vmstat.c b/mm/vmstat.c
-index 8fd603b..726f0b6 100644
+index 887e83f2135c..da274ac994a1 100644
 --- a/mm/vmstat.c
 +++ b/mm/vmstat.c
 @@ -216,6 +216,7 @@ void __mod_zone_page_state(struct zone *zone, enum zone_stat_item item,
diff --git a/debian/patches/features/all/rt/0116-mm-shrink-the-page-frame-to-rt-size.patch b/debian/patches/features/all/rt/0116-mm-shrink-the-page-frame-to-rt-size.patch
index 6e616a1..1c8c568 100644
--- a/debian/patches/features/all/rt/0116-mm-shrink-the-page-frame-to-rt-size.patch
+++ b/debian/patches/features/all/rt/0116-mm-shrink-the-page-frame-to-rt-size.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <peterz at infradead.org>
 Date: Fri, 3 Jul 2009 08:44:54 -0500
-Subject: [PATCH 116/374] mm: shrink the page frame to !-rt size
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a2698221464a29fd0c62bd6be1361250cd17432e
+Subject: [PATCH 116/380] mm: shrink the page frame to !-rt size
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b05bf7cce006f1765300f739ff4b4536bfb014bb
 
 He below is a boot-tested hack to shrink the page frame size back to
 normal.
@@ -18,7 +18,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 76 insertions(+), 8 deletions(-)
 
 diff --git a/include/linux/mm.h b/include/linux/mm.h
-index e5ee683..82a8112 100644
+index e5ee683b0ad3..82a8112409ad 100644
 --- a/include/linux/mm.h
 +++ b/include/linux/mm.h
 @@ -1198,27 +1198,59 @@ static inline pmd_t *pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long a
@@ -89,7 +89,7 @@ index e5ee683..82a8112 100644
  {
  	pte_lock_deinit(page);
 diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
-index de3a321..1ecd494 100644
+index de3a3217fdac..1ecd4945fed7 100644
 --- a/include/linux/mm_types.h
 +++ b/include/linux/mm_types.h
 @@ -118,7 +118,11 @@ struct page {
@@ -106,7 +106,7 @@ index de3a321..1ecd494 100644
  		struct kmem_cache *slab;	/* SLUB: Pointer to slab */
  		struct page *first_page;	/* Compound tail pages */
 diff --git a/mm/memory.c b/mm/memory.c
-index 5a73d8a..a84fc31 100644
+index 5a73d8a73986..a84fc31d8903 100644
 --- a/mm/memory.c
 +++ b/mm/memory.c
 @@ -4102,3 +4102,35 @@ void copy_user_huge_page(struct page *dst, struct page *src,
diff --git a/debian/patches/features/all/rt/0117-ARM-Initialize-ptl-lock-for-vector-page.patch b/debian/patches/features/all/rt/0117-ARM-Initialize-ptl-lock-for-vector-page.patch
index 0b081b5..511c61b 100644
--- a/debian/patches/features/all/rt/0117-ARM-Initialize-ptl-lock-for-vector-page.patch
+++ b/debian/patches/features/all/rt/0117-ARM-Initialize-ptl-lock-for-vector-page.patch
@@ -1,7 +1,7 @@
 From: Frank Rowand <frank.rowand at am.sony.com>
 Date: Sat, 1 Oct 2011 18:58:13 -0700
-Subject: [PATCH 117/374] ARM: Initialize ptl->lock for vector page
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=dc40816734ddcffb70c53bf8c098f695d19b58fd
+Subject: [PATCH 117/380] ARM: Initialize ptl->lock for vector page
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9cbe8f1eae3e6ac355d24cc8bef77789b63a55ee
 
 Without this patch, ARM can not use SPLIT_PTLOCK_CPUS if
 PREEMPT_RT_FULL=y because vectors_user_mapping() creates a
@@ -35,7 +35,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 25 insertions(+)
 
 diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c
-index 2a169b7..38fc9ad 100644
+index 2a169b74c1fd..38fc9ada99b6 100644
 --- a/arch/arm/kernel/process.c
 +++ b/arch/arm/kernel/process.c
 @@ -494,6 +494,31 @@ unsigned long arch_randomize_brk(struct mm_struct *mm)
diff --git a/debian/patches/features/all/rt/0118-mm-Allow-only-slab-on-RT.patch b/debian/patches/features/all/rt/0118-mm-Allow-only-slab-on-RT.patch
index 5d8ef89..7107191 100644
--- a/debian/patches/features/all/rt/0118-mm-Allow-only-slab-on-RT.patch
+++ b/debian/patches/features/all/rt/0118-mm-Allow-only-slab-on-RT.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:44:03 -0500
-Subject: [PATCH 118/374] mm: Allow only slab on RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9c974b4a60f58e43a4a24f6881c38849d37dc7a8
+Subject: [PATCH 118/380] mm: Allow only slab on RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5c312457ffb103545ee8952c44150180fe170500
 
 Signed-off-by: Ingo Molnar <mingo at elte.hu>
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+)
 
 diff --git a/init/Kconfig b/init/Kconfig
-index b8dc1de..56a926e 100644
+index b8dc1de0bafa..56a926ed8dec 100644
 --- a/init/Kconfig
 +++ b/init/Kconfig
 @@ -1240,6 +1240,7 @@ config SLAB
diff --git a/debian/patches/features/all/rt/0119-radix-tree-rt-aware.patch.patch b/debian/patches/features/all/rt/0119-radix-tree-rt-aware.patch.patch
index 5788eab..454b69d 100644
--- a/debian/patches/features/all/rt/0119-radix-tree-rt-aware.patch.patch
+++ b/debian/patches/features/all/rt/0119-radix-tree-rt-aware.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 21:33:18 +0200
-Subject: [PATCH 119/374] radix-tree-rt-aware.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=149e5d19a57c42504bc0cba857dbd6c3741bca33
+Subject: [PATCH 119/380] radix-tree-rt-aware.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=17b4d4bacf0903ec4a0f6a6b39fbb79701eb22ed
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 11 insertions(+), 2 deletions(-)
 
 diff --git a/include/linux/radix-tree.h b/include/linux/radix-tree.h
-index 9d4539c..6b4bdf2 100644
+index 9d4539c52e53..6b4bdf2097dd 100644
 --- a/include/linux/radix-tree.h
 +++ b/include/linux/radix-tree.h
 @@ -231,7 +231,13 @@ unsigned long radix_tree_next_hole(struct radix_tree_root *root,
@@ -37,7 +37,7 @@ index 9d4539c..6b4bdf2 100644
  
  #endif /* _LINUX_RADIX_TREE_H */
 diff --git a/lib/radix-tree.c b/lib/radix-tree.c
-index d9df745..770453a 100644
+index d9df7454519c..770453ac61e9 100644
 --- a/lib/radix-tree.c
 +++ b/lib/radix-tree.c
 @@ -166,12 +166,13 @@ radix_tree_node_alloc(struct radix_tree_root *root)
diff --git a/debian/patches/features/all/rt/0120-panic-disable-random-on-rt.patch b/debian/patches/features/all/rt/0120-panic-disable-random-on-rt.patch
index 2177db0..b5d0723 100644
--- a/debian/patches/features/all/rt/0120-panic-disable-random-on-rt.patch
+++ b/debian/patches/features/all/rt/0120-panic-disable-random-on-rt.patch
@@ -1,14 +1,14 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 10 Apr 2012 14:34:04 -0400
-Subject: [PATCH 120/374] panic-disable-random-on-rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ecd7904d4764a13e65566843ccf11d5bd6912f24
+Subject: [PATCH 120/380] panic-disable-random-on-rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=21049b76f39742d103e7bd703221553ed03f099c
 
 ---
  kernel/panic.c | 2 ++
  1 file changed, 2 insertions(+)
 
 diff --git a/kernel/panic.c b/kernel/panic.c
-index 3458469..50f4de5 100644
+index 3458469eb7c3..50f4de50e779 100644
 --- a/kernel/panic.c
 +++ b/kernel/panic.c
 @@ -343,9 +343,11 @@ static u64 oops_id;
diff --git a/debian/patches/features/all/rt/0121-ipc-Make-the-ipc-code-rt-aware.patch b/debian/patches/features/all/rt/0121-ipc-Make-the-ipc-code-rt-aware.patch
index 5449cb5..907030d 100644
--- a/debian/patches/features/all/rt/0121-ipc-Make-the-ipc-code-rt-aware.patch
+++ b/debian/patches/features/all/rt/0121-ipc-Make-the-ipc-code-rt-aware.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:12 -0500
-Subject: [PATCH 121/374] ipc: Make the ipc code -rt aware
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=75e3002157b98766f1351a0e2b9c5118f6687ef3
+Subject: [PATCH 121/380] ipc: Make the ipc code -rt aware
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c7b4a6d3d08e7cfe3ff6fc8949ab8a47be4c2cc9
 
 RT serializes the code with the (rt)spinlock but keeps preemption
 enabled. Some parts of the code need to be atomic nevertheless.
@@ -16,7 +16,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 21 insertions(+)
 
 diff --git a/ipc/mqueue.c b/ipc/mqueue.c
-index 5b4293d..2d06b54 100644
+index 5b4293d9819d..2d06b545bfdb 100644
 --- a/ipc/mqueue.c
 +++ b/ipc/mqueue.c
 @@ -820,12 +820,17 @@ static inline void pipelined_send(struct mqueue_inode_info *info,
@@ -38,7 +38,7 @@ index 5b4293d..2d06b54 100644
  
  /* pipelined_receive() - if there is task waiting in sys_mq_timedsend()
 diff --git a/ipc/msg.c b/ipc/msg.c
-index 391e3e0..2eaf6f0 100644
+index 391e3e0a44b5..2eaf6f0dc2c1 100644
 --- a/ipc/msg.c
 +++ b/ipc/msg.c
 @@ -259,12 +259,20 @@ static void expunge_all(struct msg_queue *msq, int res)
diff --git a/debian/patches/features/all/rt/0122-ipc-mqueue-Add-a-critical-section-to-avoid-a-deadloc.patch b/debian/patches/features/all/rt/0122-ipc-mqueue-Add-a-critical-section-to-avoid-a-deadloc.patch
index 690aec0..8260c4b 100644
--- a/debian/patches/features/all/rt/0122-ipc-mqueue-Add-a-critical-section-to-avoid-a-deadloc.patch
+++ b/debian/patches/features/all/rt/0122-ipc-mqueue-Add-a-critical-section-to-avoid-a-deadloc.patch
@@ -1,8 +1,8 @@
 From: KOBAYASHI Yoshitake <yoshitake.kobayashi at toshiba.co.jp>
 Date: Sat, 23 Jul 2011 11:57:36 +0900
-Subject: [PATCH 122/374] ipc/mqueue: Add a critical section to avoid a
+Subject: [PATCH 122/380] ipc/mqueue: Add a critical section to avoid a
  deadlock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=24dd3344253c0678e60ce770d65ac920a46044e3
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=cb8f16b69e51f8e849103889d0edca9ed044fd0b
 
 (Repost for v3.0-rt1 and changed the distination addreses)
 I have tested the following patch on v3.0-rt1 with PREEMPT_RT_FULL.
@@ -36,7 +36,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 6 insertions(+), 2 deletions(-)
 
 diff --git a/ipc/mqueue.c b/ipc/mqueue.c
-index 2d06b54..eec1d99 100644
+index 2d06b545bfdb..eec1d993ae5f 100644
 --- a/ipc/mqueue.c
 +++ b/ipc/mqueue.c
 @@ -844,15 +844,19 @@ static inline void pipelined_receive(struct mqueue_inode_info *info)
diff --git a/debian/patches/features/all/rt/0123-relay-fix-timer-madness.patch b/debian/patches/features/all/rt/0123-relay-fix-timer-madness.patch
index 9d7a895..1e6a788 100644
--- a/debian/patches/features/all/rt/0123-relay-fix-timer-madness.patch
+++ b/debian/patches/features/all/rt/0123-relay-fix-timer-madness.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:44:07 -0500
-Subject: [PATCH 123/374] relay: fix timer madness
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f4ab3204283ad7ce8b6e8767862ee952a811ff3f
+Subject: [PATCH 123/380] relay: fix timer madness
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=cd73b0cf3d5285d060fa8eae66cb406b60eded6b
 
 remove timer calls (!!!) from deep within the tracing infrastructure.
 This was totally bogus code that can cause lockups and worse.  Poll
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 5 insertions(+), 9 deletions(-)
 
 diff --git a/kernel/relay.c b/kernel/relay.c
-index a535fc9..c0af3e6 100644
+index a535fc91a7ba..c0af3e6cf85d 100644
 --- a/kernel/relay.c
 +++ b/kernel/relay.c
 @@ -340,6 +340,10 @@ static void wakeup_readers(unsigned long data)
diff --git a/debian/patches/features/all/rt/0124-net-ipv4-route-use-locks-on-up-rt.patch.patch b/debian/patches/features/all/rt/0124-net-ipv4-route-use-locks-on-up-rt.patch.patch
index 7d73c87..2975bce 100644
--- a/debian/patches/features/all/rt/0124-net-ipv4-route-use-locks-on-up-rt.patch.patch
+++ b/debian/patches/features/all/rt/0124-net-ipv4-route-use-locks-on-up-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 15 Jul 2011 16:24:45 +0200
-Subject: [PATCH 124/374] net-ipv4-route-use-locks-on-up-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=41b089f34342bce87f177957b3c845cc0a222b9b
+Subject: [PATCH 124/380] net-ipv4-route-use-locks-on-up-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f189fb2afdc4e74caf5151b9c568cafd3394f4f6
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/net/ipv4/route.c b/net/ipv4/route.c
-index 8e79a9e..6a7046e 100644
+index 8e79a9e04276..6a7046efdd6b 100644
 --- a/net/ipv4/route.c
 +++ b/net/ipv4/route.c
 @@ -254,7 +254,7 @@ struct rt_hash_bucket {
diff --git a/debian/patches/features/all/rt/0125-workqueue-avoid-the-lock-in-cpu-dying.patch.patch b/debian/patches/features/all/rt/0125-workqueue-avoid-the-lock-in-cpu-dying.patch.patch
index 9f50ad1..42cdf2d 100644
--- a/debian/patches/features/all/rt/0125-workqueue-avoid-the-lock-in-cpu-dying.patch.patch
+++ b/debian/patches/features/all/rt/0125-workqueue-avoid-the-lock-in-cpu-dying.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 24 Jun 2011 20:39:24 +0200
-Subject: [PATCH 125/374] workqueue-avoid-the-lock-in-cpu-dying.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9392d33dec96f060b6e4547ff60b5dc92d129a98
+Subject: [PATCH 125/380] workqueue-avoid-the-lock-in-cpu-dying.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6e88b103dbb36a27944b84f284d0391158f39b66
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 20 insertions(+), 10 deletions(-)
 
 diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index 15063bc..c7e6030 100644
+index 15063bc24234..c7e6030968b4 100644
 --- a/kernel/workqueue.c
 +++ b/kernel/workqueue.c
 @@ -3571,6 +3571,25 @@ static int __devinit workqueue_cpu_callback(struct notifier_block *nfb,
diff --git a/debian/patches/features/all/rt/0126-timers-prepare-for-full-preemption.patch b/debian/patches/features/all/rt/0126-timers-prepare-for-full-preemption.patch
index 70ad80f..671a3b5 100644
--- a/debian/patches/features/all/rt/0126-timers-prepare-for-full-preemption.patch
+++ b/debian/patches/features/all/rt/0126-timers-prepare-for-full-preemption.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:34 -0500
-Subject: [PATCH 126/374] timers: prepare for full preemption
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=676c09177f975546b0f9be6b185d4020bc67961b
+Subject: [PATCH 126/380] timers: prepare for full preemption
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4ea6aca6b15f353e29b0393e065a4ea979803d8b
 
 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
@@ -15,7 +15,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 33 insertions(+), 5 deletions(-)
 
 diff --git a/include/linux/timer.h b/include/linux/timer.h
-index 6abd913..b703477 100644
+index 6abd9138beda..b703477bd2d6 100644
 --- a/include/linux/timer.h
 +++ b/include/linux/timer.h
 @@ -276,7 +276,7 @@ extern void add_timer(struct timer_list *timer);
@@ -28,7 +28,7 @@ index 6abd913..b703477 100644
  #else
  # define del_timer_sync(t)		del_timer(t)
 diff --git a/kernel/timer.c b/kernel/timer.c
-index 349953e..fa61f0a 100644
+index 349953ee9027..fa61f0a51d95 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -76,6 +76,7 @@ struct tvec_root {
diff --git a/debian/patches/features/all/rt/0127-timers-preempt-rt-support.patch b/debian/patches/features/all/rt/0127-timers-preempt-rt-support.patch
index 893a5e5..e3614ea 100644
--- a/debian/patches/features/all/rt/0127-timers-preempt-rt-support.patch
+++ b/debian/patches/features/all/rt/0127-timers-preempt-rt-support.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:20 -0500
-Subject: [PATCH 127/374] timers: preempt-rt support
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bf113529fb0c73aaeed48a50dc8c942d623285d3
+Subject: [PATCH 127/380] timers: preempt-rt support
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d592f2a0e8d94cba040d1bd362b890cf672d4635
 
 Signed-off-by: Ingo Molnar <mingo at elte.hu>
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 17 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/timer.c b/kernel/timer.c
-index fa61f0a..ddc7b7e 100644
+index fa61f0a51d95..ddc7b7ee2dfd 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -1298,6 +1298,22 @@ unsigned long get_next_timer_interrupt(unsigned long now)
diff --git a/debian/patches/features/all/rt/0128-timers-fix-timer-hotplug-on-rt.patch b/debian/patches/features/all/rt/0128-timers-fix-timer-hotplug-on-rt.patch
index 12c41b7..8cfb26d 100644
--- a/debian/patches/features/all/rt/0128-timers-fix-timer-hotplug-on-rt.patch
+++ b/debian/patches/features/all/rt/0128-timers-fix-timer-hotplug-on-rt.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:32 -0500
-Subject: [PATCH 128/374] timers: fix timer hotplug on -rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6735bac3cff4ab56150d6ab1c435c118b501ef73
+Subject: [PATCH 128/380] timers: fix timer hotplug on -rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=38dda39f7e5c1465687388ad4135c1411f1bed58
 
 Here we are in the CPU_DEAD notifier, and we must not sleep nor
 enable interrupts.
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 9 insertions(+), 3 deletions(-)
 
 diff --git a/kernel/timer.c b/kernel/timer.c
-index ddc7b7e..8b3eb6e 100644
+index ddc7b7ee2dfd..8b3eb6e3aaf2 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -1717,6 +1717,7 @@ static void __cpuinit migrate_timers(int cpu)
diff --git a/debian/patches/features/all/rt/0129-timers-mov-printk_tick-to-soft-interrupt.patch b/debian/patches/features/all/rt/0129-timers-mov-printk_tick-to-soft-interrupt.patch
index d2b42a9..c086414 100644
--- a/debian/patches/features/all/rt/0129-timers-mov-printk_tick-to-soft-interrupt.patch
+++ b/debian/patches/features/all/rt/0129-timers-mov-printk_tick-to-soft-interrupt.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 3 Jul 2009 08:44:30 -0500
-Subject: [PATCH 129/374] timers: mov printk_tick to soft interrupt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f1c09d47e2c139027dd2ea18cf076ffda0cc33f0
+Subject: [PATCH 129/380] timers: mov printk_tick to soft interrupt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c95aebb23b86940db0553aa12eea1fc4781b24f0
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 Signed-off-by: Ingo Molnar <mingo at elte.hu>
@@ -10,7 +10,7 @@ Signed-off-by: Ingo Molnar <mingo at elte.hu>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/timer.c b/kernel/timer.c
-index 8b3eb6e..20bd95a 100644
+index 8b3eb6e3aaf2..20bd95ad31a8 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -1340,7 +1340,6 @@ void update_process_times(int user_tick)
diff --git a/debian/patches/features/all/rt/0130-timer-delay-waking-softirqs-from-the-jiffy-tick.patch b/debian/patches/features/all/rt/0130-timer-delay-waking-softirqs-from-the-jiffy-tick.patch
index e6a8d5e..c8d4b2b 100644
--- a/debian/patches/features/all/rt/0130-timer-delay-waking-softirqs-from-the-jiffy-tick.patch
+++ b/debian/patches/features/all/rt/0130-timer-delay-waking-softirqs-from-the-jiffy-tick.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <peterz at infradead.org>
 Date: Fri, 21 Aug 2009 11:56:45 +0200
-Subject: [PATCH 130/374] timer: delay waking softirqs from the jiffy tick
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0210d1701c81c49b8f71723bccf615cbd8680926
+Subject: [PATCH 130/380] timer: delay waking softirqs from the jiffy tick
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=dc4ffc261f7a25d0e27779582e054efb34a52a05
 
 People were complaining about broken balancing with the recent -rt
 series.
@@ -57,7 +57,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/timer.c b/kernel/timer.c
-index 20bd95a..9a1f684 100644
+index 20bd95ad31a8..9a1f6844a0c5 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -1338,13 +1338,13 @@ void update_process_times(int user_tick)
diff --git a/debian/patches/features/all/rt/0131-timers-Avoid-the-switch-timers-base-set-to-NULL-tric.patch b/debian/patches/features/all/rt/0131-timers-Avoid-the-switch-timers-base-set-to-NULL-tric.patch
index ed0a114..6a5224c 100644
--- a/debian/patches/features/all/rt/0131-timers-Avoid-the-switch-timers-base-set-to-NULL-tric.patch
+++ b/debian/patches/features/all/rt/0131-timers-Avoid-the-switch-timers-base-set-to-NULL-tric.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 21 Jul 2011 15:23:39 +0200
-Subject: [PATCH 131/374] timers: Avoid the switch timers base set to NULL
+Subject: [PATCH 131/380] timers: Avoid the switch timers base set to NULL
  trick on RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d58d7bfef372f1eaaf44eb0fdaddecac6e529b72
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=127c24e8e85cfe63cf61369c3c0efa05d617a0c1
 
 On RT that code is preemptible, so we cannot assign NULL to timers
 base as a preempter would spin forever in lock_timer_base().
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 32 insertions(+), 8 deletions(-)
 
 diff --git a/kernel/timer.c b/kernel/timer.c
-index 9a1f684..2adeda8 100644
+index 9a1f6844a0c5..2adeda867d95 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -658,6 +658,36 @@ static struct tvec_base *lock_timer_base(struct timer_list *timer,
diff --git a/debian/patches/features/all/rt/0132-printk-Don-t-call-printk_tick-in-printk_needs_cpu-on.patch b/debian/patches/features/all/rt/0132-printk-Don-t-call-printk_tick-in-printk_needs_cpu-on.patch
index f38691a..0e88045 100644
--- a/debian/patches/features/all/rt/0132-printk-Don-t-call-printk_tick-in-printk_needs_cpu-on.patch
+++ b/debian/patches/features/all/rt/0132-printk-Don-t-call-printk_tick-in-printk_needs_cpu-on.patch
@@ -1,8 +1,8 @@
 From: Yong Zhang <yong.zhang0 at gmail.com>
 Date: Sun, 16 Oct 2011 18:56:45 +0800
-Subject: [PATCH 132/374] printk: Don't call printk_tick in printk_needs_cpu()
+Subject: [PATCH 132/380] printk: Don't call printk_tick in printk_needs_cpu()
  on RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ae6ad3d7ecf0ed1d5d1f02a5373fa802ce6f96d7
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=afcb6925ca007880aef0e89717713dfd2bb86892
 
 printk_tick() can't be called in atomic context when RT is enabled,
 otherwise below warning will show:
@@ -33,7 +33,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/printk.c b/kernel/printk.c
-index 6545c60..e6eadba 100644
+index 6545c602fa04..e6eadba7217a 100644
 --- a/kernel/printk.c
 +++ b/kernel/printk.c
 @@ -1284,8 +1284,8 @@ void printk_tick(void)
diff --git a/debian/patches/features/all/rt/0133-hrtimers-prepare-full-preemption.patch b/debian/patches/features/all/rt/0133-hrtimers-prepare-full-preemption.patch
index 0bf2a21..35690a9 100644
--- a/debian/patches/features/all/rt/0133-hrtimers-prepare-full-preemption.patch
+++ b/debian/patches/features/all/rt/0133-hrtimers-prepare-full-preemption.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:29:34 -0500
-Subject: [PATCH 133/374] hrtimers: prepare full preemption
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b3bed66b7aec4811abc73af6976e52212ecc43cd
+Subject: [PATCH 133/380] hrtimers: prepare full preemption
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2ed6c0f78ae6c5bef9b1dbb259964c50d638976a
 
 Make cancellation of a running callback in softirq context safe
 against preemption.
@@ -15,11 +15,9 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  kernel/posix-timers.c   | 33 +++++++++++++++++++++++++++++++++
  4 files changed, 76 insertions(+), 1 deletion(-)
 
-diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h
-index cc07d27..75b2545 100644
 --- a/include/linux/hrtimer.h
 +++ b/include/linux/hrtimer.h
-@@ -189,6 +189,9 @@ struct hrtimer_cpu_base {
+@@ -191,6 +191,9 @@ struct hrtimer_cpu_base {
  	unsigned long			nr_hangs;
  	ktime_t				max_hang_time;
  #endif
@@ -29,7 +27,7 @@ index cc07d27..75b2545 100644
  	struct hrtimer_clock_base	clock_base[HRTIMER_MAX_CLOCK_BASES];
  };
  
-@@ -382,6 +385,13 @@ static inline int hrtimer_restart(struct hrtimer *timer)
+@@ -407,6 +410,13 @@ static inline int hrtimer_restart(struct
  	return hrtimer_start_expires(timer, HRTIMER_MODE_ABS);
  }
  
@@ -41,13 +39,11 @@ index cc07d27..75b2545 100644
 +#endif
 +
  /* Query timers: */
- extern ktime_t hrtimer_get_remaining(const struct hrtimer *timer);
- extern int hrtimer_get_res(const clockid_t which_clock, struct timespec *tp);
-diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index fa8c09b..818b2ec 100644
+ extern ktime_t __hrtimer_get_remaining(const struct hrtimer *timer, bool adjust);
+ 
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
-@@ -874,6 +874,32 @@ u64 hrtimer_forward(struct hrtimer *timer, ktime_t now, ktime_t interval)
+@@ -874,6 +874,32 @@ u64 hrtimer_forward(struct hrtimer *time
  }
  EXPORT_SYMBOL_GPL(hrtimer_forward);
  
@@ -80,7 +76,7 @@ index fa8c09b..818b2ec 100644
  /*
   * enqueue_hrtimer - internal function to (re)start a timer
   *
-@@ -1113,7 +1139,7 @@ int hrtimer_cancel(struct hrtimer *timer)
+@@ -1120,7 +1146,7 @@ int hrtimer_cancel(struct hrtimer *timer
  
  		if (ret >= 0)
  			return ret;
@@ -89,7 +85,7 @@ index fa8c09b..818b2ec 100644
  	}
  }
  EXPORT_SYMBOL_GPL(hrtimer_cancel);
-@@ -1532,6 +1558,8 @@ void hrtimer_run_queues(void)
+@@ -1554,6 +1580,8 @@ void hrtimer_run_queues(void)
  		}
  		raw_spin_unlock(&cpu_base->lock);
  	}
@@ -98,7 +94,7 @@ index fa8c09b..818b2ec 100644
  }
  
  /*
-@@ -1692,6 +1720,9 @@ static void __cpuinit init_hrtimers_cpu(int cpu)
+@@ -1714,6 +1742,9 @@ static void __cpuinit init_hrtimers_cpu(
  	}
  
  	hrtimer_init_hres(cpu_base);
@@ -108,8 +104,6 @@ index fa8c09b..818b2ec 100644
  }
  
  #ifdef CONFIG_HOTPLUG_CPU
-diff --git a/kernel/itimer.c b/kernel/itimer.c
-index d802883..2c582fc 100644
 --- a/kernel/itimer.c
 +++ b/kernel/itimer.c
 @@ -214,6 +214,7 @@ again:
@@ -120,11 +114,9 @@ index d802883..2c582fc 100644
  			goto again;
  		}
  		expires = timeval_to_ktime(value->it_value);
-diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c
-index 81ad8aa..f183690 100644
 --- a/kernel/posix-timers.c
 +++ b/kernel/posix-timers.c
-@@ -774,6 +774,20 @@ SYSCALL_DEFINE1(timer_getoverrun, timer_t, timer_id)
+@@ -774,6 +774,20 @@ SYSCALL_DEFINE1(timer_getoverrun, timer_
  	return overrun;
  }
  
@@ -182,7 +174,7 @@ index 81ad8aa..f183690 100644
  
  	spin_lock(&current->sighand->siglock);
  	list_del(&timer->list);
-@@ -928,8 +951,18 @@ static void itimer_delete(struct k_itimer *timer)
+@@ -928,8 +951,18 @@ static void itimer_delete(struct k_itime
  retry_delete:
  	spin_lock_irqsave(&timer->it_lock, flags);
  
diff --git a/debian/patches/features/all/rt/0134-hrtimer-fixup-hrtimer-callback-changes-for-preempt-r.patch b/debian/patches/features/all/rt/0134-hrtimer-fixup-hrtimer-callback-changes-for-preempt-r.patch
index 6981f40..343dcfc 100644
--- a/debian/patches/features/all/rt/0134-hrtimer-fixup-hrtimer-callback-changes-for-preempt-r.patch
+++ b/debian/patches/features/all/rt/0134-hrtimer-fixup-hrtimer-callback-changes-for-preempt-r.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 3 Jul 2009 08:44:31 -0500
-Subject: [PATCH 134/374] hrtimer: fixup hrtimer callback changes for
+Subject: [PATCH 134/380] hrtimer: fixup hrtimer callback changes for
  preempt-rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1ca013778872f4a125f233dca4aace4868eda024
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=dc8990fddef846033d9088b925f915cfd9613fb0
 
 In preempt-rt we can not call the callbacks which take sleeping locks
 from the timer interrupt context.
@@ -12,6 +12,7 @@ delivery problem for real.
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 Signed-off-by: Ingo Molnar <mingo at elte.hu>
+[bwh: Adjust context to apply after hrtimer change in 3.2.78]
 ---
  include/linux/hrtimer.h  |   3 +
  kernel/hrtimer.c         | 197 +++++++++++++++++++++++++++++++++++++++++------
@@ -20,20 +21,18 @@ Signed-off-by: Ingo Molnar <mingo at elte.hu>
  kernel/watchdog.c        |   1 +
  5 files changed, 182 insertions(+), 22 deletions(-)
 
-diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h
-index 75b2545..26b008b 100644
 --- a/include/linux/hrtimer.h
 +++ b/include/linux/hrtimer.h
-@@ -111,6 +111,8 @@ struct hrtimer {
- 	enum hrtimer_restart		(*function)(struct hrtimer *);
- 	struct hrtimer_clock_base	*base;
+@@ -117,6 +117,8 @@ struct hrtimer {
+ #else
  	unsigned long			state;
+ #endif
 +	struct list_head		cb_entry;
 +	int				irqsafe;
  #ifdef CONFIG_TIMER_STATS
  	int				start_pid;
  	void				*start_site;
-@@ -147,6 +149,7 @@ struct hrtimer_clock_base {
+@@ -153,6 +155,7 @@ struct hrtimer_clock_base {
  	int			index;
  	clockid_t		clockid;
  	struct timerqueue_head	active;
@@ -41,11 +40,9 @@ index 75b2545..26b008b 100644
  	ktime_t			resolution;
  	ktime_t			(*get_time)(void);
  	ktime_t			softirq_time;
-diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index 818b2ec..9261107 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
-@@ -616,8 +616,7 @@ static int hrtimer_reprogram(struct hrtimer *timer,
+@@ -616,8 +616,7 @@ static int hrtimer_reprogram(struct hrti
  	 * When the callback is running, we do not reprogram the clock event
  	 * device. The timer callback is either running on a different CPU or
  	 * the callback is executed in the hrtimer_interrupt context. The
@@ -55,7 +52,7 @@ index 818b2ec..9261107 100644
  	 */
  	if (hrtimer_callback_running(timer))
  		return 0;
-@@ -652,6 +651,9 @@ static int hrtimer_reprogram(struct hrtimer *timer,
+@@ -652,6 +651,9 @@ static int hrtimer_reprogram(struct hrti
  	return res;
  }
  
@@ -65,7 +62,7 @@ index 818b2ec..9261107 100644
  /*
   * Initialize the high resolution related parts of cpu_base
   */
-@@ -757,6 +759,11 @@ static inline int hrtimer_enqueue_reprogram(struct hrtimer *timer,
+@@ -757,6 +759,11 @@ static inline int hrtimer_enqueue_reprog
  }
  static inline void hrtimer_init_hres(struct hrtimer_cpu_base *base) { }
  static inline void retrigger_next_event(void *arg) { }
@@ -77,7 +74,7 @@ index 818b2ec..9261107 100644
  
  #endif /* CONFIG_HIGH_RES_TIMERS */
  
-@@ -891,9 +898,9 @@ void hrtimer_wait_for_timer(const struct hrtimer *timer)
+@@ -891,9 +898,9 @@ void hrtimer_wait_for_timer(const struct
  {
  	struct hrtimer_clock_base *base = timer->base;
  
@@ -89,7 +86,7 @@ index 818b2ec..9261107 100644
  }
  
  #else
-@@ -943,6 +950,11 @@ static void __remove_hrtimer(struct hrtimer *timer,
+@@ -943,6 +950,11 @@ static void __remove_hrtimer(struct hrti
  	if (!(timer->state & HRTIMER_STATE_ENQUEUED))
  		goto out;
  
@@ -101,7 +98,7 @@ index 818b2ec..9261107 100644
  	next_timer = timerqueue_getnext(&base->active);
  	timerqueue_del(&base->active, &timer->node);
  	if (&timer->node == next_timer) {
-@@ -1039,8 +1051,29 @@ int __hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim,
+@@ -1046,8 +1058,29 @@ int __hrtimer_start_range_ns(struct hrti
  	 *
  	 * XXX send_remote_softirq() ?
  	 */
@@ -133,7 +130,7 @@ index 818b2ec..9261107 100644
  		if (wakeup) {
  			/*
  			 * We need to drop cpu_base->lock to avoid a
-@@ -1218,6 +1251,7 @@ static void __hrtimer_init(struct hrtimer *timer, clockid_t clock_id,
+@@ -1231,6 +1264,7 @@ static void __hrtimer_init(struct hrtime
  
  	base = hrtimer_clockid_to_base(clock_id);
  	timer->base = &cpu_base->clock_base[base];
@@ -141,7 +138,7 @@ index 818b2ec..9261107 100644
  	timerqueue_init(&timer->node);
  
  #ifdef CONFIG_TIMER_STATS
-@@ -1304,10 +1338,118 @@ static void __run_hrtimer(struct hrtimer *timer, ktime_t *now)
+@@ -1326,10 +1360,118 @@ static void __run_hrtimer(struct hrtimer
  	timer->state &= ~HRTIMER_STATE_CALLBACK;
  }
  
@@ -262,7 +259,7 @@ index 818b2ec..9261107 100644
  /*
   * High resolution timer interrupt
   * Called with interrupts disabled
-@@ -1316,7 +1458,7 @@ void hrtimer_interrupt(struct clock_event_device *dev)
+@@ -1338,7 +1480,7 @@ void hrtimer_interrupt(struct clock_even
  {
  	struct hrtimer_cpu_base *cpu_base = &__get_cpu_var(hrtimer_bases);
  	ktime_t expires_next, now, entry_time, delta;
@@ -271,7 +268,7 @@ index 818b2ec..9261107 100644
  
  	BUG_ON(!cpu_base->hres_active);
  	cpu_base->nr_events++;
-@@ -1384,7 +1526,10 @@ retry:
+@@ -1406,7 +1548,10 @@ retry:
  				break;
  			}
  
@@ -283,7 +280,7 @@ index 818b2ec..9261107 100644
  		}
  	}
  
-@@ -1399,6 +1544,10 @@ retry:
+@@ -1421,6 +1566,10 @@ retry:
  	if (expires_next.tv64 == KTIME_MAX ||
  	    !tick_program_event(expires_next, 0)) {
  		cpu_base->hang_detected = 0;
@@ -294,7 +291,7 @@ index 818b2ec..9261107 100644
  		return;
  	}
  
-@@ -1479,6 +1628,12 @@ void hrtimer_peek_ahead_timers(void)
+@@ -1501,6 +1650,12 @@ void hrtimer_peek_ahead_timers(void)
  	local_irq_restore(flags);
  }
  
@@ -307,7 +304,7 @@ index 818b2ec..9261107 100644
  static void run_hrtimer_softirq(struct softirq_action *h)
  {
  	struct hrtimer_cpu_base *cpu_base = &__get_cpu_var(hrtimer_bases);
-@@ -1488,15 +1643,9 @@ static void run_hrtimer_softirq(struct softirq_action *h)
+@@ -1510,15 +1665,9 @@ static void run_hrtimer_softirq(struct s
  		clock_was_set();
  	}
  
@@ -324,7 +321,7 @@ index 818b2ec..9261107 100644
  /*
   * Called from timer softirq every jiffy, expire hrtimers:
   *
-@@ -1529,7 +1678,7 @@ void hrtimer_run_queues(void)
+@@ -1551,7 +1700,7 @@ void hrtimer_run_queues(void)
  	struct timerqueue_node *node;
  	struct hrtimer_cpu_base *cpu_base = &__get_cpu_var(hrtimer_bases);
  	struct hrtimer_clock_base *base;
@@ -333,7 +330,7 @@ index 818b2ec..9261107 100644
  
  	if (hrtimer_hres_active())
  		return;
-@@ -1554,12 +1703,16 @@ void hrtimer_run_queues(void)
+@@ -1576,12 +1725,16 @@ void hrtimer_run_queues(void)
  					hrtimer_get_expires_tv64(timer))
  				break;
  
@@ -352,7 +349,7 @@ index 818b2ec..9261107 100644
  }
  
  /*
-@@ -1581,6 +1734,7 @@ static enum hrtimer_restart hrtimer_wakeup(struct hrtimer *timer)
+@@ -1603,6 +1756,7 @@ static enum hrtimer_restart hrtimer_wake
  void hrtimer_init_sleeper(struct hrtimer_sleeper *sl, struct task_struct *task)
  {
  	sl->timer.function = hrtimer_wakeup;
@@ -360,7 +357,7 @@ index 818b2ec..9261107 100644
  	sl->task = task;
  }
  EXPORT_SYMBOL_GPL(hrtimer_init_sleeper);
-@@ -1717,6 +1871,7 @@ static void __cpuinit init_hrtimers_cpu(int cpu)
+@@ -1739,6 +1893,7 @@ static void __cpuinit init_hrtimers_cpu(
  	for (i = 0; i < HRTIMER_MAX_CLOCK_BASES; i++) {
  		cpu_base->clock_base[i].cpu_base = cpu_base;
  		timerqueue_init_head(&cpu_base->clock_base[i].active);
@@ -368,7 +365,7 @@ index 818b2ec..9261107 100644
  	}
  
  	hrtimer_init_hres(cpu_base);
-@@ -1835,9 +1990,7 @@ void __init hrtimers_init(void)
+@@ -1857,9 +2012,7 @@ void __init hrtimers_init(void)
  	hrtimer_cpu_notify(&hrtimers_nb, (unsigned long)CPU_UP_PREPARE,
  			  (void *)(long)smp_processor_id());
  	register_cpu_notifier(&hrtimers_nb);
@@ -378,11 +375,9 @@ index 818b2ec..9261107 100644
  }
  
  /**
-diff --git a/kernel/sched.c b/kernel/sched.c
-index c729029..583f3b9 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -189,6 +189,7 @@ void init_rt_bandwidth(struct rt_bandwidth *rt_b, u64 period, u64 runtime)
+@@ -189,6 +189,7 @@ void init_rt_bandwidth(struct rt_bandwid
  
  	hrtimer_init(&rt_b->rt_period_timer,
  			CLOCK_MONOTONIC, HRTIMER_MODE_REL);
@@ -390,7 +385,7 @@ index c729029..583f3b9 100644
  	rt_b->rt_period_timer.function = sched_rt_period_timer;
  }
  
-@@ -1274,6 +1275,7 @@ static void init_rq_hrtick(struct rq *rq)
+@@ -1276,6 +1277,7 @@ static void init_rq_hrtick(struct rq *rq
  
  	hrtimer_init(&rq->hrtick_timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
  	rq->hrtick_timer.function = hrtick;
@@ -398,8 +393,6 @@ index c729029..583f3b9 100644
  }
  #else	/* CONFIG_SCHED_HRTICK */
  static inline void hrtick_clear(struct rq *rq)
-diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
-index c92282e..b81eb81 100644
 --- a/kernel/time/tick-sched.c
 +++ b/kernel/time/tick-sched.c
 @@ -807,6 +807,7 @@ void tick_setup_sched_timer(void)
@@ -410,11 +403,9 @@ index c92282e..b81eb81 100644
  	ts->sched_timer.function = tick_sched_timer;
  
  	/* Get the next period (per cpu) */
-diff --git a/kernel/watchdog.c b/kernel/watchdog.c
-index 7016b38..3a4d0bc 100644
 --- a/kernel/watchdog.c
 +++ b/kernel/watchdog.c
-@@ -436,6 +436,7 @@ static void watchdog_prepare_cpu(int cpu)
+@@ -436,6 +436,7 @@ static void watchdog_prepare_cpu(int cpu
  	WARN_ON(per_cpu(softlockup_watchdog, cpu));
  	hrtimer_init(hrtimer, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
  	hrtimer->function = watchdog_timer_fn;
diff --git a/debian/patches/features/all/rt/0135-hrtimer-Don-t-call-the-timer-handler-from-hrtimer_st.patch b/debian/patches/features/all/rt/0135-hrtimer-Don-t-call-the-timer-handler-from-hrtimer_st.patch
index 496718e..b245b6f 100644
--- a/debian/patches/features/all/rt/0135-hrtimer-Don-t-call-the-timer-handler-from-hrtimer_st.patch
+++ b/debian/patches/features/all/rt/0135-hrtimer-Don-t-call-the-timer-handler-from-hrtimer_st.patch
@@ -1,8 +1,8 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Fri, 12 Aug 2011 17:39:54 +0200
-Subject: [PATCH 135/374] hrtimer: Don't call the timer handler from
+Subject: [PATCH 135/380] hrtimer: Don't call the timer handler from
  hrtimer_start
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=25f40f71494cf7d914fc0c4358fb1355a0008e19
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3df39c981220732b425f86ccd63c9519c586dc1c
 
  [<ffffffff812de4a9>] __delay+0xf/0x11
  [<ffffffff812e36e9>] do_raw_spin_lock+0xd2/0x13c
@@ -33,7 +33,7 @@ Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
  1 file changed, 22 insertions(+), 24 deletions(-)
 
 diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index 9261107..a536f64 100644
+index 9261107f5171..a536f6422be6 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
 @@ -1051,30 +1051,19 @@ int __hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim,
diff --git a/debian/patches/features/all/rt/0136-hrtimer-fix-reprogram-madness.patch.patch b/debian/patches/features/all/rt/0136-hrtimer-fix-reprogram-madness.patch.patch
index 4d5ea9c..c3b47d3 100644
--- a/debian/patches/features/all/rt/0136-hrtimer-fix-reprogram-madness.patch.patch
+++ b/debian/patches/features/all/rt/0136-hrtimer-fix-reprogram-madness.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 14 Sep 2011 14:48:43 +0200
-Subject: [PATCH 136/374] hrtimer-fix-reprogram-madness.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=933b8f9747138fd84e33bb832b328417b71a7474
+Subject: [PATCH 136/380] hrtimer-fix-reprogram-madness.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=cf84cdb8d80d1b09f5a066319767392224609a8e
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 7 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index a536f64..04f1acd 100644
+index a536f6422be6..04f1acd5b61a 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
 @@ -1358,7 +1358,11 @@ static void hrtimer_rt_reprogram(int restart, struct hrtimer *timer,
diff --git a/debian/patches/features/all/rt/0137-timer-fd-Prevent-live-lock.patch b/debian/patches/features/all/rt/0137-timer-fd-Prevent-live-lock.patch
index 7c70a98..462a4c8 100644
--- a/debian/patches/features/all/rt/0137-timer-fd-Prevent-live-lock.patch
+++ b/debian/patches/features/all/rt/0137-timer-fd-Prevent-live-lock.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 25 Jan 2012 11:08:40 +0100
-Subject: [PATCH 137/374] timer-fd: Prevent live lock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=55e73bc733eb036ab8b0a518473c16390014ae43
+Subject: [PATCH 137/380] timer-fd: Prevent live lock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d9d5e65bb6010b3a4a49cc7df034111300b0d74c
 
 If hrtimer_try_to_cancel() requires a retry, then depending on the
 priority setting te retry loop might prevent timer callback completion
@@ -16,7 +16,7 @@ Cc: stable-rt at vger.kernel.org
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/fs/timerfd.c b/fs/timerfd.c
-index dffeb37..57f0e4e 100644
+index dffeb3795af1..57f0e4e86f0a 100644
 --- a/fs/timerfd.c
 +++ b/fs/timerfd.c
 @@ -313,7 +313,7 @@ SYSCALL_DEFINE4(timerfd_settime, int, ufd, int, flags,
diff --git a/debian/patches/features/all/rt/0138-posix-timers-thread-posix-cpu-timers-on-rt.patch b/debian/patches/features/all/rt/0138-posix-timers-thread-posix-cpu-timers-on-rt.patch
index b0ea778..6dc6d42 100644
--- a/debian/patches/features/all/rt/0138-posix-timers-thread-posix-cpu-timers-on-rt.patch
+++ b/debian/patches/features/all/rt/0138-posix-timers-thread-posix-cpu-timers-on-rt.patch
@@ -1,7 +1,7 @@
 From: John Stultz <johnstul at us.ibm.com>
 Date: Fri, 3 Jul 2009 08:29:58 -0500
-Subject: [PATCH 138/374] posix-timers: thread posix-cpu-timers on -rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=04e78fc271c6084d7556161bd419c67158ed657e
+Subject: [PATCH 138/380] posix-timers: thread posix-cpu-timers on -rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1805562116cb694e9cdb42390edad89189aa5574
 
 posix-cpu-timer code takes non -rt safe locks in hard irq
 context. Move it to a thread.
@@ -19,7 +19,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  5 files changed, 190 insertions(+), 6 deletions(-)
 
 diff --git a/include/linux/init_task.h b/include/linux/init_task.h
-index cdde2b37..3202e80 100644
+index cdde2b379c8d..3202e80e5796 100644
 --- a/include/linux/init_task.h
 +++ b/include/linux/init_task.h
 @@ -142,6 +142,12 @@ extern struct task_group root_task_group;
@@ -44,7 +44,7 @@ index cdde2b37..3202e80 100644
  		[PIDTYPE_PID]  = INIT_PID_LINK(PIDTYPE_PID),		\
  		[PIDTYPE_PGID] = INIT_PID_LINK(PIDTYPE_PGID),		\
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 514bb5d..059a4cb 100644
+index 6044cecea4ba..caba177eae22 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1364,6 +1364,9 @@ struct task_struct {
@@ -58,7 +58,7 @@ index 514bb5d..059a4cb 100644
  /* process credentials */
  	const struct cred __rcu *real_cred; /* objective and real subjective task
 diff --git a/init/main.c b/init/main.c
-index 85b1b3d..7bf452a 100644
+index 85b1b3dfa7fe..7bf452a4743b 100644
 --- a/init/main.c
 +++ b/init/main.c
 @@ -69,6 +69,7 @@
@@ -70,7 +70,7 @@ index 85b1b3d..7bf452a 100644
  #include <asm/io.h>
  #include <asm/bugs.h>
 diff --git a/kernel/fork.c b/kernel/fork.c
-index ed468a3..84115e7 100644
+index ed468a34b333..84115e74de17 100644
 --- a/kernel/fork.c
 +++ b/kernel/fork.c
 @@ -1031,6 +1031,9 @@ void mm_init_owner(struct mm_struct *mm, struct task_struct *p)
@@ -84,7 +84,7 @@ index ed468a3..84115e7 100644
  	tsk->cputime_expires.virt_exp = cputime_zero;
  	tsk->cputime_expires.sched_exp = 0;
 diff --git a/kernel/posix-cpu-timers.c b/kernel/posix-cpu-timers.c
-index 962c291..cff1757 100644
+index 962c291224d7..cff175794fd9 100644
 --- a/kernel/posix-cpu-timers.c
 +++ b/kernel/posix-cpu-timers.c
 @@ -701,7 +701,7 @@ static int posix_cpu_timer_set(struct k_itimer *timer, int flags,
diff --git a/debian/patches/features/all/rt/0139-posix-timers-Shorten-posix_cpu_timers-CPU-kernel-thr.patch b/debian/patches/features/all/rt/0139-posix-timers-Shorten-posix_cpu_timers-CPU-kernel-thr.patch
index 095ebbf..98640fa 100644
--- a/debian/patches/features/all/rt/0139-posix-timers-Shorten-posix_cpu_timers-CPU-kernel-thr.patch
+++ b/debian/patches/features/all/rt/0139-posix-timers-Shorten-posix_cpu_timers-CPU-kernel-thr.patch
@@ -1,8 +1,8 @@
 From: Arnaldo Carvalho de Melo <acme at redhat.com>
 Date: Fri, 3 Jul 2009 08:30:00 -0500
-Subject: [PATCH 139/374] posix-timers: Shorten posix_cpu_timers/<CPU> kernel
+Subject: [PATCH 139/380] posix-timers: Shorten posix_cpu_timers/<CPU> kernel
  thread names
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=020f840dfb22231a70db3d0d4944a29d46c65f54
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5ed61d6f6ca64375a388cab36b94c29c401d10bc
 
 Shorten the softirq kernel thread names because they always overflow the
 limited comm length, appearing as "posix_cpu_timer" CPU# times.
@@ -15,7 +15,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/posix-cpu-timers.c b/kernel/posix-cpu-timers.c
-index cff1757..851f93d 100644
+index cff175794fd9..851f93df72e1 100644
 --- a/kernel/posix-cpu-timers.c
 +++ b/kernel/posix-cpu-timers.c
 @@ -1479,7 +1479,7 @@ static int posix_cpu_thread_call(struct notifier_block *nfb,
diff --git a/debian/patches/features/all/rt/0140-posix-timers-Avoid-wakeups-when-no-timers-are-active.patch b/debian/patches/features/all/rt/0140-posix-timers-Avoid-wakeups-when-no-timers-are-active.patch
index 1fec98c..8c94cf1 100644
--- a/debian/patches/features/all/rt/0140-posix-timers-Avoid-wakeups-when-no-timers-are-active.patch
+++ b/debian/patches/features/all/rt/0140-posix-timers-Avoid-wakeups-when-no-timers-are-active.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 3 Jul 2009 08:44:44 -0500
-Subject: [PATCH 140/374] posix-timers: Avoid wakeups when no timers are active
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1ffc9b8c4b91fa1bb9d96a22d3fda17ec461edc2
+Subject: [PATCH 140/380] posix-timers: Avoid wakeups when no timers are active
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=81a6ccfa1b7820dfb87bc16adcf11c9d86e81f56
 
 Waking the thread even when no timers are scheduled is useless.
 
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 18 insertions(+), 3 deletions(-)
 
 diff --git a/kernel/posix-cpu-timers.c b/kernel/posix-cpu-timers.c
-index 851f93d..61e7344 100644
+index 851f93df72e1..61e734429919 100644
 --- a/kernel/posix-cpu-timers.c
 +++ b/kernel/posix-cpu-timers.c
 @@ -1436,6 +1436,21 @@ wait_to_die:
diff --git a/debian/patches/features/all/rt/0141-sched-delay-put-task.patch.patch b/debian/patches/features/all/rt/0141-sched-delay-put-task.patch.patch
index b79d51e..9fc4a57 100644
--- a/debian/patches/features/all/rt/0141-sched-delay-put-task.patch.patch
+++ b/debian/patches/features/all/rt/0141-sched-delay-put-task.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 31 May 2011 16:59:16 +0200
-Subject: [PATCH 141/374] sched-delay-put-task.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e38f514918d63d7e0560991c0b3168d965ee467e
+Subject: [PATCH 141/380] sched-delay-put-task.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=92d4e936170305838b263fe6b4e6e3f54f3b001b
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -46,7 +46,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  extern void task_times(struct task_struct *p, cputime_t *ut, cputime_t *st);
  extern void thread_group_times(struct task_struct *p, cputime_t *ut, cputime_t *st);
 diff --git a/kernel/fork.c b/kernel/fork.c
-index 84115e7..8b739b0 100644
+index 84115e74de17..8b739b021c35 100644
 --- a/kernel/fork.c
 +++ b/kernel/fork.c
 @@ -198,7 +198,18 @@ void __put_task_struct(struct task_struct *tsk)
diff --git a/debian/patches/features/all/rt/0142-sched-limit-nr-migrate.patch.patch b/debian/patches/features/all/rt/0142-sched-limit-nr-migrate.patch.patch
index b92ba85..63c83da 100644
--- a/debian/patches/features/all/rt/0142-sched-limit-nr-migrate.patch.patch
+++ b/debian/patches/features/all/rt/0142-sched-limit-nr-migrate.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 6 Jun 2011 12:12:51 +0200
-Subject: [PATCH 142/374] sched-limit-nr-migrate.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=cd1e531952af0b69e64a449e42c3616b39152791
+Subject: [PATCH 142/380] sched-limit-nr-migrate.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=875d97982f3849a6e0e4074afc11732daa4bad30
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 4 insertions(+)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 583f3b9..f5229d0 100644
+index b60ab1255af1..3bc2b9255a62 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
 @@ -939,7 +939,11 @@ late_initcall(sched_init_debug);
diff --git a/debian/patches/features/all/rt/0143-sched-mmdrop-delayed.patch.patch b/debian/patches/features/all/rt/0143-sched-mmdrop-delayed.patch.patch
index c87fe88..45b09e9 100644
--- a/debian/patches/features/all/rt/0143-sched-mmdrop-delayed.patch.patch
+++ b/debian/patches/features/all/rt/0143-sched-mmdrop-delayed.patch.patch
@@ -1,12 +1,13 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 6 Jun 2011 12:20:33 +0200
-Subject: [PATCH 143/374] sched-mmdrop-delayed.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f50049ed85e8abb68ad9f970d000e1df45ed7097
+Subject: [PATCH 143/380] sched-mmdrop-delayed.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=56d6be032eb8fc05810274954bab0b4b80972cfa
 
 Needs thread context (pgd_lock) -> ifdeffed. workqueues wont work with
 RT
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+[bwh: Adjust context to apply after Debian ABI fix]
 ---
  include/linux/mm_types.h |  4 ++++
  include/linux/sched.h    | 12 ++++++++++++
@@ -24,21 +25,19 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  #include <asm/page.h>
  #include <asm/mmu.h>
  
-@@ -397,6 +398,9 @@ struct mm_struct {
- #ifndef __GENKSYMS__
- 	unsigned long mmap_legacy_base;         /* base of mmap area in bottom-up allocations */
+@@ -393,6 +394,9 @@ struct mm_struct {
+ #ifdef CONFIG_CPUMASK_OFFSTACK
+ 	struct cpumask cpumask_allocation;
  #endif
 +#ifdef CONFIG_PREEMPT_RT_BASE
 +	struct rcu_head delayed_drop;
 +#endif
- };
  
- static inline void mm_init_cpumask(struct mm_struct *mm)
-diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 1816ed2..040a888 100644
+ #ifndef __GENKSYMS__
+ 	unsigned long mmap_legacy_base;         /* base of mmap area in bottom-up allocations */
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
-@@ -2303,12 +2303,24 @@ extern struct mm_struct * mm_alloc(void);
+@@ -2310,12 +2310,24 @@ extern struct mm_struct * mm_alloc(void)
  
  /* mmdrop drops the mm and the page tables */
  extern void __mmdrop(struct mm_struct *);
@@ -63,8 +62,6 @@ index 1816ed2..040a888 100644
  /* mmput gets rid of the mappings and all user-space */
  extern void mmput(struct mm_struct *);
  /* Grab a reference to a task's mm, if it is not already going away */
-diff --git a/kernel/fork.c b/kernel/fork.c
-index 8b739b0..c25f3d4 100644
 --- a/kernel/fork.c
 +++ b/kernel/fork.c
 @@ -203,7 +203,7 @@ EXPORT_SYMBOL_GPL(__put_task_struct);
@@ -96,11 +93,9 @@ index 8b739b0..c25f3d4 100644
  /*
   * Decrement the use count and release all resources for an mm.
   */
-diff --git a/kernel/sched.c b/kernel/sched.c
-index f5229d0..d3211f3 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -3175,8 +3175,12 @@ static void finish_task_switch(struct rq *rq, struct task_struct *prev)
+@@ -3176,8 +3176,12 @@ static void finish_task_switch(struct rq
  	finish_lock_switch(rq, prev);
  
  	fire_sched_in_preempt_notifiers(current);
@@ -114,7 +109,7 @@ index f5229d0..d3211f3 100644
  	if (unlikely(prev_state == TASK_DEAD)) {
  		/*
  		 * Remove function-return probe instances associated with this
-@@ -6503,6 +6507,8 @@ static int migration_cpu_stop(void *data)
+@@ -6504,6 +6508,8 @@ static int migration_cpu_stop(void *data
  
  #ifdef CONFIG_HOTPLUG_CPU
  
@@ -123,7 +118,7 @@ index f5229d0..d3211f3 100644
  /*
   * Ensures that the idle task is using init_mm right before its cpu goes
   * offline.
-@@ -6515,7 +6521,12 @@ void idle_task_exit(void)
+@@ -6516,7 +6522,12 @@ void idle_task_exit(void)
  
  	if (mm != &init_mm)
  		switch_mm(mm, &init_mm, current);
@@ -137,7 +132,7 @@ index f5229d0..d3211f3 100644
  }
  
  /*
-@@ -6868,6 +6879,12 @@ migration_call(struct notifier_block *nfb, unsigned long action, void *hcpu)
+@@ -6869,6 +6880,12 @@ migration_call(struct notifier_block *nf
  		migrate_nr_uninterruptible(rq);
  		calc_global_load_remove(rq);
  		break;
diff --git a/debian/patches/features/all/rt/0144-sched-rt-mutex-wakeup.patch.patch b/debian/patches/features/all/rt/0144-sched-rt-mutex-wakeup.patch.patch
index 19d7233..c1d8e6b 100644
--- a/debian/patches/features/all/rt/0144-sched-rt-mutex-wakeup.patch.patch
+++ b/debian/patches/features/all/rt/0144-sched-rt-mutex-wakeup.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 25 Jun 2011 09:21:04 +0200
-Subject: [PATCH 144/374] sched-rt-mutex-wakeup.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fc6678a9e94dbf9541f839fdd066ce252b28abd2
+Subject: [PATCH 144/380] sched-rt-mutex-wakeup.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e723a858409d4670c2c58274138637a2bee9c96b
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 33 insertions(+), 1 deletion(-)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 040a888..6a41ef3 100644
+index 8ad79a98b090..937e7e8c6ec6 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1077,6 +1077,7 @@ struct sched_domain;
@@ -38,10 +38,10 @@ index 040a888..6a41ef3 100644
  #ifdef CONFIG_SMP
   extern void kick_process(struct task_struct *tsk);
 diff --git a/kernel/sched.c b/kernel/sched.c
-index d3211f3..6d7b084 100644
+index 7a84e1102d8a..7e0c6babfb15 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -2827,8 +2827,25 @@ try_to_wake_up(struct task_struct *p, unsigned int state, int wake_flags)
+@@ -2829,8 +2829,25 @@ try_to_wake_up(struct task_struct *p, unsigned int state, int wake_flags)
  
  	smp_wmb();
  	raw_spin_lock_irqsave(&p->pi_lock, flags);
@@ -68,7 +68,7 @@ index d3211f3..6d7b084 100644
  
  	success = 1; /* we're going to change ->state */
  	cpu = task_cpu(p);
-@@ -2901,6 +2918,18 @@ int wake_up_process(struct task_struct *p)
+@@ -2902,6 +2919,18 @@ int wake_up_process(struct task_struct *p)
  }
  EXPORT_SYMBOL(wake_up_process);
  
diff --git a/debian/patches/features/all/rt/0145-sched-prevent-idle-boost.patch.patch b/debian/patches/features/all/rt/0145-sched-prevent-idle-boost.patch.patch
index 96cf215..f2651fc 100644
--- a/debian/patches/features/all/rt/0145-sched-prevent-idle-boost.patch.patch
+++ b/debian/patches/features/all/rt/0145-sched-prevent-idle-boost.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 6 Jun 2011 20:07:38 +0200
-Subject: [PATCH 145/374] sched-prevent-idle-boost.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=01793da675aaa645a29785c928b7e24962fb7923
+Subject: [PATCH 145/380] sched-prevent-idle-boost.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9845b2cbc40c161a772719419cc7301f1156c2ae
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,10 +9,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 19 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 6d7b084..1602175 100644
+index 7e0c6babfb15..b003e3d62e02 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -5234,6 +5234,24 @@ void rt_mutex_setprio(struct task_struct *p, int prio)
+@@ -5235,6 +5235,24 @@ void rt_mutex_setprio(struct task_struct *p, int prio)
  
  	rq = __task_rq_lock(p);
  
@@ -37,7 +37,7 @@ index 6d7b084..1602175 100644
  	trace_sched_pi_setprio(p, prio);
  	oldprio = p->prio;
  	prev_class = p->sched_class;
-@@ -5260,11 +5278,10 @@ void rt_mutex_setprio(struct task_struct *p, int prio)
+@@ -5261,11 +5279,10 @@ void rt_mutex_setprio(struct task_struct *p, int prio)
  		enqueue_task(rq, p, oldprio < prio ? ENQUEUE_HEAD : 0);
  
  	check_class_changed(rq, p, prev_class, oldprio);
diff --git a/debian/patches/features/all/rt/0146-sched-might-sleep-do-not-account-rcu-depth.patch.patch b/debian/patches/features/all/rt/0146-sched-might-sleep-do-not-account-rcu-depth.patch.patch
index 1a35fe5..eab3844 100644
--- a/debian/patches/features/all/rt/0146-sched-might-sleep-do-not-account-rcu-depth.patch.patch
+++ b/debian/patches/features/all/rt/0146-sched-might-sleep-do-not-account-rcu-depth.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 7 Jun 2011 09:19:06 +0200
-Subject: [PATCH 146/374] sched-might-sleep-do-not-account-rcu-depth.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8b44788ec2474e240ea4bc27b1bda5de23c9c5c5
+Subject: [PATCH 146/380] sched-might-sleep-do-not-account-rcu-depth.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d58513be196ec0ca426f4453e5d0f46f6fb47b67
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 9 insertions(+), 1 deletion(-)
 
 diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
-index 2cf4226..a0082e2 100644
+index 2cf4226ade7e..a0082e24dea4 100644
 --- a/include/linux/rcupdate.h
 +++ b/include/linux/rcupdate.h
 @@ -147,6 +147,11 @@ void synchronize_rcu(void);
@@ -35,10 +35,10 @@ index 2cf4226..a0082e2 100644
  
  /* Internal to kernel */
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 1602175..97b8bd3 100644
+index b003e3d62e02..8e3e3d298fe6 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -8676,7 +8676,8 @@ void __init sched_init(void)
+@@ -8677,7 +8677,8 @@ void __init sched_init(void)
  #ifdef CONFIG_DEBUG_ATOMIC_SLEEP
  static inline int preempt_count_equals(int preempt_offset)
  {
diff --git a/debian/patches/features/all/rt/0147-sched-Break-out-from-load_balancing-on-rq_lock-conte.patch b/debian/patches/features/all/rt/0147-sched-Break-out-from-load_balancing-on-rq_lock-conte.patch
index 41e20b0..3dd6541 100644
--- a/debian/patches/features/all/rt/0147-sched-Break-out-from-load_balancing-on-rq_lock-conte.patch
+++ b/debian/patches/features/all/rt/0147-sched-Break-out-from-load_balancing-on-rq_lock-conte.patch
@@ -1,8 +1,8 @@
 From: Peter Zijlstra <peterz at infradead.org>
 Date: Tue, 16 Mar 2010 14:31:44 -0700
-Subject: [PATCH 147/374] sched: Break out from load_balancing on rq_lock
+Subject: [PATCH 147/380] sched: Break out from load_balancing on rq_lock
  contention
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1eaa4fb83d59b28b8592173b75e47e0ceb6d8527
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b664fb931305b488dccd49e76b5912d8d1a429c4
 
 Also limit NEW_IDLE pull
 
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 18 insertions(+)
 
 diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c
-index 4c6dae1..ffbc079 100644
+index 4c6dae17cd1e..ffbc0792468a 100644
 --- a/kernel/sched_fair.c
 +++ b/kernel/sched_fair.c
 @@ -2901,6 +2901,10 @@ balance_tasks(struct rq *this_rq, int this_cpu, struct rq *busiest,
diff --git a/debian/patches/features/all/rt/0148-sched-cond-resched.patch.patch b/debian/patches/features/all/rt/0148-sched-cond-resched.patch.patch
index 314f2d7..4f93f83 100644
--- a/debian/patches/features/all/rt/0148-sched-cond-resched.patch.patch
+++ b/debian/patches/features/all/rt/0148-sched-cond-resched.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 7 Jun 2011 11:25:03 +0200
-Subject: [PATCH 148/374] sched-cond-resched.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=57e4134176029f1f669e76d235e5aee04a2e16a8
+Subject: [PATCH 148/380] sched-cond-resched.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5ab7fe14afd0a3eb6b69882c76dc51df1a6839f5
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,10 +9,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 11 insertions(+), 3 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 97b8bd3..ffd8048 100644
+index 8e3e3d298fe6..8a264e7de23e 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -5975,9 +5975,17 @@ static inline int should_resched(void)
+@@ -5976,9 +5976,17 @@ static inline int should_resched(void)
  
  static void __cond_resched(void)
  {
diff --git a/debian/patches/features/all/rt/0149-cond-resched-softirq-fix.patch.patch b/debian/patches/features/all/rt/0149-cond-resched-softirq-fix.patch.patch
index 561b03e..1320fd0 100644
--- a/debian/patches/features/all/rt/0149-cond-resched-softirq-fix.patch.patch
+++ b/debian/patches/features/all/rt/0149-cond-resched-softirq-fix.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 14 Jul 2011 09:56:44 +0200
-Subject: [PATCH 149/374] cond-resched-softirq-fix.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=eddc7df473a2c12b9a8bbe21c58a4343362943e2
+Subject: [PATCH 149/380] cond-resched-softirq-fix.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=067ac491f919429c3ba83a2582b185055a6dcc55
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 6 insertions(+)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 6a41ef3..0f935de 100644
+index 937e7e8c6ec6..d2137636737d 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -2637,12 +2637,16 @@ extern int __cond_resched_lock(spinlock_t *lock);
@@ -31,10 +31,10 @@ index 6a41ef3..0f935de 100644
  /*
   * Does a critical section need to be broken due to another
 diff --git a/kernel/sched.c b/kernel/sched.c
-index ffd8048..40ffdc8 100644
+index 8a264e7de23e..a06316ff3db0 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -6026,6 +6026,7 @@ int __cond_resched_lock(spinlock_t *lock)
+@@ -6027,6 +6027,7 @@ int __cond_resched_lock(spinlock_t *lock)
  }
  EXPORT_SYMBOL(__cond_resched_lock);
  
@@ -42,7 +42,7 @@ index ffd8048..40ffdc8 100644
  int __sched __cond_resched_softirq(void)
  {
  	BUG_ON(!in_softirq());
-@@ -6039,6 +6040,7 @@ int __sched __cond_resched_softirq(void)
+@@ -6040,6 +6041,7 @@ int __sched __cond_resched_softirq(void)
  	return 0;
  }
  EXPORT_SYMBOL(__cond_resched_softirq);
diff --git a/debian/patches/features/all/rt/0150-sched-no-work-when-pi-blocked.patch.patch b/debian/patches/features/all/rt/0150-sched-no-work-when-pi-blocked.patch.patch
index c36f209..48627a0 100644
--- a/debian/patches/features/all/rt/0150-sched-no-work-when-pi-blocked.patch.patch
+++ b/debian/patches/features/all/rt/0150-sched-no-work-when-pi-blocked.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 20:46:52 +0200
-Subject: [PATCH 150/374] sched-no-work-when-pi-blocked.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b57e4f09605c75d04b01640c302cb5005896d92e
+Subject: [PATCH 150/380] sched-no-work-when-pi-blocked.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f702406211293fa6160f45e75780d14e1efebfc2
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 12 insertions(+), 1 deletion(-)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 0f935de..b6b138f6 100644
+index d2137636737d..1f8aea57b5c5 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -2130,12 +2130,20 @@ extern unsigned int sysctl_sched_cfs_bandwidth_slice;
@@ -35,10 +35,10 @@ index 0f935de..b6b138f6 100644
  
  extern bool yield_to(struct task_struct *p, bool preempt);
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 40ffdc8..f5afe3e 100644
+index a06316ff3db0..ab99c682c3ce 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4658,7 +4658,7 @@ need_resched:
+@@ -4659,7 +4659,7 @@ need_resched:
  
  static inline void sched_submit_work(struct task_struct *tsk)
  {
@@ -47,7 +47,7 @@ index 40ffdc8..f5afe3e 100644
  		return;
  
  	/*
-@@ -4678,6 +4678,9 @@ static inline void sched_submit_work(struct task_struct *tsk)
+@@ -4679,6 +4679,9 @@ static inline void sched_submit_work(struct task_struct *tsk)
  
  static inline void sched_update_worker(struct task_struct *tsk)
  {
diff --git a/debian/patches/features/all/rt/0151-cond-resched-lock-rt-tweak.patch.patch b/debian/patches/features/all/rt/0151-cond-resched-lock-rt-tweak.patch.patch
index 8fc7dba..990d5bc 100644
--- a/debian/patches/features/all/rt/0151-cond-resched-lock-rt-tweak.patch.patch
+++ b/debian/patches/features/all/rt/0151-cond-resched-lock-rt-tweak.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 22:51:33 +0200
-Subject: [PATCH 151/374] cond-resched-lock-rt-tweak.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8e75d9a360e939353fc6281b5ebc763d641b7d64
+Subject: [PATCH 151/380] cond-resched-lock-rt-tweak.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=17d05817b5c6889221746661b4c5a4f93f0bf502
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index b6b138f6..1ef8c9a 100644
+index 1f8aea57b5c5..db19d77dc60a 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -2634,7 +2634,7 @@ extern int _cond_resched(void);
diff --git a/debian/patches/features/all/rt/0152-sched-disable-ttwu-queue.patch.patch b/debian/patches/features/all/rt/0152-sched-disable-ttwu-queue.patch.patch
index e34e67c..767b8aa 100644
--- a/debian/patches/features/all/rt/0152-sched-disable-ttwu-queue.patch.patch
+++ b/debian/patches/features/all/rt/0152-sched-disable-ttwu-queue.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 13 Sep 2011 16:42:35 +0200
-Subject: [PATCH 152/374] sched-disable-ttwu-queue.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a4fbce816ad82cd2692d171aaab3c8e69a415058
+Subject: [PATCH 152/380] sched-disable-ttwu-queue.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=110d749d43ed5b59292747dc20a6663041d2e55b
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 4 insertions(+)
 
 diff --git a/kernel/sched_features.h b/kernel/sched_features.h
-index 8480224..0007001 100644
+index 84802245abd2..0007001f995e 100644
 --- a/kernel/sched_features.h
 +++ b/kernel/sched_features.h
 @@ -60,11 +60,15 @@ SCHED_FEAT(OWNER_SPIN, 1)
diff --git a/debian/patches/features/all/rt/0153-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch b/debian/patches/features/all/rt/0153-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch
index c9916fb..7283551 100644
--- a/debian/patches/features/all/rt/0153-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch
+++ b/debian/patches/features/all/rt/0153-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 18 Jul 2011 17:03:52 +0200
-Subject: [PATCH 153/374] sched: Disable CONFIG_RT_GROUP_SCHED on RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e1ec3e1a238467e6f2c37b7c1b00ab248c658f1d
+Subject: [PATCH 153/380] sched: Disable CONFIG_RT_GROUP_SCHED on RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4d74527f90e6fb6b44046ce67f7e11cc0b9dae82
 
 Carsten reported problems when running:
 
@@ -18,7 +18,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+)
 
 diff --git a/init/Kconfig b/init/Kconfig
-index 56a926e..f6411a5 100644
+index 56a926ed8dec..f6411a598ba9 100644
 --- a/init/Kconfig
 +++ b/init/Kconfig
 @@ -732,6 +732,7 @@ config RT_GROUP_SCHED
diff --git a/debian/patches/features/all/rt/0154-sched-ttwu-Return-success-when-only-changing-the-sav.patch b/debian/patches/features/all/rt/0154-sched-ttwu-Return-success-when-only-changing-the-sav.patch
index 337a34a..64d1dcd 100644
--- a/debian/patches/features/all/rt/0154-sched-ttwu-Return-success-when-only-changing-the-sav.patch
+++ b/debian/patches/features/all/rt/0154-sched-ttwu-Return-success-when-only-changing-the-sav.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 13 Dec 2011 21:42:19 +0100
-Subject: [PATCH 154/374] sched: ttwu: Return success when only changing the
+Subject: [PATCH 154/380] sched: ttwu: Return success when only changing the
  saved_state value
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=eaa06db96e011bdd594867b55f4a2eac958f4132
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=287386a13a008049313c46d2bf6c37dc3bf08441
 
 When a task blocks on a rt lock, it saves the current state in
 p->saved_state, so a lock related wake up will not destroy the
@@ -21,10 +21,10 @@ Cc: stable-rt at vger.kernel.org
  1 file changed, 3 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index f5afe3e..19f8e9d 100644
+index ab99c682c3ce..7102356f21f5 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -2834,8 +2834,10 @@ try_to_wake_up(struct task_struct *p, unsigned int state, int wake_flags)
+@@ -2836,8 +2836,10 @@ try_to_wake_up(struct task_struct *p, unsigned int state, int wake_flags)
  		 * if the wakeup condition is true.
  		 */
  		if (!(wake_flags & WF_LOCK_SLEEPER)) {
diff --git a/debian/patches/features/all/rt/0155-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch b/debian/patches/features/all/rt/0155-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch
index 2593694..880304b 100644
--- a/debian/patches/features/all/rt/0155-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch
+++ b/debian/patches/features/all/rt/0155-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch
@@ -1,8 +1,8 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:27 -0500
-Subject: [PATCH 155/374] stop_machine: convert stop_machine_run() to
+Subject: [PATCH 155/380] stop_machine: convert stop_machine_run() to
  PREEMPT_RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4da8c30a14dd34155b7e5115a32fb93b7a0904c2
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7952d692f8417e29f07e050781cfc0529511bbf9
 
 Instead of playing with non-preemption, introduce explicit
 startup serialization. This is more robust and cleaner as
@@ -15,7 +15,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 15 insertions(+), 5 deletions(-)
 
 diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c
-index 2f194e9..61779f8 100644
+index 2f194e965715..61779f820e8e 100644
 --- a/kernel/stop_machine.c
 +++ b/kernel/stop_machine.c
 @@ -135,6 +135,7 @@ void stop_one_cpu_nowait(unsigned int cpu, cpu_stop_fn_t fn, void *arg,
diff --git a/debian/patches/features/all/rt/0156-stomp-machine-mark-stomper-thread.patch.patch b/debian/patches/features/all/rt/0156-stomp-machine-mark-stomper-thread.patch.patch
index 50d2cb9..fe518bd 100644
--- a/debian/patches/features/all/rt/0156-stomp-machine-mark-stomper-thread.patch.patch
+++ b/debian/patches/features/all/rt/0156-stomp-machine-mark-stomper-thread.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 19:53:19 +0200
-Subject: [PATCH 156/374] stomp-machine-mark-stomper-thread.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e0428ac562c96f61f5078302f83c8040f033b50e
+Subject: [PATCH 156/380] stomp-machine-mark-stomper-thread.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ad2bc5a255f6f140da0af3434198c6a87874ffe0
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 2 insertions(+)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 1ef8c9a..f78b5c1 100644
+index db19d77dc60a..f099ea5d3da0 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1849,6 +1849,7 @@ extern void thread_group_times(struct task_struct *p, cputime_t *ut, cputime_t *
@@ -22,7 +22,7 @@ index 1ef8c9a..f78b5c1 100644
  #define PF_KTHREAD	0x00200000	/* I am a kernel thread */
  #define PF_RANDOMIZE	0x00400000	/* randomize virtual address space */
 diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c
-index 61779f8..484a335 100644
+index 61779f820e8e..484a335c6963 100644
 --- a/kernel/stop_machine.c
 +++ b/kernel/stop_machine.c
 @@ -327,6 +327,7 @@ static int __cpuinit cpu_stop_cpu_callback(struct notifier_block *nfb,
diff --git a/debian/patches/features/all/rt/0157-stomp-machine-raw-lock.patch.patch b/debian/patches/features/all/rt/0157-stomp-machine-raw-lock.patch.patch
index 05af174..b0e26f3 100644
--- a/debian/patches/features/all/rt/0157-stomp-machine-raw-lock.patch.patch
+++ b/debian/patches/features/all/rt/0157-stomp-machine-raw-lock.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 29 Jun 2011 11:01:51 +0200
-Subject: [PATCH 157/374] stomp-machine-raw-lock.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e06d436419629ed27d91bce0e059f60a23c250aa
+Subject: [PATCH 157/380] stomp-machine-raw-lock.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4e5af5ef7a8e38b11c0039bd18de3b11c649a071
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 41 insertions(+), 17 deletions(-)
 
 diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c
-index 484a335..561ba3a 100644
+index 484a335c6963..561ba3a7b8cf 100644
 --- a/kernel/stop_machine.c
 +++ b/kernel/stop_machine.c
 @@ -29,12 +29,12 @@ struct cpu_stop_done {
diff --git a/debian/patches/features/all/rt/0158-hotplug-Lightweight-get-online-cpus.patch b/debian/patches/features/all/rt/0158-hotplug-Lightweight-get-online-cpus.patch
index 58abd01..57c2bb9 100644
--- a/debian/patches/features/all/rt/0158-hotplug-Lightweight-get-online-cpus.patch
+++ b/debian/patches/features/all/rt/0158-hotplug-Lightweight-get-online-cpus.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 15 Jun 2011 12:36:06 +0200
-Subject: [PATCH 158/374] hotplug: Lightweight get online cpus
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c3d279d7309320520c13aeb24287b3248e297854
+Subject: [PATCH 158/380] hotplug: Lightweight get online cpus
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=192a19a3c0c400dbb7b87e26877f7bd13a9f1e72
 
 get_online_cpus() is a heavy weight function which involves a global
 mutex. migrate_disable() wants a simpler construct which prevents only
@@ -18,7 +18,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 128 insertions(+), 3 deletions(-)
 
 diff --git a/include/linux/cpu.h b/include/linux/cpu.h
-index 9c3e071..ff0a0ec 100644
+index 9c3e071900c0..ff0a0ec8d2f7 100644
 --- a/include/linux/cpu.h
 +++ b/include/linux/cpu.h
 @@ -168,6 +168,8 @@ extern struct sysdev_class cpu_sysdev_class;
@@ -40,7 +40,7 @@ index 9c3e071..ff0a0ec 100644
  #define cpu_hotplug_enable()	do { } while (0)
  #define hotcpu_notifier(fn, pri)	do { (void)(fn); } while (0)
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index 82c91f1..c9230dd 100644
+index 82c91f1b715a..c9230ddaa157 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -58,6 +58,102 @@ static struct {
diff --git a/debian/patches/features/all/rt/0159-hotplug-sync_unplug-No.patch b/debian/patches/features/all/rt/0159-hotplug-sync_unplug-No.patch
index 33a0254..9a9463c 100644
--- a/debian/patches/features/all/rt/0159-hotplug-sync_unplug-No.patch
+++ b/debian/patches/features/all/rt/0159-hotplug-sync_unplug-No.patch
@@ -1,7 +1,7 @@
 From: Yong Zhang <yong.zhang0 at gmail.com>
 Date: Sun, 16 Oct 2011 18:56:43 +0800
-Subject: [PATCH 159/374] hotplug: sync_unplug: No " " in task name
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c96bf2a3dcd39b305f42fa7569554c4237e270d3
+Subject: [PATCH 159/380] hotplug: sync_unplug: No " " in task name
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=59d991dd8983216eafe1265beff1f8762f21b957
 
 Otherwise the output will look a little odd.
 
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index c9230dd..b1391fe 100644
+index c9230ddaa157..b1391fe61dd3 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -138,7 +138,7 @@ static int cpu_unplug_begin(unsigned int cpu)
diff --git a/debian/patches/features/all/rt/0160-hotplug-Reread-hotplug_pcp-on-pin_current_cpu-retry.patch b/debian/patches/features/all/rt/0160-hotplug-Reread-hotplug_pcp-on-pin_current_cpu-retry.patch
index 1b0fd3f..3569e3d 100644
--- a/debian/patches/features/all/rt/0160-hotplug-Reread-hotplug_pcp-on-pin_current_cpu-retry.patch
+++ b/debian/patches/features/all/rt/0160-hotplug-Reread-hotplug_pcp-on-pin_current_cpu-retry.patch
@@ -1,8 +1,8 @@
 From: Yong Zhang <yong.zhang0 at gmail.com>
 Date: Thu, 28 Jul 2011 11:16:00 +0800
-Subject: [PATCH 160/374] hotplug: Reread hotplug_pcp on pin_current_cpu()
+Subject: [PATCH 160/380] hotplug: Reread hotplug_pcp on pin_current_cpu()
  retry
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fad280fcc75915fe8986dfb4c58af6b95fb5fda7
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6db78721aa5fc7a26994aaf22e50eafec0fac169
 
 When retry happens, it's likely that the task has been migrated to
 another cpu (except unplug failed), but it still derefernces the
@@ -20,7 +20,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 3 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index b1391fe..e1b3c6c 100644
+index b1391fe61dd3..e1b3c6c6c244 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -76,9 +76,11 @@ static DEFINE_PER_CPU(struct hotplug_pcp, hotplug_pcp);
diff --git a/debian/patches/features/all/rt/0161-sched-migrate-disable.patch.patch b/debian/patches/features/all/rt/0161-sched-migrate-disable.patch.patch
index 2945fb7..6ffc7d7 100644
--- a/debian/patches/features/all/rt/0161-sched-migrate-disable.patch.patch
+++ b/debian/patches/features/all/rt/0161-sched-migrate-disable.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 16 Jun 2011 13:26:08 +0200
-Subject: [PATCH 161/374] sched-migrate-disable.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5829b1ceec9c234f5e0b48c20764bb0eafa46501
+Subject: [PATCH 161/380] sched-migrate-disable.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fae1a96c1eb3e688e524eef07ca0673c2b87dbb7
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  5 files changed, 104 insertions(+), 12 deletions(-)
 
 diff --git a/include/linux/preempt.h b/include/linux/preempt.h
-index d58f158..8547d22 100644
+index d58f1585fef8..8547d22a2cad 100644
 --- a/include/linux/preempt.h
 +++ b/include/linux/preempt.h
 @@ -114,6 +114,14 @@ do { \
@@ -32,7 +32,7 @@ index d58f158..8547d22 100644
  # define preempt_disable_rt()		preempt_disable()
  # define preempt_enable_rt()		preempt_enable()
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index f78b5c1..783f5d1d 100644
+index f099ea5d3da0..e5974645d9a3 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1268,6 +1268,7 @@ struct task_struct {
@@ -70,7 +70,7 @@ index f78b5c1..783f5d1d 100644
  extern long sched_getaffinity(pid_t pid, struct cpumask *mask);
  
 diff --git a/include/linux/smp.h b/include/linux/smp.h
-index e6c58d8..94c8430 100644
+index e6c58d8796b3..94c8430da063 100644
 --- a/include/linux/smp.h
 +++ b/include/linux/smp.h
 @@ -80,7 +80,6 @@ void __smp_call_function_single(int cpuid, struct call_single_data *data,
@@ -82,10 +82,10 @@ index e6c58d8..94c8430 100644
   * Generic and arch helpers
   */
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 19f8e9d..62bca55 100644
+index 7102356f21f5..6922c88c6240 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -6424,11 +6424,12 @@ static inline void sched_init_granularity(void)
+@@ -6425,11 +6425,12 @@ static inline void sched_init_granularity(void)
  #ifdef CONFIG_SMP
  void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
  {
@@ -102,7 +102,7 @@ index 19f8e9d..62bca55 100644
  }
  
  /*
-@@ -6479,7 +6480,7 @@ int set_cpus_allowed_ptr(struct task_struct *p, const struct cpumask *new_mask)
+@@ -6480,7 +6481,7 @@ int set_cpus_allowed_ptr(struct task_struct *p, const struct cpumask *new_mask)
  	do_set_cpus_allowed(p, new_mask);
  
  	/* Can the task run on the task's current CPU? If so, we're done */
@@ -111,7 +111,7 @@ index 19f8e9d..62bca55 100644
  		goto out;
  
  	dest_cpu = cpumask_any_and(cpu_active_mask, new_mask);
-@@ -6498,6 +6499,83 @@ out:
+@@ -6499,6 +6500,83 @@ out:
  }
  EXPORT_SYMBOL_GPL(set_cpus_allowed_ptr);
  
@@ -196,7 +196,7 @@ index 19f8e9d..62bca55 100644
   * Move (not current) task off this cpu, onto dest cpu. We're doing
   * this because either it can't run here any more (set_cpus_allowed()
 diff --git a/lib/smp_processor_id.c b/lib/smp_processor_id.c
-index 503f087..60a7569 100644
+index 503f087382a4..60a7569eaeae 100644
 --- a/lib/smp_processor_id.c
 +++ b/lib/smp_processor_id.c
 @@ -39,9 +39,9 @@ notrace unsigned int debug_smp_processor_id(void)
diff --git a/debian/patches/features/all/rt/0162-hotplug-use-migrate-disable.patch.patch b/debian/patches/features/all/rt/0162-hotplug-use-migrate-disable.patch.patch
index 543e69d..d30419e 100644
--- a/debian/patches/features/all/rt/0162-hotplug-use-migrate-disable.patch.patch
+++ b/debian/patches/features/all/rt/0162-hotplug-use-migrate-disable.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 19:35:29 +0200
-Subject: [PATCH 162/374] hotplug-use-migrate-disable.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e9c8bace45cabdd30bd3f10b84cd81230b9d6dcb
+Subject: [PATCH 162/380] hotplug-use-migrate-disable.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f1ed2427aaa2117255893b562d183a3a76fb1d7f
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index e1b3c6c..3e2b283 100644
+index e1b3c6c6c244..3e2b283c4fc2 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -351,14 +351,13 @@ static int __ref _cpu_down(unsigned int cpu, int tasks_frozen)
diff --git a/debian/patches/features/all/rt/0163-hotplug-Call-cpu_unplug_begin-before-DOWN_PREPARE.patch b/debian/patches/features/all/rt/0163-hotplug-Call-cpu_unplug_begin-before-DOWN_PREPARE.patch
index 3c98c77..ba96d5e 100644
--- a/debian/patches/features/all/rt/0163-hotplug-Call-cpu_unplug_begin-before-DOWN_PREPARE.patch
+++ b/debian/patches/features/all/rt/0163-hotplug-Call-cpu_unplug_begin-before-DOWN_PREPARE.patch
@@ -1,7 +1,7 @@
 From: Yong Zhang <yong.zhang0 at gmail.com>
 Date: Sun, 16 Oct 2011 18:56:44 +0800
-Subject: [PATCH 163/374] hotplug: Call cpu_unplug_begin() before DOWN_PREPARE
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=45817abc4c28ede8ad7f939db249246645b0a0ac
+Subject: [PATCH 163/380] hotplug: Call cpu_unplug_begin() before DOWN_PREPARE
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7a7e4fb4ef5b5b4e79023e26bd7dfd750bcada85
 
 cpu_unplug_begin() should be called before CPU_DOWN_PREPARE, because
 at CPU_DOWN_PREPARE cpu_active is cleared and sched_domain is
@@ -27,7 +27,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 7 insertions(+), 9 deletions(-)
 
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index 3e2b283..8fffbca 100644
+index 3e2b283c4fc2..8fffbca29284 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -359,22 +359,20 @@ static int __ref _cpu_down(unsigned int cpu, int tasks_frozen)
diff --git a/debian/patches/features/all/rt/0164-ftrace-migrate-disable-tracing.patch.patch b/debian/patches/features/all/rt/0164-ftrace-migrate-disable-tracing.patch.patch
index 93754bc..31c86f2 100644
--- a/debian/patches/features/all/rt/0164-ftrace-migrate-disable-tracing.patch.patch
+++ b/debian/patches/features/all/rt/0164-ftrace-migrate-disable-tracing.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 21:56:42 +0200
-Subject: [PATCH 164/374] ftrace-migrate-disable-tracing.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3272462de3f01d3eb2c8510563f0b9aa992baae5
+Subject: [PATCH 164/380] ftrace-migrate-disable-tracing.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ecb5b1629d8558998d2de1fb6debbcda11eba5f5
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  4 files changed, 14 insertions(+), 4 deletions(-)
 
 diff --git a/include/linux/ftrace_event.h b/include/linux/ftrace_event.h
-index 82924bf..11877b0 100644
+index 82924bf2f345..11877b0d565c 100644
 --- a/include/linux/ftrace_event.h
 +++ b/include/linux/ftrace_event.h
 @@ -49,7 +49,8 @@ struct trace_entry {
@@ -26,7 +26,7 @@ index 82924bf..11877b0 100644
  
  #define FTRACE_MAX_EVENT						\
 diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
-index 0c348a6..4482ce2 100644
+index 0c348a63be49..4482ce2dfa5b 100644
 --- a/kernel/trace/trace.c
 +++ b/kernel/trace/trace.c
 @@ -1135,6 +1135,8 @@ tracing_generic_entry_update(struct trace_entry *entry, unsigned long flags,
@@ -53,7 +53,7 @@ index 0c348a6..4482ce2 100644
  
  static void print_func_help_header(struct seq_file *m)
 diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
-index 875fed4..02f4b0d 100644
+index 875fed434e3b..02f4b0d97ffc 100644
 --- a/kernel/trace/trace_events.c
 +++ b/kernel/trace/trace_events.c
 @@ -116,6 +116,7 @@ static int trace_define_common_fields(void)
@@ -65,7 +65,7 @@ index 875fed4..02f4b0d 100644
  
  	return ret;
 diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c
-index 1dcf253..bb9a58d 100644
+index 1dcf253190e8..bb9a58d9d8eb 100644
 --- a/kernel/trace/trace_output.c
 +++ b/kernel/trace/trace_output.c
 @@ -591,6 +591,11 @@ int trace_print_lat_fmt(struct trace_seq *s, struct trace_entry *entry)
diff --git a/debian/patches/features/all/rt/0165-tracing-Show-padding-as-unsigned-short.patch b/debian/patches/features/all/rt/0165-tracing-Show-padding-as-unsigned-short.patch
index 2c2d69b..74f9d0c 100644
--- a/debian/patches/features/all/rt/0165-tracing-Show-padding-as-unsigned-short.patch
+++ b/debian/patches/features/all/rt/0165-tracing-Show-padding-as-unsigned-short.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Wed, 16 Nov 2011 13:19:35 -0500
-Subject: [PATCH 165/374] tracing: Show padding as unsigned short
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0724c966031d713efe522bd3dae7b075cf5fc483
+Subject: [PATCH 165/380] tracing: Show padding as unsigned short
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=080016587be1808aa5e68a0c91b452695dc256a5
 
 RT added two bytes to trace migrate disable counting to the trace events
 and used two bytes of the padding to make the change. The structures and
@@ -33,7 +33,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
-index 02f4b0d..b203aae 100644
+index 02f4b0d97ffc..b203aaec6628 100644
 --- a/kernel/trace/trace_events.c
 +++ b/kernel/trace/trace_events.c
 @@ -117,7 +117,7 @@ static int trace_define_common_fields(void)
diff --git a/debian/patches/features/all/rt/0166-migrate-disable-rt-variant.patch.patch b/debian/patches/features/all/rt/0166-migrate-disable-rt-variant.patch.patch
index bcabbbf..c2835bb 100644
--- a/debian/patches/features/all/rt/0166-migrate-disable-rt-variant.patch.patch
+++ b/debian/patches/features/all/rt/0166-migrate-disable-rt-variant.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 19:48:20 +0200
-Subject: [PATCH 166/374] migrate-disable-rt-variant.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3501d7b48a80ee8199a90337f7f8abe30f0288d6
+Subject: [PATCH 166/380] migrate-disable-rt-variant.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=81ac09c058012ed6508d7adaa93e185b9d87dd20
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 4 insertions(+)
 
 diff --git a/include/linux/preempt.h b/include/linux/preempt.h
-index 8547d22..5db13ef 100644
+index 8547d22a2cad..5db13ef45e51 100644
 --- a/include/linux/preempt.h
 +++ b/include/linux/preempt.h
 @@ -127,11 +127,15 @@ extern void migrate_enable(void);
diff --git a/debian/patches/features/all/rt/0167-sched-Optimize-migrate_disable.patch b/debian/patches/features/all/rt/0167-sched-Optimize-migrate_disable.patch
index e08b0a3..dc628b6 100644
--- a/debian/patches/features/all/rt/0167-sched-Optimize-migrate_disable.patch
+++ b/debian/patches/features/all/rt/0167-sched-Optimize-migrate_disable.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Thu, 11 Aug 2011 15:03:35 +0200
-Subject: [PATCH 167/374] sched: Optimize migrate_disable
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1c9e3edebc1945dbafd1d32db940d94842e2d898
+Subject: [PATCH 167/380] sched: Optimize migrate_disable
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6bb2f9ae65be28504a33d4c428a784be1d6f58c4
 
 Change from task_rq_lock() to raw_spin_lock(&rq->lock) to avoid a few
 atomic ops. See comment on why it should be safe.
@@ -13,10 +13,10 @@ Link: http://lkml.kernel.org/n/tip-cbz6hkl5r5mvwtx5s3tor2y6@git.kernel.org
  1 file changed, 20 insertions(+), 4 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 62bca55..4ed6e31 100644
+index 6922c88c6240..6a69cc9000c4 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -6519,7 +6519,19 @@ void migrate_disable(void)
+@@ -6520,7 +6520,19 @@ void migrate_disable(void)
  		preempt_enable();
  		return;
  	}
@@ -37,7 +37,7 @@ index 62bca55..4ed6e31 100644
  	p->migrate_disable = 1;
  	mask = tsk_cpus_allowed(p);
  
-@@ -6530,7 +6542,7 @@ void migrate_disable(void)
+@@ -6531,7 +6543,7 @@ void migrate_disable(void)
  			p->sched_class->set_cpus_allowed(p, mask);
  		p->rt.nr_cpus_allowed = cpumask_weight(mask);
  	}
@@ -46,7 +46,7 @@ index 62bca55..4ed6e31 100644
  	preempt_enable();
  }
  EXPORT_SYMBOL_GPL(migrate_disable);
-@@ -6558,7 +6570,11 @@ void migrate_enable(void)
+@@ -6559,7 +6571,11 @@ void migrate_enable(void)
  		return;
  	}
  
@@ -59,7 +59,7 @@ index 62bca55..4ed6e31 100644
  	p->migrate_disable = 0;
  	mask = tsk_cpus_allowed(p);
  
-@@ -6570,7 +6586,7 @@ void migrate_enable(void)
+@@ -6571,7 +6587,7 @@ void migrate_enable(void)
  		p->rt.nr_cpus_allowed = cpumask_weight(mask);
  	}
  
diff --git a/debian/patches/features/all/rt/0168-sched-Generic-migrate_disable.patch b/debian/patches/features/all/rt/0168-sched-Generic-migrate_disable.patch
index dfd330e..9a67c2e 100644
--- a/debian/patches/features/all/rt/0168-sched-Generic-migrate_disable.patch
+++ b/debian/patches/features/all/rt/0168-sched-Generic-migrate_disable.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Thu, 11 Aug 2011 15:14:58 +0200
-Subject: [PATCH 168/374] sched: Generic migrate_disable
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=661ae3aeae5ff1c012f7e16ae74d5d5980af151e
+Subject: [PATCH 168/380] sched: Generic migrate_disable
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fd9d489d25f875c58ce5e9f2c57b1d347aa4e742
 
 Make migrate_disable() be a preempt_disable() for !rt kernels. This
 allows generic code to use it but still enforces that these code
@@ -23,7 +23,7 @@ Link: http://lkml.kernel.org/n/tip-275i87sl8e1jcamtchmehonm@git.kernel.org
  6 files changed, 30 insertions(+), 23 deletions(-)
 
 diff --git a/include/linux/preempt.h b/include/linux/preempt.h
-index 5db13ef..49bd6c7 100644
+index 5db13ef45e51..49bd6c709830 100644
 --- a/include/linux/preempt.h
 +++ b/include/linux/preempt.h
 @@ -114,28 +114,25 @@ do { \
@@ -65,7 +65,7 @@ index 5db13ef..49bd6c7 100644
  
  #ifdef CONFIG_PREEMPT_NOTIFIERS
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 783f5d1d..5404e88 100644
+index e5974645d9a3..5181eff75ef0 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1268,7 +1268,9 @@ struct task_struct {
@@ -102,7 +102,7 @@ index 783f5d1d..5404e88 100644
  	return &p->cpus_allowed;
  }
 diff --git a/include/linux/smp.h b/include/linux/smp.h
-index 94c8430..78fd0a2 100644
+index 94c8430da063..78fd0a26fa05 100644
 --- a/include/linux/smp.h
 +++ b/include/linux/smp.h
 @@ -172,13 +172,8 @@ smp_call_function_any(const struct cpumask *mask, smp_call_func_t func,
@@ -122,10 +122,10 @@ index 94c8430..78fd0a2 100644
  /*
   * Callback to arch code if there's nosmp or maxcpus=0 on the
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 4ed6e31..671016b 100644
+index 6a69cc9000c4..2b0d084aa5dc 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -6424,7 +6424,7 @@ static inline void sched_init_granularity(void)
+@@ -6425,7 +6425,7 @@ static inline void sched_init_granularity(void)
  #ifdef CONFIG_SMP
  void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
  {
@@ -134,7 +134,7 @@ index 4ed6e31..671016b 100644
  		if (p->sched_class && p->sched_class->set_cpus_allowed)
  			p->sched_class->set_cpus_allowed(p, new_mask);
  		p->rt.nr_cpus_allowed = cpumask_weight(new_mask);
-@@ -6480,7 +6480,7 @@ int set_cpus_allowed_ptr(struct task_struct *p, const struct cpumask *new_mask)
+@@ -6481,7 +6481,7 @@ int set_cpus_allowed_ptr(struct task_struct *p, const struct cpumask *new_mask)
  	do_set_cpus_allowed(p, new_mask);
  
  	/* Can the task run on the task's current CPU? If so, we're done */
@@ -143,7 +143,7 @@ index 4ed6e31..671016b 100644
  		goto out;
  
  	dest_cpu = cpumask_any_and(cpu_active_mask, new_mask);
-@@ -6499,6 +6499,7 @@ out:
+@@ -6500,6 +6500,7 @@ out:
  }
  EXPORT_SYMBOL_GPL(set_cpus_allowed_ptr);
  
@@ -151,7 +151,7 @@ index 4ed6e31..671016b 100644
  void migrate_disable(void)
  {
  	struct task_struct *p = current;
-@@ -6591,6 +6592,7 @@ void migrate_enable(void)
+@@ -6592,6 +6593,7 @@ void migrate_enable(void)
  	preempt_enable();
  }
  EXPORT_SYMBOL_GPL(migrate_enable);
@@ -160,7 +160,7 @@ index 4ed6e31..671016b 100644
  /*
   * Move (not current) task off this cpu, onto dest cpu. We're doing
 diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
-index 4482ce2..c4a9c38 100644
+index 4482ce2dfa5b..c4a9c38f9096 100644
 --- a/kernel/trace/trace.c
 +++ b/kernel/trace/trace.c
 @@ -1136,7 +1136,7 @@ tracing_generic_entry_update(struct trace_entry *entry, unsigned long flags,
@@ -173,7 +173,7 @@ index 4482ce2..c4a9c38 100644
  EXPORT_SYMBOL_GPL(tracing_generic_entry_update);
  
 diff --git a/lib/smp_processor_id.c b/lib/smp_processor_id.c
-index 60a7569..b5e9241 100644
+index 60a7569eaeae..b5e924137ef3 100644
 --- a/lib/smp_processor_id.c
 +++ b/lib/smp_processor_id.c
 @@ -41,7 +41,7 @@ notrace unsigned int debug_smp_processor_id(void)
diff --git a/debian/patches/features/all/rt/0169-sched-rt-Fix-migrate_enable-thinko.patch b/debian/patches/features/all/rt/0169-sched-rt-Fix-migrate_enable-thinko.patch
index 6172863..6153203 100644
--- a/debian/patches/features/all/rt/0169-sched-rt-Fix-migrate_enable-thinko.patch
+++ b/debian/patches/features/all/rt/0169-sched-rt-Fix-migrate_enable-thinko.patch
@@ -1,7 +1,7 @@
 From: Mike Galbraith <efault at gmx.de>
 Date: Tue, 23 Aug 2011 16:12:43 +0200
-Subject: [PATCH 169/374] sched, rt: Fix migrate_enable() thinko
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a8b97b3aee4d14bc669d6210821e9f3cdb330079
+Subject: [PATCH 169/380] sched, rt: Fix migrate_enable() thinko
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=69a5f7b088e71db6689cbf38dcb42255ec965b5d
 
 Assigning mask = tsk_cpus_allowed(p) after p->migrate_disable = 0 ensures
 that we won't see a mask change.. no push/pull, we stack tasks on one CPU.
@@ -21,10 +21,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 10 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 671016b..fba5b3a 100644
+index 2b0d084aa5dc..be3a8692dbcd 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -6576,12 +6576,14 @@ void migrate_enable(void)
+@@ -6577,12 +6577,14 @@ void migrate_enable(void)
  	 */
  	rq = this_rq();
  	raw_spin_lock_irqsave(&rq->lock, flags);
@@ -41,7 +41,7 @@ index 671016b..fba5b3a 100644
  			p->sched_class->set_cpus_allowed(p, mask);
  		p->rt.nr_cpus_allowed = cpumask_weight(mask);
 diff --git a/kernel/sched_debug.c b/kernel/sched_debug.c
-index 704ffe3..4f9b167 100644
+index 704ffe30bbd7..4f9b167f9cad 100644
 --- a/kernel/sched_debug.c
 +++ b/kernel/sched_debug.c
 @@ -243,6 +243,9 @@ void print_rt_rq(struct seq_file *m, int cpu, struct rt_rq *rt_rq)
diff --git a/debian/patches/features/all/rt/0170-sched-teach-migrate_disable-about-atomic-contexts.patch b/debian/patches/features/all/rt/0170-sched-teach-migrate_disable-about-atomic-contexts.patch
index 2a3dd4b..252ff9c 100644
--- a/debian/patches/features/all/rt/0170-sched-teach-migrate_disable-about-atomic-contexts.patch
+++ b/debian/patches/features/all/rt/0170-sched-teach-migrate_disable-about-atomic-contexts.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Fri, 2 Sep 2011 14:29:27 +0200
-Subject: [PATCH 170/374] sched: teach migrate_disable about atomic contexts
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d5e83c72b42b66289886289e537716c5905ed67f
+Subject: [PATCH 170/380] sched: teach migrate_disable about atomic contexts
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=00906e2dfa6a10415d12d5c6ca6d02837cd4ed5b
 
  <NMI>  [<ffffffff812dafd8>] spin_bug+0x94/0xa8
  [<ffffffff812db07f>] do_raw_spin_lock+0x43/0xea
@@ -35,7 +35,7 @@ Link: http://lkml.kernel.org/n/tip-wbot4vsmwhi8vmbf83hsclk6@git.kernel.org
  2 files changed, 24 insertions(+)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 5404e88..e68f0f6 100644
+index 5181eff75ef0..674530730522 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1270,6 +1270,9 @@ struct task_struct {
@@ -49,10 +49,10 @@ index 5404e88..e68f0f6 100644
  	cpumask_t cpus_allowed;
  
 diff --git a/kernel/sched.c b/kernel/sched.c
-index fba5b3a..0487db1 100644
+index be3a8692dbcd..710236ce2f5d 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -6507,6 +6507,17 @@ void migrate_disable(void)
+@@ -6508,6 +6508,17 @@ void migrate_disable(void)
  	unsigned long flags;
  	struct rq *rq;
  
@@ -70,7 +70,7 @@ index fba5b3a..0487db1 100644
  	preempt_disable();
  	if (p->migrate_disable) {
  		p->migrate_disable++;
-@@ -6555,6 +6566,16 @@ void migrate_enable(void)
+@@ -6556,6 +6567,16 @@ void migrate_enable(void)
  	unsigned long flags;
  	struct rq *rq;
  
diff --git a/debian/patches/features/all/rt/0171-sched-Postpone-actual-migration-disalbe-to-schedule.patch b/debian/patches/features/all/rt/0171-sched-Postpone-actual-migration-disalbe-to-schedule.patch
index 5a59287..25ab6cb 100644
--- a/debian/patches/features/all/rt/0171-sched-Postpone-actual-migration-disalbe-to-schedule.patch
+++ b/debian/patches/features/all/rt/0171-sched-Postpone-actual-migration-disalbe-to-schedule.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Tue, 27 Sep 2011 08:40:23 -0400
-Subject: [PATCH 171/374] sched: Postpone actual migration disalbe to schedule
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f5c04dcfe1a8d6db7bac162794bf4599a782a636
+Subject: [PATCH 171/380] sched: Postpone actual migration disalbe to schedule
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=aff608c40217448bcd5e8ee5bc17e1acdd811628
 
 The migrate_disable() can cause a bit of a overhead to the RT kernel,
 as changing the affinity is expensive to do at every lock encountered.
@@ -23,10 +23,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 132 insertions(+), 119 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 0487db1..9a183b5 100644
+index 710236ce2f5d..80e81dede586 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4554,6 +4554,135 @@ static inline void schedule_debug(struct task_struct *prev)
+@@ -4555,6 +4555,135 @@ static inline void schedule_debug(struct task_struct *prev)
  	schedstat_inc(this_rq(), sched_count);
  }
  
@@ -162,7 +162,7 @@ index 0487db1..9a183b5 100644
  static void put_prev_task(struct rq *rq, struct task_struct *prev)
  {
  	if (prev->on_rq || rq->skip_clock_update < 0)
-@@ -4613,6 +4742,8 @@ need_resched:
+@@ -4614,6 +4743,8 @@ need_resched:
  
  	raw_spin_lock_irq(&rq->lock);
  
@@ -171,7 +171,7 @@ index 0487db1..9a183b5 100644
  	switch_count = &prev->nivcsw;
  	if (prev->state && !(preempt_count() & PREEMPT_ACTIVE)) {
  		if (unlikely(signal_pending_state(prev->state, prev))) {
-@@ -6424,7 +6555,7 @@ static inline void sched_init_granularity(void)
+@@ -6425,7 +6556,7 @@ static inline void sched_init_granularity(void)
  #ifdef CONFIG_SMP
  void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
  {
@@ -180,7 +180,7 @@ index 0487db1..9a183b5 100644
  		if (p->sched_class && p->sched_class->set_cpus_allowed)
  			p->sched_class->set_cpus_allowed(p, new_mask);
  		p->rt.nr_cpus_allowed = cpumask_weight(new_mask);
-@@ -6499,124 +6630,6 @@ out:
+@@ -6500,124 +6631,6 @@ out:
  }
  EXPORT_SYMBOL_GPL(set_cpus_allowed_ptr);
  
diff --git a/debian/patches/features/all/rt/0172-sched-Do-not-compare-cpu-masks-in-scheduler.patch b/debian/patches/features/all/rt/0172-sched-Do-not-compare-cpu-masks-in-scheduler.patch
index 840b735..d7b89cd 100644
--- a/debian/patches/features/all/rt/0172-sched-Do-not-compare-cpu-masks-in-scheduler.patch
+++ b/debian/patches/features/all/rt/0172-sched-Do-not-compare-cpu-masks-in-scheduler.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Tue, 27 Sep 2011 08:40:24 -0400
-Subject: [PATCH 172/374] sched: Do not compare cpu masks in scheduler
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3a1ef9e22f86c60f32bd69019b9e4d074a3925ff
+Subject: [PATCH 172/380] sched: Do not compare cpu masks in scheduler
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=492fc72c43ce9f8f165821f604d5c7ced75bc684
 
 Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Cc: Peter Zijlstra <peterz at infradead.org>
@@ -13,10 +13,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 5 insertions(+), 9 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 9a183b5..442867f 100644
+index 80e81dede586..5e75bd30f8dc 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4582,16 +4582,12 @@ static inline void update_migrate_disable(struct task_struct *p)
+@@ -4583,16 +4583,12 @@ static inline void update_migrate_disable(struct task_struct *p)
  	 */
  	mask = tsk_cpus_allowed(p);
  
diff --git a/debian/patches/features/all/rt/0173-sched-Have-migrate_disable-ignore-bounded-threads.patch b/debian/patches/features/all/rt/0173-sched-Have-migrate_disable-ignore-bounded-threads.patch
index 2b43d5e..91b1948 100644
--- a/debian/patches/features/all/rt/0173-sched-Have-migrate_disable-ignore-bounded-threads.patch
+++ b/debian/patches/features/all/rt/0173-sched-Have-migrate_disable-ignore-bounded-threads.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Tue, 27 Sep 2011 08:40:25 -0400
-Subject: [PATCH 173/374] sched: Have migrate_disable ignore bounded threads
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6539da8f220b63dbb372e2b8d478a45587105e79
+Subject: [PATCH 173/380] sched: Have migrate_disable ignore bounded threads
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c6250342d9df64af6ca7f016d410a08b8c4c2479
 
 Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Cc: Peter Zijlstra <peterz at infradead.org>
@@ -13,10 +13,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 9 insertions(+), 14 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 442867f..4c54e64 100644
+index 5e75bd30f8dc..831a8e499d3f 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4594,7 +4594,7 @@ void migrate_disable(void)
+@@ -4595,7 +4595,7 @@ void migrate_disable(void)
  {
  	struct task_struct *p = current;
  
@@ -25,7 +25,7 @@ index 442867f..4c54e64 100644
  #ifdef CONFIG_SCHED_DEBUG
  		p->migrate_disable_atomic++;
  #endif
-@@ -4625,7 +4625,7 @@ void migrate_enable(void)
+@@ -4626,7 +4626,7 @@ void migrate_enable(void)
  	unsigned long flags;
  	struct rq *rq;
  
@@ -34,7 +34,7 @@ index 442867f..4c54e64 100644
  #ifdef CONFIG_SCHED_DEBUG
  		p->migrate_disable_atomic--;
  #endif
-@@ -4646,26 +4646,21 @@ void migrate_enable(void)
+@@ -4647,26 +4647,21 @@ void migrate_enable(void)
  
  	if (unlikely(migrate_disabled_updated(p))) {
  		/*
diff --git a/debian/patches/features/all/rt/0174-sched-clear-pf-thread-bound-on-fallback-rq.patch.patch b/debian/patches/features/all/rt/0174-sched-clear-pf-thread-bound-on-fallback-rq.patch.patch
index 76dc95e..8fb5592 100644
--- a/debian/patches/features/all/rt/0174-sched-clear-pf-thread-bound-on-fallback-rq.patch.patch
+++ b/debian/patches/features/all/rt/0174-sched-clear-pf-thread-bound-on-fallback-rq.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 4 Nov 2011 20:48:36 +0100
-Subject: [PATCH 174/374] sched-clear-pf-thread-bound-on-fallback-rq.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=05ca6bddc8fd67b0da9e547effaa6768b272b585
+Subject: [PATCH 174/380] sched-clear-pf-thread-bound-on-fallback-rq.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1b80ee18c0019b5ec118e8911df342bd3dd88c66
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,10 +9,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 6 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 4c54e64..3cdf991 100644
+index 831a8e499d3f..b80b187e733c 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -2570,7 +2570,12 @@ static int select_fallback_rq(int cpu, struct task_struct *p)
+@@ -2572,7 +2572,12 @@ static int select_fallback_rq(int cpu, struct task_struct *p)
  		printk(KERN_INFO "process %d (%s) no longer affine to cpu%d\n",
  				task_pid_nr(p), p->comm, cpu);
  	}
diff --git a/debian/patches/features/all/rt/0175-ftrace-crap.patch.patch b/debian/patches/features/all/rt/0175-ftrace-crap.patch.patch
index 46f8b45..3d5e088 100644
--- a/debian/patches/features/all/rt/0175-ftrace-crap.patch.patch
+++ b/debian/patches/features/all/rt/0175-ftrace-crap.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 9 Sep 2011 16:55:53 +0200
-Subject: [PATCH 175/374] ftrace-crap.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9a89b7d71e9adefb103e918225932d55af5af005
+Subject: [PATCH 175/380] ftrace-crap.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=097e63f09bda9864ca16e6e17d6b5ba7310001b4
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 24 insertions(+), 3 deletions(-)
 
 diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
-index c4a9c38..6b42a96 100644
+index c4a9c38f9096..6b42a9606ebf 100644
 --- a/kernel/trace/trace.c
 +++ b/kernel/trace/trace.c
 @@ -359,11 +359,13 @@ static DECLARE_DELAYED_WORK(wakeup_work, wakeup_work_handler);
@@ -80,7 +80,7 @@ index c4a9c38..6b42a96 100644
  /*
   * This is a make-shift waitqueue.
 diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
-index c3c3f6b..776e43d 100644
+index c3c3f6b398d3..776e43d6a602 100644
 --- a/kernel/trace/trace.h
 +++ b/kernel/trace/trace.h
 @@ -349,7 +349,6 @@ void trace_init_global_iter(struct trace_iterator *iter);
diff --git a/debian/patches/features/all/rt/0176-ring-buffer-Convert-reader_lock-from-raw_spin_lock-i.patch b/debian/patches/features/all/rt/0176-ring-buffer-Convert-reader_lock-from-raw_spin_lock-i.patch
index afa9948..cef7725 100644
--- a/debian/patches/features/all/rt/0176-ring-buffer-Convert-reader_lock-from-raw_spin_lock-i.patch
+++ b/debian/patches/features/all/rt/0176-ring-buffer-Convert-reader_lock-from-raw_spin_lock-i.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Tue, 27 Sep 2011 13:56:50 -0400
-Subject: [PATCH 176/374] ring-buffer: Convert reader_lock from raw_spin_lock
+Subject: [PATCH 176/380] ring-buffer: Convert reader_lock from raw_spin_lock
  into spin_lock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=082ff28f6a07a68d41945b424b62f9a8e353866a
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c016e6cd4eab6c0d54752a6e7c5f86b5da98456b
 
 The reader_lock is mostly taken in normal context with interrupts enabled.
 But because ftrace_dump() can happen anywhere, it is used as a spin lock
@@ -44,7 +44,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 81 insertions(+), 70 deletions(-)
 
 diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
-index b252661..aa41914 100644
+index 2a6f853c12b0..46e721e1c799 100644
 --- a/kernel/trace/ring_buffer.c
 +++ b/kernel/trace/ring_buffer.c
 @@ -478,7 +478,7 @@ struct ring_buffer_per_cpu {
@@ -154,7 +154,7 @@ index b252661..aa41914 100644
  }
  
  /**
-@@ -2696,7 +2738,7 @@ unsigned long ring_buffer_oldest_event_ts(struct ring_buffer *buffer, int cpu)
+@@ -2690,7 +2732,7 @@ unsigned long ring_buffer_oldest_event_ts(struct ring_buffer *buffer, int cpu)
  		return 0;
  
  	cpu_buffer = buffer->buffers[cpu];
@@ -163,7 +163,7 @@ index b252661..aa41914 100644
  	/*
  	 * if the tail is on reader_page, oldest time stamp is on the reader
  	 * page
-@@ -2707,7 +2749,7 @@ unsigned long ring_buffer_oldest_event_ts(struct ring_buffer *buffer, int cpu)
+@@ -2701,7 +2743,7 @@ unsigned long ring_buffer_oldest_event_ts(struct ring_buffer *buffer, int cpu)
  		bpage = rb_set_head_page(cpu_buffer);
  	if (bpage)
  		ret = bpage->page->time_stamp;
@@ -172,7 +172,7 @@ index b252661..aa41914 100644
  
  	return ret;
  }
-@@ -2866,15 +2908,16 @@ void ring_buffer_iter_reset(struct ring_buffer_iter *iter)
+@@ -2860,15 +2902,16 @@ void ring_buffer_iter_reset(struct ring_buffer_iter *iter)
  {
  	struct ring_buffer_per_cpu *cpu_buffer;
  	unsigned long flags;
@@ -191,7 +191,7 @@ index b252661..aa41914 100644
  }
  EXPORT_SYMBOL_GPL(ring_buffer_iter_reset);
  
-@@ -3296,21 +3339,6 @@ rb_iter_peek(struct ring_buffer_iter *iter, u64 *ts)
+@@ -3294,21 +3337,6 @@ rb_iter_peek(struct ring_buffer_iter *iter, u64 *ts)
  }
  EXPORT_SYMBOL_GPL(ring_buffer_iter_peek);
  
@@ -213,7 +213,7 @@ index b252661..aa41914 100644
  /**
   * ring_buffer_peek - peek at the next event to be read
   * @buffer: The ring buffer to read
-@@ -3328,22 +3356,17 @@ ring_buffer_peek(struct ring_buffer *buffer, int cpu, u64 *ts,
+@@ -3326,22 +3354,17 @@ ring_buffer_peek(struct ring_buffer *buffer, int cpu, u64 *ts,
  	struct ring_buffer_per_cpu *cpu_buffer = buffer->buffers[cpu];
  	struct ring_buffer_event *event;
  	unsigned long flags;
@@ -239,7 +239,7 @@ index b252661..aa41914 100644
  
  	if (event && event->type_len == RINGBUF_TYPE_PADDING)
  		goto again;
-@@ -3365,11 +3388,12 @@ ring_buffer_iter_peek(struct ring_buffer_iter *iter, u64 *ts)
+@@ -3363,11 +3386,12 @@ ring_buffer_iter_peek(struct ring_buffer_iter *iter, u64 *ts)
  	struct ring_buffer_per_cpu *cpu_buffer = iter->cpu_buffer;
  	struct ring_buffer_event *event;
  	unsigned long flags;
@@ -254,7 +254,7 @@ index b252661..aa41914 100644
  
  	if (event && event->type_len == RINGBUF_TYPE_PADDING)
  		goto again;
-@@ -3395,9 +3419,7 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
+@@ -3393,9 +3417,7 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
  	struct ring_buffer_per_cpu *cpu_buffer;
  	struct ring_buffer_event *event = NULL;
  	unsigned long flags;
@@ -265,7 +265,7 @@ index b252661..aa41914 100644
  
   again:
  	/* might be called in atomic */
-@@ -3407,9 +3429,7 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
+@@ -3405,9 +3427,7 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
  		goto out;
  
  	cpu_buffer = buffer->buffers[cpu];
@@ -276,7 +276,7 @@ index b252661..aa41914 100644
  
  	event = rb_buffer_peek(cpu_buffer, ts, lost_events);
  	if (event) {
-@@ -3417,9 +3437,8 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
+@@ -3415,9 +3435,8 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
  		rb_advance_reader(cpu_buffer);
  	}
  
@@ -288,7 +288,7 @@ index b252661..aa41914 100644
  
   out:
  	preempt_enable();
-@@ -3504,17 +3523,18 @@ ring_buffer_read_start(struct ring_buffer_iter *iter)
+@@ -3502,17 +3521,18 @@ ring_buffer_read_start(struct ring_buffer_iter *iter)
  {
  	struct ring_buffer_per_cpu *cpu_buffer;
  	unsigned long flags;
@@ -309,7 +309,7 @@ index b252661..aa41914 100644
  }
  EXPORT_SYMBOL_GPL(ring_buffer_read_start);
  
-@@ -3548,8 +3568,9 @@ ring_buffer_read(struct ring_buffer_iter *iter, u64 *ts)
+@@ -3546,8 +3566,9 @@ ring_buffer_read(struct ring_buffer_iter *iter, u64 *ts)
  	struct ring_buffer_event *event;
  	struct ring_buffer_per_cpu *cpu_buffer = iter->cpu_buffer;
  	unsigned long flags;
@@ -320,7 +320,7 @@ index b252661..aa41914 100644
   again:
  	event = rb_iter_peek(iter, ts);
  	if (!event)
-@@ -3560,7 +3581,7 @@ ring_buffer_read(struct ring_buffer_iter *iter, u64 *ts)
+@@ -3558,7 +3579,7 @@ ring_buffer_read(struct ring_buffer_iter *iter, u64 *ts)
  
  	rb_advance_iter(iter);
   out:
@@ -329,7 +329,7 @@ index b252661..aa41914 100644
  
  	return event;
  }
-@@ -3625,13 +3646,14 @@ void ring_buffer_reset_cpu(struct ring_buffer *buffer, int cpu)
+@@ -3623,13 +3644,14 @@ void ring_buffer_reset_cpu(struct ring_buffer *buffer, int cpu)
  {
  	struct ring_buffer_per_cpu *cpu_buffer = buffer->buffers[cpu];
  	unsigned long flags;
@@ -345,7 +345,7 @@ index b252661..aa41914 100644
  
  	if (RB_WARN_ON(cpu_buffer, local_read(&cpu_buffer->committing)))
  		goto out;
-@@ -3643,7 +3665,7 @@ void ring_buffer_reset_cpu(struct ring_buffer *buffer, int cpu)
+@@ -3641,7 +3663,7 @@ void ring_buffer_reset_cpu(struct ring_buffer *buffer, int cpu)
  	arch_spin_unlock(&cpu_buffer->lock);
  
   out:
@@ -354,7 +354,7 @@ index b252661..aa41914 100644
  
  	atomic_dec(&cpu_buffer->record_disabled);
  }
-@@ -3670,22 +3692,16 @@ int ring_buffer_empty(struct ring_buffer *buffer)
+@@ -3668,22 +3690,16 @@ int ring_buffer_empty(struct ring_buffer *buffer)
  {
  	struct ring_buffer_per_cpu *cpu_buffer;
  	unsigned long flags;
@@ -380,7 +380,7 @@ index b252661..aa41914 100644
  
  		if (!ret)
  			return 0;
-@@ -3704,22 +3720,16 @@ int ring_buffer_empty_cpu(struct ring_buffer *buffer, int cpu)
+@@ -3702,22 +3718,16 @@ int ring_buffer_empty_cpu(struct ring_buffer *buffer, int cpu)
  {
  	struct ring_buffer_per_cpu *cpu_buffer;
  	unsigned long flags;
@@ -406,7 +406,7 @@ index b252661..aa41914 100644
  
  	return ret;
  }
-@@ -3894,6 +3904,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
+@@ -3892,6 +3902,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
  	unsigned int commit;
  	unsigned int read;
  	u64 save_timestamp;
@@ -414,7 +414,7 @@ index b252661..aa41914 100644
  	int ret = -1;
  
  	if (!cpumask_test_cpu(cpu, buffer->cpumask))
-@@ -3915,7 +3926,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
+@@ -3913,7 +3924,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
  	if (!bpage)
  		goto out;
  
@@ -423,7 +423,7 @@ index b252661..aa41914 100644
  
  	reader = rb_get_reader_page(cpu_buffer);
  	if (!reader)
-@@ -4039,7 +4050,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
+@@ -4037,7 +4048,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
  		memset(&bpage->data[commit], 0, BUF_PAGE_SIZE - commit);
  
   out_unlock:
diff --git a/debian/patches/features/all/rt/0177-net-netif_rx_ni-migrate-disable.patch.patch b/debian/patches/features/all/rt/0177-net-netif_rx_ni-migrate-disable.patch.patch
index 074bb1c..11e20a3 100644
--- a/debian/patches/features/all/rt/0177-net-netif_rx_ni-migrate-disable.patch.patch
+++ b/debian/patches/features/all/rt/0177-net-netif_rx_ni-migrate-disable.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 16:29:27 +0200
-Subject: [PATCH 177/374] net-netif_rx_ni-migrate-disable.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b33683249768ea8c113af701bc7e8fd5dd74d28a
+Subject: [PATCH 177/380] net-netif_rx_ni-migrate-disable.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0c57260878a250aa093523f9feb80f4bd54f607f
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/net/core/dev.c b/net/core/dev.c
-index 1597c0b..428a729 100644
+index 459779a87dd8..cb2cbc0e1744 100644
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
 @@ -3039,11 +3039,11 @@ int netif_rx_ni(struct sk_buff *skb)
diff --git a/debian/patches/features/all/rt/0178-softirq-Sanitize-softirq-pending-for-NOHZ-RT.patch b/debian/patches/features/all/rt/0178-softirq-Sanitize-softirq-pending-for-NOHZ-RT.patch
index c37e00c..32ce014 100644
--- a/debian/patches/features/all/rt/0178-softirq-Sanitize-softirq-pending-for-NOHZ-RT.patch
+++ b/debian/patches/features/all/rt/0178-softirq-Sanitize-softirq-pending-for-NOHZ-RT.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 3 Jul 2009 13:16:38 -0500
-Subject: [PATCH 178/374] softirq: Sanitize softirq pending for NOHZ/RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=aa25a1c37764b088849acac3324ffc471c39d3b1
+Subject: [PATCH 178/380] softirq: Sanitize softirq pending for NOHZ/RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=319f78339e28939fb093cbbeae3408d90849a3ba
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 64 insertions(+), 7 deletions(-)
 
 diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index b9162dc..74e28d9 100644
+index b9162dc541ff..74e28d96480a 100644
 --- a/include/linux/interrupt.h
 +++ b/include/linux/interrupt.h
 @@ -471,6 +471,8 @@ static inline void __raise_softirq_irqoff(unsigned int nr)
@@ -24,7 +24,7 @@ index b9162dc..74e28d9 100644
   *
   * send_remote_sendirq() adds work to these lists, and
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index b7b4c0c..563403c 100644
+index b7b4c0ce4ae6..563403cd85d9 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -61,6 +61,67 @@ char *softirq_to_name[NR_SOFTIRQS] = {
@@ -96,7 +96,7 @@ index b7b4c0c..563403c 100644
   * we cannot loop indefinitely here to avoid userspace starvation,
   * but we also don't want to introduce a worst case 1/HZ latency
 diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
-index b81eb81..9d1d982 100644
+index b81eb81f7764..9d1d98229e88 100644
 --- a/kernel/time/tick-sched.c
 +++ b/kernel/time/tick-sched.c
 @@ -338,13 +338,7 @@ void tick_nohz_stop_sched_tick(int inidle)
diff --git a/debian/patches/features/all/rt/0179-lockdep-rt.patch.patch b/debian/patches/features/all/rt/0179-lockdep-rt.patch.patch
index d21e497..abadf88 100644
--- a/debian/patches/features/all/rt/0179-lockdep-rt.patch.patch
+++ b/debian/patches/features/all/rt/0179-lockdep-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 18:51:23 +0200
-Subject: [PATCH 179/374] lockdep-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=55256a986e77c482114253e697504d89b9793f29
+Subject: [PATCH 179/380] lockdep-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4537fab73cadb3b10baf61880aca8e7c57e3bfac
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 9 insertions(+), 3 deletions(-)
 
 diff --git a/include/linux/irqflags.h b/include/linux/irqflags.h
-index 37b13c4..a52b35d 100644
+index 37b13c41a12a..a52b35d4229f 100644
 --- a/include/linux/irqflags.h
 +++ b/include/linux/irqflags.h
 @@ -25,8 +25,6 @@
@@ -40,7 +40,7 @@ index 37b13c4..a52b35d 100644
  
  #if defined(CONFIG_IRQSOFF_TRACER) || \
 diff --git a/kernel/lockdep.c b/kernel/lockdep.c
-index b2e08c9..334d3c0 100644
+index b2e08c932d91..334d3c037b34 100644
 --- a/kernel/lockdep.c
 +++ b/kernel/lockdep.c
 @@ -3494,6 +3494,7 @@ static void check_flags(unsigned long flags)
diff --git a/debian/patches/features/all/rt/0180-mutex-no-spin-on-rt.patch.patch b/debian/patches/features/all/rt/0180-mutex-no-spin-on-rt.patch.patch
index 6b4e20a..aa9dca9 100644
--- a/debian/patches/features/all/rt/0180-mutex-no-spin-on-rt.patch.patch
+++ b/debian/patches/features/all/rt/0180-mutex-no-spin-on-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 21:51:45 +0200
-Subject: [PATCH 180/374] mutex-no-spin-on-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c4fb4640893bdc21381d375589a291ac6b5c1778
+Subject: [PATCH 180/380] mutex-no-spin-on-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8ad20898703cafa9f198797e343f0f0e7da22166
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/Kconfig.locks b/kernel/Kconfig.locks
-index 61ebb49..a163ed5 100644
+index 61ebb49bdee8..a163ed59ec8f 100644
 --- a/kernel/Kconfig.locks
 +++ b/kernel/Kconfig.locks
 @@ -203,4 +203,4 @@ config ARCH_SUPPORTS_ATOMIC_RMW
diff --git a/debian/patches/features/all/rt/0181-softirq-local-lock.patch.patch b/debian/patches/features/all/rt/0181-softirq-local-lock.patch.patch
index 16480a8..785da19 100644
--- a/debian/patches/features/all/rt/0181-softirq-local-lock.patch.patch
+++ b/debian/patches/features/all/rt/0181-softirq-local-lock.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 28 Jun 2011 15:57:18 +0200
-Subject: [PATCH 181/374] softirq-local-lock.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9c6be7495ad61e4f4e45ae7ac7cd663547cdee6d
+Subject: [PATCH 181/380] softirq-local-lock.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=28cb48254db61cc73f725fc1597453df9d9b5350
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  5 files changed, 194 insertions(+), 5 deletions(-)
 
 diff --git a/include/linux/hardirq.h b/include/linux/hardirq.h
-index f743883..2f5d318 100644
+index f743883f769e..2f5d31896644 100644
 --- a/include/linux/hardirq.h
 +++ b/include/linux/hardirq.h
 @@ -60,7 +60,11 @@
@@ -57,7 +57,7 @@ index f743883..2f5d318 100644
  /*
   * Are we in NMI context?
 diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index 74e28d9..20d8dcc 100644
+index 74e28d96480a..20d8dcc02bd3 100644
 --- a/include/linux/interrupt.h
 +++ b/include/linux/interrupt.h
 @@ -458,7 +458,12 @@ struct softirq_action
@@ -87,7 +87,7 @@ index 74e28d9..20d8dcc 100644
   * Autoprobing for irqs:
   *
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index e68f0f6..1e9050d 100644
+index 674530730522..ca78d234639e 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1610,6 +1610,7 @@ struct task_struct {
@@ -99,7 +99,7 @@ index e68f0f6..1e9050d 100644
  };
  
 diff --git a/init/main.c b/init/main.c
-index 7bf452a..8ccb56a 100644
+index 7bf452a4743b..8ccb56a01ad5 100644
 --- a/init/main.c
 +++ b/init/main.c
 @@ -491,6 +491,7 @@ asmlinkage void __init start_kernel(void)
@@ -111,7 +111,7 @@ index 7bf452a..8ccb56a 100644
  	boot_cpu_init();
  	page_address_init();
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 563403c..b60ae00 100644
+index 563403cd85d9..b60ae00b0f90 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -24,6 +24,7 @@
diff --git a/debian/patches/features/all/rt/0182-softirq-Export-in_serving_softirq.patch b/debian/patches/features/all/rt/0182-softirq-Export-in_serving_softirq.patch
index ea600c0..4cda75e 100644
--- a/debian/patches/features/all/rt/0182-softirq-Export-in_serving_softirq.patch
+++ b/debian/patches/features/all/rt/0182-softirq-Export-in_serving_softirq.patch
@@ -1,7 +1,7 @@
 From: John Kacur <jkacur at redhat.com>
 Date: Mon, 14 Nov 2011 02:44:43 +0100
-Subject: [PATCH 182/374] softirq: Export in_serving_softirq()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=727dba87ca235bc5f527662458b844f87c1a5357
+Subject: [PATCH 182/380] softirq: Export in_serving_softirq()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6c17aa9968151ba135c50467753d1a1c8f82a516
 
 ERROR: "in_serving_softirq" [net/sched/cls_cgroup.ko] undefined!
 
@@ -17,7 +17,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+)
 
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index b60ae00..7088545 100644
+index b60ae00b0f90..7088545bf20c 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -447,6 +447,7 @@ int in_serving_softirq(void)
diff --git a/debian/patches/features/all/rt/0183-hardirq.h-Define-softirq_count-as-OUL-to-kill-build-.patch b/debian/patches/features/all/rt/0183-hardirq.h-Define-softirq_count-as-OUL-to-kill-build-.patch
index c8927db..f1d6c59 100644
--- a/debian/patches/features/all/rt/0183-hardirq.h-Define-softirq_count-as-OUL-to-kill-build-.patch
+++ b/debian/patches/features/all/rt/0183-hardirq.h-Define-softirq_count-as-OUL-to-kill-build-.patch
@@ -1,11 +1,11 @@
 From: Yong Zhang <yong.zhang0 at gmail.com>
 Date: Thu, 13 Oct 2011 17:19:09 +0800
-Subject: [PATCH 183/374] hardirq.h: Define softirq_count() as OUL to kill
+Subject: [PATCH 183/380] hardirq.h: Define softirq_count() as OUL to kill
  build warning
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a7e2b1d7458ccaa3232258a34c27ce29d068437c
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5e1fd05a9a76e9977bdb4d26a8c34799dfeaa01d
 
 kernel/lockdep.c: In function ‘print_bad_irq_dependency’:
 kernel/lockdep.c:1476:3: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 7 has type ‘unsigned int’
@@ -28,7 +28,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/include/linux/hardirq.h b/include/linux/hardirq.h
-index 2f5d318..7059ce2 100644
+index 2f5d31896644..7059ce231a36 100644
 --- a/include/linux/hardirq.h
 +++ b/include/linux/hardirq.h
 @@ -84,7 +84,7 @@
diff --git a/debian/patches/features/all/rt/0184-softirq-Fix-unplug-deadlock.patch b/debian/patches/features/all/rt/0184-softirq-Fix-unplug-deadlock.patch
index 4d464e7..24d25ce 100644
--- a/debian/patches/features/all/rt/0184-softirq-Fix-unplug-deadlock.patch
+++ b/debian/patches/features/all/rt/0184-softirq-Fix-unplug-deadlock.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Fri, 30 Sep 2011 15:52:14 +0200
-Subject: [PATCH 184/374] softirq: Fix unplug deadlock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0f05b12125efc2e49e151f4c1dced07b93ddfc74
+Subject: [PATCH 184/380] softirq: Fix unplug deadlock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2c9a9a7f04a71c9ba28f0d057170f4466c7e4e31
 
 If ksoftirqd gets woken during hot-unplug, __thread_do_softirq() will
 call pin_current_cpu() which will block on the held cpu_hotplug.lock.
@@ -28,7 +28,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 6 deletions(-)
 
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 7088545..5063342 100644
+index 7088545bf20c..506334257e59 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -1094,9 +1094,8 @@ static int __cpuinit cpu_callback(struct notifier_block *nfb,
diff --git a/debian/patches/features/all/rt/0185-softirq-disable-softirq-stacks-for-rt.patch.patch b/debian/patches/features/all/rt/0185-softirq-disable-softirq-stacks-for-rt.patch.patch
index 69a3740..926981f 100644
--- a/debian/patches/features/all/rt/0185-softirq-disable-softirq-stacks-for-rt.patch.patch
+++ b/debian/patches/features/all/rt/0185-softirq-disable-softirq-stacks-for-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 18 Jul 2011 13:59:17 +0200
-Subject: [PATCH 185/374] softirq-disable-softirq-stacks-for-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a277873924e7e9970dd65ce26365e90a014dd0ed
+Subject: [PATCH 185/380] softirq-disable-softirq-stacks-for-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e7162cb2375d9aad9acebd88131d1915111aa959
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -17,7 +17,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  9 files changed, 17 insertions(+), 4 deletions(-)
 
 diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c
-index 745c1e7..e0ee531 100644
+index 745c1e7c10fd..e0ee53177ea5 100644
 --- a/arch/powerpc/kernel/irq.c
 +++ b/arch/powerpc/kernel/irq.c
 @@ -440,6 +440,7 @@ void irq_ctx_init(void)
@@ -38,7 +38,7 @@ index 745c1e7..e0ee531 100644
  /*
   * IRQ controller and virtual interrupts
 diff --git a/arch/powerpc/kernel/misc_32.S b/arch/powerpc/kernel/misc_32.S
-index 7cd07b4..46c6073 100644
+index 7cd07b42ca1a..46c607300b29 100644
 --- a/arch/powerpc/kernel/misc_32.S
 +++ b/arch/powerpc/kernel/misc_32.S
 @@ -36,6 +36,7 @@
@@ -58,7 +58,7 @@ index 7cd07b4..46c6073 100644
  _GLOBAL(call_handle_irq)
  	mflr	r0
 diff --git a/arch/powerpc/kernel/misc_64.S b/arch/powerpc/kernel/misc_64.S
-index 616921e..2961d75 100644
+index 616921ef1439..2961d7521726 100644
 --- a/arch/powerpc/kernel/misc_64.S
 +++ b/arch/powerpc/kernel/misc_64.S
 @@ -29,6 +29,7 @@
@@ -78,7 +78,7 @@ index 616921e..2961d75 100644
  _GLOBAL(call_handle_irq)
  	ld	r8,0(r6)
 diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c
-index a3ee919..9127bc0 100644
+index a3ee91971129..9127bc05d629 100644
 --- a/arch/sh/kernel/irq.c
 +++ b/arch/sh/kernel/irq.c
 @@ -149,6 +149,7 @@ void irq_ctx_exit(int cpu)
@@ -98,7 +98,7 @@ index a3ee919..9127bc0 100644
  static inline void handle_one_irq(unsigned int irq)
  {
 diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c
-index d45b710..c3a3737 100644
+index d45b710ea7e4..c3a3737df3c7 100644
 --- a/arch/sparc/kernel/irq_64.c
 +++ b/arch/sparc/kernel/irq_64.c
 @@ -699,6 +699,7 @@ void __irq_entry handler_irq(int pil, struct pt_regs *regs)
@@ -118,7 +118,7 @@ index d45b710..c3a3737 100644
  #ifdef CONFIG_HOTPLUG_CPU
  void fixup_irqs(void)
 diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S
-index f6daf3c..066634b 100644
+index f6daf3cdb878..066634bb644e 100644
 --- a/arch/x86/kernel/entry_64.S
 +++ b/arch/x86/kernel/entry_64.S
 @@ -1210,6 +1210,7 @@ ENTRY(kernel_execve)
@@ -138,7 +138,7 @@ index f6daf3c..066634b 100644
  #ifdef CONFIG_XEN
  zeroentry xen_hypervisor_callback xen_do_hypervisor_callback
 diff --git a/arch/x86/kernel/irq_32.c b/arch/x86/kernel/irq_32.c
-index 7209070..84417a2 100644
+index 72090705a656..84417a251c3f 100644
 --- a/arch/x86/kernel/irq_32.c
 +++ b/arch/x86/kernel/irq_32.c
 @@ -149,6 +149,7 @@ void __cpuinit irq_ctx_init(int cpu)
@@ -158,7 +158,7 @@ index 7209070..84417a2 100644
  bool handle_irq(unsigned irq, struct pt_regs *regs)
  {
 diff --git a/arch/x86/kernel/irq_64.c b/arch/x86/kernel/irq_64.c
-index 69bca46..3fbc07d 100644
+index 69bca468c47a..3fbc07df72e1 100644
 --- a/arch/x86/kernel/irq_64.c
 +++ b/arch/x86/kernel/irq_64.c
 @@ -65,7 +65,7 @@ bool handle_irq(unsigned irq, struct pt_regs *regs)
@@ -176,7 +176,7 @@ index 69bca46..3fbc07d 100644
  }
 +#endif
 diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index 20d8dcc..1a74cf7 100644
+index 20d8dcc02bd3..1a74cf7415c0 100644
 --- a/include/linux/interrupt.h
 +++ b/include/linux/interrupt.h
 @@ -456,10 +456,9 @@ struct softirq_action
diff --git a/debian/patches/features/all/rt/0186-softirq-make-fifo.patch.patch b/debian/patches/features/all/rt/0186-softirq-make-fifo.patch.patch
index 7f683ff..4f5739b 100644
--- a/debian/patches/features/all/rt/0186-softirq-make-fifo.patch.patch
+++ b/debian/patches/features/all/rt/0186-softirq-make-fifo.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 21 Jul 2011 21:06:43 +0200
-Subject: [PATCH 186/374] softirq-make-fifo.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5dfb6391a97b0bbda2980a74bdc600f74afb59ca
+Subject: [PATCH 186/380] softirq-make-fifo.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fc1414815e3423607ee97d0dceabd8e0b9c5fd22
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 19 insertions(+)
 
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 5063342..d475fcc 100644
+index 506334257e59..d475fcced698 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -380,6 +380,8 @@ asmlinkage void do_softirq(void)
diff --git a/debian/patches/features/all/rt/0187-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch b/debian/patches/features/all/rt/0187-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch
index db319d1..a1916e5 100644
--- a/debian/patches/features/all/rt/0187-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch
+++ b/debian/patches/features/all/rt/0187-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch
@@ -1,8 +1,8 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Tue, 29 Nov 2011 20:18:22 -0500
-Subject: [PATCH 187/374] tasklet: Prevent tasklets from going into infinite
+Subject: [PATCH 187/380] tasklet: Prevent tasklets from going into infinite
  spin in RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=de98f15cbf2f653f2eeb708259906ca1c05a13c0
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3ff00670edc8136b0a4e01c17060edeb9c0e54f9
 
 When CONFIG_PREEMPT_RT_FULL is enabled, tasklets run as threads,
 and spinlocks turn are mutexes. But this can cause issues with
@@ -43,7 +43,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 170 insertions(+), 77 deletions(-)
 
 diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index 1a74cf7..bb4b441 100644
+index 1a74cf7415c0..bb4b441b1860 100644
 --- a/include/linux/interrupt.h
 +++ b/include/linux/interrupt.h
 @@ -517,8 +517,9 @@ extern void __send_remote_softirq(struct call_single_data *cp, int cpu,
@@ -122,7 +122,7 @@ index 1a74cf7..bb4b441 100644
  extern void tasklet_kill(struct tasklet_struct *t);
  extern void tasklet_kill_immediate(struct tasklet_struct *t, unsigned int cpu);
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index d475fcc..33e4c50 100644
+index d475fcced698..33e4c509d382 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -21,6 +21,7 @@
diff --git a/debian/patches/features/all/rt/0188-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch b/debian/patches/features/all/rt/0188-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch
index db22408..b9fb34b 100644
--- a/debian/patches/features/all/rt/0188-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch
+++ b/debian/patches/features/all/rt/0188-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 31 Jan 2012 13:01:27 +0100
-Subject: [PATCH 188/374] genirq: Allow disabling of softirq processing in irq
+Subject: [PATCH 188/380] genirq: Allow disabling of softirq processing in irq
  thread context
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=347288b52b2033c792ee262612a80370f100cafe
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5db0d9b464d1606a991022ed122ad2e283f96e41
 
 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
@@ -21,7 +21,7 @@ Cc: stable-rt at vger.kernel.org
  5 files changed, 37 insertions(+), 2 deletions(-)
 
 diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index bb4b441..f70a65b 100644
+index bb4b441b1860..f70a65b2a051 100644
 --- a/include/linux/interrupt.h
 +++ b/include/linux/interrupt.h
 @@ -61,6 +61,7 @@
@@ -41,7 +41,7 @@ index bb4b441..f70a65b 100644
  #define IRQF_TIMER		(__IRQF_TIMER | IRQF_NO_SUSPEND | IRQF_NO_THREAD)
  
 diff --git a/include/linux/irq.h b/include/linux/irq.h
-index bff29c5..3838b53 100644
+index bff29c58da23..3838b5355544 100644
 --- a/include/linux/irq.h
 +++ b/include/linux/irq.h
 @@ -67,6 +67,7 @@ typedef	void (*irq_preflow_handler_t)(struct irq_data *data);
@@ -69,7 +69,7 @@ index bff29c5..3838b53 100644
  #define IRQ_NO_BALANCING_MASK	(IRQ_PER_CPU | IRQ_NO_BALANCING)
  
 diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index d1ceaba..9a818604 100644
+index 152dca2fa96e..83614089f17a 100644
 --- a/kernel/irq/manage.c
 +++ b/kernel/irq/manage.c
 @@ -751,7 +751,15 @@ irq_forced_thread_fn(struct irq_desc *desc, struct irqaction *action)
@@ -100,7 +100,7 @@ index d1ceaba..9a818604 100644
  		setup_affinity(irq, desc, mask);
  
 diff --git a/kernel/irq/settings.h b/kernel/irq/settings.h
-index 1162f10..0d2c381 100644
+index 1162f1030f18..0d2c381c2bdb 100644
 --- a/kernel/irq/settings.h
 +++ b/kernel/irq/settings.h
 @@ -14,6 +14,7 @@ enum {
@@ -137,7 +137,7 @@ index 1162f10..0d2c381 100644
  {
  	return desc->status_use_accessors & _IRQ_PER_CPU;
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 33e4c50..977345c 100644
+index 33e4c509d382..977345cb98df 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -433,6 +433,13 @@ void local_bh_enable_ip(unsigned long ip)
diff --git a/debian/patches/features/all/rt/0189-local-vars-migrate-disable.patch.patch b/debian/patches/features/all/rt/0189-local-vars-migrate-disable.patch.patch
index 49e6efd..dd9ea0c 100644
--- a/debian/patches/features/all/rt/0189-local-vars-migrate-disable.patch.patch
+++ b/debian/patches/features/all/rt/0189-local-vars-migrate-disable.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 28 Jun 2011 20:42:16 +0200
-Subject: [PATCH 189/374] local-vars-migrate-disable.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d29eef30165941b7b99f81f1cfa012fbc0668ca3
+Subject: [PATCH 189/380] local-vars-migrate-disable.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d4467d49df6b5939e62afe63135295598b9b828e
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 24 insertions(+), 4 deletions(-)
 
 diff --git a/include/linux/percpu.h b/include/linux/percpu.h
-index 3941ea4..58163cd 100644
+index 3941ea401f3d..58163cd6cca1 100644
 --- a/include/linux/percpu.h
 +++ b/include/linux/percpu.h
 @@ -48,10 +48,30 @@
diff --git a/debian/patches/features/all/rt/0190-md-raid5-Make-raid5_percpu-handling-RT-aware.patch b/debian/patches/features/all/rt/0190-md-raid5-Make-raid5_percpu-handling-RT-aware.patch
index 88067e1..1fbb53f 100644
--- a/debian/patches/features/all/rt/0190-md-raid5-Make-raid5_percpu-handling-RT-aware.patch
+++ b/debian/patches/features/all/rt/0190-md-raid5-Make-raid5_percpu-handling-RT-aware.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 6 Apr 2010 16:51:31 +0200
-Subject: [PATCH 190/374] md: raid5: Make raid5_percpu handling RT aware
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=486c7046b7fb9671c70afe381d0c9603bab4f5ab
+Subject: [PATCH 190/380] md: raid5: Make raid5_percpu handling RT aware
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=de7ae399320591c7ed66d39f5641c96cbbffbb6f
 
 __raid_run_ops() disables preemption with get_cpu() around the access
 to the raid5_percpu variables. That causes scheduling while atomic
@@ -19,7 +19,7 @@ Tested-by: Udo van den Heuvel <udovdh at xs4all.nl>
  2 files changed, 8 insertions(+), 3 deletions(-)
 
 diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
-index 6056ee7..10fbba8 100644
+index 6056ee7984ac..10fbba8451b6 100644
 --- a/drivers/md/raid5.c
 +++ b/drivers/md/raid5.c
 @@ -1253,8 +1253,9 @@ static void __raid_run_ops(struct stripe_head *sh, unsigned long ops_request)
@@ -56,7 +56,7 @@ index 6056ee7..10fbba8 100644
  	if (!percpu->scribble || (conf->level == 6 && !percpu->spare_page)) {
  		free_scratch_buffer(conf, percpu);
 diff --git a/drivers/md/raid5.h b/drivers/md/raid5.h
-index e10c553..010a969 100644
+index e10c5531f9c5..010a96916bc2 100644
 --- a/drivers/md/raid5.h
 +++ b/drivers/md/raid5.h
 @@ -405,6 +405,7 @@ struct r5conf {
diff --git a/debian/patches/features/all/rt/0191-rtmutex-lock-killable.patch.patch b/debian/patches/features/all/rt/0191-rtmutex-lock-killable.patch.patch
index 5bfa995..48e7dc6 100644
--- a/debian/patches/features/all/rt/0191-rtmutex-lock-killable.patch.patch
+++ b/debian/patches/features/all/rt/0191-rtmutex-lock-killable.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 9 Jun 2011 11:43:52 +0200
-Subject: [PATCH 191/374] rtmutex-lock-killable.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9f398c90af514ea5e7be3ad15274fef98c8c62a3
+Subject: [PATCH 191/380] rtmutex-lock-killable.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=33826bf53b8e5017805d02b04872976898756384
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 28 insertions(+), 6 deletions(-)
 
 diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
-index de17134..3561eb2 100644
+index de17134244f3..3561eb2e0d65 100644
 --- a/include/linux/rtmutex.h
 +++ b/include/linux/rtmutex.h
 @@ -90,6 +90,7 @@ extern void rt_mutex_destroy(struct rt_mutex *lock);
@@ -22,7 +22,7 @@ index de17134..3561eb2 100644
  					struct hrtimer_sleeper *timeout,
  					int detect_deadlock);
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 1928f3d..0459561 100644
+index 1928f3db77b0..04595617c43d 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -1008,12 +1008,12 @@ EXPORT_SYMBOL_GPL(rt_mutex_lock);
diff --git a/debian/patches/features/all/rt/0192-rtmutex-futex-prepare-rt.patch.patch b/debian/patches/features/all/rt/0192-rtmutex-futex-prepare-rt.patch.patch
index 235fb60..2aa9f5a 100644
--- a/debian/patches/features/all/rt/0192-rtmutex-futex-prepare-rt.patch.patch
+++ b/debian/patches/features/all/rt/0192-rtmutex-futex-prepare-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 10 Jun 2011 11:04:15 +0200
-Subject: [PATCH 192/374] rtmutex-futex-prepare-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0c1baf78c3ddd8091f6b5d8c3db940b9bc5e9e0a
+Subject: [PATCH 192/380] rtmutex-futex-prepare-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a3e3e174a40f581801e5792cffeafd712d1c07b9
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 90 insertions(+), 18 deletions(-)
 
 diff --git a/kernel/futex.c b/kernel/futex.c
-index 7481595..bd5f495 100644
+index 9dc2c7192b2e..bc35f1cc923f 100644
 --- a/kernel/futex.c
 +++ b/kernel/futex.c
 @@ -1569,6 +1569,16 @@ retry_private:
@@ -107,7 +107,7 @@ index 7481595..bd5f495 100644
  
  	/* Check if the requeue code acquired the second futex for us. */
  	if (!q.rt_waiter) {
-@@ -2490,9 +2535,10 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
+@@ -2490,14 +2535,15 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
  		 * did a lock-steal - fix up the PI-state in that case.
  		 */
  		if (q.pi_state && (q.pi_state->owner != current)) {
@@ -115,12 +115,17 @@ index 7481595..bd5f495 100644
 +			spin_lock(&hb2->lock);
 +			BUG_ON(&hb2->lock != q.lock_ptr);
  			ret = fixup_pi_state_owner(uaddr2, &q, current);
+ 			/*
+ 			 * Drop the reference to the pi state which
+ 			 * the requeue_pi() code acquired for us.
+ 			 */
+ 			free_pi_state(q.pi_state);
 -			spin_unlock(q.lock_ptr);
 +			spin_unlock(&hb2->lock);
  		}
  	} else {
  		/*
-@@ -2505,7 +2551,8 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
+@@ -2510,7 +2556,8 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
  		ret = rt_mutex_finish_proxy_lock(pi_mutex, to, &rt_waiter, 1);
  		debug_rt_mutex_free_waiter(&rt_waiter);
  
@@ -131,7 +136,7 @@ index 7481595..bd5f495 100644
  		 * Fixup the pi_state owner and possibly acquire the lock if we
  		 * haven't already.
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 0459561..10b11b2 100644
+index 04595617c43d..10b11b2e884a 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -67,6 +67,11 @@ static void fixup_rt_mutex_waiters(struct rt_mutex *lock)
@@ -199,7 +204,7 @@ index 0459561..10b11b2 100644
  		return;
  	}
 diff --git a/kernel/rtmutex_common.h b/kernel/rtmutex_common.h
-index 53a66c8..b43d832 100644
+index 53a66c85261b..b43d832f4f6f 100644
 --- a/kernel/rtmutex_common.h
 +++ b/kernel/rtmutex_common.h
 @@ -103,6 +103,8 @@ static inline struct task_struct *rt_mutex_owner(struct rt_mutex *lock)
diff --git a/debian/patches/features/all/rt/0193-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch b/debian/patches/features/all/rt/0193-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch
index 53219bb..f7540e6 100644
--- a/debian/patches/features/all/rt/0193-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch
+++ b/debian/patches/features/all/rt/0193-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Tue, 10 Apr 2012 14:34:13 -0400
-Subject: [PATCH 193/374] futex: Fix bug on when a requeued RT task times out
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5c7769fa1d9b66a2ee73cb662817081571862146
+Subject: [PATCH 193/380] futex: Fix bug on when a requeued RT task times out
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5c6b63c574acecf53c91010115eb0d33659ee025
 
 Requeue with timeout causes a bug with PREEMPT_RT_FULL.
 
@@ -53,7 +53,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 32 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 10b11b2..f79ae4c 100644
+index 10b11b2e884a..f79ae4c51520 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -69,7 +69,8 @@ static void fixup_rt_mutex_waiters(struct rt_mutex *lock)
@@ -103,7 +103,7 @@ index 10b11b2..f79ae4c 100644
  	ret = task_blocks_on_rt_mutex(lock, waiter, task, 1);
  
 diff --git a/kernel/rtmutex_common.h b/kernel/rtmutex_common.h
-index b43d832..47290ec 100644
+index b43d832f4f6f..47290eca692a 100644
 --- a/kernel/rtmutex_common.h
 +++ b/kernel/rtmutex_common.h
 @@ -104,6 +104,7 @@ static inline struct task_struct *rt_mutex_owner(struct rt_mutex *lock)
diff --git a/debian/patches/features/all/rt/0194-rt-mutex-add-sleeping-spinlocks-support.patch.patch b/debian/patches/features/all/rt/0194-rt-mutex-add-sleeping-spinlocks-support.patch.patch
index 9301feb..ff5256d 100644
--- a/debian/patches/features/all/rt/0194-rt-mutex-add-sleeping-spinlocks-support.patch.patch
+++ b/debian/patches/features/all/rt/0194-rt-mutex-add-sleeping-spinlocks-support.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 10 Jun 2011 11:21:25 +0200
-Subject: [PATCH 194/374] rt-mutex-add-sleeping-spinlocks-support.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=349e9e6d95d499558975ec114beaeefddc49e00b
+Subject: [PATCH 194/380] rt-mutex-add-sleeping-spinlocks-support.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=92ad57b4ae144524c794e2b21a406245eb9d77c9
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  4 files changed, 404 insertions(+), 27 deletions(-)
 
 diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
-index 3561eb2..928d93e 100644
+index 3561eb2e0d65..928d93ee2635 100644
 --- a/include/linux/rtmutex.h
 +++ b/include/linux/rtmutex.h
 @@ -29,9 +29,10 @@ struct rt_mutex {
@@ -74,7 +74,7 @@ index 3561eb2..928d93e 100644
  #define DEFINE_RT_MUTEX(mutexname) \
  	struct rt_mutex mutexname = __RT_MUTEX_INITIALIZER(mutexname)
 diff --git a/kernel/futex.c b/kernel/futex.c
-index bd5f495..749e297 100644
+index bc35f1cc923f..7cfa4527e942 100644
 --- a/kernel/futex.c
 +++ b/kernel/futex.c
 @@ -2446,8 +2446,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
@@ -88,7 +88,7 @@ index bd5f495..749e297 100644
  	ret = get_futex_key(uaddr2, flags & FLAGS_SHARED, &key2, VERIFY_WRITE);
  	if (unlikely(ret != 0))
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index f79ae4c..5c61c2e 100644
+index f79ae4c51520..5c61c2ea4298 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -8,6 +8,12 @@
@@ -599,7 +599,7 @@ index f79ae4c..5c61c2e 100644
  	rt_mutex_set_owner(lock, proxy_owner);
  	rt_mutex_deadlock_account_lock(lock, proxy_owner);
 diff --git a/kernel/rtmutex_common.h b/kernel/rtmutex_common.h
-index 47290ec..6ec3dc1 100644
+index 47290eca692a..6ec3dc1eab10 100644
 --- a/kernel/rtmutex_common.h
 +++ b/kernel/rtmutex_common.h
 @@ -49,6 +49,7 @@ struct rt_mutex_waiter {
diff --git a/debian/patches/features/all/rt/0195-spinlock-types-separate-raw.patch.patch b/debian/patches/features/all/rt/0195-spinlock-types-separate-raw.patch.patch
index e06ed4d..f903d16 100644
--- a/debian/patches/features/all/rt/0195-spinlock-types-separate-raw.patch.patch
+++ b/debian/patches/features/all/rt/0195-spinlock-types-separate-raw.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 29 Jun 2011 19:34:01 +0200
-Subject: [PATCH 195/374] spinlock-types-separate-raw.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b10429c4f389ffe24f611f7d482df8a0b7946b5f
+Subject: [PATCH 195/380] spinlock-types-separate-raw.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5e66a0d6e2692f1d3bbf6aa3d98433c11ce09e5c
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  create mode 100644 include/linux/spinlock_types_raw.h
 
 diff --git a/include/linux/rwlock_types.h b/include/linux/rwlock_types.h
-index cc0072e..5317cd9 100644
+index cc0072e93e36..5317cd957292 100644
 --- a/include/linux/rwlock_types.h
 +++ b/include/linux/rwlock_types.h
 @@ -1,6 +1,10 @@
@@ -29,7 +29,7 @@ index cc0072e..5317cd9 100644
   * include/linux/rwlock_types.h - generic rwlock type definitions
   *				  and initializers
 diff --git a/include/linux/spinlock_types.h b/include/linux/spinlock_types.h
-index 73548eb..5c8664d 100644
+index 73548eb13a5d..5c8664d57fb8 100644
 --- a/include/linux/spinlock_types.h
 +++ b/include/linux/spinlock_types.h
 @@ -9,79 +9,9 @@
@@ -116,7 +116,7 @@ index 73548eb..5c8664d 100644
  
 diff --git a/include/linux/spinlock_types_nort.h b/include/linux/spinlock_types_nort.h
 new file mode 100644
-index 0000000..f1dac1f
+index 000000000000..f1dac1fb1d6a
 --- /dev/null
 +++ b/include/linux/spinlock_types_nort.h
 @@ -0,0 +1,33 @@
@@ -155,7 +155,7 @@ index 0000000..f1dac1f
 +#endif
 diff --git a/include/linux/spinlock_types_raw.h b/include/linux/spinlock_types_raw.h
 new file mode 100644
-index 0000000..edffc4d
+index 000000000000..edffc4d53fc9
 --- /dev/null
 +++ b/include/linux/spinlock_types_raw.h
 @@ -0,0 +1,56 @@
diff --git a/debian/patches/features/all/rt/0196-rtmutex-avoid-include-hell.patch.patch b/debian/patches/features/all/rt/0196-rtmutex-avoid-include-hell.patch.patch
index 2d4df6f..7ba1def 100644
--- a/debian/patches/features/all/rt/0196-rtmutex-avoid-include-hell.patch.patch
+++ b/debian/patches/features/all/rt/0196-rtmutex-avoid-include-hell.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 29 Jun 2011 20:06:39 +0200
-Subject: [PATCH 196/374] rtmutex-avoid-include-hell.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=407393c6612d179fb0f877f96ab87db5a9e8bda6
+Subject: [PATCH 196/380] rtmutex-avoid-include-hell.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c7a2b2b03ab5499d8960f8db1d514434dbe301d9
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
-index 928d93e..5ebd0bb 100644
+index 928d93ee2635..5ebd0bbb6eaa 100644
 --- a/include/linux/rtmutex.h
 +++ b/include/linux/rtmutex.h
 @@ -14,7 +14,7 @@
diff --git a/debian/patches/features/all/rt/0197-rt-add-rt-spinlocks.patch.patch b/debian/patches/features/all/rt/0197-rt-add-rt-spinlocks.patch.patch
index f6071e4..a87ca5e 100644
--- a/debian/patches/features/all/rt/0197-rt-add-rt-spinlocks.patch.patch
+++ b/debian/patches/features/all/rt/0197-rt-add-rt-spinlocks.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 29 Jun 2011 19:43:35 +0200
-Subject: [PATCH 197/374] rt-add-rt-spinlocks.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2492296bb265881785724217025273476ff37618
+Subject: [PATCH 197/380] rt-add-rt-spinlocks.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=adb587bb570873e549702e3b1acd7e60e3f39a08
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 
 diff --git a/include/linux/rwlock_types_rt.h b/include/linux/rwlock_types_rt.h
 new file mode 100644
-index 0000000..b138321
+index 000000000000..b13832119591
 --- /dev/null
 +++ b/include/linux/rwlock_types_rt.h
 @@ -0,0 +1,33 @@
@@ -52,7 +52,7 @@ index 0000000..b138321
 +
 +#endif
 diff --git a/include/linux/spinlock_types.h b/include/linux/spinlock_types.h
-index 5c8664d..10bac71 100644
+index 5c8664d57fb8..10bac715ea96 100644
 --- a/include/linux/spinlock_types.h
 +++ b/include/linux/spinlock_types.h
 @@ -11,8 +11,13 @@
@@ -74,7 +74,7 @@ index 5c8664d..10bac71 100644
  #endif /* __LINUX_SPINLOCK_TYPES_H */
 diff --git a/include/linux/spinlock_types_rt.h b/include/linux/spinlock_types_rt.h
 new file mode 100644
-index 0000000..1fe8fc0
+index 000000000000..1fe8fc069d9b
 --- /dev/null
 +++ b/include/linux/spinlock_types_rt.h
 @@ -0,0 +1,49 @@
diff --git a/debian/patches/features/all/rt/0198-rt-add-rt-to-mutex-headers.patch.patch b/debian/patches/features/all/rt/0198-rt-add-rt-to-mutex-headers.patch.patch
index 3e526eb..1039a5f 100644
--- a/debian/patches/features/all/rt/0198-rt-add-rt-to-mutex-headers.patch.patch
+++ b/debian/patches/features/all/rt/0198-rt-add-rt-to-mutex-headers.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 29 Jun 2011 20:56:22 +0200
-Subject: [PATCH 198/374] rt-add-rt-to-mutex-headers.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4ce50f77be87405c2f8a02fa03fe701ca795211b
+Subject: [PATCH 198/380] rt-add-rt-to-mutex-headers.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b649b9e2644edb2676788ba9478271b46d35c92b
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  create mode 100644 include/linux/mutex_rt.h
 
 diff --git a/include/linux/mutex.h b/include/linux/mutex.h
-index 9121595..bdf1da2 100644
+index 9121595a8ebf..bdf1da2cf4b6 100644
 --- a/include/linux/mutex.h
 +++ b/include/linux/mutex.h
 @@ -17,6 +17,17 @@
@@ -58,7 +58,7 @@ index 9121595..bdf1da2 100644
  #ifndef CONFIG_HAVE_ARCH_MUTEX_CPU_RELAX
 diff --git a/include/linux/mutex_rt.h b/include/linux/mutex_rt.h
 new file mode 100644
-index 0000000..c38a44b
+index 000000000000..c38a44b14da5
 --- /dev/null
 +++ b/include/linux/mutex_rt.h
 @@ -0,0 +1,84 @@
diff --git a/debian/patches/features/all/rt/0199-rwsem-add-rt-variant.patch.patch b/debian/patches/features/all/rt/0199-rwsem-add-rt-variant.patch.patch
index 1033443..42d78ee 100644
--- a/debian/patches/features/all/rt/0199-rwsem-add-rt-variant.patch.patch
+++ b/debian/patches/features/all/rt/0199-rwsem-add-rt-variant.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 29 Jun 2011 21:02:53 +0200
-Subject: [PATCH 199/374] rwsem-add-rt-variant.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=89aaf1687d3b2048804760fc28f874b2e7152b9a
+Subject: [PATCH 199/380] rwsem-add-rt-variant.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7d9c22e8995dcdd3a4a109c6dcbf2db96cf09c61
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  create mode 100644 include/linux/rwsem_rt.h
 
 diff --git a/include/linux/rwsem.h b/include/linux/rwsem.h
-index 63d4065..209be4b 100644
+index 63d406554391..209be4b401a6 100644
 --- a/include/linux/rwsem.h
 +++ b/include/linux/rwsem.h
 @@ -17,6 +17,10 @@
@@ -35,7 +35,7 @@ index 63d4065..209be4b 100644
  #endif /* _LINUX_RWSEM_H */
 diff --git a/include/linux/rwsem_rt.h b/include/linux/rwsem_rt.h
 new file mode 100644
-index 0000000..802c690
+index 000000000000..802c6909900a
 --- /dev/null
 +++ b/include/linux/rwsem_rt.h
 @@ -0,0 +1,105 @@
@@ -145,7 +145,7 @@ index 0000000..802c690
 +
 +#endif
 diff --git a/lib/Makefile b/lib/Makefile
-index c06efca..ad29d0c 100644
+index c06efca00c05..ad29d0cb6852 100644
 --- a/lib/Makefile
 +++ b/lib/Makefile
 @@ -37,8 +37,11 @@ obj-$(CONFIG_HAS_IOMEM) += iomap_copy.o devres.o
diff --git a/debian/patches/features/all/rt/0200-rt-Add-the-preempt-rt-lock-replacement-APIs.patch b/debian/patches/features/all/rt/0200-rt-Add-the-preempt-rt-lock-replacement-APIs.patch
index 3c3d941..7daf3e4 100644
--- a/debian/patches/features/all/rt/0200-rt-Add-the-preempt-rt-lock-replacement-APIs.patch
+++ b/debian/patches/features/all/rt/0200-rt-Add-the-preempt-rt-lock-replacement-APIs.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 26 Jul 2009 19:39:56 +0200
-Subject: [PATCH 200/374] rt: Add the preempt-rt lock replacement APIs
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e54899d032df9d37cdedfa267fb00be2857b6865
+Subject: [PATCH 200/380] rt: Add the preempt-rt lock replacement APIs
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6c5872ff70a9780ba9db21d3bde6855ca86f8e5c
 
 Map spinlocks, rwlocks, rw_semaphores and semaphores to the rt_mutex
 based locking functions for preempt-rt.
@@ -23,7 +23,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 
 diff --git a/include/linux/rwlock_rt.h b/include/linux/rwlock_rt.h
 new file mode 100644
-index 0000000..853ee36
+index 000000000000..853ee367fef4
 --- /dev/null
 +++ b/include/linux/rwlock_rt.h
 @@ -0,0 +1,123 @@
@@ -151,7 +151,7 @@ index 0000000..853ee36
 +
 +#endif
 diff --git a/include/linux/spinlock.h b/include/linux/spinlock.h
-index 7df6c17..5fe7e40 100644
+index 7df6c17b0281..5fe7e40a269a 100644
 --- a/include/linux/spinlock.h
 +++ b/include/linux/spinlock.h
 @@ -254,7 +254,11 @@ static inline void do_raw_spin_unlock(raw_spinlock_t *lock) __releases(lock)
@@ -186,7 +186,7 @@ index 7df6c17..5fe7e40 100644
 +
  #endif /* __LINUX_SPINLOCK_H */
 diff --git a/include/linux/spinlock_api_smp.h b/include/linux/spinlock_api_smp.h
-index e253ccd..2a5ba05 100644
+index e253ccd7a604..2a5ba05ebace 100644
 --- a/include/linux/spinlock_api_smp.h
 +++ b/include/linux/spinlock_api_smp.h
 @@ -191,6 +191,8 @@ static inline int __raw_spin_trylock_bh(raw_spinlock_t *lock)
@@ -201,7 +201,7 @@ index e253ccd..2a5ba05 100644
  #endif /* __LINUX_SPINLOCK_API_SMP_H */
 diff --git a/include/linux/spinlock_rt.h b/include/linux/spinlock_rt.h
 new file mode 100644
-index 0000000..205ca95
+index 000000000000..205ca95a849e
 --- /dev/null
 +++ b/include/linux/spinlock_rt.h
 @@ -0,0 +1,156 @@
@@ -362,7 +362,7 @@ index 0000000..205ca95
 +
 +#endif
 diff --git a/kernel/Makefile b/kernel/Makefile
-index e898c5b..c961d3a 100644
+index e898c5b9d02c..c961d3abfe4c 100644
 --- a/kernel/Makefile
 +++ b/kernel/Makefile
 @@ -7,8 +7,8 @@ obj-y     = sched.o fork.o exec_domain.o panic.o printk.o \
@@ -398,7 +398,7 @@ index e898c5b..c961d3a 100644
  ifneq ($(CONFIG_SMP),y)
 diff --git a/kernel/rt.c b/kernel/rt.c
 new file mode 100644
-index 0000000..092d6b3
+index 000000000000..092d6b356d59
 --- /dev/null
 +++ b/kernel/rt.c
 @@ -0,0 +1,442 @@
@@ -845,7 +845,7 @@ index 0000000..092d6b3
 +}
 +EXPORT_SYMBOL(atomic_dec_and_mutex_lock);
 diff --git a/kernel/spinlock.c b/kernel/spinlock.c
-index 84c7d96..47fd3cf 100644
+index 84c7d96918bf..47fd3cf03a8e 100644
 --- a/kernel/spinlock.c
 +++ b/kernel/spinlock.c
 @@ -110,8 +110,11 @@ void __lockfunc __raw_##op##_lock_bh(locktype##_t *lock)		\
@@ -879,7 +879,7 @@ index 84c7d96..47fd3cf 100644
  
  void __lockfunc _raw_spin_lock_nested(raw_spinlock_t *lock, int subclass)
 diff --git a/lib/spinlock_debug.c b/lib/spinlock_debug.c
-index 5f3eacd..f824704 100644
+index 5f3eacdd6178..f8247045a990 100644
 --- a/lib/spinlock_debug.c
 +++ b/lib/spinlock_debug.c
 @@ -31,6 +31,7 @@ void __raw_spin_lock_init(raw_spinlock_t *lock, const char *name,
diff --git a/debian/patches/features/all/rt/0201-rwlocks-Fix-section-mismatch.patch b/debian/patches/features/all/rt/0201-rwlocks-Fix-section-mismatch.patch
index 5966359..187bb5d 100644
--- a/debian/patches/features/all/rt/0201-rwlocks-Fix-section-mismatch.patch
+++ b/debian/patches/features/all/rt/0201-rwlocks-Fix-section-mismatch.patch
@@ -1,10 +1,10 @@
 From: John Kacur <jkacur at redhat.com>
 Date: Mon, 19 Sep 2011 11:09:27 +0200
-Subject: [PATCH 201/374] rwlocks: Fix section mismatch
+Subject: [PATCH 201/380] rwlocks: Fix section mismatch
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f1328e5a0f1903383fe040e3dcd66e9bbd8c780b
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b57ae2dcd2362b1111a8eacbfdad507d58153349
 
 This fixes the following build error for the preempt-rt kernel.
 
@@ -38,7 +38,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 3 insertions(+), 2 deletions(-)
 
 diff --git a/include/linux/rwlock_types.h b/include/linux/rwlock_types.h
-index 5317cd9..d0da966 100644
+index 5317cd957292..d0da966ad7a0 100644
 --- a/include/linux/rwlock_types.h
 +++ b/include/linux/rwlock_types.h
 @@ -47,6 +47,7 @@ typedef struct {
@@ -51,7 +51,7 @@ index 5317cd9..d0da966 100644
  
  #endif /* __LINUX_RWLOCK_TYPES_H */
 diff --git a/kernel/fork.c b/kernel/fork.c
-index c25f3d4..ffcf1f6 100644
+index c25f3d4d1868..ffcf1f6ad6c8 100644
 --- a/kernel/fork.c
 +++ b/kernel/fork.c
 @@ -88,7 +88,7 @@ int max_threads;		/* tunable limit on nr_threads */
diff --git a/debian/patches/features/all/rt/0202-timer-handle-idle-trylock-in-get-next-timer-irq.patc.patch b/debian/patches/features/all/rt/0202-timer-handle-idle-trylock-in-get-next-timer-irq.patc.patch
index 58e6256..953c62a 100644
--- a/debian/patches/features/all/rt/0202-timer-handle-idle-trylock-in-get-next-timer-irq.patc.patch
+++ b/debian/patches/features/all/rt/0202-timer-handle-idle-trylock-in-get-next-timer-irq.patc.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 22:08:38 +0200
-Subject: [PATCH 202/374] timer-handle-idle-trylock-in-get-next-timer-irq.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3e23c70bbdec34ca636ad865ca9934443099c3ff
+Subject: [PATCH 202/380] timer-handle-idle-trylock-in-get-next-timer-irq.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5ea1151639e04f35e8665b61fe59cb9cc11e315b
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 16 insertions(+), 10 deletions(-)
 
 diff --git a/include/linux/spinlock_rt.h b/include/linux/spinlock_rt.h
-index 205ca95..3b555b4 100644
+index 205ca95a849e..3b555b4b52cf 100644
 --- a/include/linux/spinlock_rt.h
 +++ b/include/linux/spinlock_rt.h
 @@ -51,7 +51,17 @@ extern void __lockfunc __rt_spin_unlock(struct rt_mutex *lock);
@@ -34,7 +34,7 @@ index 205ca95..3b555b4 100644
  #ifdef CONFIG_LOCKDEP
  # define spin_lock_nested(lock, subclass)		\
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 5c61c2e..441b7ef 100644
+index 5c61c2ea4298..441b7ef9f475 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -1011,15 +1011,10 @@ EXPORT_SYMBOL(rt_spin_unlock_wait);
@@ -55,7 +55,7 @@ index 5c61c2e..441b7ef 100644
  }
  EXPORT_SYMBOL(rt_spin_trylock);
 diff --git a/kernel/timer.c b/kernel/timer.c
-index 2adeda8..471e277 100644
+index 2adeda867d95..471e277ba0cd 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -1327,13 +1327,14 @@ unsigned long get_next_timer_interrupt(unsigned long now)
diff --git a/debian/patches/features/all/rt/0203-RCU-Force-PREEMPT_RCU-for-PREEMPT-RT.patch b/debian/patches/features/all/rt/0203-RCU-Force-PREEMPT_RCU-for-PREEMPT-RT.patch
index 52b28f7..b6a5482 100644
--- a/debian/patches/features/all/rt/0203-RCU-Force-PREEMPT_RCU-for-PREEMPT-RT.patch
+++ b/debian/patches/features/all/rt/0203-RCU-Force-PREEMPT_RCU-for-PREEMPT-RT.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:30 -0500
-Subject: [PATCH 203/374] RCU: Force PREEMPT_RCU for PREEMPT-RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=19cb887bce3f1c73fed576570f6c7a825781ce11
+Subject: [PATCH 203/380] RCU: Force PREEMPT_RCU for PREEMPT-RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=526390bb1c247591f262eaf80119a334d250f9e9
 
 PREEMPT_RT relies on PREEMPT_RCU - only allow RCU to be configured
 interactively in the !PREEMPT_RT case.
@@ -16,7 +16,7 @@ Link: http://lkml.kernel.org/n/tip-j1y0phicu6s6pu8guku2vca0@git.kernel.org
  1 file changed, 1 deletion(-)
 
 diff --git a/init/Kconfig b/init/Kconfig
-index f6411a5..56a926e 100644
+index f6411a598ba9..56a926ed8dec 100644
 --- a/init/Kconfig
 +++ b/init/Kconfig
 @@ -732,7 +732,6 @@ config RT_GROUP_SCHED
diff --git a/debian/patches/features/all/rt/0204-rcu-Frob-softirq-test.patch b/debian/patches/features/all/rt/0204-rcu-Frob-softirq-test.patch
index 0266956..5a68a75 100644
--- a/debian/patches/features/all/rt/0204-rcu-Frob-softirq-test.patch
+++ b/debian/patches/features/all/rt/0204-rcu-Frob-softirq-test.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Sat, 13 Aug 2011 00:23:17 +0200
-Subject: [PATCH 204/374] rcu: Frob softirq test
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9c1f4cf9f2d6d5b4cb143d080ea5fcbf01466ba7
+Subject: [PATCH 204/380] rcu: Frob softirq test
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5a37101808c24be8fafc1ae8247fbed00d79c0ee
 
 With RT_FULL we get the below wreckage:
 
@@ -155,7 +155,7 @@ Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/rcutree_plugin.h b/kernel/rcutree_plugin.h
-index 73cab33..2e63942 100644
+index 73cab33488b8..2e63942fe786 100644
 --- a/kernel/rcutree_plugin.h
 +++ b/kernel/rcutree_plugin.h
 @@ -336,7 +336,7 @@ static noinline void rcu_read_unlock_special(struct task_struct *t)
diff --git a/debian/patches/features/all/rt/0205-rcu-Merge-RCU-bh-into-RCU-preempt.patch b/debian/patches/features/all/rt/0205-rcu-Merge-RCU-bh-into-RCU-preempt.patch
index e759ca7..34e1e1d 100644
--- a/debian/patches/features/all/rt/0205-rcu-Merge-RCU-bh-into-RCU-preempt.patch
+++ b/debian/patches/features/all/rt/0205-rcu-Merge-RCU-bh-into-RCU-preempt.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 5 Oct 2011 11:59:38 -0700
-Subject: [PATCH 205/374] rcu: Merge RCU-bh into RCU-preempt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=70723f09783dc7d884dd0b69216081ed4b3b4691
+Subject: [PATCH 205/380] rcu: Merge RCU-bh into RCU-preempt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=69b6c701a3116fe7d985fd9aef6c161ef1cdb9a3
 
 The Linux kernel has long RCU-bh read-side critical sections that
 intolerably increase scheduling latency under mainline's RCU-bh rules,
@@ -31,7 +31,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  4 files changed, 53 insertions(+), 2 deletions(-)
 
 diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
-index a0082e2..7c31d86 100644
+index a0082e24dea4..7c31d86a792d 100644
 --- a/include/linux/rcupdate.h
 +++ b/include/linux/rcupdate.h
 @@ -92,6 +92,9 @@ extern void call_rcu(struct rcu_head *head,
@@ -108,7 +108,7 @@ index a0082e2..7c31d86 100644
  }
  
 diff --git a/include/linux/rcutree.h b/include/linux/rcutree.h
-index 6745846..800b840 100644
+index 67458468f1a8..800b8404c257 100644
 --- a/include/linux/rcutree.h
 +++ b/include/linux/rcutree.h
 @@ -57,7 +57,11 @@ static inline void exit_rcu(void)
@@ -156,7 +156,7 @@ index 6745846..800b840 100644
  static inline int rcu_blocking_is_gp(void)
  {
 diff --git a/kernel/rcupdate.c b/kernel/rcupdate.c
-index c5b98e5..24dcc71 100644
+index c5b98e565aee..24dcc713bd00 100644
 --- a/kernel/rcupdate.c
 +++ b/kernel/rcupdate.c
 @@ -77,6 +77,7 @@ int debug_lockdep_rcu_enabled(void)
@@ -176,7 +176,7 @@ index c5b98e5..24dcc71 100644
  #endif /* #ifdef CONFIG_DEBUG_LOCK_ALLOC */
  
 diff --git a/kernel/rcutree.c b/kernel/rcutree.c
-index d0e5491..f794cdf 100644
+index d0e549120f98..f794cdf2bf43 100644
 --- a/kernel/rcutree.c
 +++ b/kernel/rcutree.c
 @@ -170,6 +170,7 @@ void rcu_sched_qs(int cpu)
diff --git a/debian/patches/features/all/rt/0206-rcu-Fix-macro-substitution-for-synchronize_rcu_bh-on.patch b/debian/patches/features/all/rt/0206-rcu-Fix-macro-substitution-for-synchronize_rcu_bh-on.patch
index 179976f..14a6255 100644
--- a/debian/patches/features/all/rt/0206-rcu-Fix-macro-substitution-for-synchronize_rcu_bh-on.patch
+++ b/debian/patches/features/all/rt/0206-rcu-Fix-macro-substitution-for-synchronize_rcu_bh-on.patch
@@ -1,11 +1,11 @@
 From: John Kacur <jkacur at redhat.com>
 Date: Mon, 14 Nov 2011 02:44:42 +0100
-Subject: [PATCH 206/374] rcu: Fix macro substitution for synchronize_rcu_bh()
+Subject: [PATCH 206/380] rcu: Fix macro substitution for synchronize_rcu_bh()
  on RT
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=28e508ba4f926acfba0660c064585533d9af684c
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9846166957d5b41eda2c455dafdb4d55cb204a25
 
 kernel/rcutorture.c:492: error: ‘synchronize_rcu_bh’ undeclared here (not in a function)
 
@@ -26,7 +26,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/include/linux/rcutree.h b/include/linux/rcutree.h
-index 800b840..6e503a3 100644
+index 800b8404c257..6e503a364be6 100644
 --- a/include/linux/rcutree.h
 +++ b/include/linux/rcutree.h
 @@ -60,7 +60,7 @@ static inline void exit_rcu(void)
diff --git a/debian/patches/features/all/rt/0207-rcu-more-fallout.patch.patch b/debian/patches/features/all/rt/0207-rcu-more-fallout.patch.patch
index 72cc12f..e8c362c 100644
--- a/debian/patches/features/all/rt/0207-rcu-more-fallout.patch.patch
+++ b/debian/patches/features/all/rt/0207-rcu-more-fallout.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 14 Nov 2011 10:57:54 +0100
-Subject: [PATCH 207/374] rcu-more-fallout.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7cbc1e2a636ef8397c00b63d477d3b2c0f6853a9
+Subject: [PATCH 207/380] rcu-more-fallout.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6276569d7608e6cb1daa1e17dfa480427c14e1e4
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+)
 
 diff --git a/kernel/rcutiny.c b/kernel/rcutiny.c
-index bc84596..724988c 100644
+index bc845960c63a..724988c378ae 100644
 --- a/kernel/rcutiny.c
 +++ b/kernel/rcutiny.c
 @@ -248,6 +248,7 @@ void call_rcu_sched(struct rcu_head *head, void (*func)(struct rcu_head *rcu))
diff --git a/debian/patches/features/all/rt/0208-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch b/debian/patches/features/all/rt/0208-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch
index e457672..402fbaf 100644
--- a/debian/patches/features/all/rt/0208-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch
+++ b/debian/patches/features/all/rt/0208-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch
@@ -1,7 +1,7 @@
 From: "Paul E. McKenney" <paulmck at linux.vnet.ibm.com>
 Date: Wed, 5 Oct 2011 11:45:18 -0700
-Subject: [PATCH 208/374] rcu: Make ksoftirqd do RCU quiescent states
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=92450d4be5ad8729ccb79b6d32b571d500ff6fbb
+Subject: [PATCH 208/380] rcu: Make ksoftirqd do RCU quiescent states
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=eed31114e1d7d4eca336a75a9642bd3ba061aa2b
 
 Implementing RCU-bh in terms of RCU-preempt makes the system vulnerable
 to network-based denial-of-service attacks.  This patch therefore
@@ -31,7 +31,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  5 files changed, 21 insertions(+), 15 deletions(-)
 
 diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
-index 7c31d86..0e6fb5c 100644
+index 7c31d86a792d..0e6fb5c9dce4 100644
 --- a/include/linux/rcupdate.h
 +++ b/include/linux/rcupdate.h
 @@ -185,13 +185,7 @@ static inline int rcu_preempt_depth(void)
@@ -49,7 +49,7 @@ index 7c31d86..0e6fb5c 100644
  struct notifier_block;
  
 diff --git a/kernel/rcutree.c b/kernel/rcutree.c
-index f794cdf..5ebbd13 100644
+index f794cdf2bf43..5ebbd13afd0b 100644
 --- a/kernel/rcutree.c
 +++ b/kernel/rcutree.c
 @@ -170,7 +170,12 @@ void rcu_sched_qs(int cpu)
@@ -67,7 +67,7 @@ index f794cdf..5ebbd13 100644
  {
  	struct rcu_data *rdp = &per_cpu(rcu_bh_data, cpu);
 diff --git a/kernel/rcutree.h b/kernel/rcutree.h
-index dca495d..b522273 100644
+index dca495d81304..b5222738c9b0 100644
 --- a/kernel/rcutree.h
 +++ b/kernel/rcutree.h
 @@ -430,6 +430,7 @@ DECLARE_PER_CPU(char, rcu_cpu_has_work);
@@ -79,7 +79,7 @@ index dca495d..b522273 100644
  static int rcu_preempt_blocked_readers_cgp(struct rcu_node *rnp);
  #ifdef CONFIG_HOTPLUG_CPU
 diff --git a/kernel/rcutree_plugin.h b/kernel/rcutree_plugin.h
-index 2e63942..936441d 100644
+index 2e63942fe786..936441dc5cac 100644
 --- a/kernel/rcutree_plugin.h
 +++ b/kernel/rcutree_plugin.h
 @@ -1933,7 +1933,7 @@ EXPORT_SYMBOL_GPL(synchronize_sched_expedited);
@@ -92,7 +92,7 @@ index 2e63942..936441d 100644
  /*
   * Check to see if any future RCU-related work will need to be done
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 977345c..def1098 100644
+index 977345cb98df..def10987e357 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -139,7 +139,7 @@ static void wakeup_softirqd(void)
diff --git a/debian/patches/features/all/rt/0209-rt-rcutree-Move-misplaced-prototype.patch b/debian/patches/features/all/rt/0209-rt-rcutree-Move-misplaced-prototype.patch
index f304460..7f420bb 100644
--- a/debian/patches/features/all/rt/0209-rt-rcutree-Move-misplaced-prototype.patch
+++ b/debian/patches/features/all/rt/0209-rt-rcutree-Move-misplaced-prototype.patch
@@ -1,10 +1,10 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Wed, 14 Dec 2011 12:51:28 +0100
-Subject: [PATCH 209/374] rt/rcutree: Move misplaced prototype
+Subject: [PATCH 209/380] rt/rcutree: Move misplaced prototype
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=871505aeab0dd62fa25d8fa370691da4b97cfcb8
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=17739b60bb564675582581b75d49e27a3705dc5f
 
 Fix this warning on x86 defconfig:
 
@@ -21,7 +21,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/rcutree.c b/kernel/rcutree.c
-index 5ebbd13..82c2224 100644
+index 5ebbd13afd0b..82c22240ca54 100644
 --- a/kernel/rcutree.c
 +++ b/kernel/rcutree.c
 @@ -171,6 +171,8 @@ void rcu_sched_qs(int cpu)
@@ -34,7 +34,7 @@ index 5ebbd13..82c2224 100644
  {
  	rcu_preempt_qs(cpu);
 diff --git a/kernel/rcutree.h b/kernel/rcutree.h
-index b522273..dca495d 100644
+index b5222738c9b0..dca495d81304 100644
 --- a/kernel/rcutree.h
 +++ b/kernel/rcutree.h
 @@ -430,7 +430,6 @@ DECLARE_PER_CPU(char, rcu_cpu_has_work);
diff --git a/debian/patches/features/all/rt/0210-lglocks-rt.patch.patch b/debian/patches/features/all/rt/0210-lglocks-rt.patch.patch
index 9706b25..132677d 100644
--- a/debian/patches/features/all/rt/0210-lglocks-rt.patch.patch
+++ b/debian/patches/features/all/rt/0210-lglocks-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 15 Jun 2011 11:02:21 +0200
-Subject: [PATCH 210/374] lglocks-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2bed13e564afee1789c2788c6eb23509bf2a2418
+Subject: [PATCH 210/380] lglocks-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7fb595779e20630d6c042d8f72790df877800712
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 99 insertions(+)
 
 diff --git a/include/linux/lglock.h b/include/linux/lglock.h
-index 87f402c..52b289f 100644
+index 87f402ccec55..52b289f02feb 100644
 --- a/include/linux/lglock.h
 +++ b/include/linux/lglock.h
 @@ -71,6 +71,8 @@
diff --git a/debian/patches/features/all/rt/0211-serial-8250-Clean-up-the-locking-for-rt.patch b/debian/patches/features/all/rt/0211-serial-8250-Clean-up-the-locking-for-rt.patch
index 061790a..f5a7fa4 100644
--- a/debian/patches/features/all/rt/0211-serial-8250-Clean-up-the-locking-for-rt.patch
+++ b/debian/patches/features/all/rt/0211-serial-8250-Clean-up-the-locking-for-rt.patch
@@ -1,7 +1,7 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:01 -0500
-Subject: [PATCH 211/374] serial: 8250: Clean up the locking for -rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=614a82efc27bfa32e434c7efa73c3d4d8162148b
+Subject: [PATCH 211/380] serial: 8250: Clean up the locking for -rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3c2e59af3d4bb898bf61cb6e6197d044f7bf60c8
 
 Signed-off-by: Ingo Molnar <mingo at elte.hu>
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 5 insertions(+), 10 deletions(-)
 
 diff --git a/drivers/tty/serial/8250.c b/drivers/tty/serial/8250.c
-index 33601f8..9f84909 100644
+index 33601f891fd7..9f84909e30d3 100644
 --- a/drivers/tty/serial/8250.c
 +++ b/drivers/tty/serial/8250.c
 @@ -2883,14 +2883,10 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count)
diff --git a/debian/patches/features/all/rt/0212-serial-8250-Call-flush_to_ldisc-when-the-irq-is-thre.patch b/debian/patches/features/all/rt/0212-serial-8250-Call-flush_to_ldisc-when-the-irq-is-thre.patch
index 8a6fad4..9925eeb 100644
--- a/debian/patches/features/all/rt/0212-serial-8250-Call-flush_to_ldisc-when-the-irq-is-thre.patch
+++ b/debian/patches/features/all/rt/0212-serial-8250-Call-flush_to_ldisc-when-the-irq-is-thre.patch
@@ -1,8 +1,8 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Fri, 3 Jul 2009 08:30:01 -0500
-Subject: [PATCH 212/374] serial: 8250: Call flush_to_ldisc when the irq is
+Subject: [PATCH 212/380] serial: 8250: Call flush_to_ldisc when the irq is
  threaded
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c844f2765a353956e41e582842e7ed20c58b58cd
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f1e7dfa8fe26618996ebe937e469a4596a8a3729
 
 Signed-off-by: Ingo Molnar <mingo at elte.hu>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Ingo Molnar <mingo at elte.hu>
  2 files changed, 6 insertions(+)
 
 diff --git a/drivers/tty/serial/8250.c b/drivers/tty/serial/8250.c
-index 9f84909..c717948 100644
+index 9f84909e30d3..c717948d612e 100644
 --- a/drivers/tty/serial/8250.c
 +++ b/drivers/tty/serial/8250.c
 @@ -1663,12 +1663,14 @@ static irqreturn_t serial8250_interrupt(int irq, void *dev_id)
@@ -30,10 +30,10 @@ index 9f84909..c717948 100644
  
  	spin_unlock(&i->lock);
 diff --git a/drivers/tty/tty_buffer.c b/drivers/tty/tty_buffer.c
-index 4f02f9c..7c8fe9b 100644
+index a846618ee1cb..cc4f69d002d9 100644
 --- a/drivers/tty/tty_buffer.c
 +++ b/drivers/tty/tty_buffer.c
-@@ -496,10 +496,14 @@ void tty_flip_buffer_push(struct tty_struct *tty)
+@@ -498,10 +498,14 @@ void tty_flip_buffer_push(struct tty_struct *tty)
  		tty->buf.tail->commit = tty->buf.tail->used;
  	spin_unlock_irqrestore(&tty->buf.lock, flags);
  
diff --git a/debian/patches/features/all/rt/0213-drivers-tty-fix-omap-lock-crap.patch.patch b/debian/patches/features/all/rt/0213-drivers-tty-fix-omap-lock-crap.patch.patch
index 04a71c0..d71bd57 100644
--- a/debian/patches/features/all/rt/0213-drivers-tty-fix-omap-lock-crap.patch.patch
+++ b/debian/patches/features/all/rt/0213-drivers-tty-fix-omap-lock-crap.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 28 Jul 2011 13:32:57 +0200
-Subject: [PATCH 213/374] drivers-tty-fix-omap-lock-crap.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d87d1206651c7fdaf58ec447f90cfb5b5740a87b
+Subject: [PATCH 213/380] drivers-tty-fix-omap-lock-crap.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d88ee11efc0f0fd20f6a7fd1c3d3002ecb8bcfa9
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 3 insertions(+), 5 deletions(-)
 
 diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c
-index 5e713d3..93cdb92 100644
+index 5e713d3ef1f4..93cdb92d1632 100644
 --- a/drivers/tty/serial/omap-serial.c
 +++ b/drivers/tty/serial/omap-serial.c
 @@ -946,13 +946,12 @@ serial_omap_console_write(struct console *co, const char *s,
diff --git a/debian/patches/features/all/rt/0214-rt-Improve-the-serial-console-PASS_LIMIT.patch b/debian/patches/features/all/rt/0214-rt-Improve-the-serial-console-PASS_LIMIT.patch
index b38774e..aae90a8 100644
--- a/debian/patches/features/all/rt/0214-rt-Improve-the-serial-console-PASS_LIMIT.patch
+++ b/debian/patches/features/all/rt/0214-rt-Improve-the-serial-console-PASS_LIMIT.patch
@@ -1,10 +1,10 @@
 From: Ingo Molnar <mingo at elte.hu>
 Date: Wed, 14 Dec 2011 13:05:54 +0100
-Subject: [PATCH 214/374] rt: Improve the serial console PASS_LIMIT
+Subject: [PATCH 214/380] rt: Improve the serial console PASS_LIMIT
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4bf17726ff5efa1d925ed2b9d8d1ec09f345f6a9
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=62aee08a49668e6183ee1d68e19626c627935a7a
 
 Beyond the warning:
 
@@ -20,7 +20,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 10 insertions(+), 3 deletions(-)
 
 diff --git a/drivers/tty/serial/8250.c b/drivers/tty/serial/8250.c
-index c717948..2169073 100644
+index c717948d612e..21690739b362 100644
 --- a/drivers/tty/serial/8250.c
 +++ b/drivers/tty/serial/8250.c
 @@ -81,7 +81,16 @@ static unsigned int skip_txen_test; /* force skip of txen test at init time */
diff --git a/debian/patches/features/all/rt/0215-fs-namespace-preemption-fix.patch b/debian/patches/features/all/rt/0215-fs-namespace-preemption-fix.patch
index 2fb5913..e105a23 100644
--- a/debian/patches/features/all/rt/0215-fs-namespace-preemption-fix.patch
+++ b/debian/patches/features/all/rt/0215-fs-namespace-preemption-fix.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 19 Jul 2009 08:44:27 -0500
-Subject: [PATCH 215/374] fs: namespace preemption fix
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d9dfb96cbfcf653616c80b2aab32b7c085d92387
+Subject: [PATCH 215/380] fs: namespace preemption fix
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=847bc19a9ead98ac43d90c71e3a8ebee8e714068
 
 On RT we cannot loop with preemption disabled here as
 mnt_make_readonly() might have been preempted. We can safely enable
@@ -14,7 +14,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 7 insertions(+), 3 deletions(-)
 
 diff --git a/fs/namespace.c b/fs/namespace.c
-index a1e663d..d46980a 100644
+index a1e663d781a2..d46980a844e9 100644
 --- a/fs/namespace.c
 +++ b/fs/namespace.c
 @@ -341,8 +341,14 @@ int mnt_want_write(struct vfsmount *mnt)
diff --git a/debian/patches/features/all/rt/0216-mm-protect-activate-switch-mm.patch.patch b/debian/patches/features/all/rt/0216-mm-protect-activate-switch-mm.patch.patch
index 83ec3f5..852325d 100644
--- a/debian/patches/features/all/rt/0216-mm-protect-activate-switch-mm.patch.patch
+++ b/debian/patches/features/all/rt/0216-mm-protect-activate-switch-mm.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 4 Jul 2011 09:48:40 +0200
-Subject: [PATCH 216/374] mm-protect-activate-switch-mm.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d67df719db42a1f0c9b460fbd5ef87b06246b02b
+Subject: [PATCH 216/380] mm-protect-activate-switch-mm.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2d6b04a4b5c6a0a8c339614f5652b4131fa479fb
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 4 insertions(+)
 
 diff --git a/fs/exec.c b/fs/exec.c
-index 7adb43f..da515d7 100644
+index aba5e13a6a68..b642a48d3d71 100644
 --- a/fs/exec.c
 +++ b/fs/exec.c
 @@ -837,10 +837,12 @@ static int exec_mmap(struct mm_struct *mm)
@@ -27,7 +27,7 @@ index 7adb43f..da515d7 100644
  	arch_pick_mmap_layout(mm);
  	if (old_mm) {
 diff --git a/mm/mmu_context.c b/mm/mmu_context.c
-index cf332bc..64ce279 100644
+index cf332bc0080a..64ce279a984d 100644
 --- a/mm/mmu_context.c
 +++ b/mm/mmu_context.c
 @@ -26,6 +26,7 @@ void use_mm(struct mm_struct *mm)
diff --git a/debian/patches/features/all/rt/0217-fs-block-rt-support.patch.patch b/debian/patches/features/all/rt/0217-fs-block-rt-support.patch.patch
index 9918d47..2882ee2 100644
--- a/debian/patches/features/all/rt/0217-fs-block-rt-support.patch.patch
+++ b/debian/patches/features/all/rt/0217-fs-block-rt-support.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 14 Jun 2011 17:05:09 +0200
-Subject: [PATCH 217/374] fs-block-rt-support.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b437e98023deb2f66b5cccd3ee7bd607c039887a
+Subject: [PATCH 217/380] fs-block-rt-support.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bd79d035663bc781270d21d124af157e12937fc2
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -10,7 +10,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/block/blk-core.c b/block/blk-core.c
-index 527f5d5..6795c54 100644
+index 527f5d57e58a..6795c5483078 100644
 --- a/block/blk-core.c
 +++ b/block/blk-core.c
 @@ -235,7 +235,7 @@ EXPORT_SYMBOL(blk_delay_queue);
@@ -23,7 +23,7 @@ index 527f5d5..6795c54 100644
  	queue_flag_clear(QUEUE_FLAG_STOPPED, q);
  	__blk_run_queue(q);
 diff --git a/fs/file.c b/fs/file.c
-index 05e88e2..9161ecc 100644
+index 05e88e2aa148..9161ecc506f9 100644
 --- a/fs/file.c
 +++ b/fs/file.c
 @@ -105,14 +105,14 @@ void free_fdtable_rcu(struct rcu_head *rcu)
diff --git a/debian/patches/features/all/rt/0218-fs-ntfs-disable-interrupt-only-on-RT.patch b/debian/patches/features/all/rt/0218-fs-ntfs-disable-interrupt-only-on-RT.patch
index 66e6a1e..a6e0239 100644
--- a/debian/patches/features/all/rt/0218-fs-ntfs-disable-interrupt-only-on-RT.patch
+++ b/debian/patches/features/all/rt/0218-fs-ntfs-disable-interrupt-only-on-RT.patch
@@ -1,7 +1,7 @@
 From: Mike Galbraith <efault at gmx.de>
 Date: Fri, 3 Jul 2009 08:44:12 -0500
-Subject: [PATCH 218/374] fs: ntfs: disable interrupt only on !RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=95ce1ab257cc59dabbd0a3a32ee73dc8fbcf3fee
+Subject: [PATCH 218/380] fs: ntfs: disable interrupt only on !RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=53a516f2c12e2468074c0f0761d9710e0694bc7f
 
 On Sat, 2007-10-27 at 11:44 +0200, Ingo Molnar wrote:
 > * Nick Piggin <nickpiggin at yahoo.com.au> wrote:
@@ -40,7 +40,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/fs/ntfs/aops.c b/fs/ntfs/aops.c
-index 7fb7f1b..4c8095c 100644
+index 7fb7f1b2dfcf..4c8095c6544f 100644
 --- a/fs/ntfs/aops.c
 +++ b/fs/ntfs/aops.c
 @@ -144,13 +144,13 @@ static void ntfs_end_buffer_async_read(struct buffer_head *bh, int uptodate)
diff --git a/debian/patches/features/all/rt/0219-x86-Convert-mce-timer-to-hrtimer.patch b/debian/patches/features/all/rt/0219-x86-Convert-mce-timer-to-hrtimer.patch
index 062d342..9867ca6 100644
--- a/debian/patches/features/all/rt/0219-x86-Convert-mce-timer-to-hrtimer.patch
+++ b/debian/patches/features/all/rt/0219-x86-Convert-mce-timer-to-hrtimer.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 13 Dec 2010 16:33:39 +0100
-Subject: [PATCH 219/374] x86: Convert mce timer to hrtimer
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9df631877a3c100374613759f1568f87f731be6c
+Subject: [PATCH 219/380] x86: Convert mce timer to hrtimer
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=18937f5b70028f7e2e9042aee00c8f783e53d9d1
 
 mce_timer is started in atomic contexts of cpu bringup. This results
 in might_sleep() warnings on RT. Convert mce_timer to a hrtimer to
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 23 insertions(+), 26 deletions(-)
 
 diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
-index 3b67877..7e4f230 100644
+index 3b678770dba5..7e4f2301605d 100644
 --- a/arch/x86/kernel/cpu/mcheck/mce.c
 +++ b/arch/x86/kernel/cpu/mcheck/mce.c
 @@ -38,6 +38,7 @@
diff --git a/debian/patches/features/all/rt/0220-x86-stackprotector-Avoid-random-pool-on-rt.patch b/debian/patches/features/all/rt/0220-x86-stackprotector-Avoid-random-pool-on-rt.patch
index b19a28d..f96b71f 100644
--- a/debian/patches/features/all/rt/0220-x86-stackprotector-Avoid-random-pool-on-rt.patch
+++ b/debian/patches/features/all/rt/0220-x86-stackprotector-Avoid-random-pool-on-rt.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 16 Dec 2010 14:25:18 +0100
-Subject: [PATCH 220/374] x86: stackprotector: Avoid random pool on rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3c231bb52912f53b1816f2ca220c54ff412b61d8
+Subject: [PATCH 220/380] x86: stackprotector: Avoid random pool on rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c22385adad3744a26be38a6a79e3a8f1389bbb07
 
 CPU bringup calls into the random pool to initialize the stack
 canary. During boot that works nicely even on RT as the might sleep
@@ -18,7 +18,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 9 insertions(+), 1 deletion(-)
 
 diff --git a/arch/x86/include/asm/stackprotector.h b/arch/x86/include/asm/stackprotector.h
-index 1575177..ac0703b 100644
+index 157517763565..ac0703bcfe17 100644
 --- a/arch/x86/include/asm/stackprotector.h
 +++ b/arch/x86/include/asm/stackprotector.h
 @@ -58,7 +58,7 @@
diff --git a/debian/patches/features/all/rt/0221-x86-Use-generic-rwsem_spinlocks-on-rt.patch b/debian/patches/features/all/rt/0221-x86-Use-generic-rwsem_spinlocks-on-rt.patch
index 2c3050a..90995a7 100644
--- a/debian/patches/features/all/rt/0221-x86-Use-generic-rwsem_spinlocks-on-rt.patch
+++ b/debian/patches/features/all/rt/0221-x86-Use-generic-rwsem_spinlocks-on-rt.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 26 Jul 2009 02:21:32 +0200
-Subject: [PATCH 221/374] x86: Use generic rwsem_spinlocks on -rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fc3fac966391fad4a23ac22002eaef91b9f377aa
+Subject: [PATCH 221/380] x86: Use generic rwsem_spinlocks on -rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2e7fef42c34b658ca91b71f440089a792f95b0e3
 
 Simplifies the separation of anon_rw_semaphores and rw_semaphores for
 -rt.
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
-index d720208..6dcc666 100644
+index d720208f6018..6dcc666750e9 100644
 --- a/arch/x86/Kconfig
 +++ b/arch/x86/Kconfig
 @@ -163,10 +163,10 @@ config ARCH_MAY_HAVE_PC_FDC
diff --git a/debian/patches/features/all/rt/0222-workqueue-use-get-cpu-light.patch.patch b/debian/patches/features/all/rt/0222-workqueue-use-get-cpu-light.patch.patch
index 6f95eee..28bade3 100644
--- a/debian/patches/features/all/rt/0222-workqueue-use-get-cpu-light.patch.patch
+++ b/debian/patches/features/all/rt/0222-workqueue-use-get-cpu-light.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 21:42:26 +0200
-Subject: [PATCH 222/374] workqueue-use-get-cpu-light.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d6a5ea5e84e0cb7880934e017cb460e2e5224429
+Subject: [PATCH 222/380] workqueue-use-get-cpu-light.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f8a1b04d81cdd7114ac738270f841ac890c8d999
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index c7e6030..62ebed7 100644
+index c7e6030968b4..62ebed73dfa2 100644
 --- a/kernel/workqueue.c
 +++ b/kernel/workqueue.c
 @@ -1083,8 +1083,8 @@ int queue_work(struct workqueue_struct *wq, struct work_struct *work)
diff --git a/debian/patches/features/all/rt/0223-epoll.patch.patch b/debian/patches/features/all/rt/0223-epoll.patch.patch
index c5f8d7c..4e53798 100644
--- a/debian/patches/features/all/rt/0223-epoll.patch.patch
+++ b/debian/patches/features/all/rt/0223-epoll.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 8 Jul 2011 16:35:35 +0200
-Subject: [PATCH 223/374] epoll.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5bd1e159811c60cc40ba79b79ddb3a92f556d23b
+Subject: [PATCH 223/380] epoll.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=cce606bf292ad0747a772e9760ca570da225b9c8
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/fs/eventpoll.c b/fs/eventpoll.c
-index 451b9b8..3ed4aca 100644
+index 451b9b839c74..3ed4acac0be9 100644
 --- a/fs/eventpoll.c
 +++ b/fs/eventpoll.c
 @@ -464,12 +464,12 @@ static int ep_poll_wakeup_proc(void *priv, void *cookie, int call_nests)
diff --git a/debian/patches/features/all/rt/0224-mm-vmalloc.patch.patch b/debian/patches/features/all/rt/0224-mm-vmalloc.patch.patch
index 846b737..468f22d 100644
--- a/debian/patches/features/all/rt/0224-mm-vmalloc.patch.patch
+++ b/debian/patches/features/all/rt/0224-mm-vmalloc.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 12 Jul 2011 11:39:36 +0200
-Subject: [PATCH 224/374] mm-vmalloc.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=42b173b8a8f2addd6a477b0bd19546d6c6377ba1
+Subject: [PATCH 224/380] mm-vmalloc.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=49c6cf2672014b3a605601f6491350a878469bb1
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 8 insertions(+), 6 deletions(-)
 
 diff --git a/mm/vmalloc.c b/mm/vmalloc.c
-index 1431458..6faf1f7 100644
+index 1431458568fb..6faf1f7d8463 100644
 --- a/mm/vmalloc.c
 +++ b/mm/vmalloc.c
 @@ -788,7 +788,7 @@ static struct vmap_block *new_vmap_block(gfp_t gfp_mask)
diff --git a/debian/patches/features/all/rt/0225-debugobjects-rt.patch.patch b/debian/patches/features/all/rt/0225-debugobjects-rt.patch.patch
index c225f05..d0859d5 100644
--- a/debian/patches/features/all/rt/0225-debugobjects-rt.patch.patch
+++ b/debian/patches/features/all/rt/0225-debugobjects-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 21:41:35 +0200
-Subject: [PATCH 225/374] debugobjects-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=db778edac8941b63fe20deca2bd6a88749a6c5db
+Subject: [PATCH 225/380] debugobjects-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=028970a4f7363dff422a4f162a793746a0c61b38
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 5 insertions(+), 2 deletions(-)
 
 diff --git a/lib/debugobjects.c b/lib/debugobjects.c
-index a78b7c6..9b622c9 100644
+index a78b7c6e042c..9b622c994ecd 100644
 --- a/lib/debugobjects.c
 +++ b/lib/debugobjects.c
 @@ -306,7 +306,10 @@ __debug_object_init(void *addr, struct debug_obj_descr *descr, int onstack)
diff --git a/debian/patches/features/all/rt/0226-jump-label-rt.patch.patch b/debian/patches/features/all/rt/0226-jump-label-rt.patch.patch
index 37b0f0f..3cc26d0 100644
--- a/debian/patches/features/all/rt/0226-jump-label-rt.patch.patch
+++ b/debian/patches/features/all/rt/0226-jump-label-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 13 Jul 2011 11:03:16 +0200
-Subject: [PATCH 226/374] jump-label-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=74948b7b93515bab32528248f7330f320118aa0f
+Subject: [PATCH 226/380] jump-label-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bd80f981e99f87c8195bf960e4666224f066b35e
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/include/linux/jump_label.h b/include/linux/jump_label.h
-index 388b0d4..9cc8ed9 100644
+index 388b0d425b50..9cc8ed96888f 100644
 --- a/include/linux/jump_label.h
 +++ b/include/linux/jump_label.h
 @@ -4,7 +4,7 @@
diff --git a/debian/patches/features/all/rt/0227-skbufhead-raw-lock.patch.patch b/debian/patches/features/all/rt/0227-skbufhead-raw-lock.patch.patch
index 7480fc9..a01f4c3 100644
--- a/debian/patches/features/all/rt/0227-skbufhead-raw-lock.patch.patch
+++ b/debian/patches/features/all/rt/0227-skbufhead-raw-lock.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 12 Jul 2011 15:38:34 +0200
-Subject: [PATCH 227/374] skbufhead-raw-lock.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5bae3e89c73f46933b7e9aa7d0f27819b3cfad18
+Subject: [PATCH 227/380] skbufhead-raw-lock.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=695b8ff037a8fd5c2a43c8334eee057129462339
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 28 insertions(+), 6 deletions(-)
 
 diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
-index 4b04097..aa44bb5 100644
+index 4b04097c748c..aa44bb54bb78 100644
 --- a/include/linux/netdevice.h
 +++ b/include/linux/netdevice.h
 @@ -1764,6 +1764,7 @@ struct softnet_data {
@@ -23,7 +23,7 @@ index 4b04097..aa44bb5 100644
  
  static inline void input_queue_head_incr(struct softnet_data *sd)
 diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
-index 1b4ea29..4257e3a 100644
+index d9c4a603c25e..c01b0d52eb49 100644
 --- a/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
 @@ -124,6 +124,7 @@ struct sk_buff_head {
@@ -48,7 +48,7 @@ index 1b4ea29..4257e3a 100644
  		struct lock_class_key *class)
  {
 diff --git a/net/core/dev.c b/net/core/dev.c
-index 428a729..0258ebe 100644
+index cb2cbc0e1744..b2db7a14d089 100644
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
 @@ -222,14 +222,14 @@ static inline struct hlist_head *dev_index_hash(struct net *net, int ifindex)
@@ -110,7 +110,7 @@ index 428a729..0258ebe 100644
  	while (!list_empty(&sd->poll_list)) {
  		struct napi_struct *n;
  		int work, weight;
-@@ -6364,6 +6374,9 @@ static int dev_cpu_callback(struct notifier_block *nfb,
+@@ -6367,6 +6377,9 @@ static int dev_cpu_callback(struct notifier_block *nfb,
  		netif_rx(skb);
  		input_queue_head_incr(oldsd);
  	}
@@ -120,7 +120,7 @@ index 428a729..0258ebe 100644
  
  	return NOTIFY_OK;
  }
-@@ -6631,8 +6644,9 @@ static int __init net_dev_init(void)
+@@ -6634,8 +6647,9 @@ static int __init net_dev_init(void)
  		struct softnet_data *sd = &per_cpu(softnet_data, i);
  
  		memset(sd, 0, sizeof(*sd));
diff --git a/debian/patches/features/all/rt/0228-x86-no-perf-irq-work-rt.patch.patch b/debian/patches/features/all/rt/0228-x86-no-perf-irq-work-rt.patch.patch
index 9ff646f..2564453 100644
--- a/debian/patches/features/all/rt/0228-x86-no-perf-irq-work-rt.patch.patch
+++ b/debian/patches/features/all/rt/0228-x86-no-perf-irq-work-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 13 Jul 2011 14:05:05 +0200
-Subject: [PATCH 228/374] x86-no-perf-irq-work-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4f1b785a5bb86b5145d39b72d729740279da9fe7
+Subject: [PATCH 228/380] x86-no-perf-irq-work-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3e5f43c9314184c79a374bd423aa86db8dda47b3
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 9 insertions(+), 1 deletion(-)
 
 diff --git a/arch/x86/kernel/irq_work.c b/arch/x86/kernel/irq_work.c
-index ca8f703..129b8bb 100644
+index ca8f703a1e70..129b8bb73de2 100644
 --- a/arch/x86/kernel/irq_work.c
 +++ b/arch/x86/kernel/irq_work.c
 @@ -18,6 +18,7 @@ void smp_irq_work_interrupt(struct pt_regs *regs)
@@ -28,7 +28,7 @@ index ca8f703..129b8bb 100644
  }
 +#endif
 diff --git a/kernel/irq_work.c b/kernel/irq_work.c
-index c3c46c7..727ba59 100644
+index c3c46c72046e..727ba59e38f9 100644
 --- a/kernel/irq_work.c
 +++ b/kernel/irq_work.c
 @@ -105,8 +105,10 @@ void irq_work_run(void)
@@ -43,7 +43,7 @@ index c3c46c7..727ba59 100644
  	llnode = llist_del_all(this_list);
  	while (llnode != NULL) {
 diff --git a/kernel/timer.c b/kernel/timer.c
-index 471e277..be22b3c 100644
+index 471e277ba0cd..be22b3ca0ea0 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -1366,7 +1366,7 @@ void update_process_times(int user_tick)
diff --git a/debian/patches/features/all/rt/0229-console-make-rt-friendly.patch.patch b/debian/patches/features/all/rt/0229-console-make-rt-friendly.patch.patch
index 5bf0973..fd82f05 100644
--- a/debian/patches/features/all/rt/0229-console-make-rt-friendly.patch.patch
+++ b/debian/patches/features/all/rt/0229-console-make-rt-friendly.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 17 Jul 2011 22:43:07 +0200
-Subject: [PATCH 229/374] console-make-rt-friendly.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fc4400bfc185db512494658dd4a3cb7761e241cd
+Subject: [PATCH 229/380] console-make-rt-friendly.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b9c82d370c7399ed710cb3ecf5805221de9b52cf
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 23 insertions(+), 3 deletions(-)
 
 diff --git a/kernel/printk.c b/kernel/printk.c
-index e6eadba..9ea6f9b 100644
+index e6eadba7217a..9ea6f9b69b79 100644
 --- a/kernel/printk.c
 +++ b/kernel/printk.c
 @@ -504,6 +504,7 @@ static void __call_console_drivers(unsigned start, unsigned end)
diff --git a/debian/patches/features/all/rt/0230-printk-Disable-migration-instead-of-preemption.patch b/debian/patches/features/all/rt/0230-printk-Disable-migration-instead-of-preemption.patch
index cab67b9..ee93388 100644
--- a/debian/patches/features/all/rt/0230-printk-Disable-migration-instead-of-preemption.patch
+++ b/debian/patches/features/all/rt/0230-printk-Disable-migration-instead-of-preemption.patch
@@ -1,7 +1,7 @@
 From: Richard Weinberger <rw at linutronix.de>
 Date: Mon, 12 Dec 2011 14:35:56 +0100
-Subject: [PATCH 230/374] printk: Disable migration instead of preemption
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=832c9c00c88aaffa2dd1c85568170c8986b67080
+Subject: [PATCH 230/380] printk: Disable migration instead of preemption
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1633254455bae7e7c120b33ad928eee9e0e34e1d
 
 There is no need do disable preemption in vprintk(), disable_migrate()
 is sufficient. This fixes the following bug in -rt:
@@ -38,7 +38,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/printk.c b/kernel/printk.c
-index 9ea6f9b..da6d007 100644
+index 9ea6f9b69b79..da6d0071131e 100644
 --- a/kernel/printk.c
 +++ b/kernel/printk.c
 @@ -912,7 +912,7 @@ asmlinkage int vprintk(const char *fmt, va_list args)
diff --git a/debian/patches/features/all/rt/0231-power-use-generic-rwsem-on-rt.patch b/debian/patches/features/all/rt/0231-power-use-generic-rwsem-on-rt.patch
index 5d93237..84b89cf 100644
--- a/debian/patches/features/all/rt/0231-power-use-generic-rwsem-on-rt.patch
+++ b/debian/patches/features/all/rt/0231-power-use-generic-rwsem-on-rt.patch
@@ -1,14 +1,14 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 10 Apr 2012 14:34:18 -0400
-Subject: [PATCH 231/374] power-use-generic-rwsem-on-rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a6169b44baffabb1598bb430bd75c9f763559a34
+Subject: [PATCH 231/380] power-use-generic-rwsem-on-rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ff1603fdf4be0f5d9c5909cd2a5a62f70a6df2de
 
 ---
  arch/powerpc/Kconfig | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
-index db7c441..19b439d 100644
+index db7c441514d2..19b439db772e 100644
 --- a/arch/powerpc/Kconfig
 +++ b/arch/powerpc/Kconfig
 @@ -69,10 +69,11 @@ config LOCKDEP_SUPPORT
diff --git a/debian/patches/features/all/rt/0232-power-disable-highmem-on-rt.patch.patch b/debian/patches/features/all/rt/0232-power-disable-highmem-on-rt.patch.patch
index ed8985d..2cfc58c 100644
--- a/debian/patches/features/all/rt/0232-power-disable-highmem-on-rt.patch.patch
+++ b/debian/patches/features/all/rt/0232-power-disable-highmem-on-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 18 Jul 2011 17:08:34 +0200
-Subject: [PATCH 232/374] power-disable-highmem-on-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0c81f404519d44c5b5706a590fb6f9807672fb83
+Subject: [PATCH 232/380] power-disable-highmem-on-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e570beb426b60b7d862618a5f3ac0db716123b96
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
-index 19b439d..dd2ab05 100644
+index 19b439db772e..dd2ab05c0d19 100644
 --- a/arch/powerpc/Kconfig
 +++ b/arch/powerpc/Kconfig
 @@ -277,7 +277,7 @@ menu "Kernel options"
diff --git a/debian/patches/features/all/rt/0233-arm-disable-highmem-on-rt.patch.patch b/debian/patches/features/all/rt/0233-arm-disable-highmem-on-rt.patch.patch
index 7192f9a..15672eb 100644
--- a/debian/patches/features/all/rt/0233-arm-disable-highmem-on-rt.patch.patch
+++ b/debian/patches/features/all/rt/0233-arm-disable-highmem-on-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 18 Jul 2011 17:09:28 +0200
-Subject: [PATCH 233/374] arm-disable-highmem-on-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b02fcbed39dab7966990c91f65dcb50253043311
+Subject: [PATCH 233/380] arm-disable-highmem-on-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=30730e44e7f92b2e0c4ae6de7cffbfd04713afb0
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
-index 0b9c9bc..fe8955f 100644
+index 0b9c9bcade51..fe8955f79bc8 100644
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
 @@ -1678,7 +1678,7 @@ config HAVE_ARCH_PFN_VALID
diff --git a/debian/patches/features/all/rt/0234-ARM-at91-tclib-Default-to-tclib-timer-for-RT.patch b/debian/patches/features/all/rt/0234-ARM-at91-tclib-Default-to-tclib-timer-for-RT.patch
index be9e229..44f63cf 100644
--- a/debian/patches/features/all/rt/0234-ARM-at91-tclib-Default-to-tclib-timer-for-RT.patch
+++ b/debian/patches/features/all/rt/0234-ARM-at91-tclib-Default-to-tclib-timer-for-RT.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 1 May 2010 18:29:35 +0200
-Subject: [PATCH 234/374] ARM: at91: tclib: Default to tclib timer for RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9d676f367321120020709507baada9bb443fde88
+Subject: [PATCH 234/380] ARM: at91: tclib: Default to tclib timer for RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8974c9732d1c26f771d9170adb1a093a7f00fc04
 
 RT is not too happy about the shared timer interrupt in AT91
 devices. Default to tclib timer for RT.
@@ -12,7 +12,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
-index 1cb530c..951ae6c 100644
+index 1cb530c1bc3c..951ae6c75011 100644
 --- a/drivers/misc/Kconfig
 +++ b/drivers/misc/Kconfig
 @@ -82,6 +82,7 @@ config AB8500_PWM
diff --git a/debian/patches/features/all/rt/0235-mips-disable-highmem-on-rt.patch.patch b/debian/patches/features/all/rt/0235-mips-disable-highmem-on-rt.patch.patch
index 07c536b..b81c32a 100644
--- a/debian/patches/features/all/rt/0235-mips-disable-highmem-on-rt.patch.patch
+++ b/debian/patches/features/all/rt/0235-mips-disable-highmem-on-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 18 Jul 2011 17:10:12 +0200
-Subject: [PATCH 235/374] mips-disable-highmem-on-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bc9f8213737beefed34ecca1a805de8556639e80
+Subject: [PATCH 235/380] mips-disable-highmem-on-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=382f096cdb9a3885ae2666bd54d769a1dc8c6c1a
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
-index d46f1da1..9f02e8b 100644
+index d46f1da18a3c..9f02e8b5392f 100644
 --- a/arch/mips/Kconfig
 +++ b/arch/mips/Kconfig
 @@ -2040,7 +2040,7 @@ config CPU_R4400_WORKAROUNDS
diff --git a/debian/patches/features/all/rt/0236-net-Avoid-livelock-in-net_tx_action-on-RT.patch b/debian/patches/features/all/rt/0236-net-Avoid-livelock-in-net_tx_action-on-RT.patch
index aeaa792..fb4e7ee 100644
--- a/debian/patches/features/all/rt/0236-net-Avoid-livelock-in-net_tx_action-on-RT.patch
+++ b/debian/patches/features/all/rt/0236-net-Avoid-livelock-in-net_tx_action-on-RT.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <srostedt at redhat.com>
 Date: Thu, 6 Oct 2011 10:48:39 -0400
-Subject: [PATCH 236/374] net: Avoid livelock in net_tx_action() on RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=34fbdae91f87bb8e5fe021b5fb9ff291a1394827
+Subject: [PATCH 236/380] net: Avoid livelock in net_tx_action() on RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c63643de31c49072bdb22e1929030062d00d3d23
 
 qdisc_lock is taken w/o disabling interrupts or bottom halfs. So code
 holding a qdisc_lock() can be interrupted and softirqs can run on the
@@ -43,7 +43,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 31 insertions(+), 1 deletion(-)
 
 diff --git a/net/core/dev.c b/net/core/dev.c
-index 0258ebe..45ea750 100644
+index b2db7a14d089..923c94e82c5d 100644
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
 @@ -3049,6 +3049,36 @@ int netif_rx_ni(struct sk_buff *skb)
diff --git a/debian/patches/features/all/rt/0237-ping-sysrq.patch.patch b/debian/patches/features/all/rt/0237-ping-sysrq.patch.patch
index 667d02d..08980ae 100644
--- a/debian/patches/features/all/rt/0237-ping-sysrq.patch.patch
+++ b/debian/patches/features/all/rt/0237-ping-sysrq.patch.patch
@@ -1,7 +1,7 @@
 From: Carsten Emde <C.Emde at osadl.org>
 Date: Tue, 19 Jul 2011 13:51:17 +0100
-Subject: [PATCH 237/374] ping-sysrq.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=61a18c726ffa385867b48dc2a2db7f049a51c0d1
+Subject: [PATCH 237/380] ping-sysrq.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=449e0b44287b5b9d1d794de7f015bd1a5a151266
 
 There are (probably rare) situations when a system crashed and the system
 console becomes unresponsive but the network icmp layer still is alive.
@@ -19,7 +19,7 @@ Signed-off-by: Carsten Emde <C.Emde at osadl.org>
  4 files changed, 47 insertions(+), 2 deletions(-)
 
 diff --git a/Documentation/sysrq.txt b/Documentation/sysrq.txt
-index 312e375..9981f30 100644
+index 312e3754e8c5..9981f307ef0e 100644
 --- a/Documentation/sysrq.txt
 +++ b/Documentation/sysrq.txt
 @@ -57,10 +57,17 @@ On PowerPC - Press 'ALT - Print Screen (or F13) - <command key>,
@@ -43,7 +43,7 @@ index 312e375..9981f30 100644
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  'b'     - Will immediately reboot the system without syncing or unmounting
 diff --git a/include/net/netns/ipv4.h b/include/net/netns/ipv4.h
-index d786b4f..8cef1d1 100644
+index d786b4fc02a4..8cef1d197dd2 100644
 --- a/include/net/netns/ipv4.h
 +++ b/include/net/netns/ipv4.h
 @@ -47,6 +47,7 @@ struct netns_ipv4 {
@@ -55,7 +55,7 @@ index d786b4f..8cef1d1 100644
  	int sysctl_icmp_ratelimit;
  	int sysctl_icmp_ratemask;
 diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c
-index ab188ae..028eb47 100644
+index ab188ae12fd9..028eb47226e8 100644
 --- a/net/ipv4/icmp.c
 +++ b/net/ipv4/icmp.c
 @@ -67,6 +67,7 @@
@@ -110,7 +110,7 @@ index ab188ae..028eb47 100644
  }
  
 diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c
-index 253dd80..9315cdc 100644
+index 253dd80d81d5..9315cdc157fb 100644
 --- a/net/ipv4/sysctl_net_ipv4.c
 +++ b/net/ipv4/sysctl_net_ipv4.c
 @@ -693,6 +693,13 @@ static struct ctl_table ipv4_net_table[] = {
diff --git a/debian/patches/features/all/rt/0238-kgdb-serial-Short-term-workaround.patch b/debian/patches/features/all/rt/0238-kgdb-serial-Short-term-workaround.patch
index 1f4e697..fdab2bb 100644
--- a/debian/patches/features/all/rt/0238-kgdb-serial-Short-term-workaround.patch
+++ b/debian/patches/features/all/rt/0238-kgdb-serial-Short-term-workaround.patch
@@ -1,7 +1,7 @@
 From: Jason Wessel <jason.wessel at windriver.com>
 Date: Thu, 28 Jul 2011 12:42:23 -0500
-Subject: [PATCH 238/374] kgdb/serial: Short term workaround
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=28759a277425925f5bea30d2c68f34212acd8167
+Subject: [PATCH 238/380] kgdb/serial: Short term workaround
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d3f5917f8de929f9555b917e280bbdb34be0da89
 
 On 07/27/2011 04:37 PM, Thomas Gleixner wrote:
 >  - KGDB (not yet disabled) is reportedly unusable on -rt right now due
@@ -24,7 +24,7 @@ Jason.
  3 files changed, 13 insertions(+), 8 deletions(-)
 
 diff --git a/drivers/tty/serial/8250.c b/drivers/tty/serial/8250.c
-index 2169073..b713a36 100644
+index 21690739b362..b713a36ea7f9 100644
 --- a/drivers/tty/serial/8250.c
 +++ b/drivers/tty/serial/8250.c
 @@ -38,6 +38,7 @@
@@ -55,7 +55,7 @@ index 2169073..b713a36 100644
  	/*
  	 *	First save the IER then disable the interrupts
 diff --git a/include/linux/kdb.h b/include/linux/kdb.h
-index 0647258..0d1ebfc 100644
+index 064725854db8..0d1ebfc9ff43 100644
 --- a/include/linux/kdb.h
 +++ b/include/linux/kdb.h
 @@ -150,12 +150,14 @@ extern int kdb_register(char *, kdb_func_t, char *, char *, short);
@@ -74,7 +74,7 @@ index 0647258..0d1ebfc 100644
  enum {
  	KDB_NOT_INITIALIZED,
 diff --git a/kernel/debug/kdb/kdb_io.c b/kernel/debug/kdb/kdb_io.c
-index 4802eb5..5b7455f 100644
+index 4802eb5840e1..5b7455fada1e 100644
 --- a/kernel/debug/kdb/kdb_io.c
 +++ b/kernel/debug/kdb/kdb_io.c
 @@ -553,7 +553,6 @@ int vkdb_printf(const char *fmt, va_list ap)
diff --git a/debian/patches/features/all/rt/0239-add-sys-kernel-realtime-entry.patch b/debian/patches/features/all/rt/0239-add-sys-kernel-realtime-entry.patch
index eacd5dd..c841826 100644
--- a/debian/patches/features/all/rt/0239-add-sys-kernel-realtime-entry.patch
+++ b/debian/patches/features/all/rt/0239-add-sys-kernel-realtime-entry.patch
@@ -1,7 +1,7 @@
 From: Clark Williams <williams at redhat.com>
 Date: Sat, 30 Jul 2011 21:55:53 -0500
-Subject: [PATCH 239/374] add /sys/kernel/realtime entry
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b1042c327e42e8ac2e79de44e1797fef30695301
+Subject: [PATCH 239/380] add /sys/kernel/realtime entry
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=70fa548289205cf88d755cc8d626b3326416f1e7
 
 Add a /sys/kernel entry to indicate that the kernel is a
 realtime kernel.
@@ -19,7 +19,7 @@ Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
  1 file changed, 12 insertions(+)
 
 diff --git a/kernel/ksysfs.c b/kernel/ksysfs.c
-index 4e316e1..a546d33 100644
+index 4e316e1acf58..a546d3303a2c 100644
 --- a/kernel/ksysfs.c
 +++ b/kernel/ksysfs.c
 @@ -133,6 +133,15 @@ KERNEL_ATTR_RO(vmcoreinfo);
diff --git a/debian/patches/features/all/rt/0240-mm-rt-kmap_atomic-scheduling.patch b/debian/patches/features/all/rt/0240-mm-rt-kmap_atomic-scheduling.patch
index 858adda..28424ee 100644
--- a/debian/patches/features/all/rt/0240-mm-rt-kmap_atomic-scheduling.patch
+++ b/debian/patches/features/all/rt/0240-mm-rt-kmap_atomic-scheduling.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <peterz at infradead.org>
 Date: Thu, 28 Jul 2011 10:43:51 +0200
-Subject: [PATCH 240/374] mm, rt: kmap_atomic scheduling
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=556264542f76d7227f572a913cca5548bfb31403
+Subject: [PATCH 240/380] mm, rt: kmap_atomic scheduling
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b28704540c430f489f0f18f7d3e9544402167a0b
 
 In fact, with migrate_disable() existing one could play games with
 kmap_atomic. You could save/restore the kmap_atomic slots on context
@@ -22,7 +22,7 @@ Link: http://lkml.kernel.org/r/1311842631.5890.208.camel@twins
  3 files changed, 43 insertions(+)
 
 diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
-index ada175e..20f1573 100644
+index ada175e33206..20f15731ec90 100644
 --- a/arch/x86/kernel/process_32.c
 +++ b/arch/x86/kernel/process_32.c
 @@ -39,6 +39,7 @@
@@ -76,7 +76,7 @@ index ada175e..20f1573 100644
  	 * Leave lazy mode, flushing any hypercalls made here.
  	 * This must be done before restoring TLS segments so
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 1e9050d..5617b80 100644
+index ca78d234639e..88bff9be15b9 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -63,6 +63,7 @@ struct sched_param {
@@ -99,7 +99,7 @@ index 1e9050d..5617b80 100644
  
  #ifdef CONFIG_PREEMPT_RT_FULL
 diff --git a/mm/memory.c b/mm/memory.c
-index a84fc31..eb62438 100644
+index a84fc31d8903..eb624381d5e9 100644
 --- a/mm/memory.c
 +++ b/mm/memory.c
 @@ -3521,6 +3521,7 @@ unlock:
diff --git a/debian/patches/features/all/rt/0241-ipc-sem-Rework-semaphore-wakeups.patch b/debian/patches/features/all/rt/0241-ipc-sem-Rework-semaphore-wakeups.patch
index b7f484a..5c06374 100644
--- a/debian/patches/features/all/rt/0241-ipc-sem-Rework-semaphore-wakeups.patch
+++ b/debian/patches/features/all/rt/0241-ipc-sem-Rework-semaphore-wakeups.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <a.p.zijlstra at chello.nl>
 Date: Tue, 13 Sep 2011 15:09:40 +0200
-Subject: [PATCH 241/374] ipc/sem: Rework semaphore wakeups
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ccf1de19193c74469748a11b867ff2db44639879
+Subject: [PATCH 241/380] ipc/sem: Rework semaphore wakeups
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4924b4cbcac3533ece3971c7f455d0d9b24a9dcf
 
 Current sysv sems have a weird ass wakeup scheme that involves keeping
 preemption disabled over a potential O(n^2) loop and busy waiting on
@@ -29,7 +29,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 10 insertions(+)
 
 diff --git a/ipc/sem.c b/ipc/sem.c
-index b31c3ef..23176be 100644
+index b31c3ef43c91..23176be67dda 100644
 --- a/ipc/sem.c
 +++ b/ipc/sem.c
 @@ -462,6 +462,13 @@ undo:
diff --git a/debian/patches/features/all/rt/0242-sysrq-Allow-immediate-Magic-SysRq-output-for-PREEMPT.patch b/debian/patches/features/all/rt/0242-sysrq-Allow-immediate-Magic-SysRq-output-for-PREEMPT.patch
index a8da3aa..61f66ba 100644
--- a/debian/patches/features/all/rt/0242-sysrq-Allow-immediate-Magic-SysRq-output-for-PREEMPT.patch
+++ b/debian/patches/features/all/rt/0242-sysrq-Allow-immediate-Magic-SysRq-output-for-PREEMPT.patch
@@ -1,8 +1,8 @@
 From: Frank Rowand <frank.rowand at am.sony.com>
 Date: Fri, 23 Sep 2011 13:43:12 -0700
-Subject: [PATCH 242/374] sysrq: Allow immediate Magic SysRq output for
+Subject: [PATCH 242/380] sysrq: Allow immediate Magic SysRq output for
  PREEMPT_RT_FULL
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b2ad58478c1b1b0857d75af8164ba2dc335ad468
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=80b7e42c063f19c644a0fb6b1bede040c9d6cf75
 
 Add a CONFIG option to allow the output from Magic SysRq to be output
 immediately, even if this causes large latencies.
@@ -30,7 +30,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  5 files changed, 54 insertions(+), 3 deletions(-)
 
 diff --git a/drivers/tty/serial/cpm_uart/cpm_uart_core.c b/drivers/tty/serial/cpm_uart/cpm_uart_core.c
-index b418947..a8b0559 100644
+index b418947b7107..a8b05594e468 100644
 --- a/drivers/tty/serial/cpm_uart/cpm_uart_core.c
 +++ b/drivers/tty/serial/cpm_uart/cpm_uart_core.c
 @@ -1226,7 +1226,7 @@ static void cpm_uart_console_write(struct console *co, const char *s,
@@ -43,7 +43,7 @@ index b418947..a8b0559 100644
  	if (unlikely(nolock)) {
  		local_irq_save(flags);
 diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c
-index 43db715..5219738 100644
+index 43db715f1502..5219738ffd11 100644
 --- a/drivers/tty/sysrq.c
 +++ b/drivers/tty/sysrq.c
 @@ -492,6 +492,23 @@ static void __sysrq_put_key_op(int key, struct sysrq_key_op *op_p)
@@ -91,7 +91,7 @@ index 43db715..5219738 100644
  }
  
 diff --git a/include/linux/sysrq.h b/include/linux/sysrq.h
-index 7faf933..d224c0b 100644
+index 7faf933cced7..d224c0bae8df 100644
 --- a/include/linux/sysrq.h
 +++ b/include/linux/sysrq.h
 @@ -38,6 +38,11 @@ struct sysrq_key_op {
@@ -107,7 +107,7 @@ index 7faf933..d224c0b 100644
  
  /* Generic SysRq interface -- you may call it from any device driver, supplying
 diff --git a/kernel/printk.c b/kernel/printk.c
-index da6d007..ef68cef 100644
+index da6d0071131e..ef68cefaf9d1 100644
 --- a/kernel/printk.c
 +++ b/kernel/printk.c
 @@ -21,6 +21,7 @@
diff --git a/debian/patches/features/all/rt/0243-x86-kvm-require-const-tsc-for-rt.patch.patch b/debian/patches/features/all/rt/0243-x86-kvm-require-const-tsc-for-rt.patch.patch
index 45584dc..c531b02 100644
--- a/debian/patches/features/all/rt/0243-x86-kvm-require-const-tsc-for-rt.patch.patch
+++ b/debian/patches/features/all/rt/0243-x86-kvm-require-const-tsc-for-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 6 Nov 2011 12:26:18 +0100
-Subject: [PATCH 243/374] x86-kvm-require-const-tsc-for-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f070d1ef16038572b3273d29a9ee762df5d22ea1
+Subject: [PATCH 243/380] x86-kvm-require-const-tsc-for-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9f96a0dff187c70cb62a4875303f95f752d0736c
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -9,10 +9,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 7 insertions(+)
 
 diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
-index 0e3289b..3a43d2f 100644
+index d47d1537afc4..51fab2aadfee 100644
 --- a/arch/x86/kvm/x86.c
 +++ b/arch/x86/kvm/x86.c
-@@ -5233,6 +5233,13 @@ int kvm_arch_init(void *opaque)
+@@ -5252,6 +5252,13 @@ int kvm_arch_init(void *opaque)
  		goto out;
  	}
  
diff --git a/debian/patches/features/all/rt/0244-scsi-fcoe-rt-aware.patch.patch b/debian/patches/features/all/rt/0244-scsi-fcoe-rt-aware.patch.patch
index dc32d41..b879dc1 100644
--- a/debian/patches/features/all/rt/0244-scsi-fcoe-rt-aware.patch.patch
+++ b/debian/patches/features/all/rt/0244-scsi-fcoe-rt-aware.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 12 Nov 2011 14:00:48 +0100
-Subject: [PATCH 244/374] scsi-fcoe-rt-aware.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e270e02ad6d1b2e93916e511dc48a69df8e28984
+Subject: [PATCH 244/380] scsi-fcoe-rt-aware.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=957fd03212f68b2ca51732eb1a129bd375a6797b
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 12 insertions(+), 12 deletions(-)
 
 diff --git a/drivers/scsi/fcoe/fcoe.c b/drivers/scsi/fcoe/fcoe.c
-index 8d67467..4085187 100644
+index 8d67467dd9ce..4085187de539 100644
 --- a/drivers/scsi/fcoe/fcoe.c
 +++ b/drivers/scsi/fcoe/fcoe.c
 @@ -1156,7 +1156,7 @@ static void fcoe_percpu_thread_destroy(unsigned int cpu)
@@ -73,7 +73,7 @@ index 8d67467..4085187 100644
  }
  
 diff --git a/drivers/scsi/fcoe/fcoe_ctlr.c b/drivers/scsi/fcoe/fcoe_ctlr.c
-index e7522dc..bfb83c0 100644
+index e7522dcc296e..bfb83c08a3e8 100644
 --- a/drivers/scsi/fcoe/fcoe_ctlr.c
 +++ b/drivers/scsi/fcoe/fcoe_ctlr.c
 @@ -719,7 +719,7 @@ static unsigned long fcoe_ctlr_age_fcfs(struct fcoe_ctlr *fip)
@@ -95,7 +95,7 @@ index e7522dc..bfb83c0 100644
  		sel_time += msecs_to_jiffies(FCOE_CTLR_START_DELAY);
  		fip->sel_time = sel_time;
 diff --git a/drivers/scsi/libfc/fc_exch.c b/drivers/scsi/libfc/fc_exch.c
-index 9de9db2..340998f 100644
+index 9de9db27e874..340998f662dc 100644
 --- a/drivers/scsi/libfc/fc_exch.c
 +++ b/drivers/scsi/libfc/fc_exch.c
 @@ -724,10 +724,10 @@ static struct fc_exch *fc_exch_em_alloc(struct fc_lport *lport,
diff --git a/debian/patches/features/all/rt/0245-x86-crypto-Reduce-preempt-disabled-regions.patch b/debian/patches/features/all/rt/0245-x86-crypto-Reduce-preempt-disabled-regions.patch
index 95afccf..fa5d1a9 100644
--- a/debian/patches/features/all/rt/0245-x86-crypto-Reduce-preempt-disabled-regions.patch
+++ b/debian/patches/features/all/rt/0245-x86-crypto-Reduce-preempt-disabled-regions.patch
@@ -1,7 +1,7 @@
 From: Peter Zijlstra <peterz at infradead.org>
 Date: Mon, 14 Nov 2011 18:19:27 +0100
-Subject: [PATCH 245/374] x86: crypto: Reduce preempt disabled regions
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=451a6ab9950f84570f7fd3856d940dc12f2a7828
+Subject: [PATCH 245/380] x86: crypto: Reduce preempt disabled regions
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6772092fa3dc7ca7c77c67aaab18cadd91b10828
 
 Restrict the preempt disabled regions to the actual floating point
 operations and enable preemption for the administrative actions.
@@ -18,7 +18,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 13 insertions(+), 11 deletions(-)
 
 diff --git a/arch/x86/crypto/aesni-intel_glue.c b/arch/x86/crypto/aesni-intel_glue.c
-index 3b3a62f..0d0e6e1 100644
+index 3b3a62f9e180..0d0e6e176c9b 100644
 --- a/arch/x86/crypto/aesni-intel_glue.c
 +++ b/arch/x86/crypto/aesni-intel_glue.c
 @@ -289,14 +289,14 @@ static int ecb_encrypt(struct blkcipher_desc *desc,
diff --git a/debian/patches/features/all/rt/0246-dm-Make-rt-aware.patch b/debian/patches/features/all/rt/0246-dm-Make-rt-aware.patch
index c769e45..4b3f301 100644
--- a/debian/patches/features/all/rt/0246-dm-Make-rt-aware.patch
+++ b/debian/patches/features/all/rt/0246-dm-Make-rt-aware.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 14 Nov 2011 23:06:09 +0100
-Subject: [PATCH 246/374] dm: Make rt aware
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=36c86acf9970c2a0583920d6befeb29d6cbeb1d9
+Subject: [PATCH 246/380] dm: Make rt aware
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b8d32286ae88866b49afd32a7a4088925300b5c8
 
 Use the BUG_ON_NORT variant for the irq_disabled() checks. RT has
 interrupts legitimately enabled here as we cant deadlock against the
@@ -15,7 +15,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/drivers/md/dm.c b/drivers/md/dm.c
-index c00bcdc..7a5c0a2 100644
+index c00bcdcd36de..7a5c0a20cd67 100644
 --- a/drivers/md/dm.c
 +++ b/drivers/md/dm.c
 @@ -1676,14 +1676,14 @@ static void dm_request_fn(struct request_queue *q)
diff --git a/debian/patches/features/all/rt/0247-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch b/debian/patches/features/all/rt/0247-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch
index cb14b0c..15f77c5 100644
--- a/debian/patches/features/all/rt/0247-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch
+++ b/debian/patches/features/all/rt/0247-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 14 Dec 2011 01:03:49 +0100
-Subject: [PATCH 247/374] cpumask: Disable CONFIG_CPUMASK_OFFSTACK for RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2e167fa2c83310648a1add447444e2f796b63350
+Subject: [PATCH 247/380] cpumask: Disable CONFIG_CPUMASK_OFFSTACK for RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bd4b74930547ef35b1f0c995c682c996717960a4
 
 We can't deal with the cpumask allocations which happen in atomic
 context (see arch/x86/kernel/apic/io_apic.c) on RT right now.
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  2 files changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
-index 6dcc666..ac49759 100644
+index 6dcc666750e9..ac49759d33dc 100644
 --- a/arch/x86/Kconfig
 +++ b/arch/x86/Kconfig
 @@ -732,7 +732,7 @@ config IOMMU_HELPER
@@ -26,7 +26,7 @@ index 6dcc666..ac49759 100644
  	  Enable maximum number of CPUS and NUMA Nodes for this architecture.
  	  If unsure, say N.
 diff --git a/lib/Kconfig b/lib/Kconfig
-index 32f3e5a..63d81e8 100644
+index 32f3e5ae2be5..63d81e811c1f 100644
 --- a/lib/Kconfig
 +++ b/lib/Kconfig
 @@ -231,6 +231,7 @@ config CHECK_SIGNATURE
diff --git a/debian/patches/features/all/rt/0248-seqlock-Prevent-rt-starvation.patch b/debian/patches/features/all/rt/0248-seqlock-Prevent-rt-starvation.patch
index e642a9f..6291d5b 100644
--- a/debian/patches/features/all/rt/0248-seqlock-Prevent-rt-starvation.patch
+++ b/debian/patches/features/all/rt/0248-seqlock-Prevent-rt-starvation.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 22 Feb 2012 12:03:30 +0100
-Subject: [PATCH 248/374] seqlock: Prevent rt starvation
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9dc49baa6d3376cfcd6ef384b4c4c2c72a0e91ba
+Subject: [PATCH 248/380] seqlock: Prevent rt starvation
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=56d99a2ac8e7ec598e5a036ffbfbeced8882716e
 
 If a low prio writer gets preempted while holding the seqlock write
 locked, a high prio reader spins forever on RT.
@@ -22,7 +22,7 @@ Cc: stable-rt at vger.kernel.org
  2 files changed, 46 insertions(+), 11 deletions(-)
 
 diff --git a/include/linux/seqlock.h b/include/linux/seqlock.h
-index cc7b65d..4ea1409 100644
+index cc7b65d41f81..4ea1409951cc 100644
 --- a/include/linux/seqlock.h
 +++ b/include/linux/seqlock.h
 @@ -125,18 +125,30 @@ static inline int read_seqcount_retry(const seqcount_t *s, unsigned start)
@@ -154,7 +154,7 @@ index cc7b65d..4ea1409 100644
  }
  
 diff --git a/include/net/neighbour.h b/include/net/neighbour.h
-index 2720884..6fda9fa 100644
+index 2720884287c3..6fda9fa2ba98 100644
 --- a/include/net/neighbour.h
 +++ b/include/net/neighbour.h
 @@ -385,7 +385,7 @@ struct neighbour_cb {
diff --git a/debian/patches/features/all/rt/0249-timer-Fix-hotplug-for-rt.patch b/debian/patches/features/all/rt/0249-timer-Fix-hotplug-for-rt.patch
index ff306b5..ae10935 100644
--- a/debian/patches/features/all/rt/0249-timer-Fix-hotplug-for-rt.patch
+++ b/debian/patches/features/all/rt/0249-timer-Fix-hotplug-for-rt.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Thu, 1 Mar 2012 13:55:28 -0500
-Subject: [PATCH 249/374] timer: Fix hotplug for -rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6a61b6531d52ef11c151dc1a00f7f93080b10d16
+Subject: [PATCH 249/380] timer: Fix hotplug for -rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f33ed8592ee5c31eb56112f3a25b5ea1fe34ba91
 
 Revert the RT patch:
     Author: Ingo Molnar <mingo at elte.hu>
@@ -30,7 +30,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 5 insertions(+), 11 deletions(-)
 
 diff --git a/kernel/timer.c b/kernel/timer.c
-index be22b3c..330565b 100644
+index be22b3ca0ea0..330565ba33cc 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -1746,21 +1746,17 @@ static void __cpuinit migrate_timers(int cpu)
diff --git a/debian/patches/features/all/rt/0250-futex-rt-Fix-possible-lockup-when-taking-pi_lock-in-.patch b/debian/patches/features/all/rt/0250-futex-rt-Fix-possible-lockup-when-taking-pi_lock-in-.patch
index aba01f8..2523d4d 100644
--- a/debian/patches/features/all/rt/0250-futex-rt-Fix-possible-lockup-when-taking-pi_lock-in-.patch
+++ b/debian/patches/features/all/rt/0250-futex-rt-Fix-possible-lockup-when-taking-pi_lock-in-.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Thu, 1 Mar 2012 13:55:29 -0500
-Subject: [PATCH 250/374] futex/rt: Fix possible lockup when taking pi_lock in
+Subject: [PATCH 250/380] futex/rt: Fix possible lockup when taking pi_lock in
  proxy handler
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=559fb2e6a6fdcf9c51ddc1d5fa80dab9b725282b
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d1473c24231ba432893503cce1800ae9a5093fb7
 
 When taking the pi_lock, we must disable interrupts because the
 pi_lock can also be taken in an interrupt handler.
@@ -22,7 +22,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 441b7ef..01284ca 100644
+index 441b7ef9f475..01284cabaac6 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -1582,14 +1582,14 @@ int rt_mutex_start_proxy_lock(struct rt_mutex *lock,
diff --git a/debian/patches/features/all/rt/0251-ring-buffer-rt-Check-for-irqs-disabled-before-grabbi.patch b/debian/patches/features/all/rt/0251-ring-buffer-rt-Check-for-irqs-disabled-before-grabbi.patch
index 8f7ebfa..139c66e 100644
--- a/debian/patches/features/all/rt/0251-ring-buffer-rt-Check-for-irqs-disabled-before-grabbi.patch
+++ b/debian/patches/features/all/rt/0251-ring-buffer-rt-Check-for-irqs-disabled-before-grabbi.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Thu, 1 Mar 2012 13:55:32 -0500
-Subject: [PATCH 251/374] ring-buffer/rt: Check for irqs disabled before
+Subject: [PATCH 251/380] ring-buffer/rt: Check for irqs disabled before
  grabbing reader lock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3bbdbb5b5086f203c8f37e90943ddb66324a75b7
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=06f16f75fcac31bc83412d471f08dd2c588730c6
 
 In RT the reader lock is a mutex and we can not grab it when preemption is
 disabled. The in_atomic() check that is there does not check if irqs are
@@ -21,7 +21,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
-index aa41914..f3856c2 100644
+index 46e721e1c799..e8d6acda79b1 100644
 --- a/kernel/trace/ring_buffer.c
 +++ b/kernel/trace/ring_buffer.c
 @@ -1054,7 +1054,7 @@ static inline int ok_to_lock(void)
diff --git a/debian/patches/features/all/rt/0252-sched-rt-Fix-wait_task_interactive-to-test-rt_spin_l.patch b/debian/patches/features/all/rt/0252-sched-rt-Fix-wait_task_interactive-to-test-rt_spin_l.patch
index 4198252..66ecdfa 100644
--- a/debian/patches/features/all/rt/0252-sched-rt-Fix-wait_task_interactive-to-test-rt_spin_l.patch
+++ b/debian/patches/features/all/rt/0252-sched-rt-Fix-wait_task_interactive-to-test-rt_spin_l.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Thu, 1 Mar 2012 13:55:33 -0500
-Subject: [PATCH 252/374] sched/rt: Fix wait_task_interactive() to test
+Subject: [PATCH 252/380] sched/rt: Fix wait_task_interactive() to test
  rt_spin_lock state
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=09fff45c80d382a3520f08c9f70be214f094d57d
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=79499d4307b2ebe1b537e769324cfca687403912
 
 The wait_task_interactive() will have a task sleep waiting for another
 task to have a certain state. But it ignores the rt_spin_locks state
@@ -25,10 +25,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 4 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 3cdf991..d3e79c7 100644
+index b80b187e733c..883a3f960e7f 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -2450,7 +2450,8 @@ unsigned long wait_task_inactive(struct task_struct *p, long match_state)
+@@ -2452,7 +2452,8 @@ unsigned long wait_task_inactive(struct task_struct *p, long match_state)
  		 * is actually now running somewhere else!
  		 */
  		while (task_running(rq, p)) {
@@ -38,7 +38,7 @@ index 3cdf991..d3e79c7 100644
  				return 0;
  			cpu_relax();
  		}
-@@ -2465,7 +2466,8 @@ unsigned long wait_task_inactive(struct task_struct *p, long match_state)
+@@ -2467,7 +2468,8 @@ unsigned long wait_task_inactive(struct task_struct *p, long match_state)
  		running = task_running(rq, p);
  		on_rq = p->on_rq;
  		ncsw = 0;
diff --git a/debian/patches/features/all/rt/0253-lglock-rt-Use-non-rt-for_each_cpu-in-rt-code.patch b/debian/patches/features/all/rt/0253-lglock-rt-Use-non-rt-for_each_cpu-in-rt-code.patch
index 2ba19ea..31d9e79 100644
--- a/debian/patches/features/all/rt/0253-lglock-rt-Use-non-rt-for_each_cpu-in-rt-code.patch
+++ b/debian/patches/features/all/rt/0253-lglock-rt-Use-non-rt-for_each_cpu-in-rt-code.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Thu, 1 Mar 2012 13:55:30 -0500
-Subject: [PATCH 253/374] lglock/rt: Use non-rt for_each_cpu() in -rt code
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1f792b07bdafea2997f360587f679ab0e5642acd
+Subject: [PATCH 253/380] lglock/rt: Use non-rt for_each_cpu() in -rt code
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b8a6908efa7fbbb0eedc01684bfcddd4a16ead63
 
 Currently the RT version of the lglocks() does a for_each_online_cpu()
 in the name##_global_lock_online() functions. Non-rt uses its own
@@ -35,7 +35,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 32 insertions(+), 3 deletions(-)
 
 diff --git a/include/linux/lglock.h b/include/linux/lglock.h
-index 52b289f..cdfcef3 100644
+index 52b289f02feb..cdfcef312c79 100644
 --- a/include/linux/lglock.h
 +++ b/include/linux/lglock.h
 @@ -203,9 +203,31 @@
diff --git a/debian/patches/features/all/rt/0254-cpu-Make-hotplug.lock-a-sleeping-spinlock-on-RT.patch b/debian/patches/features/all/rt/0254-cpu-Make-hotplug.lock-a-sleeping-spinlock-on-RT.patch
index cc8e7bc..8392511 100644
--- a/debian/patches/features/all/rt/0254-cpu-Make-hotplug.lock-a-sleeping-spinlock-on-RT.patch
+++ b/debian/patches/features/all/rt/0254-cpu-Make-hotplug.lock-a-sleeping-spinlock-on-RT.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Fri, 2 Mar 2012 10:36:57 -0500
-Subject: [PATCH 254/374] cpu: Make hotplug.lock a "sleeping" spinlock on RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6a01aa0d473b64fd4aa4d4074afe0de68b1b27f0
+Subject: [PATCH 254/380] cpu: Make hotplug.lock a "sleeping" spinlock on RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=01d44bf28660f57d1de6370a0b7acf50e43b38cf
 
 Tasks can block on hotplug.lock in pin_current_cpu(), but their state
 might be != RUNNING. So the mutex wakeup will set the state
@@ -24,7 +24,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 26 insertions(+), 9 deletions(-)
 
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index 8fffbca..6ac3019 100644
+index 8fffbca29284..6ac3019cabf2 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -46,7 +46,12 @@ static int cpu_hotplug_disabled;
diff --git a/debian/patches/features/all/rt/0255-softirq-Check-preemption-after-reenabling-interrupts.patch b/debian/patches/features/all/rt/0255-softirq-Check-preemption-after-reenabling-interrupts.patch
index 3fb41d9..aa6513d 100644
--- a/debian/patches/features/all/rt/0255-softirq-Check-preemption-after-reenabling-interrupts.patch
+++ b/debian/patches/features/all/rt/0255-softirq-Check-preemption-after-reenabling-interrupts.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 13 Nov 2011 17:17:09 +0100
-Subject: [PATCH 255/374] softirq: Check preemption after reenabling interrupts
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9c560c04a0f0e6001bb14616c4899c8156f69650
+Subject: [PATCH 255/380] softirq: Check preemption after reenabling interrupts
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=49dc6dac1d27afdbf9f3e2232cb5bd28e76448ee
 
 raise_softirq_irqoff() disables interrupts and wakes the softirq
 daemon, but after reenabling interrupts there is no preemption check,
@@ -22,7 +22,7 @@ Cc: stable-rt at vger.kernel.org
  4 files changed, 15 insertions(+)
 
 diff --git a/block/blk-iopoll.c b/block/blk-iopoll.c
-index 58916af..f7ca9b4 100644
+index 58916afbbda5..f7ca9b411d2a 100644
 --- a/block/blk-iopoll.c
 +++ b/block/blk-iopoll.c
 @@ -38,6 +38,7 @@ void blk_iopoll_sched(struct blk_iopoll *iop)
@@ -50,7 +50,7 @@ index 58916af..f7ca9b4 100644
  
  	return NOTIFY_OK;
 diff --git a/block/blk-softirq.c b/block/blk-softirq.c
-index 1366a89..60a88ab 100644
+index 1366a89d8e66..60a88ab5f19e 100644
 --- a/block/blk-softirq.c
 +++ b/block/blk-softirq.c
 @@ -50,6 +50,7 @@ static void trigger_softirq(void *data)
@@ -78,7 +78,7 @@ index 1366a89..60a88ab 100644
  
  /**
 diff --git a/include/linux/preempt.h b/include/linux/preempt.h
-index 49bd6c7..53c9382 100644
+index 49bd6c709830..53c9382b41e9 100644
 --- a/include/linux/preempt.h
 +++ b/include/linux/preempt.h
 @@ -56,8 +56,10 @@ do { \
@@ -101,7 +101,7 @@ index 49bd6c7..53c9382 100644
  #endif /* CONFIG_PREEMPT_COUNT */
  
 diff --git a/net/core/dev.c b/net/core/dev.c
-index 45ea750..b7bd431 100644
+index 923c94e82c5d..8cc026e015fd 100644
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
 @@ -1821,6 +1821,7 @@ static inline void __netif_reschedule(struct Qdisc *q)
@@ -144,7 +144,7 @@ index 45ea750..b7bd431 100644
  }
  EXPORT_SYMBOL(__napi_schedule);
  
-@@ -6394,6 +6399,7 @@ static int dev_cpu_callback(struct notifier_block *nfb,
+@@ -6397,6 +6402,7 @@ static int dev_cpu_callback(struct notifier_block *nfb,
  
  	raise_softirq_irqoff(NET_TX_SOFTIRQ);
  	local_irq_enable();
diff --git a/debian/patches/features/all/rt/0256-rt-Introduce-cpu_chill.patch b/debian/patches/features/all/rt/0256-rt-Introduce-cpu_chill.patch
index 260d0b8..687cbc5 100644
--- a/debian/patches/features/all/rt/0256-rt-Introduce-cpu_chill.patch
+++ b/debian/patches/features/all/rt/0256-rt-Introduce-cpu_chill.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 7 Mar 2012 20:51:03 +0100
-Subject: [PATCH 256/374] rt: Introduce cpu_chill()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e1a1915342c26b2d547ef97d8288dd85d59e8040
+Subject: [PATCH 256/380] rt: Introduce cpu_chill()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fc2da4bd26d1941a86d8b1c72d03e6996d851202
 
 Retry loops on RT might loop forever when the modifying side was
 preempted. Add cpu_chill() to replace cpu_relax(). cpu_chill()
@@ -15,7 +15,7 @@ Cc: stable-rt at vger.kernel.org
  1 file changed, 6 insertions(+)
 
 diff --git a/include/linux/delay.h b/include/linux/delay.h
-index a6ecb34..e23a7c0 100644
+index a6ecb34cf547..e23a7c021eeb 100644
 --- a/include/linux/delay.h
 +++ b/include/linux/delay.h
 @@ -52,4 +52,10 @@ static inline void ssleep(unsigned int seconds)
diff --git a/debian/patches/features/all/rt/0257-fs-dcache-Use-cpu_chill-in-trylock-loops.patch b/debian/patches/features/all/rt/0257-fs-dcache-Use-cpu_chill-in-trylock-loops.patch
index fb94eb4..96ee98f 100644
--- a/debian/patches/features/all/rt/0257-fs-dcache-Use-cpu_chill-in-trylock-loops.patch
+++ b/debian/patches/features/all/rt/0257-fs-dcache-Use-cpu_chill-in-trylock-loops.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 7 Mar 2012 21:00:34 +0100
-Subject: [PATCH 257/374] fs: dcache: Use cpu_chill() in trylock loops
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c0bede35500663dea6bf654aaa6fbd4e15b7e040
+Subject: [PATCH 257/380] fs: dcache: Use cpu_chill() in trylock loops
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2145af4ab5566c8f010382558fd52f79f2ba4e7d
 
 Retry loops on RT might loop forever when the modifying side was
 preempted. Use cpu_chill() instead of cpu_relax() to let the system
@@ -17,7 +17,7 @@ Cc: stable-rt at vger.kernel.org
  4 files changed, 8 insertions(+), 5 deletions(-)
 
 diff --git a/fs/autofs4/autofs_i.h b/fs/autofs4/autofs_i.h
-index 650d520..fb77639 100644
+index 650d520de997..fb77639008ef 100644
 --- a/fs/autofs4/autofs_i.h
 +++ b/fs/autofs4/autofs_i.h
 @@ -34,6 +34,7 @@
@@ -29,7 +29,7 @@ index 650d520..fb77639 100644
  #include <asm/uaccess.h>
  
 diff --git a/fs/autofs4/expire.c b/fs/autofs4/expire.c
-index 7fc0371..eb63fb7 100644
+index 7fc03715d5a8..eb63fb79be76 100644
 --- a/fs/autofs4/expire.c
 +++ b/fs/autofs4/expire.c
 @@ -161,7 +161,7 @@ again:
@@ -42,7 +42,7 @@ index 7fc0371..eb63fb7 100644
  			}
  			spin_unlock(&p->d_lock);
 diff --git a/fs/dcache.c b/fs/dcache.c
-index 46265f5..6a6325c 100644
+index 46265f58b5b8..6a6325c30853 100644
 --- a/fs/dcache.c
 +++ b/fs/dcache.c
 @@ -37,6 +37,7 @@
@@ -81,7 +81,7 @@ index 46265f5..6a6325c 100644
  		}
  		dentry->d_flags &= ~DCACHE_CANT_MOUNT;
 diff --git a/fs/namespace.c b/fs/namespace.c
-index d46980a..060c0a0 100644
+index d46980a844e9..060c0a0951e5 100644
 --- a/fs/namespace.c
 +++ b/fs/namespace.c
 @@ -31,6 +31,7 @@
diff --git a/debian/patches/features/all/rt/0258-net-Use-cpu_chill-instead-of-cpu_relax.patch b/debian/patches/features/all/rt/0258-net-Use-cpu_chill-instead-of-cpu_relax.patch
index 68c4e1a..aa4807c 100644
--- a/debian/patches/features/all/rt/0258-net-Use-cpu_chill-instead-of-cpu_relax.patch
+++ b/debian/patches/features/all/rt/0258-net-Use-cpu_chill-instead-of-cpu_relax.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 7 Mar 2012 21:10:04 +0100
-Subject: [PATCH 258/374] net: Use cpu_chill() instead of cpu_relax()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e34818a0e5fb3cf66e7bbcc37d441c5380a49a4d
+Subject: [PATCH 258/380] net: Use cpu_chill() instead of cpu_relax()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1756d90341b13684217540be59c4d67a03d1988b
 
 Retry loops on RT might loop forever when the modifying side was
 preempted. Use cpu_chill() instead of cpu_relax() to let the system
@@ -15,7 +15,7 @@ Cc: stable-rt at vger.kernel.org
  2 files changed, 5 insertions(+), 3 deletions(-)
 
 diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
-index 0c21f06..9f2ab3c 100644
+index 4a912f78e423..fb9de8d31697 100644
 --- a/net/packet/af_packet.c
 +++ b/net/packet/af_packet.c
 @@ -89,6 +89,7 @@
@@ -45,7 +45,7 @@ index 0c21f06..9f2ab3c 100644
  		}
  		prb_close_block(pkc, pbd, po, status);
 diff --git a/net/rds/ib_rdma.c b/net/rds/ib_rdma.c
-index a985158..0f63c71 100644
+index a985158d95d5..0f63c7192ffa 100644
 --- a/net/rds/ib_rdma.c
 +++ b/net/rds/ib_rdma.c
 @@ -34,6 +34,7 @@
diff --git a/debian/patches/features/all/rt/0259-kconfig-disable-a-few-options-rt.patch.patch b/debian/patches/features/all/rt/0259-kconfig-disable-a-few-options-rt.patch.patch
index 191cb0e..326ba1c 100644
--- a/debian/patches/features/all/rt/0259-kconfig-disable-a-few-options-rt.patch.patch
+++ b/debian/patches/features/all/rt/0259-kconfig-disable-a-few-options-rt.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 24 Jul 2011 12:11:43 +0200
-Subject: [PATCH 259/374] kconfig-disable-a-few-options-rt.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ea0c52860b629ff1930af9b9a8d7b117d6743871
+Subject: [PATCH 259/380] kconfig-disable-a-few-options-rt.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ce646a1843689c5016449f69f8265c97c9c17022
 
 Disable stuff which is known to have issues on RT
 
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 3 insertions(+), 1 deletion(-)
 
 diff --git a/arch/Kconfig b/arch/Kconfig
-index 4b0669c..73fc7cd 100644
+index 4b0669cbb3b0..73fc7cd51582 100644
 --- a/arch/Kconfig
 +++ b/arch/Kconfig
 @@ -6,6 +6,7 @@ config OPROFILE
@@ -25,7 +25,7 @@ index 4b0669c..73fc7cd 100644
  	select RING_BUFFER_ALLOW_SWAP
  	help
 diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
-index 61d3d1f..226e40d 100644
+index 61d3d1f185d4..226e40dbc595 100644
 --- a/drivers/net/Kconfig
 +++ b/drivers/net/Kconfig
 @@ -155,6 +155,7 @@ config MACVTAP
@@ -37,7 +37,7 @@ index 61d3d1f..226e40d 100644
  	If you want to log kernel messages over the network, enable this.
  	See <file:Documentation/networking/netconsole.txt> for details.
 diff --git a/mm/Kconfig b/mm/Kconfig
-index 011b110..0526445 100644
+index 011b110365c8..0526445c9b35 100644
 --- a/mm/Kconfig
 +++ b/mm/Kconfig
 @@ -307,7 +307,7 @@ config NOMMU_INITIAL_TRIM_EXCESS
diff --git a/debian/patches/features/all/rt/0260-kconfig-preempt-rt-full.patch.patch b/debian/patches/features/all/rt/0260-kconfig-preempt-rt-full.patch.patch
index 7924070..0488028 100644
--- a/debian/patches/features/all/rt/0260-kconfig-preempt-rt-full.patch.patch
+++ b/debian/patches/features/all/rt/0260-kconfig-preempt-rt-full.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 29 Jun 2011 14:58:57 +0200
-Subject: [PATCH 260/374] kconfig-preempt-rt-full.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2efd5ea0d39f39ace7e6f921f46bb78f43a7dc2a
+Subject: [PATCH 260/380] kconfig-preempt-rt-full.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=84f026efc6c536d7ba2a3070ee7c3ecd22e96f8e
 
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
 ---
@@ -11,7 +11,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 11 insertions(+), 2 deletions(-)
 
 diff --git a/init/Makefile b/init/Makefile
-index 0bf677a..6b473cd 100644
+index 0bf677aa0872..6b473cd16509 100644
 --- a/init/Makefile
 +++ b/init/Makefile
 @@ -29,4 +29,4 @@ silent_chk_compile.h = :
@@ -21,7 +21,7 @@ index 0bf677a..6b473cd 100644
 -	"$(UTS_MACHINE)" "$(CONFIG_SMP)" "$(CONFIG_PREEMPT)" "$(CC) $(KBUILD_CFLAGS)"
 +	"$(UTS_MACHINE)" "$(CONFIG_SMP)" "$(CONFIG_PREEMPT)" "$(CONFIG_PREEMPT_RT_FULL)" "$(CC) $(KBUILD_CFLAGS)"
 diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt
-index 35c6f20..d0e9372 100644
+index 35c6f2011e6b..d0e93725d891 100644
 --- a/kernel/Kconfig.preempt
 +++ b/kernel/Kconfig.preempt
 @@ -66,6 +66,13 @@ config PREEMPT_RTB
@@ -39,7 +39,7 @@ index 35c6f20..d0e9372 100644
  
  config PREEMPT_COUNT
 diff --git a/scripts/mkcompile_h b/scripts/mkcompile_h
-index f221ddf..5f44009 100755
+index f221ddf69080..5f440097f6d2 100755
 --- a/scripts/mkcompile_h
 +++ b/scripts/mkcompile_h
 @@ -4,7 +4,8 @@ TARGET=$1
diff --git a/debian/patches/features/all/rt/0261-rt-Make-migrate_disable-enable-and-__rt_mutex_init-n.patch b/debian/patches/features/all/rt/0261-rt-Make-migrate_disable-enable-and-__rt_mutex_init-n.patch
index 715b120..cb12419 100644
--- a/debian/patches/features/all/rt/0261-rt-Make-migrate_disable-enable-and-__rt_mutex_init-n.patch
+++ b/debian/patches/features/all/rt/0261-rt-Make-migrate_disable-enable-and-__rt_mutex_init-n.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <srostedt at redhat.com>
 Date: Mon, 16 Apr 2012 21:51:54 -0400
-Subject: [PATCH 261/374] rt: Make migrate_disable/enable() and __rt_mutex_init
+Subject: [PATCH 261/380] rt: Make migrate_disable/enable() and __rt_mutex_init
  non-GPL only
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0eb21c6ba2828dc4a5b8c8f9787747e31ddec2e6
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8d9fdf2c969d7d5f11b7fa4f9eac04535171042e
 
 Modules that load on the normal vanilla kernel should also load on
 an -rt kernel as well. This does not mean we condone non-GPL modules,
@@ -15,7 +15,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  2 files changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 01284ca..1042825 100644
+index 01284cabaac6..1042825820d6 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -1499,7 +1499,7 @@ void __rt_mutex_init(struct rt_mutex *lock, const char *name)
@@ -28,10 +28,10 @@ index 01284ca..1042825 100644
  /**
   * rt_mutex_init_proxy_locked - initialize and lock a rt_mutex on behalf of a
 diff --git a/kernel/sched.c b/kernel/sched.c
-index d3e79c7..5f7b85a 100644
+index 883a3f960e7f..82614a3629fc 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4623,7 +4623,7 @@ void migrate_disable(void)
+@@ -4624,7 +4624,7 @@ void migrate_disable(void)
  	p->migrate_disable = 1;
  	preempt_enable();
  }
@@ -40,7 +40,7 @@ index d3e79c7..5f7b85a 100644
  
  void migrate_enable(void)
  {
-@@ -4675,7 +4675,7 @@ void migrate_enable(void)
+@@ -4676,7 +4676,7 @@ void migrate_enable(void)
  	unpin_current_cpu();
  	preempt_enable();
  }
diff --git a/debian/patches/features/all/rt/0262-scsi-qla2xxx-Use-local_irq_save_nort-in-qla2x00_poll.patch b/debian/patches/features/all/rt/0262-scsi-qla2xxx-Use-local_irq_save_nort-in-qla2x00_poll.patch
index 55adbac..cfd1234 100644
--- a/debian/patches/features/all/rt/0262-scsi-qla2xxx-Use-local_irq_save_nort-in-qla2x00_poll.patch
+++ b/debian/patches/features/all/rt/0262-scsi-qla2xxx-Use-local_irq_save_nort-in-qla2x00_poll.patch
@@ -1,8 +1,8 @@
 From: John Kacur <jkacur at redhat.com>
 Date: Fri, 27 Apr 2012 12:48:46 +0200
-Subject: [PATCH 262/374] scsi: qla2xxx: Use local_irq_save_nort() in
+Subject: [PATCH 262/380] scsi: qla2xxx: Use local_irq_save_nort() in
  qla2x00_poll
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2c1ba24e063dc387f4ec17e65f6adc1423748c21
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f47bcfc5d942b790669a67727807e71077e5f69e
 
 RT triggers the following:
 
@@ -32,7 +32,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/drivers/scsi/qla2xxx/qla_inline.h b/drivers/scsi/qla2xxx/qla_inline.h
-index 9902834..6d01db6 100644
+index 9902834e0b74..6d01db6d12a9 100644
 --- a/drivers/scsi/qla2xxx/qla_inline.h
 +++ b/drivers/scsi/qla2xxx/qla_inline.h
 @@ -36,12 +36,12 @@ qla2x00_poll(struct rsp_que *rsp)
diff --git a/debian/patches/features/all/rt/0263-net-RT-REmove-preemption-disabling-in-netif_rx.patch b/debian/patches/features/all/rt/0263-net-RT-REmove-preemption-disabling-in-netif_rx.patch
index c9d67d3..c4285eb 100644
--- a/debian/patches/features/all/rt/0263-net-RT-REmove-preemption-disabling-in-netif_rx.patch
+++ b/debian/patches/features/all/rt/0263-net-RT-REmove-preemption-disabling-in-netif_rx.patch
@@ -1,7 +1,7 @@
 From: Priyanka Jain <Priyanka.Jain at freescale.com>
 Date: Thu, 17 May 2012 09:35:11 +0530
-Subject: [PATCH 263/374] net,RT:REmove preemption disabling in netif_rx()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d720d0fdc7e55057219cb4c9ec25be5a2a51247f
+Subject: [PATCH 263/380] net,RT:REmove preemption disabling in netif_rx()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=05df6d1707e48f9457a00fa30d6cfa5935786f5c
 
 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: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/net/core/dev.c b/net/core/dev.c
-index b7bd431..dd452fc 100644
+index 8cc026e015fd..f7f91c97933b 100644
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
 @@ -3015,7 +3015,7 @@ int netif_rx(struct sk_buff *skb)
diff --git a/debian/patches/features/all/rt/0264-mips-remove-smp-reserve-lock.patch.patch b/debian/patches/features/all/rt/0264-mips-remove-smp-reserve-lock.patch.patch
index 9d8150a..0aad42b 100644
--- a/debian/patches/features/all/rt/0264-mips-remove-smp-reserve-lock.patch.patch
+++ b/debian/patches/features/all/rt/0264-mips-remove-smp-reserve-lock.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 22 May 2012 21:15:10 +0200
-Subject: [PATCH 264/374] mips-remove-smp-reserve-lock.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a278f9e1efdc0fb41d83e8b4b5b3970e629953c0
+Subject: [PATCH 264/380] mips-remove-smp-reserve-lock.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8ce24c722ac890446484d9f6cba181b1e3c50a74
 
 Instead of making the lock raw, remove it as it protects nothing.
 
@@ -13,7 +13,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 6 deletions(-)
 
 diff --git a/arch/mips/cavium-octeon/smp.c b/arch/mips/cavium-octeon/smp.c
-index efcfff4..86fce15 100644
+index efcfff4d4627..86fce15bb096 100644
 --- a/arch/mips/cavium-octeon/smp.c
 +++ b/arch/mips/cavium-octeon/smp.c
 @@ -257,8 +257,6 @@ DEFINE_PER_CPU(int, cpu_state);
diff --git a/debian/patches/features/all/rt/0265-Latency-histogramms-Cope-with-backwards-running-loca.patch b/debian/patches/features/all/rt/0265-Latency-histogramms-Cope-with-backwards-running-loca.patch
index 398658c..bd149a4 100644
--- a/debian/patches/features/all/rt/0265-Latency-histogramms-Cope-with-backwards-running-loca.patch
+++ b/debian/patches/features/all/rt/0265-Latency-histogramms-Cope-with-backwards-running-loca.patch
@@ -1,8 +1,8 @@
 From: Carsten Emde <C.Emde at osadl.org>
 Date: Wed, 11 Jul 2012 22:05:17 +0000
-Subject: [PATCH 265/374] Latency histogramms: Cope with backwards running
+Subject: [PATCH 265/380] Latency histogramms: Cope with backwards running
  local trace clock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fa9c37a2f55ba888b6afc9d5d3a821d9788d74cc
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1f4ac5f8af516147d3d80b2a01cf9022f516095d
 
 Thanks to the wonders of modern technology, the local trace clock can
 now run backwards. Since this never happened before, the time difference
@@ -29,7 +29,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  2 files changed, 38 insertions(+), 35 deletions(-)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 5617b80..cc985bf 100644
+index 88bff9be15b9..be0f75b9b3ba 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1594,7 +1594,7 @@ struct task_struct {
@@ -42,7 +42,7 @@ index 5617b80..cc985bf 100644
  #endif
  #endif /* CONFIG_TRACING */
 diff --git a/kernel/trace/latency_hist.c b/kernel/trace/latency_hist.c
-index 9d49fcb..d514eef 100644
+index 9d49fcb8962f..d514eefd5ac8 100644
 --- a/kernel/trace/latency_hist.c
 +++ b/kernel/trace/latency_hist.c
 @@ -27,6 +27,8 @@
diff --git a/debian/patches/features/all/rt/0266-Latency-histograms-Adjust-timer-if-already-elapsed-w.patch b/debian/patches/features/all/rt/0266-Latency-histograms-Adjust-timer-if-already-elapsed-w.patch
index 60db214..9c361a2 100644
--- a/debian/patches/features/all/rt/0266-Latency-histograms-Adjust-timer-if-already-elapsed-w.patch
+++ b/debian/patches/features/all/rt/0266-Latency-histograms-Adjust-timer-if-already-elapsed-w.patch
@@ -1,8 +1,8 @@
 From: Carsten Emde <C.Emde at osadl.org>
 Date: Wed, 11 Jul 2012 22:05:18 +0000
-Subject: [PATCH 266/374] Latency histograms: Adjust timer, if already elapsed
+Subject: [PATCH 266/380] Latency histograms: Adjust timer, if already elapsed
  when programmed
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fc1b9dc80ee5dd192cd5f202daf7569207043881
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c56dfa5d28533ce447c8e37ce5e670f553af0705
 
 Nothing prevents a programmer from calling clock_nanosleep() with an
 already elapsed wakeup time in absolute time mode or with a too small
@@ -20,12 +20,10 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  kernel/hrtimer.c        | 16 ++++++++++++++--
  2 files changed, 17 insertions(+), 2 deletions(-)
 
-diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h
-index 26b008b..7259cd3 100644
 --- a/include/linux/hrtimer.h
 +++ b/include/linux/hrtimer.h
-@@ -113,6 +113,9 @@ struct hrtimer {
- 	unsigned long			state;
+@@ -119,6 +119,9 @@ struct hrtimer {
+ #endif
  	struct list_head		cb_entry;
  	int				irqsafe;
 +#ifdef CONFIG_MISSED_TIMER_OFFSETS_HIST
@@ -34,13 +32,11 @@ index 26b008b..7259cd3 100644
  #ifdef CONFIG_TIMER_STATS
  	int				start_pid;
  	void				*start_site;
-diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index 04f1acd..15354c8 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
-@@ -1036,6 +1036,17 @@ int __hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim,
- #endif
- 	}
+@@ -1043,6 +1043,17 @@ int __hrtimer_start_range_ns(struct hrti
+ 
+ 	tim = hrtimer_update_lowres(timer, tim, mode);
  
 +#ifdef CONFIG_MISSED_TIMER_OFFSETS_HIST
 +	{
@@ -56,7 +52,7 @@ index 04f1acd..15354c8 100644
  	hrtimer_set_expires_range_ns(timer, tim, delta_ns);
  
  	/* Switch the timer base, if necessary: */
-@@ -1498,8 +1509,9 @@ retry:
+@@ -1520,8 +1531,9 @@ retry:
  			timer = container_of(node, struct hrtimer, node);
  
  			trace_hrtimer_interrupt(raw_smp_processor_id(),
diff --git a/debian/patches/features/all/rt/0267-Disable-RT_GROUP_SCHED-in-PREEMPT_RT_FULL.patch b/debian/patches/features/all/rt/0267-Disable-RT_GROUP_SCHED-in-PREEMPT_RT_FULL.patch
index ec9308e..e3b00f8 100644
--- a/debian/patches/features/all/rt/0267-Disable-RT_GROUP_SCHED-in-PREEMPT_RT_FULL.patch
+++ b/debian/patches/features/all/rt/0267-Disable-RT_GROUP_SCHED-in-PREEMPT_RT_FULL.patch
@@ -1,7 +1,7 @@
 From: Carsten Emde <C.Emde at osadl.org>
 Date: Wed, 11 Jul 2012 22:05:18 +0000
-Subject: [PATCH 267/374] Disable RT_GROUP_SCHED in PREEMPT_RT_FULL
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b95702f2dd3d55536582969330db12bf8580a30f
+Subject: [PATCH 267/380] Disable RT_GROUP_SCHED in PREEMPT_RT_FULL
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=81a689e0ff899a3995e96092c03f184bbc0e3097
 
 Strange CPU stalls have been observed in RT when RT_GROUP_SCHED
 was configured.
@@ -16,7 +16,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 1 insertion(+)
 
 diff --git a/init/Kconfig b/init/Kconfig
-index 56a926e..f6411a5 100644
+index 56a926ed8dec..f6411a598ba9 100644
 --- a/init/Kconfig
 +++ b/init/Kconfig
 @@ -732,6 +732,7 @@ config RT_GROUP_SCHED
diff --git a/debian/patches/features/all/rt/0268-Latency-histograms-Detect-another-yet-overlooked-sha.patch b/debian/patches/features/all/rt/0268-Latency-histograms-Detect-another-yet-overlooked-sha.patch
index 3fe7cca..3da7597 100644
--- a/debian/patches/features/all/rt/0268-Latency-histograms-Detect-another-yet-overlooked-sha.patch
+++ b/debian/patches/features/all/rt/0268-Latency-histograms-Detect-another-yet-overlooked-sha.patch
@@ -1,8 +1,8 @@
 From: Carsten Emde <C.Emde at osadl.org>
 Date: Wed, 11 Jul 2012 22:05:19 +0000
-Subject: [PATCH 268/374] Latency histograms: Detect another yet overlooked
+Subject: [PATCH 268/380] Latency histograms: Detect another yet overlooked
  sharedprio condition
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a45d158973203aa0171f86a3ebdba02ca8f2f12d
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=14cdcfc1d5176875cc101a3a69c6c886ae355296
 
 While waiting for an RT process to be woken up, the previous process may
 go to wait and switch to another one with the same priority which then
@@ -20,7 +20,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 3 insertions(+)
 
 diff --git a/kernel/trace/latency_hist.c b/kernel/trace/latency_hist.c
-index d514eef..6a4c869 100644
+index d514eefd5ac8..6a4c8694c55a 100644
 --- a/kernel/trace/latency_hist.c
 +++ b/kernel/trace/latency_hist.c
 @@ -935,6 +935,9 @@ static notrace void probe_wakeup_latency_hist_stop(void *v,
diff --git a/debian/patches/features/all/rt/0269-slab-Prevent-local-lock-deadlock.patch b/debian/patches/features/all/rt/0269-slab-Prevent-local-lock-deadlock.patch
index f9f67ab..296a2ef 100644
--- a/debian/patches/features/all/rt/0269-slab-Prevent-local-lock-deadlock.patch
+++ b/debian/patches/features/all/rt/0269-slab-Prevent-local-lock-deadlock.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 11 Jul 2012 22:05:19 +0000
-Subject: [PATCH 269/374] slab: Prevent local lock deadlock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6e5d755c14efa594e5ce12544d7358f52d23c398
+Subject: [PATCH 269/380] slab: Prevent local lock deadlock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e3ec2a128ce12e44464cdcc6d06aad4825d455fd
 
 On RT we avoid the cross cpu function calls and take the per cpu local
 locks instead. Now the code missed that taking the local lock on the
@@ -17,7 +17,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 22 insertions(+), 4 deletions(-)
 
 diff --git a/mm/slab.c b/mm/slab.c
-index dbeaf7e..629eed5 100644
+index dbeaf7e47bf3..629eed589b92 100644
 --- a/mm/slab.c
 +++ b/mm/slab.c
 @@ -739,8 +739,26 @@ slab_on_each_cpu(void (*func)(void *arg, int this_cpu), void *arg)
diff --git a/debian/patches/features/all/rt/0270-fs-jbd-pull-your-plug-when-waiting-for-space.patch b/debian/patches/features/all/rt/0270-fs-jbd-pull-your-plug-when-waiting-for-space.patch
index 0e9f3ec..5ff31c2 100644
--- a/debian/patches/features/all/rt/0270-fs-jbd-pull-your-plug-when-waiting-for-space.patch
+++ b/debian/patches/features/all/rt/0270-fs-jbd-pull-your-plug-when-waiting-for-space.patch
@@ -1,7 +1,7 @@
 From: Mike Galbraith <mgalbraith at suse.de>
 Date: Wed, 11 Jul 2012 22:05:20 +0000
-Subject: [PATCH 270/374] fs, jbd: pull your plug when waiting for space
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=26b6eb656117092e886f946b3de336436410f475
+Subject: [PATCH 270/380] fs, jbd: pull your plug when waiting for space
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2fc603a103ce49dd3e7b67eb5f6b5e011e605791
 
 With an -rt kernel, and a heavy sync IO load, tasks can jam
 up on journal locks without unplugging, which can lead to
@@ -18,7 +18,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 2 insertions(+)
 
 diff --git a/fs/jbd/checkpoint.c b/fs/jbd/checkpoint.c
-index 5c93ffc..ddbd223 100644
+index 5c93ffce6e70..ddbd223ddb27 100644
 --- a/fs/jbd/checkpoint.c
 +++ b/fs/jbd/checkpoint.c
 @@ -129,6 +129,8 @@ void __log_wait_for_space(journal_t *journal)
diff --git a/debian/patches/features/all/rt/0271-perf-Make-swevent-hrtimer-run-in-irq-instead-of-soft.patch b/debian/patches/features/all/rt/0271-perf-Make-swevent-hrtimer-run-in-irq-instead-of-soft.patch
index 86aa94e..62a843b 100644
--- a/debian/patches/features/all/rt/0271-perf-Make-swevent-hrtimer-run-in-irq-instead-of-soft.patch
+++ b/debian/patches/features/all/rt/0271-perf-Make-swevent-hrtimer-run-in-irq-instead-of-soft.patch
@@ -1,8 +1,8 @@
 From: Yong Zhang <yong.zhang at windriver.com>
 Date: Wed, 11 Jul 2012 22:05:21 +0000
-Subject: [PATCH 271/374] perf: Make swevent hrtimer run in irq instead of
+Subject: [PATCH 271/380] perf: Make swevent hrtimer run in irq instead of
  softirq
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f5fbb7509a010ae8b8f13756059847d8e640288d
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c028c4e064bb0e0c0c52e0c19fcfc5c1984aec34
 
 Otherwise we get a deadlock like below:
 
@@ -58,10 +58,10 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 1 insertion(+)
 
 diff --git a/kernel/events/core.c b/kernel/events/core.c
-index f475286..48ce2598 100644
+index 7c0b4f07f947..82d6a7f61ead 100644
 --- a/kernel/events/core.c
 +++ b/kernel/events/core.c
-@@ -5608,6 +5608,7 @@ static void perf_swevent_init_hrtimer(struct perf_event *event)
+@@ -5612,6 +5612,7 @@ static void perf_swevent_init_hrtimer(struct perf_event *event)
  
  	hrtimer_init(&hwc->hrtimer, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
  	hwc->hrtimer.function = perf_swevent_hrtimer;
diff --git a/debian/patches/features/all/rt/0272-cpu-rt-Rework-cpu-down-for-PREEMPT_RT.patch b/debian/patches/features/all/rt/0272-cpu-rt-Rework-cpu-down-for-PREEMPT_RT.patch
index 46028b3..7a9c88f 100644
--- a/debian/patches/features/all/rt/0272-cpu-rt-Rework-cpu-down-for-PREEMPT_RT.patch
+++ b/debian/patches/features/all/rt/0272-cpu-rt-Rework-cpu-down-for-PREEMPT_RT.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <srostedt at redhat.com>
 Date: Mon, 16 Jul 2012 08:07:43 +0000
-Subject: [PATCH 272/374] cpu/rt: Rework cpu down for PREEMPT_RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0690cc9aef7d1b980e249391ddc5f1d4ad04c83a
+Subject: [PATCH 272/380] cpu/rt: Rework cpu down for PREEMPT_RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1b9da024813fb0fd63aee31d851433b2e4bed501
 
 Bringing a CPU down is a pain with the PREEMPT_RT kernel because
 tasks can be preempted in many more places than in non-RT. In
@@ -55,7 +55,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  3 files changed, 285 insertions(+), 40 deletions(-)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index cc985bf..827883d 100644
+index be0f75b9b3ba..78a58afb67ea 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1960,6 +1960,10 @@ extern void do_set_cpus_allowed(struct task_struct *p,
@@ -80,7 +80,7 @@ index cc985bf..827883d 100644
  
  #ifdef CONFIG_NO_HZ
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index 6ac3019..27ba05c 100644
+index 6ac3019cabf2..27ba05c71ba0 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -46,12 +46,7 @@ static int cpu_hotplug_disabled;
@@ -434,10 +434,10 @@ index 6ac3019..27ba05c 100644
  	if (err) {
  		/* CPU didn't die: tell everyone.  Can't complain. */
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 5f7b85a..f55c97c 100644
+index 82614a3629fc..cd890b33606f 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4601,7 +4601,7 @@ void migrate_disable(void)
+@@ -4602,7 +4602,7 @@ void migrate_disable(void)
  {
  	struct task_struct *p = current;
  
@@ -446,7 +446,7 @@ index 5f7b85a..f55c97c 100644
  #ifdef CONFIG_SCHED_DEBUG
  		p->migrate_disable_atomic++;
  #endif
-@@ -4632,7 +4632,7 @@ void migrate_enable(void)
+@@ -4633,7 +4633,7 @@ void migrate_enable(void)
  	unsigned long flags;
  	struct rq *rq;
  
@@ -455,7 +455,7 @@ index 5f7b85a..f55c97c 100644
  #ifdef CONFIG_SCHED_DEBUG
  		p->migrate_disable_atomic--;
  #endif
-@@ -6561,6 +6561,84 @@ void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
+@@ -6562,6 +6562,84 @@ void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
  	cpumask_copy(&p->cpus_allowed, new_mask);
  }
  
diff --git a/debian/patches/features/all/rt/0273-cpu-rt-Fix-cpu_hotplug-variable-initialization.patch b/debian/patches/features/all/rt/0273-cpu-rt-Fix-cpu_hotplug-variable-initialization.patch
index 7d7dec1..d0b7466 100644
--- a/debian/patches/features/all/rt/0273-cpu-rt-Fix-cpu_hotplug-variable-initialization.patch
+++ b/debian/patches/features/all/rt/0273-cpu-rt-Fix-cpu_hotplug-variable-initialization.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <srostedt at redhat.com>
 Date: Tue, 17 Jul 2012 10:45:59 -0400
-Subject: [PATCH 273/374] cpu/rt: Fix cpu_hotplug variable initialization
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5d35d5f93df16ec37290309fe6fdb920490366ee
+Subject: [PATCH 273/380] cpu/rt: Fix cpu_hotplug variable initialization
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fc95919fec8a2ecf704f25d937da16bcac1cd9ca
 
 The commit "cpu/rt: Rework cpu down for PREEMPT_RT" changed the double
 meaning of the cpu_hotplug.lock, where it was a spinlock for RT and a
@@ -15,7 +15,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 4 deletions(-)
 
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index 27ba05c..5ef0c31 100644
+index 27ba05c71ba0..5ef0c31cd0aa 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -54,11 +54,7 @@ static struct {
diff --git a/debian/patches/features/all/rt/0274-time-rt-Fix-up-leap-second-backport-for-RT-changes.patch b/debian/patches/features/all/rt/0274-time-rt-Fix-up-leap-second-backport-for-RT-changes.patch
index 16df0c9..77214e9 100644
--- a/debian/patches/features/all/rt/0274-time-rt-Fix-up-leap-second-backport-for-RT-changes.patch
+++ b/debian/patches/features/all/rt/0274-time-rt-Fix-up-leap-second-backport-for-RT-changes.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Thu, 2 Aug 2012 18:56:52 -0400
-Subject: [PATCH 274/374] time/rt: Fix up leap-second backport for RT changes
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6042e4a4b56001f2c0e1357ff595b8fb1058d78f
+Subject: [PATCH 274/380] time/rt: Fix up leap-second backport for RT changes
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a0cfeb98190d1610ca25869bae2fdc908dd8d752
 
 The leap-second backport broke RT, and a few changes had to be done.
 
@@ -19,7 +19,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  2 files changed, 2 insertions(+), 8 deletions(-)
 
 diff --git a/kernel/time/ntp.c b/kernel/time/ntp.c
-index 635c2bc..92d97a7 100644
+index 635c2bcf651f..92d97a77be2e 100644
 --- a/kernel/time/ntp.c
 +++ b/kernel/time/ntp.c
 @@ -362,9 +362,6 @@ int second_overflow(unsigned long secs)
@@ -43,7 +43,7 @@ index 635c2bc..92d97a7 100644
  	time_maxerror += MAXFREQ / NSEC_PER_USEC;
  	if (time_maxerror > NTP_PHASE_LIMIT) {
 diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
-index d00be1d..0d8f0ed 100644
+index d00be1dc385c..0d8f0ed18dcf 100644
 --- a/kernel/time/timekeeping.c
 +++ b/kernel/time/timekeeping.c
 @@ -1295,7 +1295,7 @@ ktime_t ktime_get_update_offsets(ktime_t *real, ktime_t *boot)
diff --git a/debian/patches/features/all/rt/0275-fix-printk-flush-of-messages.patch b/debian/patches/features/all/rt/0275-fix-printk-flush-of-messages.patch
index 2fc0da2..a571369 100644
--- a/debian/patches/features/all/rt/0275-fix-printk-flush-of-messages.patch
+++ b/debian/patches/features/all/rt/0275-fix-printk-flush-of-messages.patch
@@ -1,7 +1,7 @@
 From: Frank Rowand <frank.rowand at am.sony.com>
 Date: Wed, 16 May 2012 18:09:36 -0700
-Subject: [PATCH 275/374] fix printk flush of messages
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=00c150d77fc861de69f11881bed493375385a7fb
+Subject: [PATCH 275/380] fix printk flush of messages
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e7ec51cf62591a30c7c944796650e7dfb7b43536
 
 Updates console-make-rt-friendly.patch
 
@@ -41,7 +41,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/printk.c b/kernel/printk.c
-index ef68cef..4d65d6f 100644
+index ef68cefaf9d1..4d65d6f9e7d6 100644
 --- a/kernel/printk.c
 +++ b/kernel/printk.c
 @@ -847,7 +847,7 @@ static int console_trylock_for_printk(unsigned int cpu, unsigned long flags)
diff --git a/debian/patches/features/all/rt/0276-fix-printk-flush-of-messages.patch b/debian/patches/features/all/rt/0276-fix-printk-flush-of-messages.patch
index 9e26944..0f5fd0a 100644
--- a/debian/patches/features/all/rt/0276-fix-printk-flush-of-messages.patch
+++ b/debian/patches/features/all/rt/0276-fix-printk-flush-of-messages.patch
@@ -1,7 +1,7 @@
 From: Frank Rowand <frank.rowand at am.sony.com>
 Date: Wed, 16 May 2012 18:05:53 -0700
-Subject: [PATCH 276/374] fix printk flush of messages
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c68cdf480812960efd2171e3288a767c3f21c75f
+Subject: [PATCH 276/380] fix printk flush of messages
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b72813bd4b160eeb40155f1f916aedfc729ad1cd
 
 Reverse preempt-rt-allow-immediate-magic-sysrq-output-for-preempt_rt_full.patch
 
@@ -20,7 +20,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  5 files changed, 3 insertions(+), 54 deletions(-)
 
 diff --git a/drivers/tty/serial/cpm_uart/cpm_uart_core.c b/drivers/tty/serial/cpm_uart/cpm_uart_core.c
-index a8b0559..b418947 100644
+index a8b05594e468..b418947b7107 100644
 --- a/drivers/tty/serial/cpm_uart/cpm_uart_core.c
 +++ b/drivers/tty/serial/cpm_uart/cpm_uart_core.c
 @@ -1226,7 +1226,7 @@ static void cpm_uart_console_write(struct console *co, const char *s,
@@ -33,7 +33,7 @@ index a8b0559..b418947 100644
  	if (unlikely(nolock)) {
  		local_irq_save(flags);
 diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c
-index 5219738..43db715 100644
+index 5219738ffd11..43db715f1502 100644
 --- a/drivers/tty/sysrq.c
 +++ b/drivers/tty/sysrq.c
 @@ -492,23 +492,6 @@ static void __sysrq_put_key_op(int key, struct sysrq_key_op *op_p)
@@ -81,7 +81,7 @@ index 5219738..43db715 100644
  }
  
 diff --git a/include/linux/sysrq.h b/include/linux/sysrq.h
-index d224c0b..7faf933 100644
+index d224c0bae8df..7faf933cced7 100644
 --- a/include/linux/sysrq.h
 +++ b/include/linux/sysrq.h
 @@ -38,11 +38,6 @@ struct sysrq_key_op {
@@ -97,7 +97,7 @@ index d224c0b..7faf933 100644
  
  /* Generic SysRq interface -- you may call it from any device driver, supplying
 diff --git a/kernel/printk.c b/kernel/printk.c
-index 4d65d6f..e230be6c 100644
+index 4d65d6f9e7d6..e230be6c760c 100644
 --- a/kernel/printk.c
 +++ b/kernel/printk.c
 @@ -21,7 +21,6 @@
diff --git a/debian/patches/features/all/rt/0277-random-Make-it-work-on-rt.patch b/debian/patches/features/all/rt/0277-random-Make-it-work-on-rt.patch
index 1084082..bf1c1c8 100644
--- a/debian/patches/features/all/rt/0277-random-Make-it-work-on-rt.patch
+++ b/debian/patches/features/all/rt/0277-random-Make-it-work-on-rt.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 21 Aug 2012 20:38:50 +0200
-Subject: [PATCH 277/374] random: Make it work on rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=637725450346b0b8a88f418255b2eb2d56885aa6
+Subject: [PATCH 277/380] random: Make it work on rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d5049e2db16403d2c09f64ae11f6931c2527e5b7
 
 Delegate the random insertion to the forced threaded interrupt
 handler. Store the return IP of the hard interrupt handler in the irq
@@ -20,7 +20,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  5 files changed, 19 insertions(+), 7 deletions(-)
 
 diff --git a/drivers/char/random.c b/drivers/char/random.c
-index 6eeed0d..ba79a0f 100644
+index 6eeed0de7e24..ba79a0ffe438 100644
 --- a/drivers/char/random.c
 +++ b/drivers/char/random.c
 @@ -767,18 +767,16 @@ EXPORT_SYMBOL_GPL(add_input_randomness);
@@ -67,7 +67,7 @@ index 6eeed0d..ba79a0f 100644
  	struct cpumask		*percpu_enabled;
  #ifdef CONFIG_SMP
 diff --git a/include/linux/random.h b/include/linux/random.h
-index f5e1311..1622993 100644
+index f5e1311f491e..162299358617 100644
 --- a/include/linux/random.h
 +++ b/include/linux/random.h
 @@ -53,7 +53,7 @@ extern void rand_initialize_irq(int irq);
@@ -80,7 +80,7 @@ index f5e1311..1622993 100644
  extern void get_random_bytes(void *buf, int nbytes);
  extern void get_random_bytes_arch(void *buf, int nbytes);
 diff --git a/kernel/irq/handle.c b/kernel/irq/handle.c
-index a768885..f6b91bc 100644
+index a7688853397e..f6b91bc49f28 100644
 --- a/kernel/irq/handle.c
 +++ b/kernel/irq/handle.c
 @@ -116,6 +116,8 @@ static void irq_wake_thread(struct irq_desc *desc, struct irqaction *action)
@@ -105,7 +105,7 @@ index a768885..f6b91bc 100644
  
  	if (!noirqdebug)
 diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index 9a818604..ed604da 100644
+index 83614089f17a..5aef6e77f61a 100644
 --- a/kernel/irq/manage.c
 +++ b/kernel/irq/manage.c
 @@ -825,6 +825,12 @@ static int irq_thread(void *data)
diff --git a/debian/patches/features/all/rt/0278-softirq-Init-softirq-local-lock-after-per-cpu-sectio.patch b/debian/patches/features/all/rt/0278-softirq-Init-softirq-local-lock-after-per-cpu-sectio.patch
index 7c977b8..ad7d4f0 100644
--- a/debian/patches/features/all/rt/0278-softirq-Init-softirq-local-lock-after-per-cpu-sectio.patch
+++ b/debian/patches/features/all/rt/0278-softirq-Init-softirq-local-lock-after-per-cpu-sectio.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Thu, 4 Oct 2012 11:02:04 -0400
-Subject: [PATCH 278/374] softirq: Init softirq local lock after per cpu
+Subject: [PATCH 278/380] softirq: Init softirq local lock after per cpu
  section is set up
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a627a8a4d405e3dae1a6a18256c1feee0757b2eb
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=664ca8eb50cd4cae2d0d35e3951ffdcd5b0a83c0
 
 I discovered this bug when booting 3.4-rt on my powerpc box. It crashed
 with the following report:
@@ -116,7 +116,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/init/main.c b/init/main.c
-index 8ccb56a..267e2c2 100644
+index 8ccb56a01ad5..267e2c2de4e2 100644
 --- a/init/main.c
 +++ b/init/main.c
 @@ -491,7 +491,6 @@ asmlinkage void __init start_kernel(void)
diff --git a/debian/patches/features/all/rt/0279-mm-slab-Fix-potential-deadlock.patch b/debian/patches/features/all/rt/0279-mm-slab-Fix-potential-deadlock.patch
index 14e6a81..9c69bfb 100644
--- a/debian/patches/features/all/rt/0279-mm-slab-Fix-potential-deadlock.patch
+++ b/debian/patches/features/all/rt/0279-mm-slab-Fix-potential-deadlock.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 26 Sep 2012 16:20:00 +0200
-Subject: [PATCH 279/374] mm: slab: Fix potential deadlock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f7f4cf785cff19a5cf7db5708a8dca498982e429
+Subject: [PATCH 279/380] mm: slab: Fix potential deadlock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e7a5775527396b4cc16f67aaf326580581c7d547
 
  =============================================
 [ INFO: possible recursive locking detected ]
@@ -72,7 +72,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  2 files changed, 10 insertions(+), 8 deletions(-)
 
 diff --git a/include/linux/locallock.h b/include/linux/locallock.h
-index 8fbc393..0161fbb 100644
+index 8fbc3938638f..0161fbbffc25 100644
 --- a/include/linux/locallock.h
 +++ b/include/linux/locallock.h
 @@ -96,6 +96,9 @@ static inline void __local_lock_irq(struct local_irq_lock *lv)
@@ -98,7 +98,7 @@ index 8fbc393..0161fbb 100644
  {
  	if (lv->owner != current) {
 diff --git a/mm/slab.c b/mm/slab.c
-index 629eed5..b2d5c23 100644
+index 629eed589b92..b2d5c2307efc 100644
 --- a/mm/slab.c
 +++ b/mm/slab.c
 @@ -747,18 +747,12 @@ slab_on_each_cpu(void (*func)(void *arg, int this_cpu), void *arg)
diff --git a/debian/patches/features/all/rt/0280-mm-page_alloc-Use-local_lock_on-instead-of-plain-spi.patch b/debian/patches/features/all/rt/0280-mm-page_alloc-Use-local_lock_on-instead-of-plain-spi.patch
index 2f65dbe..a10b447 100644
--- a/debian/patches/features/all/rt/0280-mm-page_alloc-Use-local_lock_on-instead-of-plain-spi.patch
+++ b/debian/patches/features/all/rt/0280-mm-page_alloc-Use-local_lock_on-instead-of-plain-spi.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 27 Sep 2012 11:11:46 +0200
-Subject: [PATCH 280/374] mm: page_alloc: Use local_lock_on() instead of plain
+Subject: [PATCH 280/380] mm: page_alloc: Use local_lock_on() instead of plain
  spinlock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8ddb81628a708f09c22244fa47721fdb4295bd85
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=53be45e10e7e024bed2a253cd81b9daa31147209
 
 The plain spinlock while sufficient does not update the local_lock
 internals. Use a proper local_lock function instead to ease debugging.
@@ -16,7 +16,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  2 files changed, 13 insertions(+), 2 deletions(-)
 
 diff --git a/include/linux/locallock.h b/include/linux/locallock.h
-index 0161fbb..f1804a3 100644
+index 0161fbbffc25..f1804a38dd44 100644
 --- a/include/linux/locallock.h
 +++ b/include/linux/locallock.h
 @@ -137,6 +137,12 @@ static inline int __local_lock_irqsave(struct local_irq_lock *lv)
@@ -45,7 +45,7 @@ index 0161fbb..f1804a3 100644
  	({								\
  		int __locked;						\
 diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 3746038..bd02179 100644
+index 374603834a66..bd02179fd908 100644
 --- a/mm/page_alloc.c
 +++ b/mm/page_alloc.c
 @@ -227,9 +227,9 @@ static DEFINE_LOCAL_IRQ_LOCK(pa_lock);
diff --git a/debian/patches/features/all/rt/0281-rt-rwsem-rwlock-lockdep-annotations.patch b/debian/patches/features/all/rt/0281-rt-rwsem-rwlock-lockdep-annotations.patch
index 36d60ef..b5f03a0 100644
--- a/debian/patches/features/all/rt/0281-rt-rwsem-rwlock-lockdep-annotations.patch
+++ b/debian/patches/features/all/rt/0281-rt-rwsem-rwlock-lockdep-annotations.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 28 Sep 2012 10:49:42 +0100
-Subject: [PATCH 281/374] rt: rwsem/rwlock: lockdep annotations
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=05e4e4a0b76862b2f62bb9dc94b8fd9e2aeafc0a
+Subject: [PATCH 281/380] rt: rwsem/rwlock: lockdep annotations
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5757aa6524ba5b9bafae4f3a2305c47b1db6dea4
 
 rwlocks and rwsems on RT do not allow multiple readers. Annotate the
 lockdep acquire functions accordingly.
@@ -14,7 +14,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 25 insertions(+), 21 deletions(-)
 
 diff --git a/kernel/rt.c b/kernel/rt.c
-index 092d6b3..aa10504 100644
+index 092d6b356d59..aa10504d733d 100644
 --- a/kernel/rt.c
 +++ b/kernel/rt.c
 @@ -216,15 +216,17 @@ int __lockfunc rt_read_trylock(rwlock_t *rwlock)
diff --git a/debian/patches/features/all/rt/0282-sched-Better-debug-output-for-might-sleep.patch b/debian/patches/features/all/rt/0282-sched-Better-debug-output-for-might-sleep.patch
index e8ed9a9..0032244 100644
--- a/debian/patches/features/all/rt/0282-sched-Better-debug-output-for-might-sleep.patch
+++ b/debian/patches/features/all/rt/0282-sched-Better-debug-output-for-might-sleep.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 5 Oct 2012 08:56:15 +0100
-Subject: [PATCH 282/374] sched: Better debug output for might sleep
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ad3669e668be8a3379da4560b2ac36e6c4be4110
+Subject: [PATCH 282/380] sched: Better debug output for might sleep
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f5b8815b19f69a6e81537b17dd49f365a76eaabe
 
 might sleep can tell us where interrupts have been disabled, but we
 have no idea what disabled preemption. Add some debug infrastructure.
@@ -15,7 +15,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  2 files changed, 25 insertions(+), 2 deletions(-)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 827883d..621b912 100644
+index 78a58afb67ea..b58ff456ac71 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1617,6 +1617,10 @@ struct task_struct {
@@ -30,10 +30,10 @@ index 827883d..621b912 100644
  
  #ifdef CONFIG_PREEMPT_RT_FULL
 diff --git a/kernel/sched.c b/kernel/sched.c
-index f55c97c..9c1fe26 100644
+index cd890b33606f..30a5c8a5c87b 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4492,8 +4492,13 @@ void __kprobes add_preempt_count(int val)
+@@ -4493,8 +4493,13 @@ void __kprobes add_preempt_count(int val)
  	DEBUG_LOCKS_WARN_ON((preempt_count() & PREEMPT_MASK) >=
  				PREEMPT_MASK - 10);
  #endif
@@ -49,7 +49,7 @@ index f55c97c..9c1fe26 100644
  }
  EXPORT_SYMBOL(add_preempt_count);
  
-@@ -4535,6 +4540,13 @@ static noinline void __schedule_bug(struct task_struct *prev)
+@@ -4536,6 +4541,13 @@ static noinline void __schedule_bug(struct task_struct *prev)
  	print_modules();
  	if (irqs_disabled())
  		print_irqtrace_events(prev);
@@ -63,7 +63,7 @@ index f55c97c..9c1fe26 100644
  
  	if (regs)
  		show_regs(regs);
-@@ -8928,6 +8940,13 @@ void __might_sleep(const char *file, int line, int preempt_offset)
+@@ -8929,6 +8941,13 @@ void __might_sleep(const char *file, int line, int preempt_offset)
  	debug_show_held_locks(current);
  	if (irqs_disabled())
  		print_irqtrace_events(current);
diff --git a/debian/patches/features/all/rt/0283-stomp_machine-Use-mutex_trylock-when-called-from-ina.patch b/debian/patches/features/all/rt/0283-stomp_machine-Use-mutex_trylock-when-called-from-ina.patch
index 9ad2080..cf14ca8 100644
--- a/debian/patches/features/all/rt/0283-stomp_machine-Use-mutex_trylock-when-called-from-ina.patch
+++ b/debian/patches/features/all/rt/0283-stomp_machine-Use-mutex_trylock-when-called-from-ina.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 3 Oct 2012 17:21:53 +0100
-Subject: [PATCH 283/374] stomp_machine: Use mutex_trylock when called from
+Subject: [PATCH 283/380] stomp_machine: Use mutex_trylock when called from
  inactive cpu
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=dd7e106fc46f01a5e93c18fe2d6198f7482b4564
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=257485131d9fd71c8925f43e58a0b7c2edf14403
 
 If the stop machinery is called from inactive CPU we cannot use
 mutex_lock, because some other stomp machine invokation might be in
@@ -17,7 +17,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 9 insertions(+), 4 deletions(-)
 
 diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c
-index 561ba3a..e98c70b 100644
+index 561ba3a7b8cf..e98c70b7f073 100644
 --- a/kernel/stop_machine.c
 +++ b/kernel/stop_machine.c
 @@ -158,7 +158,7 @@ static DEFINE_PER_CPU(struct cpu_stop_work, stop_cpus_work);
diff --git a/debian/patches/features/all/rt/0284-slab-Fix-up-stable-merge-of-slab-init_lock_keys.patch b/debian/patches/features/all/rt/0284-slab-Fix-up-stable-merge-of-slab-init_lock_keys.patch
index 4d6c16a..450cdb0 100644
--- a/debian/patches/features/all/rt/0284-slab-Fix-up-stable-merge-of-slab-init_lock_keys.patch
+++ b/debian/patches/features/all/rt/0284-slab-Fix-up-stable-merge-of-slab-init_lock_keys.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <srostedt at redhat.com>
 Date: Tue, 16 Oct 2012 17:00:19 -0400
-Subject: [PATCH 284/374] slab: Fix up stable merge of slab init_lock_keys()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1ac113f5c4784f06c2a924604402ecd61792f379
+Subject: [PATCH 284/380] slab: Fix up stable merge of slab init_lock_keys()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=736478ff62b5e56b8412c0ddcaf7c92cd2f56182
 
 There was a stable fix that moved the init_lock_keys() to after
 the enable_cpucache(). But -rt changed this function to
@@ -14,7 +14,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 1 insertion(+), 4 deletions(-)
 
 diff --git a/mm/slab.c b/mm/slab.c
-index b2d5c23..c23c4dc 100644
+index b2d5c2307efc..c23c4dcaee21 100644
 --- a/mm/slab.c
 +++ b/mm/slab.c
 @@ -1747,15 +1747,12 @@ void __init kmem_cache_init_late(void)
diff --git a/debian/patches/features/all/rt/0285-hrtimer-Raise-softirq-if-hrtimer-irq-stalled.patch b/debian/patches/features/all/rt/0285-hrtimer-Raise-softirq-if-hrtimer-irq-stalled.patch
index 45e0f7a..eae15bf 100644
--- a/debian/patches/features/all/rt/0285-hrtimer-Raise-softirq-if-hrtimer-irq-stalled.patch
+++ b/debian/patches/features/all/rt/0285-hrtimer-Raise-softirq-if-hrtimer-irq-stalled.patch
@@ -1,7 +1,7 @@
 From: Watanabe <shunsuke.watanabe at tel.com>
 Date: Sun, 28 Oct 2012 11:13:44 +0100
-Subject: [PATCH 285/374] hrtimer: Raise softirq if hrtimer irq stalled
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=989095db1e3a794d6539b0f57695a2c215557c53
+Subject: [PATCH 285/380] hrtimer: Raise softirq if hrtimer irq stalled
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=600c64b366f0357ed6bbc4129acd834d5bb5d07d
 
 When the hrtimer stall detection hits the softirq is not raised.
 
@@ -12,7 +12,7 @@ Cc: stable-rt at vger.kernel.org
  1 file changed, 4 insertions(+), 5 deletions(-)
 
 diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index 15354c8..ec3b5e7 100644
+index 15354c869341..ec3b5e7cbd4d 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
 @@ -1560,11 +1560,7 @@ retry:
diff --git a/debian/patches/features/all/rt/0286-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch b/debian/patches/features/all/rt/0286-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch
index 70d67a0..69d7b32 100644
--- a/debian/patches/features/all/rt/0286-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch
+++ b/debian/patches/features/all/rt/0286-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 28 Oct 2012 13:26:09 +0000
-Subject: [PATCH 286/374] rcu: Disable RCU_FAST_NO_HZ on RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bf19f38f71421548d7f9eaa1706ee9a3f0e2bc67
+Subject: [PATCH 286/380] rcu: Disable RCU_FAST_NO_HZ on RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=46c136e25404cc618b7b5a044d11c7e7aa15ca16
 
 This uses a timer_list timer from the irq disabled guts of the idle
 code. Disable it for now to prevent wreckage.
@@ -13,7 +13,7 @@ Cc: stable-rt at vger.kernel.org
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/init/Kconfig b/init/Kconfig
-index f6411a5..0a2eeac 100644
+index f6411a598ba9..0a2eeacbf685 100644
 --- a/init/Kconfig
 +++ b/init/Kconfig
 @@ -469,7 +469,7 @@ config RCU_FANOUT_EXACT
diff --git a/debian/patches/features/all/rt/0287-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch b/debian/patches/features/all/rt/0287-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch
index 5e0726e..52c47c8 100644
--- a/debian/patches/features/all/rt/0287-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch
+++ b/debian/patches/features/all/rt/0287-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sun, 28 Oct 2012 11:18:08 +0100
-Subject: [PATCH 287/374] net: netfilter: Serialize xt_write_recseq sections on
+Subject: [PATCH 287/380] net: netfilter: Serialize xt_write_recseq sections on
  RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=adad80b537e2639f3b4d73193ff728b484cff698
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=70412ef316caaf758ebb931a95309b5fb3683c70
 
 The netfilter code relies only on the implicit semantics of
 local_bh_disable() for serializing wt_write_recseq sections. RT breaks
@@ -18,7 +18,7 @@ Cc: stable-rt at vger.kernel.org
  3 files changed, 17 insertions(+)
 
 diff --git a/include/linux/locallock.h b/include/linux/locallock.h
-index f1804a3..a5eea5d 100644
+index f1804a38dd44..a5eea5df7cc2 100644
 --- a/include/linux/locallock.h
 +++ b/include/linux/locallock.h
 @@ -25,6 +25,9 @@ struct local_irq_lock {
@@ -40,7 +40,7 @@ index f1804a3..a5eea5d 100644
  static inline void local_irq_lock_init(int lvar) { }
  
 diff --git a/include/linux/netfilter/x_tables.h b/include/linux/netfilter/x_tables.h
-index 32cddf7..bed90da2 100644
+index 32cddf78b13e..bed90da22b7d 100644
 --- a/include/linux/netfilter/x_tables.h
 +++ b/include/linux/netfilter/x_tables.h
 @@ -186,6 +186,7 @@ struct xt_counters_info {
@@ -79,7 +79,7 @@ index 32cddf7..bed90da2 100644
  
  /*
 diff --git a/net/netfilter/core.c b/net/netfilter/core.c
-index afca6c7..aa3f87b 100644
+index afca6c78948c..aa3f87b8d43b 100644
 --- a/net/netfilter/core.c
 +++ b/net/netfilter/core.c
 @@ -20,11 +20,17 @@
diff --git a/debian/patches/features/all/rt/0288-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch b/debian/patches/features/all/rt/0288-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch
index 17a3ec5..fb62eb3 100644
--- a/debian/patches/features/all/rt/0288-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch
+++ b/debian/patches/features/all/rt/0288-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 20 Dec 2012 14:58:00 +0100
-Subject: [PATCH 288/374] sched: Adjust sched_reset_on_fork when nothing else
+Subject: [PATCH 288/380] sched: Adjust sched_reset_on_fork when nothing else
  changes
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5d5a3ef95ca626a2b9357fd72cf32c703fdac70f
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=502b91545e86c724f6fd2d5382e58ff38809b6d6
 
 If the policy and priority remain unchanged a possible modification of
 sched_reset_on_fork gets lost in the early exit path.
@@ -15,10 +15,10 @@ Cc: stable-rt at vger.kernel.org
  1 file changed, 4 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 9c1fe26..b180e15 100644
+index 30a5c8a5c87b..1d95a8a6a0f3 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -5727,11 +5727,13 @@ recheck:
+@@ -5728,11 +5728,13 @@ recheck:
  	}
  
  	/*
diff --git a/debian/patches/features/all/rt/0289-sched-Queue-RT-tasks-to-head-when-prio-drops.patch b/debian/patches/features/all/rt/0289-sched-Queue-RT-tasks-to-head-when-prio-drops.patch
index 585dcdc..471d19f 100644
--- a/debian/patches/features/all/rt/0289-sched-Queue-RT-tasks-to-head-when-prio-drops.patch
+++ b/debian/patches/features/all/rt/0289-sched-Queue-RT-tasks-to-head-when-prio-drops.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 4 Dec 2012 08:56:41 +0100
-Subject: [PATCH 289/374] sched: Queue RT tasks to head when prio drops
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=235beae4ff3d70c9eba0168ad11a0292e8f0ea72
+Subject: [PATCH 289/380] sched: Queue RT tasks to head when prio drops
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=72cecbcc2637fe9557e83dcf9fd1bfdc44d570ca
 
 The following scenario does not work correctly:
 
@@ -50,10 +50,10 @@ Cc: stable-rt at vger.kernel.org
  1 file changed, 7 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index b180e15..f31c81c 100644
+index 1d95a8a6a0f3..c10a9a389b5a 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -5775,8 +5775,13 @@ recheck:
+@@ -5776,8 +5776,13 @@ recheck:
  
  	if (running)
  		p->sched_class->set_curr_task(rq);
diff --git a/debian/patches/features/all/rt/0290-sched-Consider-pi-boosting-in-setscheduler.patch b/debian/patches/features/all/rt/0290-sched-Consider-pi-boosting-in-setscheduler.patch
index c5f8356..ae99d30 100644
--- a/debian/patches/features/all/rt/0290-sched-Consider-pi-boosting-in-setscheduler.patch
+++ b/debian/patches/features/all/rt/0290-sched-Consider-pi-boosting-in-setscheduler.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 20 Dec 2012 15:13:49 +0100
-Subject: [PATCH 290/374] sched: Consider pi boosting in setscheduler
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fe81c8e6a81b34d5e741e161c4c91f5808ede9eb
+Subject: [PATCH 290/380] sched: Consider pi boosting in setscheduler
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fe25eff4e8094a853115242be98ee971908afacc
 
 If a PI boosted task policy/priority is modified by a setscheduler()
 call we unconditionally dequeue and requeue the task if it is on the
@@ -25,7 +25,7 @@ Cc: stable-rt at vger.kernel.org
  3 files changed, 48 insertions(+), 8 deletions(-)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 621b912..438f0ea 100644
+index b58ff456ac71..40ce4de8cd04 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -2150,6 +2150,7 @@ extern unsigned int sysctl_sched_cfs_bandwidth_slice;
@@ -48,7 +48,7 @@ index 621b912..438f0ea 100644
  static inline bool tsk_is_pi_blocked(struct task_struct *tsk)
  {
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 1042825..7e0c4d7a 100644
+index 1042825820d6..7e0c4d7a0b5b 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -176,6 +176,18 @@ int rt_mutex_getprio(struct task_struct *task)
@@ -71,10 +71,10 @@ index 1042825..7e0c4d7a 100644
   *
   * This can be both boosting and unboosting. task->pi_lock must be held.
 diff --git a/kernel/sched.c b/kernel/sched.c
-index f31c81c..96344cd 100644
+index c10a9a389b5a..e8720bfeb025 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -5368,7 +5368,8 @@ EXPORT_SYMBOL(sleep_on_timeout);
+@@ -5369,7 +5369,8 @@ EXPORT_SYMBOL(sleep_on_timeout);
   * This function changes the 'effective' priority of a task. It does
   * not touch ->normal_prio like __setscheduler().
   *
@@ -84,7 +84,7 @@ index f31c81c..96344cd 100644
   */
  void rt_mutex_setprio(struct task_struct *p, int prio)
  {
-@@ -5594,20 +5595,25 @@ static struct task_struct *find_process_by_pid(pid_t pid)
+@@ -5595,20 +5596,25 @@ static struct task_struct *find_process_by_pid(pid_t pid)
  	return pid ? find_task_by_vpid(pid) : current;
  }
  
@@ -114,7 +114,7 @@ index f31c81c..96344cd 100644
  }
  
  /*
-@@ -5632,6 +5638,7 @@ static bool check_same_owner(struct task_struct *p)
+@@ -5633,6 +5639,7 @@ static bool check_same_owner(struct task_struct *p)
  static int __sched_setscheduler(struct task_struct *p, int policy,
  				const struct sched_param *param, bool user)
  {
@@ -122,7 +122,7 @@ index f31c81c..96344cd 100644
  	int retval, oldprio, oldpolicy = -1, on_rq, running;
  	unsigned long flags;
  	const struct sched_class *prev_class;
-@@ -5760,6 +5767,25 @@ recheck:
+@@ -5761,6 +5768,25 @@ recheck:
  		task_rq_unlock(rq, p, &flags);
  		goto recheck;
  	}
@@ -148,7 +148,7 @@ index f31c81c..96344cd 100644
  	on_rq = p->on_rq;
  	running = task_current(rq, p);
  	if (on_rq)
-@@ -5767,9 +5793,6 @@ recheck:
+@@ -5768,9 +5794,6 @@ recheck:
  	if (running)
  		p->sched_class->put_prev_task(rq, p);
  
diff --git a/debian/patches/features/all/rt/0291-drivers-tty-pl011-irq-disable-madness.patch.patch b/debian/patches/features/all/rt/0291-drivers-tty-pl011-irq-disable-madness.patch.patch
index 1e62c5c..05d8d68 100644
--- a/debian/patches/features/all/rt/0291-drivers-tty-pl011-irq-disable-madness.patch.patch
+++ b/debian/patches/features/all/rt/0291-drivers-tty-pl011-irq-disable-madness.patch.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 8 Jan 2013 21:36:51 +0100
-Subject: [PATCH 291/374] drivers-tty-pl011-irq-disable-madness.patch
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e3c9b0538902cbf1d3b4d8bd717454cbce910c14
+Subject: [PATCH 291/380] drivers-tty-pl011-irq-disable-madness.patch
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=056c24a800a0f3f264f2ad7517a1648b08ab5d44
 
 Cc: stable-rt at vger.kernel.org
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
@@ -11,7 +11,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 10 insertions(+), 5 deletions(-)
 
 diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
-index fe9f111..1fbaf66 100644
+index fe9f1110b6f1..1fbaf6674e8c 100644
 --- a/drivers/tty/serial/amba-pl011.c
 +++ b/drivers/tty/serial/amba-pl011.c
 @@ -1761,13 +1761,19 @@ pl011_console_write(struct console *co, const char *s, unsigned int count)
diff --git a/debian/patches/features/all/rt/0292-mmci-Remove-bogus-local_irq_save.patch b/debian/patches/features/all/rt/0292-mmci-Remove-bogus-local_irq_save.patch
index 94d03fd..27525b6 100644
--- a/debian/patches/features/all/rt/0292-mmci-Remove-bogus-local_irq_save.patch
+++ b/debian/patches/features/all/rt/0292-mmci-Remove-bogus-local_irq_save.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 9 Jan 2013 12:11:12 +0100
-Subject: [PATCH 292/374] mmci: Remove bogus local_irq_save()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=06f0830b97d887af8070ccf3039d105f5622863b
+Subject: [PATCH 292/380] mmci: Remove bogus local_irq_save()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3a3e98b5171c4c5129a8e29b213da35efffba894
 
 On !RT interrupt runs with interrupts disabled. On RT it's in a
 thread, so no need to disable interrupts at all.
@@ -14,7 +14,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 5 deletions(-)
 
 diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c
-index 0726e59..5d7bf83 100644
+index 0726e59fd418..5d7bf83127ff 100644
 --- a/drivers/mmc/host/mmci.c
 +++ b/drivers/mmc/host/mmci.c
 @@ -859,15 +859,12 @@ static irqreturn_t mmci_pio_irq(int irq, void *dev_id)
diff --git a/debian/patches/features/all/rt/0293-sched-Init-idle-on_rq-in-init_idle.patch b/debian/patches/features/all/rt/0293-sched-Init-idle-on_rq-in-init_idle.patch
index b320a8c..374845a 100644
--- a/debian/patches/features/all/rt/0293-sched-Init-idle-on_rq-in-init_idle.patch
+++ b/debian/patches/features/all/rt/0293-sched-Init-idle-on_rq-in-init_idle.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 9 Jan 2013 23:03:29 +0100
-Subject: [PATCH 293/374] sched: Init idle->on_rq in init_idle()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=513dc2ca422b7ad151e41feb46dfc1fe9ff7bb7b
+Subject: [PATCH 293/380] sched: Init idle->on_rq in init_idle()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e853bef80a0bbaba8431f38613b44c8398f9d7bd
 
 Cc: stable-rt at vger.kernel.org
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
@@ -11,10 +11,10 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 1 insertion(+)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 96344cd..d07ee55 100644
+index e8720bfeb025..280d3ff8d852 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -6527,6 +6527,7 @@ void __cpuinit init_idle(struct task_struct *idle, int cpu)
+@@ -6528,6 +6528,7 @@ void __cpuinit init_idle(struct task_struct *idle, int cpu)
  	rcu_read_unlock();
  
  	rq->curr = rq->idle = idle;
diff --git a/debian/patches/features/all/rt/0294-sched-Check-for-idle-task-in-might_sleep.patch b/debian/patches/features/all/rt/0294-sched-Check-for-idle-task-in-might_sleep.patch
index 741d4c8..297639e 100644
--- a/debian/patches/features/all/rt/0294-sched-Check-for-idle-task-in-might_sleep.patch
+++ b/debian/patches/features/all/rt/0294-sched-Check-for-idle-task-in-might_sleep.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 9 Jan 2013 23:34:08 +0100
-Subject: [PATCH 294/374] sched: Check for idle task in might_sleep()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=537e83e97123da9811bff4f68969f8ae8628d666
+Subject: [PATCH 294/380] sched: Check for idle task in might_sleep()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b20f81963a3d4782f9d24cd602298efaafb877c3
 
 Idle is not allowed to call sleeping functions ever!
 
@@ -13,10 +13,10 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index d07ee55..d61b3a4 100644
+index 280d3ff8d852..6f60a1fd6229 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -8953,7 +8953,8 @@ void __might_sleep(const char *file, int line, int preempt_offset)
+@@ -8954,7 +8954,8 @@ void __might_sleep(const char *file, int line, int preempt_offset)
  	static unsigned long prev_jiffy;	/* ratelimiting */
  
  	rcu_sleep_check(); /* WARN_ON_ONCE() by default, no rate limit reqd. */
diff --git a/debian/patches/features/all/rt/0295-mm-swap-Initialize-local-locks-early.patch b/debian/patches/features/all/rt/0295-mm-swap-Initialize-local-locks-early.patch
index 4aaa7b6..162d180 100644
--- a/debian/patches/features/all/rt/0295-mm-swap-Initialize-local-locks-early.patch
+++ b/debian/patches/features/all/rt/0295-mm-swap-Initialize-local-locks-early.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 10 Jan 2013 09:50:51 +0100
-Subject: [PATCH 295/374] mm: swap: Initialize local locks early
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a6a5f73f6f054cc8b67ea7acf52afb8482d271a2
+Subject: [PATCH 295/380] mm: swap: Initialize local locks early
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bf76a82c84ac9b8193e8da95c6605ae2a0d13041
 
 Cc: stable-rt at vger.kernel.org
 Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
@@ -11,7 +11,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 9 insertions(+), 3 deletions(-)
 
 diff --git a/mm/swap.c b/mm/swap.c
-index 15dc477..37b0623 100644
+index 15dc47710e6e..37b0623570c3 100644
 --- a/mm/swap.c
 +++ b/mm/swap.c
 @@ -848,6 +848,15 @@ unsigned pagevec_lookup(struct pagevec *pvec, struct address_space *mapping,
diff --git a/debian/patches/features/all/rt/0296-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch b/debian/patches/features/all/rt/0296-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch
index 5385d34..8c98b70 100644
--- a/debian/patches/features/all/rt/0296-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch
+++ b/debian/patches/features/all/rt/0296-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 13 Feb 2013 10:59:53 +0100
-Subject: [PATCH 296/374] x86/32: Use kmap switch for non highmem as well
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b19bf04088516f1d45b5893f46e7802150d7ed45
+Subject: [PATCH 296/380] x86/32: Use kmap switch for non highmem as well
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e04ea0a8071339f7f94342ee092263c9f06783db
 
 Even with CONFIG_HIGHMEM=n we need to take care of the "atomic"
 mappings which are installed via iomap_atomic.
@@ -15,7 +15,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  2 files changed, 4 insertions(+), 2 deletions(-)
 
 diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
-index 20f1573..66ee590 100644
+index 20f15731ec90..66ee59039965 100644
 --- a/arch/x86/kernel/process_32.c
 +++ b/arch/x86/kernel/process_32.c
 @@ -340,7 +340,7 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
@@ -28,7 +28,7 @@ index 20f1573..66ee590 100644
  	 * Save @prev's kmap_atomic stack
  	 */
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 438f0ea..287baf1 100644
+index 40ce4de8cd04..ea42d65c5ebb 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -1613,9 +1613,11 @@ struct task_struct {
diff --git a/debian/patches/features/all/rt/0297-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch b/debian/patches/features/all/rt/0297-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch
index 680c40d..4f48f2c 100644
--- a/debian/patches/features/all/rt/0297-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch
+++ b/debian/patches/features/all/rt/0297-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Wed, 13 Feb 2013 09:26:05 -0500
-Subject: [PATCH 297/374] acpi/rt: Convert acpi_gbl_hardware lock back to a
+Subject: [PATCH 297/380] acpi/rt: Convert acpi_gbl_hardware lock back to a
  raw_spinlock_t
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9766c799c4241c340c6f854011f009ecec60cd6c
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f82e42c2b81b305c7e1bed859378ef6495eec4bf
 
 We hit the following bug with 3.6-rt:
 
@@ -72,7 +72,7 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  5 files changed, 21 insertions(+), 7 deletions(-)
 
 diff --git a/drivers/acpi/acpica/acglobal.h b/drivers/acpi/acpica/acglobal.h
-index 76dc02f1..ca6bbe7 100644
+index 76dc02f15574..ca6bbe7629a3 100644
 --- a/drivers/acpi/acpica/acglobal.h
 +++ b/drivers/acpi/acpica/acglobal.h
 @@ -236,7 +236,7 @@ ACPI_EXTERN u8 acpi_gbl_global_lock_pending;
@@ -85,7 +85,7 @@ index 76dc02f1..ca6bbe7 100644
  /*****************************************************************************
   *
 diff --git a/drivers/acpi/acpica/hwregs.c b/drivers/acpi/acpica/hwregs.c
-index cc70f3f..1df2ce6 100644
+index cc70f3fdcdd1..1df2ce66935c 100644
 --- a/drivers/acpi/acpica/hwregs.c
 +++ b/drivers/acpi/acpica/hwregs.c
 @@ -263,14 +263,14 @@ acpi_status acpi_hw_clear_acpi_status(void)
@@ -106,7 +106,7 @@ index cc70f3f..1df2ce6 100644
  	if (ACPI_FAILURE(status))
  		goto exit;
 diff --git a/drivers/acpi/acpica/hwxface.c b/drivers/acpi/acpica/hwxface.c
-index c2793a8..5b28769 100644
+index c2793a82f120..5b287696c9d3 100644
 --- a/drivers/acpi/acpica/hwxface.c
 +++ b/drivers/acpi/acpica/hwxface.c
 @@ -387,7 +387,7 @@ acpi_status acpi_write_bit_register(u32 register_id, u32 value)
@@ -128,7 +128,7 @@ index c2793a8..5b28769 100644
  }
  
 diff --git a/drivers/acpi/acpica/utmutex.c b/drivers/acpi/acpica/utmutex.c
-index 7d797e2..b611bf3 100644
+index 7d797e2baecd..b611bf389471 100644
 --- a/drivers/acpi/acpica/utmutex.c
 +++ b/drivers/acpi/acpica/utmutex.c
 @@ -88,7 +88,7 @@ acpi_status acpi_ut_mutex_initialize(void)
@@ -150,7 +150,7 @@ index 7d797e2..b611bf3 100644
  	/* Delete the reader/writer lock */
  
 diff --git a/include/acpi/platform/aclinux.h b/include/acpi/platform/aclinux.h
-index f4b2eff..0e70789 100644
+index f4b2effe0333..0e707890741c 100644
 --- a/include/acpi/platform/aclinux.h
 +++ b/include/acpi/platform/aclinux.h
 @@ -73,6 +73,7 @@
diff --git a/debian/patches/features/all/rt/0298-serial-Imx-Fix-recursive-locking-bug.patch b/debian/patches/features/all/rt/0298-serial-Imx-Fix-recursive-locking-bug.patch
index 15bcdde..02d3b67 100644
--- a/debian/patches/features/all/rt/0298-serial-Imx-Fix-recursive-locking-bug.patch
+++ b/debian/patches/features/all/rt/0298-serial-Imx-Fix-recursive-locking-bug.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 14 Feb 2013 21:01:06 +0100
-Subject: [PATCH 298/374] serial: Imx: Fix recursive locking bug
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3b50aad5d1aaac5ac720daa5dbfcde3a336dfc18
+Subject: [PATCH 298/380] serial: Imx: Fix recursive locking bug
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=42d8ad7b45df29bd9357f713a6d141171e8c6373
 
 commit 9ec1882df2 (tty: serial: imx: console write routing is unsafe
 on SMP) introduced a recursive locking bug in imx_console_write().
@@ -94,7 +94,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 9 insertions(+), 2 deletions(-)
 
 diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
-index 8e68f79..5f5c214 100644
+index 8e68f792d84d..5f5c214405ee 100644
 --- a/drivers/tty/serial/imx.c
 +++ b/drivers/tty/serial/imx.c
 @@ -1115,8 +1115,14 @@ imx_console_write(struct console *co, const char *s, unsigned int count)
diff --git a/debian/patches/features/all/rt/0299-wait-simple-Simple-waitqueue-implementation.patch b/debian/patches/features/all/rt/0299-wait-simple-Simple-waitqueue-implementation.patch
index 556bd81..3727b35 100644
--- a/debian/patches/features/all/rt/0299-wait-simple-Simple-waitqueue-implementation.patch
+++ b/debian/patches/features/all/rt/0299-wait-simple-Simple-waitqueue-implementation.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 12 Dec 2011 12:29:04 +0100
-Subject: [PATCH 299/374] wait-simple: Simple waitqueue implementation
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=76ea86b2dfb82d3858823945a37c71fdb917cc0d
+Subject: [PATCH 299/380] wait-simple: Simple waitqueue implementation
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ae87cb7ebc21efbf439b6c3a128a4ee9ecd120ff
 
 wait_queue is a swiss army knife and in most of the cases the
 complexity is not needed. For RT waitqueues are a constant source of
@@ -25,7 +25,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
 
 diff --git a/include/linux/wait-simple.h b/include/linux/wait-simple.h
 new file mode 100644
-index 0000000..44fee60
+index 000000000000..44fee60c05ab
 --- /dev/null
 +++ b/include/linux/wait-simple.h
 @@ -0,0 +1,172 @@
@@ -202,7 +202,7 @@ index 0000000..44fee60
 +
 +#endif
 diff --git a/kernel/Makefile b/kernel/Makefile
-index c961d3a..0b0ed50 100644
+index c961d3abfe4c..0b0ed50948b3 100644
 --- a/kernel/Makefile
 +++ b/kernel/Makefile
 @@ -11,7 +11,7 @@ obj-y     = sched.o fork.o exec_domain.o panic.o printk.o \
@@ -216,7 +216,7 @@ index c961d3a..0b0ed50 100644
  # Do not trace debug files and internal ftrace files
 diff --git a/kernel/wait-simple.c b/kernel/wait-simple.c
 new file mode 100644
-index 0000000..c35ec78
+index 000000000000..c35ec7808ae0
 --- /dev/null
 +++ b/kernel/wait-simple.c
 @@ -0,0 +1,119 @@
diff --git a/debian/patches/features/all/rt/0300-rcutiny-Use-simple-waitqueue.patch b/debian/patches/features/all/rt/0300-rcutiny-Use-simple-waitqueue.patch
index f660d3f..09b4397 100644
--- a/debian/patches/features/all/rt/0300-rcutiny-Use-simple-waitqueue.patch
+++ b/debian/patches/features/all/rt/0300-rcutiny-Use-simple-waitqueue.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 3 Dec 2012 16:25:21 +0100
-Subject: [PATCH 300/374] rcutiny: Use simple waitqueue
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=791f4075a8fa27baf9a51fbeeb7c4b9becd0ccb7
+Subject: [PATCH 300/380] rcutiny: Use simple waitqueue
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9faf7a984d084883a8bcb35e15728ae450b65c8c
 
 Simple waitqueues can be handled from interrupt disabled contexts.
 
@@ -12,7 +12,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 9 insertions(+), 8 deletions(-)
 
 diff --git a/kernel/rcutiny_plugin.h b/kernel/rcutiny_plugin.h
-index 2b0484a..f0a6606 100644
+index 2b0484a5dc28..f0a6606ec1e7 100644
 --- a/kernel/rcutiny_plugin.h
 +++ b/kernel/rcutiny_plugin.h
 @@ -26,6 +26,7 @@
diff --git a/debian/patches/features/all/rt/0301-rcutiny-Fix-typo-of-using-swake_up-instead-of-swait_.patch b/debian/patches/features/all/rt/0301-rcutiny-Fix-typo-of-using-swake_up-instead-of-swait_.patch
index b230457..fb625bf 100644
--- a/debian/patches/features/all/rt/0301-rcutiny-Fix-typo-of-using-swake_up-instead-of-swait_.patch
+++ b/debian/patches/features/all/rt/0301-rcutiny-Fix-typo-of-using-swake_up-instead-of-swait_.patch
@@ -1,8 +1,8 @@
 From: "Steven Rostedt (Red Hat)" <rostedt at goodmis.org>
 Date: Wed, 1 May 2013 09:38:20 -0400
-Subject: [PATCH 301/374] rcutiny: Fix typo of using swake_up() instead of
+Subject: [PATCH 301/380] rcutiny: Fix typo of using swake_up() instead of
  swait_wake()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=59efb5343cda562021677bf3fa37cbc10f2c31f3
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=aa46558a632e019a93989ff2171cdee32873dc0f
 
 Converting the rcutiny wake up queues to use the simple wait queues
 there was a typo in one of the functions.
@@ -14,7 +14,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/rcutiny_plugin.h b/kernel/rcutiny_plugin.h
-index f0a6606..6242ccd 100644
+index f0a6606ec1e7..6242ccd1afac 100644
 --- a/kernel/rcutiny_plugin.h
 +++ b/kernel/rcutiny_plugin.h
 @@ -883,7 +883,7 @@ static void rcu_preempt_process_callbacks(void)
diff --git a/debian/patches/features/all/rt/0302-x86-mce-Defer-mce-wakeups-to-threads-for-PREEMPT_RT.patch b/debian/patches/features/all/rt/0302-x86-mce-Defer-mce-wakeups-to-threads-for-PREEMPT_RT.patch
index 043d8e5..8ae8c38 100644
--- a/debian/patches/features/all/rt/0302-x86-mce-Defer-mce-wakeups-to-threads-for-PREEMPT_RT.patch
+++ b/debian/patches/features/all/rt/0302-x86-mce-Defer-mce-wakeups-to-threads-for-PREEMPT_RT.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Thu, 11 Apr 2013 14:33:34 -0400
-Subject: [PATCH 302/374] x86/mce: Defer mce wakeups to threads for PREEMPT_RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=43697ee1f42dce9dd8942c6f490cac7370fca1ea
+Subject: [PATCH 302/380] x86/mce: Defer mce wakeups to threads for PREEMPT_RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bb5cc24b4ca17e2b086bbb3ee603933e8703d963
 
 We had a customer report a lockup on a 3.0-rt kernel that had the
 following backtrace:
@@ -59,7 +59,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 61 insertions(+), 17 deletions(-)
 
 diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
-index 7e4f230..8ceb100a 100644
+index 7e4f2301605d..8ceb100a3730 100644
 --- a/arch/x86/kernel/cpu/mcheck/mce.c
 +++ b/arch/x86/kernel/cpu/mcheck/mce.c
 @@ -15,6 +15,7 @@
diff --git a/debian/patches/features/all/rt/0303-swap-Use-unique-local-lock-name-for-swap_lock.patch b/debian/patches/features/all/rt/0303-swap-Use-unique-local-lock-name-for-swap_lock.patch
index e60eeca..530de49 100644
--- a/debian/patches/features/all/rt/0303-swap-Use-unique-local-lock-name-for-swap_lock.patch
+++ b/debian/patches/features/all/rt/0303-swap-Use-unique-local-lock-name-for-swap_lock.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Tue, 23 Apr 2013 16:10:00 -0400
-Subject: [PATCH 303/374] swap: Use unique local lock name for swap_lock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7da017942367abdbd72f5ea3a0b3ab0b78cb6524
+Subject: [PATCH 303/380] swap: Use unique local lock name for swap_lock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=305b4ebe5aa98e4a8f7f901e7834cd07b5d35776
 
 From lib/Kconfig.debug on CONFIG_FORCE_WEAK_PER_CPU:
 
@@ -32,7 +32,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 10 insertions(+), 10 deletions(-)
 
 diff --git a/mm/swap.c b/mm/swap.c
-index 37b0623..66a3874 100644
+index 37b0623570c3..66a38745054c 100644
 --- a/mm/swap.c
 +++ b/mm/swap.c
 @@ -44,7 +44,7 @@ static DEFINE_PER_CPU(struct pagevec, lru_rotate_pvecs);
diff --git a/debian/patches/features/all/rt/0304-sched-Add-is_idle_task-to-handle-invalidated-uses-of.patch b/debian/patches/features/all/rt/0304-sched-Add-is_idle_task-to-handle-invalidated-uses-of.patch
index cdc0106..990fc02 100644
--- a/debian/patches/features/all/rt/0304-sched-Add-is_idle_task-to-handle-invalidated-uses-of.patch
+++ b/debian/patches/features/all/rt/0304-sched-Add-is_idle_task-to-handle-invalidated-uses-of.patch
@@ -1,8 +1,8 @@
 From: "Paul E. McKenney" <paul.mckenney at linaro.org>
 Date: Thu, 10 Nov 2011 12:41:56 -0800
-Subject: [PATCH 304/374] sched: Add is_idle_task() to handle invalidated uses
+Subject: [PATCH 304/380] sched: Add is_idle_task() to handle invalidated uses
  of idle_cpu()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3c3d1d594cc3cfd96a9df49eed3ea33331530dce
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a8b74cecf1e3cbef0676ed438f0519b99a30c91b
 
 Commit 908a3283 (Fix idle_cpu()) invalidated some uses of idle_cpu(),
 which used to say whether or not the CPU was running the idle task,
@@ -26,7 +26,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 8 insertions(+)
 
 diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 287baf1..232390a 100644
+index ea42d65c5ebb..a15cfd1bac9f 100644
 --- a/include/linux/sched.h
 +++ b/include/linux/sched.h
 @@ -2186,6 +2186,14 @@ extern int sched_setscheduler(struct task_struct *, int,
diff --git a/debian/patches/features/all/rt/0305-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch b/debian/patches/features/all/rt/0305-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch
index 8a5676d..b03079c 100644
--- a/debian/patches/features/all/rt/0305-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch
+++ b/debian/patches/features/all/rt/0305-sched-workqueue-Only-wake-up-idle-workers-if-not-blo.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Mon, 18 Mar 2013 15:12:49 -0400
-Subject: [PATCH 305/374] sched/workqueue: Only wake up idle workers if not
+Subject: [PATCH 305/380] sched/workqueue: Only wake up idle workers if not
  blocked on sleeping spin lock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e612420855b2c67f8b10ca452cccfa4add5a17a3
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1f182981fda6d2ea9b836bea3931f20e8dceb7d2
 
 In -rt, most spin_locks() turn into mutexes. One of these spin_lock
 conversions is performed on the workqueue gcwq->lock. When the idle
@@ -24,10 +24,10 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 3 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index d61b3a4..15d413f 100644
+index 6f60a1fd6229..1dd49b98e25e 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4807,8 +4807,10 @@ static inline void sched_submit_work(struct task_struct *tsk)
+@@ -4808,8 +4808,10 @@ static inline void sched_submit_work(struct task_struct *tsk)
  	/*
  	 * If a worker went to sleep, notify and ask workqueue whether
  	 * it wants to wake up a task to maintain concurrency.
diff --git a/debian/patches/features/all/rt/0306-x86-mce-fix-mce-timer-interval.patch b/debian/patches/features/all/rt/0306-x86-mce-fix-mce-timer-interval.patch
index dedfede..76b71ef 100644
--- a/debian/patches/features/all/rt/0306-x86-mce-fix-mce-timer-interval.patch
+++ b/debian/patches/features/all/rt/0306-x86-mce-fix-mce-timer-interval.patch
@@ -1,7 +1,7 @@
 From: Mike Galbraith <bitbucket at online.de>
 Date: Wed, 29 May 2013 13:52:13 +0200
-Subject: [PATCH 306/374] x86/mce: fix mce timer interval
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=34982b146bd7d28c04454207a6f44b2666a99d0f
+Subject: [PATCH 306/380] x86/mce: fix mce timer interval
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=02a83ace5f569928019d3006fbe044de1438b1ea
 
 Seems mce timer fire at the wrong frequency in -rt kernels since roughly
 forever due to 32 bit overflow.  3.8-rt is also missing a multiplier.
@@ -18,7 +18,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
-index 8ceb100a..b08a373 100644
+index 8ceb100a3730..b08a373f66fb 100644
 --- a/arch/x86/kernel/cpu/mcheck/mce.c
 +++ b/arch/x86/kernel/cpu/mcheck/mce.c
 @@ -1139,7 +1139,7 @@ static enum hrtimer_restart mce_start_timer(struct hrtimer *timer)
diff --git a/debian/patches/features/all/rt/0307-genirq-Set-irq-thread-to-RT-priority-on-creation.patch b/debian/patches/features/all/rt/0307-genirq-Set-irq-thread-to-RT-priority-on-creation.patch
index b258bf5..30ca166 100644
--- a/debian/patches/features/all/rt/0307-genirq-Set-irq-thread-to-RT-priority-on-creation.patch
+++ b/debian/patches/features/all/rt/0307-genirq-Set-irq-thread-to-RT-priority-on-creation.patch
@@ -1,7 +1,7 @@
 From: Ivo Sieben <meltedpianoman at gmail.com>
 Date: Mon, 3 Jun 2013 10:12:02 +0000
-Subject: [PATCH 307/374] genirq: Set irq thread to RT priority on creation
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d6814f5fcb0590ec2905c1c6b266ffb1e8f28f47
+Subject: [PATCH 307/380] genirq: Set irq thread to RT priority on creation
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=bf196111b1aff0a14cd114cba75c8f8bd3b29115
 
 When a threaded irq handler is installed the irq thread is initially
 created on normal scheduling priority. Only after the irq thread is
@@ -25,7 +25,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 6 insertions(+), 4 deletions(-)
 
 diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index ed604da..8b484d8 100644
+index 5aef6e77f61a..834dbe6bde62 100644
 --- a/kernel/irq/manage.c
 +++ b/kernel/irq/manage.c
 @@ -783,9 +783,6 @@ static irqreturn_t irq_thread_fn(struct irq_desc *desc,
diff --git a/debian/patches/features/all/rt/0308-list_bl.h-make-list-head-locking-RT-safe.patch b/debian/patches/features/all/rt/0308-list_bl.h-make-list-head-locking-RT-safe.patch
index 3b4373a..a8ddcdc 100644
--- a/debian/patches/features/all/rt/0308-list_bl.h-make-list-head-locking-RT-safe.patch
+++ b/debian/patches/features/all/rt/0308-list_bl.h-make-list-head-locking-RT-safe.patch
@@ -1,7 +1,7 @@
 From: Paul Gortmaker <paul.gortmaker at windriver.com>
 Date: Fri, 21 Jun 2013 15:07:25 -0400
-Subject: [PATCH 308/374] list_bl.h: make list head locking RT safe
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=576644fb9b681dcf09cd83c1830b239c03cecfd1
+Subject: [PATCH 308/380] list_bl.h: make list head locking RT safe
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ae2e07f01fadb13b1fffdc1010fab0fdf538c7fa
 
 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
@@ -52,7 +52,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 22 insertions(+), 2 deletions(-)
 
 diff --git a/include/linux/list_bl.h b/include/linux/list_bl.h
-index 31f9d75..ddfd46a 100644
+index 31f9d75adc5b..ddfd46a88f93 100644
 --- a/include/linux/list_bl.h
 +++ b/include/linux/list_bl.h
 @@ -2,6 +2,7 @@
diff --git a/debian/patches/features/all/rt/0309-list_bl.h-fix-it-for-for-SMP-DEBUG_SPINLOCK.patch b/debian/patches/features/all/rt/0309-list_bl.h-fix-it-for-for-SMP-DEBUG_SPINLOCK.patch
index f7c65c8..806228a 100644
--- a/debian/patches/features/all/rt/0309-list_bl.h-fix-it-for-for-SMP-DEBUG_SPINLOCK.patch
+++ b/debian/patches/features/all/rt/0309-list_bl.h-fix-it-for-for-SMP-DEBUG_SPINLOCK.patch
@@ -1,10 +1,10 @@
 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= <u.kleine-koenig at pengutronix.de>
 Date: Tue, 9 Jul 2013 00:26:32 +0200
-Subject: [PATCH 309/374] list_bl.h: fix it for for !SMP && !DEBUG_SPINLOCK
+Subject: [PATCH 309/380] list_bl.h: fix it for for !SMP && !DEBUG_SPINLOCK
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b9d49171b78ed1e00dfc2242177a25e4abb17bdc
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=176c7c53fb7a511b0878caccd557567236e7020e
 
 The patch "list_bl.h: make list head locking RT safe" introduced
 an unconditional
@@ -36,7 +36,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 4 insertions(+)
 
 diff --git a/include/linux/list_bl.h b/include/linux/list_bl.h
-index ddfd46a..becd7a6 100644
+index ddfd46a88f93..becd7a61263f 100644
 --- a/include/linux/list_bl.h
 +++ b/include/linux/list_bl.h
 @@ -131,8 +131,10 @@ static inline void hlist_bl_lock(struct hlist_bl_head *b)
diff --git a/debian/patches/features/all/rt/0310-timers-prepare-for-full-preemption-improve.patch b/debian/patches/features/all/rt/0310-timers-prepare-for-full-preemption-improve.patch
index 8536da2..edc4af8 100644
--- a/debian/patches/features/all/rt/0310-timers-prepare-for-full-preemption-improve.patch
+++ b/debian/patches/features/all/rt/0310-timers-prepare-for-full-preemption-improve.patch
@@ -1,7 +1,7 @@
 From: Zhao Hongjiang <zhaohongjiang at huawei.com>
 Date: Wed, 17 Apr 2013 17:44:16 +0800
-Subject: [PATCH 310/374] timers: prepare for full preemption improve
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e1d1b46ad461df59752ca18e239195c7a420e237
+Subject: [PATCH 310/380] timers: prepare for full preemption improve
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=99d12a8da25ec86fce2a32c989aa26102a924a4c
 
 wake_up should do nothing on the nort, so we should use wakeup_timer_waiters,
 also fix a spell mistake.
@@ -15,7 +15,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 6 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/timer.c b/kernel/timer.c
-index 330565b..4fe22a0 100644
+index 330565ba33cc..4fe22a09578a 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -76,7 +76,9 @@ struct tvec_root {
diff --git a/debian/patches/features/all/rt/0311-kernel-cpu-fix-cpu-down-problem-if-kthread-s-cpu-is-.patch b/debian/patches/features/all/rt/0311-kernel-cpu-fix-cpu-down-problem-if-kthread-s-cpu-is-.patch
index 62def8c..24f4c6d 100644
--- a/debian/patches/features/all/rt/0311-kernel-cpu-fix-cpu-down-problem-if-kthread-s-cpu-is-.patch
+++ b/debian/patches/features/all/rt/0311-kernel-cpu-fix-cpu-down-problem-if-kthread-s-cpu-is-.patch
@@ -1,8 +1,8 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Fri, 7 Jun 2013 22:37:06 +0200
-Subject: [PATCH 311/374] kernel/cpu: fix cpu down problem if kthread's cpu is
+Subject: [PATCH 311/380] kernel/cpu: fix cpu down problem if kthread's cpu is
  going down
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a041f3d53f2e0909bbc7ce376b0fdc182d715011
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=144c4ab59d0c6ab4f3b1d5f05a64f303eb4aebe0
 
 If kthread is pinned to CPUx and CPUx is going down then we get into
 trouble:
@@ -28,7 +28,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 14 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index 5ef0c31..f56a8ec 100644
+index 5ef0c31cd0aa..f56a8ec77775 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -78,6 +78,7 @@ struct hotplug_pcp {
diff --git a/debian/patches/features/all/rt/0312-kernel-hotplug-restore-original-cpu-mask-oncpu-down.patch b/debian/patches/features/all/rt/0312-kernel-hotplug-restore-original-cpu-mask-oncpu-down.patch
index b757d96..41a88c4 100644
--- a/debian/patches/features/all/rt/0312-kernel-hotplug-restore-original-cpu-mask-oncpu-down.patch
+++ b/debian/patches/features/all/rt/0312-kernel-hotplug-restore-original-cpu-mask-oncpu-down.patch
@@ -1,7 +1,7 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Fri, 14 Jun 2013 17:16:35 +0200
-Subject: [PATCH 312/374] kernel/hotplug: restore original cpu mask oncpu/down
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=910d379fd1ad8302349f76490458407d2df41898
+Subject: [PATCH 312/380] kernel/hotplug: restore original cpu mask oncpu/down
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=397dc43e20f9735913aac707fe85af15de249562
 
 If a task which is allowed to run only on CPU X puts CPU Y down then it
 will be allowed on all CPUs but the on CPU Y after it comes back from
@@ -15,7 +15,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 12 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index f56a8ec..063c2bb 100644
+index f56a8ec77775..063c2bb01c76 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -518,6 +518,7 @@ static int __ref _cpu_down(unsigned int cpu, int tasks_frozen)
diff --git a/debian/patches/features/all/rt/0313-drm-i915-drop-trace_i915_gem_ring_dispatch-on-rt.patch b/debian/patches/features/all/rt/0313-drm-i915-drop-trace_i915_gem_ring_dispatch-on-rt.patch
index 670ff33..8e99fd9 100644
--- a/debian/patches/features/all/rt/0313-drm-i915-drop-trace_i915_gem_ring_dispatch-on-rt.patch
+++ b/debian/patches/features/all/rt/0313-drm-i915-drop-trace_i915_gem_ring_dispatch-on-rt.patch
@@ -1,7 +1,7 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Thu, 25 Apr 2013 18:12:52 +0200
-Subject: [PATCH 313/374] drm/i915: drop trace_i915_gem_ring_dispatch on rt
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=39dd25288c5eae33a8c4d3a910fa455cb1f421e1
+Subject: [PATCH 313/380] drm/i915: drop trace_i915_gem_ring_dispatch on rt
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3c87ab66415f36f7aadc83d7683e9469a293cd12
 
 This tracepoint is responsible for:
 
diff --git a/debian/patches/features/all/rt/0314-rt-ntp-Move-call-to-schedule_delayed_work-to-helper-.patch b/debian/patches/features/all/rt/0314-rt-ntp-Move-call-to-schedule_delayed_work-to-helper-.patch
index ae6e3d3..f6d35df 100644
--- a/debian/patches/features/all/rt/0314-rt-ntp-Move-call-to-schedule_delayed_work-to-helper-.patch
+++ b/debian/patches/features/all/rt/0314-rt-ntp-Move-call-to-schedule_delayed_work-to-helper-.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Wed, 26 Jun 2013 15:28:11 -0400
-Subject: [PATCH 314/374] rt,ntp: Move call to schedule_delayed_work() to
+Subject: [PATCH 314/380] rt,ntp: Move call to schedule_delayed_work() to
  helper thread
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3f59bbf5311bff6db352781451831e7abac853c4
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6596204f4241207305bad50b415996dc7ab45262
 
 The ntp code for notify_cmos_timer() is called from a hard interrupt
 context. schedule_delayed_work() under PREEMPT_RT_FULL calls spinlocks
@@ -26,7 +26,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 42 insertions(+)
 
 diff --git a/kernel/time/ntp.c b/kernel/time/ntp.c
-index 92d97a7..fa8fc3c 100644
+index 92d97a77be2e..fa8fc3c08204 100644
 --- a/kernel/time/ntp.c
 +++ b/kernel/time/ntp.c
 @@ -10,6 +10,7 @@
diff --git a/debian/patches/features/all/rt/0315-hwlat-detector-Update-hwlat_detector-to-add-outer-lo.patch b/debian/patches/features/all/rt/0315-hwlat-detector-Update-hwlat_detector-to-add-outer-lo.patch
index 81ce919..a078b2b 100644
--- a/debian/patches/features/all/rt/0315-hwlat-detector-Update-hwlat_detector-to-add-outer-lo.patch
+++ b/debian/patches/features/all/rt/0315-hwlat-detector-Update-hwlat_detector-to-add-outer-lo.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Mon, 19 Aug 2013 17:33:25 -0400
-Subject: [PATCH 315/374] hwlat-detector: Update hwlat_detector to add outer
+Subject: [PATCH 315/380] hwlat-detector: Update hwlat_detector to add outer
  loop detection
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c322e769c6db8ea41bb5aeb5a8548ec4917aa96d
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=13a116f630b9c520c62714a9a20f4b5fffcee39f
 
 The hwlat_detector reads two timestamps in a row, then reports any
 gap between those calls. The problem is, it misses everything between
@@ -48,7 +48,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 26 insertions(+), 6 deletions(-)
 
 diff --git a/drivers/misc/hwlat_detector.c b/drivers/misc/hwlat_detector.c
-index b7b7c90..f93b8ef 100644
+index b7b7c903f88d..f93b8ef7ec0f 100644
 --- a/drivers/misc/hwlat_detector.c
 +++ b/drivers/misc/hwlat_detector.c
 @@ -143,6 +143,7 @@ static void detector_exit(void);
diff --git a/debian/patches/features/all/rt/0316-hwlat-detect-trace-Export-trace_clock_local-for-hwla.patch b/debian/patches/features/all/rt/0316-hwlat-detect-trace-Export-trace_clock_local-for-hwla.patch
index 649c8eb..7742a38 100644
--- a/debian/patches/features/all/rt/0316-hwlat-detect-trace-Export-trace_clock_local-for-hwla.patch
+++ b/debian/patches/features/all/rt/0316-hwlat-detect-trace-Export-trace_clock_local-for-hwla.patch
@@ -1,8 +1,8 @@
 From: "Steven Rostedt (Red Hat)" <rostedt at goodmis.org>
 Date: Sat, 7 Sep 2013 20:54:31 -0400
-Subject: [PATCH 316/374] hwlat-detect/trace: Export trace_clock_local for
+Subject: [PATCH 316/380] hwlat-detect/trace: Export trace_clock_local for
  hwlat-detector
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=72834e0765e1f4315646fdda82539673ceef23f5
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=30b72580335386fc1a151454b8371fa9a546d0b7
 
 The hwlat-detector needs a better clock than just ktime_get() as that
 can induce its own latencies. The trace clock is perfect for it, but
@@ -14,7 +14,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 1 insertion(+)
 
 diff --git a/kernel/trace/trace_clock.c b/kernel/trace/trace_clock.c
-index 3947835..1bbb1b2 100644
+index 394783531cbb..1bbb1b200cec 100644
 --- a/kernel/trace/trace_clock.c
 +++ b/kernel/trace/trace_clock.c
 @@ -44,6 +44,7 @@ u64 notrace trace_clock_local(void)
diff --git a/debian/patches/features/all/rt/0317-hwlat-detector-Use-trace_clock_local-if-available.patch b/debian/patches/features/all/rt/0317-hwlat-detector-Use-trace_clock_local-if-available.patch
index e5438fa..26f69ea 100644
--- a/debian/patches/features/all/rt/0317-hwlat-detector-Use-trace_clock_local-if-available.patch
+++ b/debian/patches/features/all/rt/0317-hwlat-detector-Use-trace_clock_local-if-available.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Mon, 19 Aug 2013 17:33:26 -0400
-Subject: [PATCH 317/374] hwlat-detector: Use trace_clock_local if available
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0c39351f9fab54215631f7d019da05d6cbf2661a
+Subject: [PATCH 317/380] hwlat-detector: Use trace_clock_local if available
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c4132deb645b642eb0fdcb3cc5c70b7d17f20834
 
 As ktime_get() calls into the timing code which does a read_seq(), it
 may be affected by other CPUS that touch that lock. To remove this
@@ -17,7 +17,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 25 insertions(+), 9 deletions(-)
 
 diff --git a/drivers/misc/hwlat_detector.c b/drivers/misc/hwlat_detector.c
-index f93b8ef..13443e9 100644
+index f93b8ef7ec0f..13443e9a3452 100644
 --- a/drivers/misc/hwlat_detector.c
 +++ b/drivers/misc/hwlat_detector.c
 @@ -51,6 +51,7 @@
diff --git a/debian/patches/features/all/rt/0318-hwlat-detector-Use-thread-instead-of-stop-machine.patch b/debian/patches/features/all/rt/0318-hwlat-detector-Use-thread-instead-of-stop-machine.patch
index 321e4a2..ac52788 100644
--- a/debian/patches/features/all/rt/0318-hwlat-detector-Use-thread-instead-of-stop-machine.patch
+++ b/debian/patches/features/all/rt/0318-hwlat-detector-Use-thread-instead-of-stop-machine.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Mon, 19 Aug 2013 17:33:27 -0400
-Subject: [PATCH 318/374] hwlat-detector: Use thread instead of stop machine
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=60c07b1772807de50cb81944130ce203da613548
+Subject: [PATCH 318/380] hwlat-detector: Use thread instead of stop machine
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b3a3ca58de016e5ee597979a596357b6e141c74f
 
 There's no reason to use stop machine to search for hardware latency.
 Simply disabling interrupts while running the loop will do enough to
@@ -19,7 +19,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 25 insertions(+), 34 deletions(-)
 
 diff --git a/drivers/misc/hwlat_detector.c b/drivers/misc/hwlat_detector.c
-index 13443e9..6f61d5f 100644
+index 13443e9a3452..6f61d5fb3afb 100644
 --- a/drivers/misc/hwlat_detector.c
 +++ b/drivers/misc/hwlat_detector.c
 @@ -41,7 +41,6 @@
diff --git a/debian/patches/features/all/rt/0319-genirq-do-not-invoke-the-affinity-callback-via-a-wor.patch b/debian/patches/features/all/rt/0319-genirq-do-not-invoke-the-affinity-callback-via-a-wor.patch
index aeea611..49dd55c 100644
--- a/debian/patches/features/all/rt/0319-genirq-do-not-invoke-the-affinity-callback-via-a-wor.patch
+++ b/debian/patches/features/all/rt/0319-genirq-do-not-invoke-the-affinity-callback-via-a-wor.patch
@@ -1,8 +1,8 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Wed, 21 Aug 2013 17:48:46 +0200
-Subject: [PATCH 319/374] genirq: do not invoke the affinity callback via a
+Subject: [PATCH 319/380] genirq: do not invoke the affinity callback via a
  workqueue
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f3e3d16f3e79d3bfe51db93f797834195814056f
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6ba037c3804b00555017467d16a7c7c2df823c83
 
 Joe Korty reported, that __irq_set_affinity_locked() schedules a
 workqueue while holding a rawlock which results in a might_sleep()
@@ -18,7 +18,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  2 files changed, 77 insertions(+), 3 deletions(-)
 
 diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index f70a65b..42f79fb 100644
+index f70a65b2a051..42f79fbd851a 100644
 --- a/include/linux/interrupt.h
 +++ b/include/linux/interrupt.h
 @@ -271,6 +271,7 @@ struct irq_affinity_notify {
@@ -30,7 +30,7 @@ index f70a65b..42f79fb 100644
  	void (*release)(struct kref *ref);
  };
 diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index 8b484d8..200df86 100644
+index 834dbe6bde62..b7d847f8b0ee 100644
 --- a/kernel/irq/manage.c
 +++ b/kernel/irq/manage.c
 @@ -141,6 +141,62 @@ static inline void
diff --git a/debian/patches/features/all/rt/0320-genirq-Set-the-irq-thread-policy-without-checking-CA.patch b/debian/patches/features/all/rt/0320-genirq-Set-the-irq-thread-policy-without-checking-CA.patch
index 5b6dc13..403462a 100644
--- a/debian/patches/features/all/rt/0320-genirq-Set-the-irq-thread-policy-without-checking-CA.patch
+++ b/debian/patches/features/all/rt/0320-genirq-Set-the-irq-thread-policy-without-checking-CA.patch
@@ -1,8 +1,8 @@
 From: Thomas Pfaff <tpfaff at pcs.com>
 Date: Fri, 11 Oct 2013 12:42:49 +0200
-Subject: [PATCH 320/374] genirq: Set the irq thread policy without checking
+Subject: [PATCH 320/380] genirq: Set the irq thread policy without checking
  CAP_SYS_NICE
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c96c390cb4a6bba33c6ddb63ba8068d05f936a67
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6917415022ffc4d3483caa5c0dd31d0abae3e0ac
 
 In commit ee23871389 ("genirq: Set irq thread to RT priority on
 creation") we moved the assigment of the thread's priority from the
@@ -27,7 +27,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index 200df86..e4549b2 100644
+index b7d847f8b0ee..c4677795d7c8 100644
 --- a/kernel/irq/manage.c
 +++ b/kernel/irq/manage.c
 @@ -1041,7 +1041,7 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new)
diff --git a/debian/patches/features/all/rt/0321-hwlat-detector-Don-t-ignore-threshold-module-paramet.patch b/debian/patches/features/all/rt/0321-hwlat-detector-Don-t-ignore-threshold-module-paramet.patch
index bb62986..a71f54a 100644
--- a/debian/patches/features/all/rt/0321-hwlat-detector-Don-t-ignore-threshold-module-paramet.patch
+++ b/debian/patches/features/all/rt/0321-hwlat-detector-Don-t-ignore-threshold-module-paramet.patch
@@ -1,8 +1,8 @@
 From: Mike Galbraith <bitbucket at online.de>
 Date: Fri, 30 Aug 2013 07:57:25 +0200
-Subject: [PATCH 321/374] hwlat-detector: Don't ignore threshold module
+Subject: [PATCH 321/380] hwlat-detector: Don't ignore threshold module
  parameter
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ce4d5dd18d57eb62d2c1535da8a789c35854347a
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5c49890f74cdef54c9e1f063c8a034c9f6c54927
 
 If the user specified a threshold at module load time, use it.
 
@@ -16,7 +16,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/drivers/misc/hwlat_detector.c b/drivers/misc/hwlat_detector.c
-index 6f61d5f..d2676b8 100644
+index 6f61d5fb3afb..d2676b867e41 100644
 --- a/drivers/misc/hwlat_detector.c
 +++ b/drivers/misc/hwlat_detector.c
 @@ -413,7 +413,7 @@ static int init_stats(void)
diff --git a/debian/patches/features/all/rt/0322-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch b/debian/patches/features/all/rt/0322-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch
index 99476e4..5d517b8 100644
--- a/debian/patches/features/all/rt/0322-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch
+++ b/debian/patches/features/all/rt/0322-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch
@@ -1,8 +1,8 @@
 From: Yang Shi <yang.shi at windriver.com>
 Date: Wed, 30 Oct 2013 11:48:33 -0700
-Subject: [PATCH 322/374] mm/memcontrol: Don't call schedule_work_on in
+Subject: [PATCH 322/380] mm/memcontrol: Don't call schedule_work_on in
  preemption disabled context
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0eb985e94ad5db68c7a4c8f541b4622d999eb1f5
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=595f1c19b1f69c319521e67215129209498e4bef
 
 The following trace is triggered when running ltp oom test cases:
 
@@ -49,7 +49,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/mm/memcontrol.c b/mm/memcontrol.c
-index f8bdd8d..df84f45 100644
+index 95455f479ca4..0a90549c15a3 100644
 --- a/mm/memcontrol.c
 +++ b/mm/memcontrol.c
 @@ -2077,7 +2077,7 @@ static void drain_all_stock(struct mem_cgroup *root_memcg, bool sync)
diff --git a/debian/patches/features/all/rt/0323-drm-remove-preempt_disable-from-drm_calc_vbltimestam.patch b/debian/patches/features/all/rt/0323-drm-remove-preempt_disable-from-drm_calc_vbltimestam.patch
index c9536c8..0c6b6d4 100644
--- a/debian/patches/features/all/rt/0323-drm-remove-preempt_disable-from-drm_calc_vbltimestam.patch
+++ b/debian/patches/features/all/rt/0323-drm-remove-preempt_disable-from-drm_calc_vbltimestam.patch
@@ -1,8 +1,8 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Fri, 11 Oct 2013 17:14:31 +0200
-Subject: [PATCH 323/374] drm: remove preempt_disable() from
+Subject: [PATCH 323/380] drm: remove preempt_disable() from
  drm_calc_vbltimestamp_from_scanoutpos()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e7fc95d76972fe3d758a4903e52db6bb8e341003
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c60eccee94d5a5aa45515e1db2d80dd39eb2503a
 
 Luis captured the following:
 
@@ -54,7 +54,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 7 deletions(-)
 
 diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
-index 73af885..2b13224 100644
+index 73af885e45d5..2b1322429079 100644
 --- a/drivers/gpu/drm/drm_irq.c
 +++ b/drivers/gpu/drm/drm_irq.c
 @@ -619,11 +619,6 @@ int drm_calc_vbltimestamp_from_scanoutpos(struct drm_device *dev, int crtc,
diff --git a/debian/patches/features/all/rt/0324-cpu_down-move-migrate_enable-back.patch b/debian/patches/features/all/rt/0324-cpu_down-move-migrate_enable-back.patch
index 49079ef..19784c9 100644
--- a/debian/patches/features/all/rt/0324-cpu_down-move-migrate_enable-back.patch
+++ b/debian/patches/features/all/rt/0324-cpu_down-move-migrate_enable-back.patch
@@ -1,7 +1,7 @@
 From: Tiejun Chen <tiejun.chen at windriver.com>
 Date: Thu, 7 Nov 2013 10:06:07 +0800
-Subject: [PATCH 324/374] cpu_down: move migrate_enable() back
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=63d14c4bcaaceb42af5819c1ce6add4324c7135f
+Subject: [PATCH 324/380] cpu_down: move migrate_enable() back
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=04569469d8b0f8a6049b47d039dac5a50bd2c9ed
 
 Commit 08c1ab68, "hotplug-use-migrate-disable.patch", intends to
 use migrate_enable()/migrate_disable() to replace that combination
@@ -35,7 +35,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kernel/cpu.c b/kernel/cpu.c
-index 063c2bb..031c644 100644
+index 063c2bb01c76..031c64436436 100644
 --- a/kernel/cpu.c
 +++ b/kernel/cpu.c
 @@ -546,6 +546,7 @@ static int __ref _cpu_down(unsigned int cpu, int tasks_frozen)
diff --git a/debian/patches/features/all/rt/0325-swait-Add-a-few-more-users.patch b/debian/patches/features/all/rt/0325-swait-Add-a-few-more-users.patch
index f29fb4c..1c3df1b 100644
--- a/debian/patches/features/all/rt/0325-swait-Add-a-few-more-users.patch
+++ b/debian/patches/features/all/rt/0325-swait-Add-a-few-more-users.patch
@@ -1,7 +1,7 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Mon, 28 Oct 2013 11:50:06 +0100
-Subject: [PATCH 325/374] swait: Add a few more users
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=479878012ba8ed4ce66641bbdcbb2c9e3ef814de
+Subject: [PATCH 325/380] swait: Add a few more users
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3d21084ce3dce46b93945ddb99d07de8823b3679
 
 The wait-simple queue is lighter weight and more efficient than the full
 wait queue, and may be used in atomic context on PREEMPT_RT.
@@ -19,7 +19,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  3 files changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/drivers/net/wireless/orinoco/orinoco_usb.c b/drivers/net/wireless/orinoco/orinoco_usb.c
-index 0793e42..d45833f 100644
+index 0793e4265b43..d45833f9cf82 100644
 --- a/drivers/net/wireless/orinoco/orinoco_usb.c
 +++ b/drivers/net/wireless/orinoco/orinoco_usb.c
 @@ -714,7 +714,7 @@ static void ezusb_req_ctx_wait(struct ezusb_priv *upriv,
@@ -32,7 +32,7 @@ index 0793e42..d45833f 100644
  		}
  		break;
 diff --git a/drivers/usb/gadget/f_fs.c b/drivers/usb/gadget/f_fs.c
-index c635c4c..64c6aab 100644
+index c635c4c22284..64c6aabeb38c 100644
 --- a/drivers/usb/gadget/f_fs.c
 +++ b/drivers/usb/gadget/f_fs.c
 @@ -1270,7 +1270,7 @@ static void ffs_data_put(struct ffs_data *ffs)
@@ -45,7 +45,7 @@ index c635c4c..64c6aab 100644
  	}
  }
 diff --git a/drivers/usb/gadget/inode.c b/drivers/usb/gadget/inode.c
-index ce7253b..dfa90f1 100644
+index ce7253bfaa95..dfa90f187ff2 100644
 --- a/drivers/usb/gadget/inode.c
 +++ b/drivers/usb/gadget/inode.c
 @@ -339,7 +339,7 @@ ep_io (struct ep_data *epdata, void *buf, unsigned len)
diff --git a/debian/patches/features/all/rt/0326-lockdep-Correctly-annotate-hardirq-context-in-irq_ex.patch b/debian/patches/features/all/rt/0326-lockdep-Correctly-annotate-hardirq-context-in-irq_ex.patch
index 61240ad..52677c8 100644
--- a/debian/patches/features/all/rt/0326-lockdep-Correctly-annotate-hardirq-context-in-irq_ex.patch
+++ b/debian/patches/features/all/rt/0326-lockdep-Correctly-annotate-hardirq-context-in-irq_ex.patch
@@ -1,8 +1,8 @@
 From: Peter Zijlstra <peterz at infradead.org>
 Date: Tue, 19 Nov 2013 16:42:47 +0100
-Subject: [PATCH 326/374] lockdep: Correctly annotate hardirq context in
+Subject: [PATCH 326/380] lockdep: Correctly annotate hardirq context in
  irq_exit()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3cc9eada8caa08d671cef2df802af530743c4c1b
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=957540cdfad5ae2a9c5bb884a8cbc9edd97e36e6
 
 There was a reported deadlock on -rt which lockdep didn't report.
 
@@ -42,7 +42,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 44 insertions(+), 5 deletions(-)
 
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index def1098..29936bd 100644
+index def10987e357..29936bd40ef6 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -302,6 +302,44 @@ EXPORT_SYMBOL(local_bh_enable_ip);
diff --git a/debian/patches/features/all/rt/0327-rtmutex-use-a-trylock-for-waiter-lock-in-trylock.patch b/debian/patches/features/all/rt/0327-rtmutex-use-a-trylock-for-waiter-lock-in-trylock.patch
index c21bc10..3d3b99d 100644
--- a/debian/patches/features/all/rt/0327-rtmutex-use-a-trylock-for-waiter-lock-in-trylock.patch
+++ b/debian/patches/features/all/rt/0327-rtmutex-use-a-trylock-for-waiter-lock-in-trylock.patch
@@ -1,7 +1,7 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Fri, 15 Nov 2013 15:46:50 +0100
-Subject: [PATCH 327/374] rtmutex: use a trylock for waiter lock in trylock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=423bcea6b86fa5359303031b90266d36b3c366d6
+Subject: [PATCH 327/380] rtmutex: use a trylock for waiter lock in trylock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=54556ea791a128596b27c5145125da2dbbbe016c
 
 Mike Galbraith captered the following:
 | >#11 [ffff88017b243e90] _raw_spin_lock at ffffffff815d2596
@@ -40,7 +40,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  3 files changed, 29 insertions(+), 5 deletions(-)
 
 diff --git a/include/linux/spinlock_rt.h b/include/linux/spinlock_rt.h
-index 3b555b4..28edba7 100644
+index 3b555b4b52cf..28edba7a833c 100644
 --- a/include/linux/spinlock_rt.h
 +++ b/include/linux/spinlock_rt.h
 @@ -20,6 +20,7 @@ extern void __lockfunc rt_spin_lock(spinlock_t *lock);
@@ -52,7 +52,7 @@ index 3b555b4..28edba7 100644
  extern int __lockfunc rt_spin_trylock_irqsave(spinlock_t *lock, unsigned long *flags);
  extern int __lockfunc rt_spin_trylock_bh(spinlock_t *lock);
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 7e0c4d7a..744d41f 100644
+index 7e0c4d7a0b5b..744d41f038a2 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -951,10 +951,8 @@ static void  noinline __sched rt_spin_lock_slowlock(struct rt_mutex *lock)
@@ -116,7 +116,7 @@ index 7e0c4d7a..744d41f 100644
  
  	if (likely(rt_mutex_owner(lock) != current)) {
 diff --git a/kernel/timer.c b/kernel/timer.c
-index 4fe22a0..badd2d2 100644
+index 4fe22a09578a..badd2d2066dc 100644
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
 @@ -1336,7 +1336,7 @@ unsigned long get_next_timer_interrupt(unsigned long now)
diff --git a/debian/patches/features/all/rt/0328-smp-introduce-a-generic-on_each_cpu_mask-function.patch b/debian/patches/features/all/rt/0328-smp-introduce-a-generic-on_each_cpu_mask-function.patch
index bc0fbac..e67bc59 100644
--- a/debian/patches/features/all/rt/0328-smp-introduce-a-generic-on_each_cpu_mask-function.patch
+++ b/debian/patches/features/all/rt/0328-smp-introduce-a-generic-on_each_cpu_mask-function.patch
@@ -1,7 +1,7 @@
 From: Gilad Ben-Yossef <gilad at benyossef.com>
 Date: Wed, 28 Mar 2012 14:42:43 -0700
-Subject: [PATCH 328/374] smp: introduce a generic on_each_cpu_mask() function
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b0b31659c7b7699d84908496953e269168a39cb0
+Subject: [PATCH 328/380] smp: introduce a generic on_each_cpu_mask() function
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=96c0593a40e8b60aa05f6a83d80ea570c0e96548
 
 [ Upstream commit 3fc498f165304dc913f1d13b5ac9ab4c758ee7ab ]
 
@@ -84,7 +84,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  5 files changed, 56 insertions(+), 41 deletions(-)
 
 diff --git a/arch/arm/kernel/smp_tlb.c b/arch/arm/kernel/smp_tlb.c
-index 7dcb352..02c5d2c 100644
+index 7dcb35285be7..02c5d2ce23bf 100644
 --- a/arch/arm/kernel/smp_tlb.c
 +++ b/arch/arm/kernel/smp_tlb.c
 @@ -13,18 +13,6 @@
@@ -136,7 +136,7 @@ index 7dcb352..02c5d2c 100644
  		local_flush_tlb_range(vma, start, end);
  }
 diff --git a/arch/tile/include/asm/smp.h b/arch/tile/include/asm/smp.h
-index 532124a..1aa759a 100644
+index 532124ae4b12..1aa759aeb5b3 100644
 --- a/arch/tile/include/asm/smp.h
 +++ b/arch/tile/include/asm/smp.h
 @@ -43,10 +43,6 @@ void evaluate_message(int tag);
@@ -161,7 +161,7 @@ index 532124a..1aa759a 100644
  #define smp_height		1
  #define smp_width		1
 diff --git a/arch/tile/kernel/smp.c b/arch/tile/kernel/smp.c
-index c52224d..a44e103 100644
+index c52224d5ed45..a44e103c5a63 100644
 --- a/arch/tile/kernel/smp.c
 +++ b/arch/tile/kernel/smp.c
 @@ -87,25 +87,6 @@ void send_IPI_allbutself(int tag)
@@ -191,7 +191,7 @@ index c52224d..a44e103 100644
   * Functions related to starting/stopping cpus.
   */
 diff --git a/include/linux/smp.h b/include/linux/smp.h
-index 78fd0a2..742a45a 100644
+index 78fd0a26fa05..742a45a781ce 100644
 --- a/include/linux/smp.h
 +++ b/include/linux/smp.h
 @@ -101,6 +101,13 @@ static inline void call_function_init(void) { }
@@ -231,7 +231,7 @@ index 78fd0a2..742a45a 100644
  #define num_booting_cpus()			1
  #define smp_prepare_boot_cpu()			do {} while (0)
 diff --git a/kernel/smp.c b/kernel/smp.c
-index 9e800b2..7b4e359 100644
+index 9e800b27637d..7b4e35984b7c 100644
 --- a/kernel/smp.c
 +++ b/kernel/smp.c
 @@ -712,3 +712,32 @@ int on_each_cpu(void (*func) (void *info), void *info, int wait)
diff --git a/debian/patches/features/all/rt/0329-smp-add-func-to-IPI-cpus-based-on-parameter-func.patch b/debian/patches/features/all/rt/0329-smp-add-func-to-IPI-cpus-based-on-parameter-func.patch
index f8999b1..1a520aa 100644
--- a/debian/patches/features/all/rt/0329-smp-add-func-to-IPI-cpus-based-on-parameter-func.patch
+++ b/debian/patches/features/all/rt/0329-smp-add-func-to-IPI-cpus-based-on-parameter-func.patch
@@ -1,7 +1,7 @@
 From: Gilad Ben-Yossef <gilad at benyossef.com>
 Date: Wed, 28 Mar 2012 14:42:43 -0700
-Subject: [PATCH 329/374] smp: add func to IPI cpus based on parameter func
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=194599c370f001b053dc0ccd0b4a4416bc950224
+Subject: [PATCH 329/380] smp: add func to IPI cpus based on parameter func
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=574255d49ca080d8bea7a35321b34cdb168c03bf
 
 [ Upstream commit b3a7e98e024ffa9f7e4554dd720c508015c4a831 ]
 
@@ -47,7 +47,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  2 files changed, 85 insertions(+)
 
 diff --git a/include/linux/smp.h b/include/linux/smp.h
-index 742a45a..3001ba5 100644
+index 742a45a781ce..3001ba51376b 100644
 --- a/include/linux/smp.h
 +++ b/include/linux/smp.h
 @@ -108,6 +108,15 @@ void on_each_cpu_mask(const struct cpumask *mask, smp_call_func_t func,
@@ -89,7 +89,7 @@ index 742a45a..3001ba5 100644
  static inline void smp_send_reschedule(int cpu) { }
  #define num_booting_cpus()			1
 diff --git a/kernel/smp.c b/kernel/smp.c
-index 7b4e359..d5f3238 100644
+index 7b4e35984b7c..d5f3238ec458 100644
 --- a/kernel/smp.c
 +++ b/kernel/smp.c
 @@ -741,3 +741,64 @@ void on_each_cpu_mask(const struct cpumask *mask, smp_call_func_t func,
diff --git a/debian/patches/features/all/rt/0330-fs-only-send-IPI-to-invalidate-LRU-BH-when-needed.patch b/debian/patches/features/all/rt/0330-fs-only-send-IPI-to-invalidate-LRU-BH-when-needed.patch
index 33cd078..2792f98 100644
--- a/debian/patches/features/all/rt/0330-fs-only-send-IPI-to-invalidate-LRU-BH-when-needed.patch
+++ b/debian/patches/features/all/rt/0330-fs-only-send-IPI-to-invalidate-LRU-BH-when-needed.patch
@@ -1,7 +1,7 @@
 From: Gilad Ben-Yossef <gilad at benyossef.com>
 Date: Wed, 28 Mar 2012 14:42:45 -0700
-Subject: [PATCH 330/374] fs: only send IPI to invalidate LRU BH when needed
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0e2eadea7e9a48422510a12ddcc64440043dc544
+Subject: [PATCH 330/380] fs: only send IPI to invalidate LRU BH when needed
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=83b267ac7a8d40b0400456d4b92e54fd91ba41dc
 
 [ Upstream commit 42be35d0390b966253136a285f507f5ad00fd9e8 ]
 
@@ -29,7 +29,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 14 insertions(+), 1 deletion(-)
 
 diff --git a/fs/buffer.c b/fs/buffer.c
-index 1797c7c..896adf2 100644
+index 1797c7cf4ba4..896adf25f45f 100644
 --- a/fs/buffer.c
 +++ b/fs/buffer.c
 @@ -1436,10 +1436,23 @@ static void invalidate_bh_lru(void *arg)
diff --git a/debian/patches/features/all/rt/0331-rcutree-rcu_bh_qs-disable-irq-while-calling-rcu_pree.patch b/debian/patches/features/all/rt/0331-rcutree-rcu_bh_qs-disable-irq-while-calling-rcu_pree.patch
index f6e27da..fb667e0 100644
--- a/debian/patches/features/all/rt/0331-rcutree-rcu_bh_qs-disable-irq-while-calling-rcu_pree.patch
+++ b/debian/patches/features/all/rt/0331-rcutree-rcu_bh_qs-disable-irq-while-calling-rcu_pree.patch
@@ -1,8 +1,8 @@
 From: Tiejun Chen <tiejun.chen at windriver.com>
 Date: Wed, 18 Dec 2013 17:51:49 +0800
-Subject: [PATCH 331/374] rcutree/rcu_bh_qs: disable irq while calling
+Subject: [PATCH 331/380] rcutree/rcu_bh_qs: disable irq while calling
  rcu_preempt_qs()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d3b46dd746ec2e8d1549b7c8958b2526fb183d91
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6409d39e9025d2d20c0d2258dcce06cf580a02ea
 
 Any callers to the function rcu_preempt_qs() must disable irqs in
 order to protect the assignment to ->rcu_read_unlock_special. In
@@ -35,7 +35,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 5 insertions(+)
 
 diff --git a/kernel/rcutree.c b/kernel/rcutree.c
-index 82c2224..6c2ec2d 100644
+index 82c22240ca54..6c2ec2d8dd5c 100644
 --- a/kernel/rcutree.c
 +++ b/kernel/rcutree.c
 @@ -175,7 +175,12 @@ static void rcu_preempt_qs(int cpu);
diff --git a/debian/patches/features/all/rt/0332-rt-Make-cpu_chill-use-hrtimer-instead-of-msleep.patch b/debian/patches/features/all/rt/0332-rt-Make-cpu_chill-use-hrtimer-instead-of-msleep.patch
index 5b1c96d..f1e59a2 100644
--- a/debian/patches/features/all/rt/0332-rt-Make-cpu_chill-use-hrtimer-instead-of-msleep.patch
+++ b/debian/patches/features/all/rt/0332-rt-Make-cpu_chill-use-hrtimer-instead-of-msleep.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Wed, 5 Feb 2014 11:51:25 -0500
-Subject: [PATCH 332/374] rt: Make cpu_chill() use hrtimer instead of msleep()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=92d192d96dcc3173a9e9a668ea3c910aee497358
+Subject: [PATCH 332/380] rt: Make cpu_chill() use hrtimer instead of msleep()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a4f7948ca9960367aac0a5dccfd07d03ba5fea0e
 
 Ulrich Obergfell pointed out that cpu_chill() calls msleep() which is woken
 up by the ksoftirqd running the TIMER softirq. But as the cpu_chill() is
@@ -53,7 +53,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  2 files changed, 16 insertions(+), 1 deletion(-)
 
 diff --git a/include/linux/delay.h b/include/linux/delay.h
-index e23a7c0..37caab3 100644
+index e23a7c021eeb..37caab306336 100644
 --- a/include/linux/delay.h
 +++ b/include/linux/delay.h
 @@ -53,7 +53,7 @@ static inline void ssleep(unsigned int seconds)
@@ -66,7 +66,7 @@ index e23a7c0..37caab3 100644
  # define cpu_chill()	cpu_relax()
  #endif
 diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index ec3b5e7..7b905ab 100644
+index ec3b5e7cbd4d..7b905ab038e5 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
 @@ -1875,6 +1875,21 @@ SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp,
diff --git a/debian/patches/features/all/rt/0333-kernel-hrtimer-be-non-freezeable-in-cpu_chill.patch b/debian/patches/features/all/rt/0333-kernel-hrtimer-be-non-freezeable-in-cpu_chill.patch
index f635093..5030f55 100644
--- a/debian/patches/features/all/rt/0333-kernel-hrtimer-be-non-freezeable-in-cpu_chill.patch
+++ b/debian/patches/features/all/rt/0333-kernel-hrtimer-be-non-freezeable-in-cpu_chill.patch
@@ -1,7 +1,7 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Wed, 19 Feb 2014 11:56:06 +0100
-Subject: [PATCH 333/374] kernel/hrtimer: be non-freezeable in cpu_chill()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1e9029911e42738f37e651f4c34bbfb3c20d2858
+Subject: [PATCH 333/380] kernel/hrtimer: be non-freezeable in cpu_chill()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=565a63e187b284fda8dd1bfd4044a8017ccc91cf
 
 Since we replaced msleep() by hrtimer I see now and then (rarely) this:
 
@@ -43,7 +43,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 4 insertions(+)
 
 diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index 7b905ab..1eefb45 100644
+index 7b905ab038e5..1eefb451e172 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
 @@ -1884,8 +1884,12 @@ void cpu_chill(void)
diff --git a/debian/patches/features/all/rt/0334-arm-unwind-use-a-raw_spin_lock.patch b/debian/patches/features/all/rt/0334-arm-unwind-use-a-raw_spin_lock.patch
index 7e02f30..0e64a12 100644
--- a/debian/patches/features/all/rt/0334-arm-unwind-use-a-raw_spin_lock.patch
+++ b/debian/patches/features/all/rt/0334-arm-unwind-use-a-raw_spin_lock.patch
@@ -1,7 +1,7 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Fri, 20 Sep 2013 14:31:54 +0200
-Subject: [PATCH 334/374] arm/unwind: use a raw_spin_lock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=64e8c8cf5815e56fd28e1ebe8e0f3d6900b694b2
+Subject: [PATCH 334/380] arm/unwind: use a raw_spin_lock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=be8573e9a6ee85d7372cff648c0d2f06f762a98b
 
 Mostly unwind is done with irqs enabled however SLUB may call it with
 irqs disabled while creating a new SLUB cache.
@@ -31,7 +31,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 7 insertions(+), 7 deletions(-)
 
 diff --git a/arch/arm/kernel/unwind.c b/arch/arm/kernel/unwind.c
-index 00df012..bbafc67 100644
+index 00df012c4678..bbafc675c015 100644
 --- a/arch/arm/kernel/unwind.c
 +++ b/arch/arm/kernel/unwind.c
 @@ -87,7 +87,7 @@ extern const struct unwind_idx __start_unwind_idx[];
diff --git a/debian/patches/features/all/rt/0335-Revert-swait-Add-a-few-more-users.patch b/debian/patches/features/all/rt/0335-Revert-swait-Add-a-few-more-users.patch
index ed6d9ae..1a5052a 100644
--- a/debian/patches/features/all/rt/0335-Revert-swait-Add-a-few-more-users.patch
+++ b/debian/patches/features/all/rt/0335-Revert-swait-Add-a-few-more-users.patch
@@ -1,7 +1,7 @@
 From: "Steven Rostedt (Red Hat)" <rostedt at goodmis.org>
 Date: Tue, 11 Mar 2014 11:57:32 -0400
-Subject: [PATCH 335/374] Revert "swait: Add a few more users"
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=e43e603ef415ab0571c74ffc69bb4920cefc9a55
+Subject: [PATCH 335/380] Revert "swait: Add a few more users"
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3a6507923f545ee46875abd0a326d882f11abf7a
 
 This reverts commit 916c8d2de3c4759f57426fa3cfee63b491e88939.
 
@@ -19,7 +19,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  3 files changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/drivers/net/wireless/orinoco/orinoco_usb.c b/drivers/net/wireless/orinoco/orinoco_usb.c
-index d45833f..0793e42 100644
+index d45833f9cf82..0793e4265b43 100644
 --- a/drivers/net/wireless/orinoco/orinoco_usb.c
 +++ b/drivers/net/wireless/orinoco/orinoco_usb.c
 @@ -714,7 +714,7 @@ static void ezusb_req_ctx_wait(struct ezusb_priv *upriv,
@@ -32,7 +32,7 @@ index d45833f..0793e42 100644
  		}
  		break;
 diff --git a/drivers/usb/gadget/f_fs.c b/drivers/usb/gadget/f_fs.c
-index 64c6aab..c635c4c 100644
+index 64c6aabeb38c..c635c4c22284 100644
 --- a/drivers/usb/gadget/f_fs.c
 +++ b/drivers/usb/gadget/f_fs.c
 @@ -1270,7 +1270,7 @@ static void ffs_data_put(struct ffs_data *ffs)
@@ -45,7 +45,7 @@ index 64c6aab..c635c4c 100644
  	}
  }
 diff --git a/drivers/usb/gadget/inode.c b/drivers/usb/gadget/inode.c
-index dfa90f1..ce7253b 100644
+index dfa90f187ff2..ce7253bfaa95 100644
 --- a/drivers/usb/gadget/inode.c
 +++ b/drivers/usb/gadget/inode.c
 @@ -339,7 +339,7 @@ ep_io (struct ep_data *epdata, void *buf, unsigned len)
diff --git a/debian/patches/features/all/rt/0336-net-sched-dev_deactivate_many-use-msleep-1-instead-o.patch b/debian/patches/features/all/rt/0336-net-sched-dev_deactivate_many-use-msleep-1-instead-o.patch
index 35c0632..9a5bb1f 100644
--- a/debian/patches/features/all/rt/0336-net-sched-dev_deactivate_many-use-msleep-1-instead-o.patch
+++ b/debian/patches/features/all/rt/0336-net-sched-dev_deactivate_many-use-msleep-1-instead-o.patch
@@ -1,8 +1,8 @@
 From: Marc Kleine-Budde <mkl at pengutronix.de>
 Date: Wed, 5 Mar 2014 00:49:47 +0100
-Subject: [PATCH 336/374] net: sched: dev_deactivate_many(): use msleep(1)
+Subject: [PATCH 336/380] net: sched: dev_deactivate_many(): use msleep(1)
  instead of yield() to wait for outstanding qdisc_run calls
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b266b6af05a3e76ace783c8f1f3f6f56009b01e5
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8b2456c28b1c0c58d35ea10d0c24f417829eec20
 
 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
@@ -47,7 +47,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c
-index 69fca27..9ede52e 100644
+index 69fca2798804..9ede52e93f58 100644
 --- a/net/sched/sch_generic.c
 +++ b/net/sched/sch_generic.c
 @@ -847,7 +847,7 @@ void dev_deactivate_many(struct list_head *head)
diff --git a/debian/patches/features/all/rt/0337-fs-jbd2-pull-your-plug-when-waiting-for-space.patch b/debian/patches/features/all/rt/0337-fs-jbd2-pull-your-plug-when-waiting-for-space.patch
index 516945c..40ad289 100644
--- a/debian/patches/features/all/rt/0337-fs-jbd2-pull-your-plug-when-waiting-for-space.patch
+++ b/debian/patches/features/all/rt/0337-fs-jbd2-pull-your-plug-when-waiting-for-space.patch
@@ -1,7 +1,7 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Mon, 17 Feb 2014 17:30:03 +0100
-Subject: [PATCH 337/374] fs: jbd2: pull your plug when waiting for space
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=57f759cd8b729091d1b0a5d118ebcd47e4cd5398
+Subject: [PATCH 337/380] fs: jbd2: pull your plug when waiting for space
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2d6949261abbdbfccdb6206a91095b9e6c31c553
 
 Two cps in parallel managed to stall the the ext4 fs. It seems that
 journal code is either waiting for locks or sleeping waiting for
@@ -20,7 +20,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 2 insertions(+)
 
 diff --git a/fs/jbd2/checkpoint.c b/fs/jbd2/checkpoint.c
-index e84393f..5cc7f08 100644
+index e84393f673b9..5cc7f08ba5f9 100644
 --- a/fs/jbd2/checkpoint.c
 +++ b/fs/jbd2/checkpoint.c
 @@ -129,6 +129,8 @@ void __jbd2_log_wait_for_space(journal_t *journal)
diff --git a/debian/patches/features/all/rt/0338-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch b/debian/patches/features/all/rt/0338-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch
index 9bdcafe..27ea970 100644
--- a/debian/patches/features/all/rt/0338-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch
+++ b/debian/patches/features/all/rt/0338-cpu_chill-Add-a-UNINTERRUPTIBLE-hrtimer_nanosleep.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Tue, 4 Mar 2014 12:28:32 -0500
-Subject: [PATCH 338/374] cpu_chill: Add a UNINTERRUPTIBLE hrtimer_nanosleep
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=db43996cde915cb16a260a37f27d212be4514e10
+Subject: [PATCH 338/380] cpu_chill: Add a UNINTERRUPTIBLE hrtimer_nanosleep
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a473731097739cecc3dbd623b131ec4a7d9077e7
 
 We hit another bug that was caused by switching cpu_chill() from
 msleep() to hrtimer_nanosleep().
@@ -33,7 +33,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
  1 file changed, 18 insertions(+), 7 deletions(-)
 
 diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index 1eefb45..b3a4643 100644
+index 1eefb451e172..b3a46438f47a 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
 @@ -1754,12 +1754,13 @@ void hrtimer_init_sleeper(struct hrtimer_sleeper *sl, struct task_struct *task)
diff --git a/debian/patches/features/all/rt/0339-net-gianfar-do-not-disable-interrupts.patch b/debian/patches/features/all/rt/0339-net-gianfar-do-not-disable-interrupts.patch
index d1ab2f6..5639e37 100644
--- a/debian/patches/features/all/rt/0339-net-gianfar-do-not-disable-interrupts.patch
+++ b/debian/patches/features/all/rt/0339-net-gianfar-do-not-disable-interrupts.patch
@@ -1,7 +1,7 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Tue, 25 Mar 2014 18:34:20 +0100
-Subject: [PATCH 339/374] net: gianfar: do not disable interrupts
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b21df2eabafc5a596bbcb4145e9910b3cea31439
+Subject: [PATCH 339/380] net: gianfar: do not disable interrupts
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7b59227b6e5c3298cc7dd4922dc4fc4b22907840
 
 each per-queue lock is taken with spin_lock_irqsave() except in the case
 where all of them are taken for some kind of serialisation. As an
@@ -24,7 +24,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  3 files changed, 24 insertions(+), 24 deletions(-)
 
 diff --git a/drivers/net/ethernet/freescale/gianfar.c b/drivers/net/ethernet/freescale/gianfar.c
-index 9510618..704b8e0e 100644
+index 95106185938e..704b8e0e0a0f 100644
 --- a/drivers/net/ethernet/freescale/gianfar.c
 +++ b/drivers/net/ethernet/freescale/gianfar.c
 @@ -1285,7 +1285,7 @@ static int gfar_suspend(struct device *dev)
@@ -99,7 +99,7 @@ index 9510618..704b8e0e 100644
  		netif_dbg(priv, tx_err, dev, "Transmit Error\n");
  	}
 diff --git a/drivers/net/ethernet/freescale/gianfar_ethtool.c b/drivers/net/ethernet/freescale/gianfar_ethtool.c
-index 212736b..1fe331f 100644
+index 212736bab6bb..1fe331f7b077 100644
 --- a/drivers/net/ethernet/freescale/gianfar_ethtool.c
 +++ b/drivers/net/ethernet/freescale/gianfar_ethtool.c
 @@ -486,7 +486,7 @@ static int gfar_sringparam(struct net_device *dev, struct ethtool_ringparam *rva
@@ -139,7 +139,7 @@ index 212736b..1fe331f 100644
  		for (i = 0; i < priv->num_rx_queues; i++)
  			gfar_clean_rx_ring(priv->rx_queue[i],
 diff --git a/drivers/net/ethernet/freescale/gianfar_sysfs.c b/drivers/net/ethernet/freescale/gianfar_sysfs.c
-index 64f4094..9f6fb3a 100644
+index 64f4094ac7f1..9f6fb3aa1fd5 100644
 --- a/drivers/net/ethernet/freescale/gianfar_sysfs.c
 +++ b/drivers/net/ethernet/freescale/gianfar_sysfs.c
 @@ -68,7 +68,7 @@ static ssize_t gfar_set_bd_stash(struct device *dev,
diff --git a/debian/patches/features/all/rt/0340-rcu-make-RCU_BOOST-default-on-RT.patch b/debian/patches/features/all/rt/0340-rcu-make-RCU_BOOST-default-on-RT.patch
index ca8250c..2fd6b79 100644
--- a/debian/patches/features/all/rt/0340-rcu-make-RCU_BOOST-default-on-RT.patch
+++ b/debian/patches/features/all/rt/0340-rcu-make-RCU_BOOST-default-on-RT.patch
@@ -1,7 +1,7 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Fri, 21 Mar 2014 20:19:05 +0100
-Subject: [PATCH 340/374] rcu: make RCU_BOOST default on RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1b5faa9e75a262f6b82e5314e24f64fddffa11bf
+Subject: [PATCH 340/380] rcu: make RCU_BOOST default on RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d56fc34825b0a0bd9e45485cf13230048f0f3e23
 
 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
@@ -16,7 +16,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/init/Kconfig b/init/Kconfig
-index 0a2eeac..5fb23d9 100644
+index 0a2eeacbf685..5fb23d9dad52 100644
 --- a/init/Kconfig
 +++ b/init/Kconfig
 @@ -494,7 +494,7 @@ config TREE_RCU_TRACE
diff --git a/debian/patches/features/all/rt/0341-Fix-latency-histogram-after-hrtimer-Set-expiry-time-.patch b/debian/patches/features/all/rt/0341-Fix-latency-histogram-after-hrtimer-Set-expiry-time-.patch
index 2b6803c..f68a503 100644
--- a/debian/patches/features/all/rt/0341-Fix-latency-histogram-after-hrtimer-Set-expiry-time-.patch
+++ b/debian/patches/features/all/rt/0341-Fix-latency-histogram-after-hrtimer-Set-expiry-time-.patch
@@ -1,8 +1,8 @@
 From: Ben Hutchings <ben at decadent.org.uk>
 Date: Sat, 28 Jun 2014 23:34:48 +0100
-Subject: [PATCH 341/374] Fix latency histogram after "hrtimer: Set expiry time
+Subject: [PATCH 341/380] Fix latency histogram after "hrtimer: Set expiry time
  before switch_hrtimer_base()"
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b5bbd111b51172d9082d54425086ebf7dd311ab0
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=60f6b976389bc5accafc2e62fd2f8c4b2f936d30
 
 In an rt-kernel with CONFIG_MISSED_TIMER_OFFSETS_HIST enabled,
 __hrtimer_start_range_ns() now crashes, as new_base is not assigned
@@ -16,13 +16,11 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  kernel/hrtimer.c | 10 +++++-----
  1 file changed, 5 insertions(+), 5 deletions(-)
 
-diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index b3a4643..3e09b78 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
-@@ -1036,6 +1036,11 @@ int __hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim,
- #endif
- 	}
+@@ -1043,6 +1043,11 @@ int __hrtimer_start_range_ns(struct hrti
+ 
+ 	tim = hrtimer_update_lowres(timer, tim, mode);
  
 +	hrtimer_set_expires_range_ns(timer, tim, delta_ns);
 +
@@ -32,7 +30,7 @@ index b3a4643..3e09b78 100644
  #ifdef CONFIG_MISSED_TIMER_OFFSETS_HIST
  	{
  		ktime_t now = new_base->get_time();
-@@ -1047,11 +1052,6 @@ int __hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim,
+@@ -1054,11 +1059,6 @@ int __hrtimer_start_range_ns(struct hrti
  	}
  #endif
  
diff --git a/debian/patches/features/all/rt/0342-sched-Do-not-clear-PF_NO_SETAFFINITY-flag-in-select_.patch b/debian/patches/features/all/rt/0342-sched-Do-not-clear-PF_NO_SETAFFINITY-flag-in-select_.patch
index 3e90364..33837ac 100644
--- a/debian/patches/features/all/rt/0342-sched-Do-not-clear-PF_NO_SETAFFINITY-flag-in-select_.patch
+++ b/debian/patches/features/all/rt/0342-sched-Do-not-clear-PF_NO_SETAFFINITY-flag-in-select_.patch
@@ -1,8 +1,8 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Tue, 1 Jul 2014 11:14:44 -0400
-Subject: [PATCH 342/374] sched: Do not clear PF_NO_SETAFFINITY flag in
+Subject: [PATCH 342/380] sched: Do not clear PF_NO_SETAFFINITY flag in
  select_fallback_rq()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=18a20bd0f46bcf6663df3aae55e0d8917c0654fd
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=74c2b950ea2cd025399b2d06f8d4da3e9c12e4b9
 
 I talked with Peter Zijlstra about this, and he told me that the clearing
 of the PF_NO_SETAFFINITY flag was to deal with the optimization of
@@ -32,10 +32,10 @@ Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
  1 file changed, 6 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 15d413f..19685a0 100644
+index 1dd49b98e25e..0cdf86e3968a 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -2572,12 +2572,6 @@ static int select_fallback_rq(int cpu, struct task_struct *p)
+@@ -2574,12 +2574,6 @@ static int select_fallback_rq(int cpu, struct task_struct *p)
  		printk(KERN_INFO "process %d (%s) no longer affine to cpu%d\n",
  				task_pid_nr(p), p->comm, cpu);
  	}
diff --git a/debian/patches/features/all/rt/0343-workqueue-Prevent-deadlock-stall-on-RT.patch b/debian/patches/features/all/rt/0343-workqueue-Prevent-deadlock-stall-on-RT.patch
index 46ec1b6..6a8aa19 100644
--- a/debian/patches/features/all/rt/0343-workqueue-Prevent-deadlock-stall-on-RT.patch
+++ b/debian/patches/features/all/rt/0343-workqueue-Prevent-deadlock-stall-on-RT.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Fri, 27 Jun 2014 16:24:52 +0200
-Subject: [PATCH 343/374] workqueue: Prevent deadlock/stall on RT
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c9b25e0f13f76cbbbda8ec38edd7903a1e7fc09f
+Subject: [PATCH 343/380] workqueue: Prevent deadlock/stall on RT
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=972e52907e6a2512c1860712a05baaa5ce73867b
 
 Austin reported a XFS deadlock/stall on RT where scheduled work gets
 never exececuted and tasks are waiting for each other for ever.
@@ -44,10 +44,10 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  2 files changed, 40 insertions(+), 11 deletions(-)
 
 diff --git a/kernel/sched.c b/kernel/sched.c
-index 19685a0..74cfb31 100644
+index 0cdf86e3968a..1615ca209afd 100644
 --- a/kernel/sched.c
 +++ b/kernel/sched.c
-@@ -4795,9 +4795,8 @@ need_resched:
+@@ -4796,9 +4796,8 @@ need_resched:
  
  static inline void sched_submit_work(struct task_struct *tsk)
  {
@@ -58,7 +58,7 @@ index 19685a0..74cfb31 100644
  	/*
  	 * If a worker went to sleep, notify and ask workqueue whether
  	 * it wants to wake up a task to maintain concurrency.
-@@ -4807,6 +4806,10 @@ static inline void sched_submit_work(struct task_struct *tsk)
+@@ -4808,6 +4807,10 @@ static inline void sched_submit_work(struct task_struct *tsk)
  	if (tsk->flags & PF_WQ_WORKER && !tsk->saved_state)
  		wq_worker_sleeping(tsk);
  
@@ -69,7 +69,7 @@ index 19685a0..74cfb31 100644
  	/*
  	 * If we are going to sleep and we have plugged IO queued,
  	 * make sure to submit it to avoid deadlocks.
-@@ -4817,9 +4820,6 @@ static inline void sched_submit_work(struct task_struct *tsk)
+@@ -4818,9 +4821,6 @@ static inline void sched_submit_work(struct task_struct *tsk)
  
  static inline void sched_update_worker(struct task_struct *tsk)
  {
@@ -80,7 +80,7 @@ index 19685a0..74cfb31 100644
  		wq_worker_running(tsk);
  }
 diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index 62ebed7..505b50d 100644
+index 62ebed73dfa2..505b50dff3b5 100644
 --- a/kernel/workqueue.c
 +++ b/kernel/workqueue.c
 @@ -319,6 +319,31 @@ static inline int __next_wq_cpu(int cpu, const struct cpumask *mask,
diff --git a/debian/patches/features/all/rt/0344-hrtimer-fix-the-miss-of-hrtimer_peek_ahead_timers-in.patch b/debian/patches/features/all/rt/0344-hrtimer-fix-the-miss-of-hrtimer_peek_ahead_timers-in.patch
index ac22ba1..255cd42 100644
--- a/debian/patches/features/all/rt/0344-hrtimer-fix-the-miss-of-hrtimer_peek_ahead_timers-in.patch
+++ b/debian/patches/features/all/rt/0344-hrtimer-fix-the-miss-of-hrtimer_peek_ahead_timers-in.patch
@@ -1,8 +1,8 @@
 From: Zhao Hongjiang <zhaohongjiang at huawei.com>
 Date: Mon, 15 Jul 2013 11:32:44 -0400
-Subject: [PATCH 344/374] hrtimer:fix the miss of hrtimer_peek_ahead_timers in
+Subject: [PATCH 344/380] hrtimer:fix the miss of hrtimer_peek_ahead_timers in
  nort code
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=33c795f8e903be9168b7782838760697d4086d10
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=f63166eb8b86b06e32844d1a2cc00b1f54141144
 
 When we run the test "taskset -c 1 stress -m 1 --vm-bytes 50M" and
 "taskset -c 1 cyclictest -t 1 -p 80 -n -m -v" with rt closed 3.4.26-rt38 kernel,
@@ -71,7 +71,7 @@ Signed-off-by: Paul Gortmaker <paul.gortmaker at windriver.com>
  1 file changed, 5 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c
-index 3e09b78..c4c5257 100644
+index 3e09b7879d65..c4c52579da0c 100644
 --- a/kernel/hrtimer.c
 +++ b/kernel/hrtimer.c
 @@ -1458,7 +1458,11 @@ static int hrtimer_rt_defer(struct hrtimer *timer)
diff --git a/debian/patches/features/all/rt/0345-lockdep-Fix-backport-of-Correctly-annotate-hardirq-c.patch b/debian/patches/features/all/rt/0345-lockdep-Fix-backport-of-Correctly-annotate-hardirq-c.patch
index baa663f..43c5895 100644
--- a/debian/patches/features/all/rt/0345-lockdep-Fix-backport-of-Correctly-annotate-hardirq-c.patch
+++ b/debian/patches/features/all/rt/0345-lockdep-Fix-backport-of-Correctly-annotate-hardirq-c.patch
@@ -1,8 +1,8 @@
 From: "Steven Rostedt (Red Hat)" <rostedt at goodmis.org>
 Date: Thu, 30 Oct 2014 18:19:04 -0400
-Subject: [PATCH 345/374] lockdep: Fix backport of "Correctly annotate hardirq
+Subject: [PATCH 345/380] lockdep: Fix backport of "Correctly annotate hardirq
  context in irq_exit()"
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4241ec1ae61b7432de051cf1e451e6dba5bf2301
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a67951720c7b3a527e62269c9f3b8fc9198fe77f
 
 The backport of f1a83e652bed "lockdep: Correctly annotate hardirq context
 in irq_exit()" to v3.2.53-rt76 wasn't correct because v3.2-rt had two
@@ -27,7 +27,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 3 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 29936bd..b7d6839 100644
+index 29936bd40ef6..b7d68392e833 100644
 --- a/kernel/softirq.c
 +++ b/kernel/softirq.c
 @@ -645,9 +645,10 @@ static inline void invoke_softirq(void)
diff --git a/debian/patches/features/all/rt/0346-gpio-omap-use-raw-locks-for-locking.patch b/debian/patches/features/all/rt/0346-gpio-omap-use-raw-locks-for-locking.patch
index 5e2de1e..25214a5 100644
--- a/debian/patches/features/all/rt/0346-gpio-omap-use-raw-locks-for-locking.patch
+++ b/debian/patches/features/all/rt/0346-gpio-omap-use-raw-locks-for-locking.patch
@@ -1,7 +1,7 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Thu, 12 Feb 2015 16:01:13 +0100
-Subject: [PATCH 346/374] gpio: omap: use raw locks for locking
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=64fda90d6ea2231c7bc8d5173615368bf7c13cb8
+Subject: [PATCH 346/380] gpio: omap: use raw locks for locking
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7f5ae4d81c4cec0cc9f257040585eed53d4e162f
 
 This patch converts gpio_bank.lock from a spin_lock into a
 raw_spin_lock. The call path is to access this lock is always under a
@@ -36,7 +36,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 32 insertions(+), 32 deletions(-)
 
 diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
-index a6c10e8..e4d11e4 100644
+index a6c10e849e61..e4d11e424b5b 100644
 --- a/drivers/gpio/gpio-omap.c
 +++ b/drivers/gpio/gpio-omap.c
 @@ -46,7 +46,7 @@ struct gpio_bank {
diff --git a/debian/patches/features/all/rt/0347-create-rt-enqueue.patch b/debian/patches/features/all/rt/0347-create-rt-enqueue.patch
index edfca8d..a8f33f0 100644
--- a/debian/patches/features/all/rt/0347-create-rt-enqueue.patch
+++ b/debian/patches/features/all/rt/0347-create-rt-enqueue.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Wed, 11 Mar 2015 13:30:49 -0400
-Subject: [PATCH 347/374] create-rt-enqueue
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4eda5c3672347a9721db2cdc1cb9eb692af6d72d
+Subject: [PATCH 347/380] create-rt-enqueue
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=01980e2e38a8a9e27181bf0e24e8adf63345fec6
 
 To ease backporting patches, replace the plist functions with
 rt_mutex_enqueue{_pi}() and rt_mutex_dequeue{_pi}() like upstream -rt does.
@@ -16,7 +16,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 40 insertions(+), 18 deletions(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 744d41f..972ec87 100644
+index 744d41f038a2..972ec87bd1d9 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -154,6 +154,31 @@ static inline bool unlock_rt_mutex_safe(struct rt_mutex *lock)
diff --git a/debian/patches/features/all/rt/0348-rtmutex-Simplify-rtmutex_slowtrylock.patch b/debian/patches/features/all/rt/0348-rtmutex-Simplify-rtmutex_slowtrylock.patch
index aed8f94..ab82e76 100644
--- a/debian/patches/features/all/rt/0348-rtmutex-Simplify-rtmutex_slowtrylock.patch
+++ b/debian/patches/features/all/rt/0348-rtmutex-Simplify-rtmutex_slowtrylock.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 10 Jun 2014 22:53:40 +0200
-Subject: [PATCH 348/374] rtmutex: Simplify rtmutex_slowtrylock()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=dabc455c4301363e2cbb6bda738293d9efd330c2
+Subject: [PATCH 348/380] rtmutex: Simplify rtmutex_slowtrylock()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8c31ea09d48ea2489bf38d9663b2f932d32fef27
 
 upstream-commit: 88f2b4c15e561bb5c28709d666364f273bf54b98
 
@@ -31,7 +31,7 @@ Conflicts:
  1 file changed, 21 insertions(+), 12 deletions(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 972ec87..d190602 100644
+index 972ec87bd1d9..d19060236770 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -1275,24 +1275,33 @@ rt_mutex_slowlock(struct rt_mutex *lock, int state,
diff --git a/debian/patches/features/all/rt/0349-rtmutex-Simplify-and-document-try_to_take_rtmutex.patch b/debian/patches/features/all/rt/0349-rtmutex-Simplify-and-document-try_to_take_rtmutex.patch
index b081376..bccdfc5 100644
--- a/debian/patches/features/all/rt/0349-rtmutex-Simplify-and-document-try_to_take_rtmutex.patch
+++ b/debian/patches/features/all/rt/0349-rtmutex-Simplify-and-document-try_to_take_rtmutex.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 11 Jun 2014 01:01:13 +0200
-Subject: [PATCH 349/374] rtmutex: Simplify and document try_to_take_rtmutex()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=573e5166eb717ddf92c24a40961052fabca2bbb2
+Subject: [PATCH 349/380] rtmutex: Simplify and document try_to_take_rtmutex()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7362801ee8711abbab87bf0786bda4850d3e9cec
 
 upstream commit: 358c331f391f3e0432f4f96f25017d12ac8d10b1
 
@@ -25,7 +25,7 @@ Conflicts:
  1 file changed, 89 insertions(+), 45 deletions(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index d190602..a74c57a 100644
+index d19060236770..a74c57a75269 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -498,78 +498,122 @@ static inline int lock_is_stealable(struct task_struct *task,
diff --git a/debian/patches/features/all/rt/0350-rtmutex-No-need-to-keep-task-ref-for-lock-owner-chec.patch b/debian/patches/features/all/rt/0350-rtmutex-No-need-to-keep-task-ref-for-lock-owner-chec.patch
index 3976b77..33bb846 100644
--- a/debian/patches/features/all/rt/0350-rtmutex-No-need-to-keep-task-ref-for-lock-owner-chec.patch
+++ b/debian/patches/features/all/rt/0350-rtmutex-No-need-to-keep-task-ref-for-lock-owner-chec.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 7 Jun 2014 12:10:36 +0200
-Subject: [PATCH 350/374] rtmutex: No need to keep task ref for lock owner
+Subject: [PATCH 350/380] rtmutex: No need to keep task ref for lock owner
  check
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0b917918d390a399870bdbc29ed76e35c3998cf3
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=aefd2c54c111f7a39c6873ceda40920fb7706375
 
 upstream commit: 2ffa5a5cd2fe792b6399c903d5172adf088d8ff7
 
@@ -20,7 +20,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 3 insertions(+), 2 deletions(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index a74c57a..7d338c8 100644
+index a74c57a75269..7d338c8b23b9 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -407,6 +407,8 @@ static int rt_mutex_adjust_prio_chain(struct task_struct *task,
diff --git a/debian/patches/features/all/rt/0351-rtmutex-Clarify-the-boost-deboost-part.patch b/debian/patches/features/all/rt/0351-rtmutex-Clarify-the-boost-deboost-part.patch
index aee6391..4daec3d 100644
--- a/debian/patches/features/all/rt/0351-rtmutex-Clarify-the-boost-deboost-part.patch
+++ b/debian/patches/features/all/rt/0351-rtmutex-Clarify-the-boost-deboost-part.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 22 May 2014 03:25:54 +0000
-Subject: [PATCH 351/374] rtmutex: Clarify the boost/deboost part
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5e893dc90bd6d2d881e450dc3ecbdc0929d1b097
+Subject: [PATCH 351/380] rtmutex: Clarify the boost/deboost part
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=144e192abe2572e122493fc8792502688b16962e
 
 upstream commit: a57594a13a446d1a6ab1dcd48339f799ce586843
 
@@ -19,7 +19,7 @@ Conflicts:
  1 file changed, 48 insertions(+), 9 deletions(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 7d338c8..34c63cb 100644
+index 7d338c8b23b9..34c63cb7ff22 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -289,9 +289,10 @@ static int rt_mutex_adjust_prio_chain(struct task_struct *task,
diff --git a/debian/patches/features/all/rt/0352-rtmutex-Document-pi-chain-walk.patch b/debian/patches/features/all/rt/0352-rtmutex-Document-pi-chain-walk.patch
index ca345ae..92d7a17 100644
--- a/debian/patches/features/all/rt/0352-rtmutex-Document-pi-chain-walk.patch
+++ b/debian/patches/features/all/rt/0352-rtmutex-Document-pi-chain-walk.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Mon, 9 Jun 2014 19:40:34 +0200
-Subject: [PATCH 352/374] rtmutex: Document pi chain walk
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d4d1276224d2ee96f52c53f4290182198da3c3cb
+Subject: [PATCH 352/380] rtmutex: Document pi chain walk
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1d4e5be93eae2521adea9da17d96e8ee1a55a313
 
 upstream commit: 3eb65aeadf701976b084e9171e16bb7d1e83fbb0
 
@@ -16,7 +16,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 91 insertions(+), 9 deletions(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 34c63cb..5c581a7b 100644
+index 34c63cb7ff22..5c581a7b715f 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -281,6 +281,48 @@ static inline struct rt_mutex *task_blocked_on_lock(struct task_struct *p)
diff --git a/debian/patches/features/all/rt/0353-rtmutex-Simplify-remove_waiter.patch b/debian/patches/features/all/rt/0353-rtmutex-Simplify-remove_waiter.patch
index 516cde1..29b0983 100644
--- a/debian/patches/features/all/rt/0353-rtmutex-Simplify-remove_waiter.patch
+++ b/debian/patches/features/all/rt/0353-rtmutex-Simplify-remove_waiter.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Sat, 7 Jun 2014 09:36:13 +0200
-Subject: [PATCH 353/374] rtmutex: Simplify remove_waiter()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9f5af0c9a80433f47983eeb8ad04c70f4f0269e9
+Subject: [PATCH 353/380] rtmutex: Simplify remove_waiter()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=cc0f775783e216a4293aa38c7f73432b89741030
 
 upstream commit: 1ca7b86062ec8473d03c5cdfd336abc8b1c8098c
 
@@ -20,7 +20,7 @@ Conflicts:
  1 file changed, 18 insertions(+), 15 deletions(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 5c581a7b..6405f7b 100644
+index 5c581a7b715f..6405f7bc81f7 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -911,7 +911,7 @@ static void wakeup_next_waiter(struct rt_mutex *lock)
diff --git a/debian/patches/features/all/rt/0354-rtmutex-Confine-deadlock-logic-to-futex.patch b/debian/patches/features/all/rt/0354-rtmutex-Confine-deadlock-logic-to-futex.patch
index 24c96b0..2545052 100644
--- a/debian/patches/features/all/rt/0354-rtmutex-Confine-deadlock-logic-to-futex.patch
+++ b/debian/patches/features/all/rt/0354-rtmutex-Confine-deadlock-logic-to-futex.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 22 May 2014 03:25:50 +0000
-Subject: [PATCH 354/374] rtmutex: Confine deadlock logic to futex
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3c5960e1ea8ce384b8042f13e1e49160bc294b1c
+Subject: [PATCH 354/380] rtmutex: Confine deadlock logic to futex
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a7894f06d2cf990ac3a0d63a14aecb5a5bdf6245
 
 upstream commit: c051b21f71d1ffdfd7ad406a1ef5ede5e5f974c5
 
@@ -28,7 +28,7 @@ Conflicts:
  6 files changed, 43 insertions(+), 48 deletions(-)
 
 diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
-index 5ebd0bb..9340b86 100644
+index 5ebd0bbb6eaa..9340b866ce21 100644
 --- a/include/linux/rtmutex.h
 +++ b/include/linux/rtmutex.h
 @@ -109,12 +109,10 @@ extern void __rt_mutex_init(struct rt_mutex *lock, const char *name);
@@ -48,7 +48,7 @@ index 5ebd0bb..9340b86 100644
  extern int rt_mutex_trylock(struct rt_mutex *lock);
  
 diff --git a/kernel/futex.c b/kernel/futex.c
-index 749e297..8ed0948 100644
+index 7cfa4527e942..f44094da0949 100644
 --- a/kernel/futex.c
 +++ b/kernel/futex.c
 @@ -1563,7 +1563,7 @@ retry_private:
@@ -73,7 +73,7 @@ index 749e297..8ed0948 100644
  		ret = rt_mutex_trylock(&q.pi_state->pi_mutex);
  		/* Fixup the trylock return value: */
  		ret = ret ? 0 : -EWOULDBLOCK;
-@@ -2547,7 +2547,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
+@@ -2552,7 +2552,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
  		 */
  		WARN_ON(!q.pi_state);
  		pi_mutex = &q.pi_state->pi_mutex;
@@ -83,7 +83,7 @@ index 749e297..8ed0948 100644
  
  		spin_lock(&hb2->lock);
 diff --git a/kernel/rt.c b/kernel/rt.c
-index aa10504..389f9bd 100644
+index aa10504d733d..389f9bdec9be 100644
 --- a/kernel/rt.c
 +++ b/kernel/rt.c
 @@ -98,7 +98,7 @@ int __lockfunc _mutex_lock_interruptible(struct mutex *lock)
@@ -123,7 +123,7 @@ index aa10504..389f9bd 100644
  		mutex_release(&lock->dep_map, 1, _RET_IP_);
  	return ret;
 diff --git a/kernel/rtmutex-tester.c b/kernel/rtmutex-tester.c
-index 3d9f31c..9eb84bb 100644
+index 3d9f31cd79e7..9eb84bb55881 100644
 --- a/kernel/rtmutex-tester.c
 +++ b/kernel/rtmutex-tester.c
 @@ -14,7 +14,7 @@
@@ -145,7 +145,7 @@ index 3d9f31c..9eb84bb 100644
  		td->mutexes[id] = ret ? 0 : 4;
  		return ret ? -EINTR : 0;
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 6405f7b..799efec 100644
+index 6405f7bc81f7..799efec18e7a 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -1548,16 +1548,15 @@ rt_mutex_slowunlock(struct rt_mutex *lock)
@@ -304,7 +304,7 @@ index 6405f7b..799efec 100644
  	int ret;
  
 diff --git a/kernel/rtmutex_common.h b/kernel/rtmutex_common.h
-index 6ec3dc1..efde341 100644
+index 6ec3dc1eab10..efde34108ebc 100644
 --- a/kernel/rtmutex_common.h
 +++ b/kernel/rtmutex_common.h
 @@ -114,12 +114,11 @@ extern void rt_mutex_proxy_unlock(struct rt_mutex *lock,
diff --git a/debian/patches/features/all/rt/0355-rtmutex-Cleanup-deadlock-detector-debug-logic.patch b/debian/patches/features/all/rt/0355-rtmutex-Cleanup-deadlock-detector-debug-logic.patch
index 1341a8a..b654a99 100644
--- a/debian/patches/features/all/rt/0355-rtmutex-Cleanup-deadlock-detector-debug-logic.patch
+++ b/debian/patches/features/all/rt/0355-rtmutex-Cleanup-deadlock-detector-debug-logic.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 22 May 2014 03:25:47 +0000
-Subject: [PATCH 355/374] rtmutex: Cleanup deadlock detector debug logic
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c525901f3067144008e68d3a9b54ebc0f0416031
+Subject: [PATCH 355/380] rtmutex: Cleanup deadlock detector debug logic
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=da54a35cc2cfa139c0770f45c8b20cb82c033587
 
 upstream commit: 8930ed80f970a90a795239e7415c9b0e6f964649
 
@@ -32,7 +32,7 @@ Conflicts:
  5 files changed, 82 insertions(+), 29 deletions(-)
 
 diff --git a/kernel/rtmutex-debug.c b/kernel/rtmutex-debug.c
-index 8eafd1b..5726637 100644
+index 8eafd1bd273e..57266373a1da 100644
 --- a/kernel/rtmutex-debug.c
 +++ b/kernel/rtmutex-debug.c
 @@ -65,12 +65,13 @@ void rt_mutex_debug_task_free(struct task_struct *task)
@@ -52,7 +52,7 @@ index 8eafd1b..5726637 100644
  
  	task = rt_mutex_owner(act_waiter->lock);
 diff --git a/kernel/rtmutex-debug.h b/kernel/rtmutex-debug.h
-index ab29b6a..d0519c3 100644
+index ab29b6a22669..d0519c3432b6 100644
 --- a/kernel/rtmutex-debug.h
 +++ b/kernel/rtmutex-debug.h
 @@ -20,14 +20,15 @@ extern void debug_rt_mutex_unlock(struct rt_mutex *lock);
@@ -75,7 +75,7 @@ index ab29b6a..d0519c3 100644
  	return (waiter != NULL);
  }
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 799efec..5b100b3 100644
+index 799efec18e7a..5b100b361a64 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -252,6 +252,32 @@ static void rt_mutex_wake_waiter(struct rt_mutex_waiter *waiter)
@@ -287,7 +287,7 @@ index 799efec..5b100b3 100644
  	if (ret && !rt_mutex_owner(lock)) {
  		/*
 diff --git a/kernel/rtmutex.h b/kernel/rtmutex.h
-index f6a1f3c..c406058 100644
+index f6a1f3c133b1..c4060584c407 100644
 --- a/kernel/rtmutex.h
 +++ b/kernel/rtmutex.h
 @@ -22,10 +22,15 @@
@@ -308,7 +308,7 @@ index f6a1f3c..c406058 100644
 +	return walk == RT_MUTEX_FULL_CHAINWALK;
 +}
 diff --git a/kernel/rtmutex_common.h b/kernel/rtmutex_common.h
-index efde341..213c7bf 100644
+index efde34108ebc..213c7bf3c0d9 100644
 --- a/kernel/rtmutex_common.h
 +++ b/kernel/rtmutex_common.h
 @@ -102,6 +102,21 @@ static inline struct task_struct *rt_mutex_owner(struct rt_mutex *lock)
diff --git a/debian/patches/features/all/rt/0356-rtmutex-Avoid-pointless-requeueing-in-the-deadlock-d.patch b/debian/patches/features/all/rt/0356-rtmutex-Avoid-pointless-requeueing-in-the-deadlock-d.patch
index c0218b3..e11a9d8 100644
--- a/debian/patches/features/all/rt/0356-rtmutex-Avoid-pointless-requeueing-in-the-deadlock-d.patch
+++ b/debian/patches/features/all/rt/0356-rtmutex-Avoid-pointless-requeueing-in-the-deadlock-d.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Thu, 22 May 2014 03:25:57 +0000
-Subject: [PATCH 356/374] rtmutex: Avoid pointless requeueing in the deadlock
+Subject: [PATCH 356/380] rtmutex: Avoid pointless requeueing in the deadlock
  detection chain walk
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=55812ddf14621138bb751168ed15fcdb94eceb48
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c42011a46e90ef9cde7e4aec7b165201a3ac226e
 
 upstream commit: 67792e2cabadbadd1a93f6790fa7bcbd47eca7c3
 
@@ -29,7 +29,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 70 insertions(+), 7 deletions(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index 5b100b3..a94f3a3 100644
+index 5b100b361a64..a94f3a316dca 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -363,6 +363,7 @@ static int rt_mutex_adjust_prio_chain(struct task_struct *task,
diff --git a/debian/patches/features/all/rt/0357-futex-Make-unlock_pi-more-robust.patch b/debian/patches/features/all/rt/0357-futex-Make-unlock_pi-more-robust.patch
index 6fd0601..2363ef3 100644
--- a/debian/patches/features/all/rt/0357-futex-Make-unlock_pi-more-robust.patch
+++ b/debian/patches/features/all/rt/0357-futex-Make-unlock_pi-more-robust.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 11 Jun 2014 20:45:38 +0000
-Subject: [PATCH 357/374] futex: Make unlock_pi more robust
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d67ab67f4676cf7686c5797451de8a140d612f26
+Subject: [PATCH 357/380] futex: Make unlock_pi more robust
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=a129d3562b01344f8a4df4ac62bdf4a535d6bb89
 
 upstream commit: ccf9e6a80d9e1b9df69c98e6b9745cf49869ee15
 
@@ -35,7 +35,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 26 insertions(+), 54 deletions(-)
 
 diff --git a/kernel/futex.c b/kernel/futex.c
-index 8ed0948..71d414b 100644
+index f44094da0949..73fd48f8f39d 100644
 --- a/kernel/futex.c
 +++ b/kernel/futex.c
 @@ -1039,22 +1039,6 @@ static int wake_futex_pi(u32 __user *uaddr, u32 uval, struct futex_q *this)
diff --git a/debian/patches/features/all/rt/0358-futex-Use-futex_top_waiter-in-lookup_pi_state.patch b/debian/patches/features/all/rt/0358-futex-Use-futex_top_waiter-in-lookup_pi_state.patch
index 75c5ed3..09e1ba5 100644
--- a/debian/patches/features/all/rt/0358-futex-Use-futex_top_waiter-in-lookup_pi_state.patch
+++ b/debian/patches/features/all/rt/0358-futex-Use-futex_top_waiter-in-lookup_pi_state.patch
@@ -1,7 +1,7 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 11 Jun 2014 20:45:39 +0000
-Subject: [PATCH 358/374] futex: Use futex_top_waiter() in lookup_pi_state()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2735c8c5d741faadf556539a030132b52d7632d6
+Subject: [PATCH 358/380] futex: Use futex_top_waiter() in lookup_pi_state()
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5d3a4a00769017ce266ad7091b4434926c3643c7
 
 upstream commit: bd1dbcc67cd2c1181e2c01daac51eabf1b964dd8
 
@@ -21,7 +21,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 61 insertions(+), 66 deletions(-)
 
 diff --git a/kernel/futex.c b/kernel/futex.c
-index 71d414b..73b91f7 100644
+index 73fd48f8f39d..214306cc4730 100644
 --- a/kernel/futex.c
 +++ b/kernel/futex.c
 @@ -647,90 +647,85 @@ static int
diff --git a/debian/patches/features/all/rt/0359-futex-Split-out-the-waiter-check-from-lookup_pi_stat.patch b/debian/patches/features/all/rt/0359-futex-Split-out-the-waiter-check-from-lookup_pi_stat.patch
index 3acad4b..73de338 100644
--- a/debian/patches/features/all/rt/0359-futex-Split-out-the-waiter-check-from-lookup_pi_stat.patch
+++ b/debian/patches/features/all/rt/0359-futex-Split-out-the-waiter-check-from-lookup_pi_stat.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 11 Jun 2014 20:45:39 +0000
-Subject: [PATCH 359/374] futex: Split out the waiter check from
+Subject: [PATCH 359/380] futex: Split out the waiter check from
  lookup_pi_state()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=5e542efac012495036002d0d4c635bc8cc7ee412
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9e276b8a48d4d502ab9e104038e37961819bca10
 
 upstream commit: e60cbc5ceaa518d630ab8f35a7d05cee1c752648
 
@@ -24,7 +24,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 71 insertions(+), 67 deletions(-)
 
 diff --git a/kernel/futex.c b/kernel/futex.c
-index 73b91f7..58c66de 100644
+index 214306cc4730..6b022b9831d7 100644
 --- a/kernel/futex.c
 +++ b/kernel/futex.c
 @@ -643,92 +643,96 @@ void exit_pi_state_list(struct task_struct *curr)
diff --git a/debian/patches/features/all/rt/0360-futex-Split-out-the-first-waiter-attachment-from-loo.patch b/debian/patches/features/all/rt/0360-futex-Split-out-the-first-waiter-attachment-from-loo.patch
index 210cffd..e248a1f 100644
--- a/debian/patches/features/all/rt/0360-futex-Split-out-the-first-waiter-attachment-from-loo.patch
+++ b/debian/patches/features/all/rt/0360-futex-Split-out-the-first-waiter-attachment-from-loo.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 11 Jun 2014 20:45:40 +0000
-Subject: [PATCH 360/374] futex: Split out the first waiter attachment from
+Subject: [PATCH 360/380] futex: Split out the first waiter attachment from
  lookup_pi_state()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=355e7bd13b2fdb1afbd183dc206b1ff17354b1b6
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=364acaab6d2db2d725e7d6e8253c0e415ba72ebc
 
 upstream commit: 04e1b2e52b17195c9a1daa5935c55a4c8716095c
 
@@ -24,7 +24,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 28 insertions(+), 14 deletions(-)
 
 diff --git a/kernel/futex.c b/kernel/futex.c
-index 58c66de..5015fbc 100644
+index 6b022b9831d7..5e5b08943114 100644
 --- a/kernel/futex.c
 +++ b/kernel/futex.c
 @@ -716,21 +716,16 @@ out_state:
diff --git a/debian/patches/features/all/rt/0361-futex-Simplify-futex_lock_pi_atomic-and-make-it-more.patch b/debian/patches/features/all/rt/0361-futex-Simplify-futex_lock_pi_atomic-and-make-it-more.patch
index 61c6bb2..765511c 100644
--- a/debian/patches/features/all/rt/0361-futex-Simplify-futex_lock_pi_atomic-and-make-it-more.patch
+++ b/debian/patches/features/all/rt/0361-futex-Simplify-futex_lock_pi_atomic-and-make-it-more.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Wed, 11 Jun 2014 20:45:41 +0000
-Subject: [PATCH 361/374] futex: Simplify futex_lock_pi_atomic() and make it
+Subject: [PATCH 361/380] futex: Simplify futex_lock_pi_atomic() and make it
  more robust
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=145b089e3cf5b38a4ad169ca7dcd218c570426ac
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1ec328d2927c1e309bd4b2dbf4c88820fd32f485
 
 upstream commit: af54d6a1c3ad474bbc9893c9905022646be6092c
 
@@ -38,7 +38,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 61 insertions(+), 87 deletions(-)
 
 diff --git a/kernel/futex.c b/kernel/futex.c
-index 5015fbc..cd2b055 100644
+index 5e5b08943114..1c493dbc94e0 100644
 --- a/kernel/futex.c
 +++ b/kernel/futex.c
 @@ -807,6 +807,17 @@ static int lookup_pi_state(u32 uval, struct futex_hash_bucket *hb,
diff --git a/debian/patches/features/all/rt/0362-rt-mutex-avoid-a-NULL-pointer-dereference-on-deadloc.patch b/debian/patches/features/all/rt/0362-rt-mutex-avoid-a-NULL-pointer-dereference-on-deadloc.patch
index 460e126..1bce3d2 100644
--- a/debian/patches/features/all/rt/0362-rt-mutex-avoid-a-NULL-pointer-dereference-on-deadloc.patch
+++ b/debian/patches/features/all/rt/0362-rt-mutex-avoid-a-NULL-pointer-dereference-on-deadloc.patch
@@ -1,8 +1,8 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Tue, 17 Feb 2015 16:18:05 +0100
-Subject: [PATCH 362/374] rt-mutex: avoid a NULL pointer dereference on
+Subject: [PATCH 362/380] rt-mutex: avoid a NULL pointer dereference on
  deadlock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=84a5cdbd063a05313ced82ebaae9a729d48a686f
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0e05721b511dd4cd310a7295981bcb6c9c2ecef9
 
 With task_blocks_on_rt_mutex() returning early -EDEADLK we never add the
 waiter to the waitqueue. Later, we try to remove it via remove_waiter()
@@ -23,7 +23,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
-index a94f3a3..52cab27 100644
+index a94f3a316dca..52cab2720a06 100644
 --- a/kernel/rtmutex.c
 +++ b/kernel/rtmutex.c
 @@ -1511,7 +1511,8 @@ rt_mutex_slowlock(struct rt_mutex *lock, int state,
diff --git a/debian/patches/features/all/rt/0363-x86-UV-raw_spinlock-conversion.patch b/debian/patches/features/all/rt/0363-x86-UV-raw_spinlock-conversion.patch
index 20671fc..ccd0f74 100644
--- a/debian/patches/features/all/rt/0363-x86-UV-raw_spinlock-conversion.patch
+++ b/debian/patches/features/all/rt/0363-x86-UV-raw_spinlock-conversion.patch
@@ -1,7 +1,7 @@
 From: Mike Galbraith <umgwanakikbuti at gmail.com>
 Date: Sun, 2 Nov 2014 08:31:37 +0100
-Subject: [PATCH 363/374] x86: UV: raw_spinlock conversion
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=7f251eb231e1b2d31afad95eaf22c2769f605350
+Subject: [PATCH 363/380] x86: UV: raw_spinlock conversion
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=fdb13bd3ef0ec3083cfec23d2cbe530f914a378f
 
 Shrug.  Lots of hobbyists have a beast in their basement, right?
 
@@ -18,7 +18,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  5 files changed, 41 insertions(+), 36 deletions(-)
 
 diff --git a/arch/x86/include/asm/uv/uv_bau.h b/arch/x86/include/asm/uv/uv_bau.h
-index 679229f..8ec3813 100644
+index 679229fd7743..8ec38136a7b6 100644
 --- a/arch/x86/include/asm/uv/uv_bau.h
 +++ b/arch/x86/include/asm/uv/uv_bau.h
 @@ -601,8 +601,8 @@ struct bau_control {
@@ -53,7 +53,7 @@ index 679229f..8ec3813 100644
  }
  
 diff --git a/arch/x86/include/asm/uv/uv_hub.h b/arch/x86/include/asm/uv/uv_hub.h
-index 21f7385..953f5c6 100644
+index 21f7385badb8..953f5c666ee0 100644
 --- a/arch/x86/include/asm/uv/uv_hub.h
 +++ b/arch/x86/include/asm/uv/uv_hub.h
 @@ -475,7 +475,7 @@ struct uv_blade_info {
@@ -66,7 +66,7 @@ index 21f7385..953f5c6 100644
  };
  extern struct uv_blade_info *uv_blade_info;
 diff --git a/arch/x86/kernel/apic/x2apic_uv_x.c b/arch/x86/kernel/apic/x2apic_uv_x.c
-index 79b05b8..8703c96 100644
+index 79b05b88aa19..8703c96e81f2 100644
 --- a/arch/x86/kernel/apic/x2apic_uv_x.c
 +++ b/arch/x86/kernel/apic/x2apic_uv_x.c
 @@ -56,7 +56,7 @@ int uv_min_hub_revision_id;
@@ -117,7 +117,7 @@ index 79b05b8..8703c96 100644
  			blade++;
  		}
 diff --git a/arch/x86/platform/uv/tlb_uv.c b/arch/x86/platform/uv/tlb_uv.c
-index 29a69550..2e9a93f 100644
+index 29a69550c696..2e9a93f804ec 100644
 --- a/arch/x86/platform/uv/tlb_uv.c
 +++ b/arch/x86/platform/uv/tlb_uv.c
 @@ -39,7 +39,7 @@ static int timeout_base_ns[] = {
@@ -234,7 +234,7 @@ index 29a69550..2e9a93f 100644
  
  	uv_base_pnode = 0x7fffffff;
 diff --git a/arch/x86/platform/uv/uv_time.c b/arch/x86/platform/uv/uv_time.c
-index 9f29a01..d2e2f23 100644
+index 9f29a01ee1b3..d2e2f23914ac 100644
 --- a/arch/x86/platform/uv/uv_time.c
 +++ b/arch/x86/platform/uv/uv_time.c
 @@ -58,7 +58,7 @@ static DEFINE_PER_CPU(struct clock_event_device, cpu_ced);
diff --git a/debian/patches/features/all/rt/0364-ARM-enable-irq-in-translation-section-permission-fau.patch b/debian/patches/features/all/rt/0364-ARM-enable-irq-in-translation-section-permission-fau.patch
index 86abd42..d86b57d 100644
--- a/debian/patches/features/all/rt/0364-ARM-enable-irq-in-translation-section-permission-fau.patch
+++ b/debian/patches/features/all/rt/0364-ARM-enable-irq-in-translation-section-permission-fau.patch
@@ -1,11 +1,11 @@
 From: "Yadi.hu" <yadi.hu at windriver.com>
 Date: Wed, 10 Dec 2014 10:32:09 +0800
-Subject: [PATCH 364/374] ARM: enable irq in translation/section permission
+Subject: [PATCH 364/380] ARM: enable irq in translation/section permission
  fault handlers
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=0e47c3c3a984f65ebd0124025f2ccacd7d9adcbf
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ca853f0b452f936fae002d7917c231cba418247b
 
 Probably happens on all ARM, with
 CONFIG_PREEMPT_RT_FULL
@@ -68,7 +68,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 6 insertions(+)
 
 diff --git a/arch/arm/mm/fault.c b/arch/arm/mm/fault.c
-index 4c306f2..61af818 100644
+index 4c306f2ec750..61af818bb47a 100644
 --- a/arch/arm/mm/fault.c
 +++ b/arch/arm/mm/fault.c
 @@ -416,6 +416,9 @@ do_translation_fault(unsigned long addr, unsigned int fsr,
diff --git a/debian/patches/features/all/rt/0365-arm-futex-disable-preemption-during-futex_atomic_cmp.patch b/debian/patches/features/all/rt/0365-arm-futex-disable-preemption-during-futex_atomic_cmp.patch
index 31a9c9d..615bd71 100644
--- a/debian/patches/features/all/rt/0365-arm-futex-disable-preemption-during-futex_atomic_cmp.patch
+++ b/debian/patches/features/all/rt/0365-arm-futex-disable-preemption-during-futex_atomic_cmp.patch
@@ -1,8 +1,8 @@
 From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
 Date: Wed, 18 Feb 2015 14:07:21 +0100
-Subject: [PATCH 365/374] arm/futex: disable preemption during
+Subject: [PATCH 365/380] arm/futex: disable preemption during
  futex_atomic_cmpxchg_inatomic()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d0d46d0f970ad0329afb28ec47ce107dbbb4237e
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c439066020af64455016d9cf7e5a2fd7224bbc05
 
 The ARM UP implementation of futex_atomic_cmpxchg_inatomic() assumes that
 pagefault_disable() inherits a preempt disabled section. This assumtion
@@ -32,7 +32,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 4 insertions(+)
 
 diff --git a/arch/arm/include/asm/futex.h b/arch/arm/include/asm/futex.h
-index aefd459..48fc90c 100644
+index aefd4594c9bf..48fc90c7db20 100644
 --- a/arch/arm/include/asm/futex.h
 +++ b/arch/arm/include/asm/futex.h
 @@ -86,6 +86,8 @@ futex_atomic_cmpxchg_inatomic(u32 *uval, u32 __user *uaddr,
diff --git a/debian/patches/features/all/rt/0366-scheduling-while-atomic-in-cgroup-code.patch b/debian/patches/features/all/rt/0366-scheduling-while-atomic-in-cgroup-code.patch
index 8c47f27..2cf6eaa 100644
--- a/debian/patches/features/all/rt/0366-scheduling-while-atomic-in-cgroup-code.patch
+++ b/debian/patches/features/all/rt/0366-scheduling-while-atomic-in-cgroup-code.patch
@@ -1,7 +1,7 @@
 From: Mike Galbraith <umgwanakikbuti at gmail.com>
 Date: Sat, 21 Jun 2014 10:09:48 +0200
-Subject: [PATCH 366/374] scheduling while atomic in cgroup code
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b3a56ac8706e0cc8b798deff28eed68844cd4fb7
+Subject: [PATCH 366/380] scheduling while atomic in cgroup code
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=97989cd401bed76a2f39481f74a017092647f1ea
 
 mm, memcg: make refill_stock() use get_cpu_light()
 
@@ -43,7 +43,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 5 insertions(+), 2 deletions(-)
 
 diff --git a/mm/memcontrol.c b/mm/memcontrol.c
-index df84f45..663f1a0 100644
+index 0a90549c15a3..87fb86d523ed 100644
 --- a/mm/memcontrol.c
 +++ b/mm/memcontrol.c
 @@ -2056,14 +2056,17 @@ static void drain_local_stock(struct work_struct *dummy)
diff --git a/debian/patches/features/all/rt/0367-work-simple-Simple-work-queue-implemenation.patch b/debian/patches/features/all/rt/0367-work-simple-Simple-work-queue-implemenation.patch
index 2711168..432ba56 100644
--- a/debian/patches/features/all/rt/0367-work-simple-Simple-work-queue-implemenation.patch
+++ b/debian/patches/features/all/rt/0367-work-simple-Simple-work-queue-implemenation.patch
@@ -1,7 +1,7 @@
 From: Daniel Wagner <daniel.wagner at bmw-carit.de>
 Date: Fri, 11 Jul 2014 15:26:11 +0200
-Subject: [PATCH 367/374] work-simple: Simple work queue implemenation
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1a93e7deea47ddff120b9e9b61409a1a5623f017
+Subject: [PATCH 367/380] work-simple: Simple work queue implemenation
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c3e9b1428ac182cb84688e211caf9940cf43f869
 
 Provides a framework for enqueuing callbacks from irq context
 PREEMPT_RT_FULL safe. The callbacks are executed in kthread context.
@@ -21,7 +21,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
 
 diff --git a/include/linux/work-simple.h b/include/linux/work-simple.h
 new file mode 100644
-index 0000000..f175fa9
+index 000000000000..f175fa9a6016
 --- /dev/null
 +++ b/include/linux/work-simple.h
 @@ -0,0 +1,24 @@
@@ -50,7 +50,7 @@ index 0000000..f175fa9
 +
 +#endif /* _LINUX_SWORK_H */
 diff --git a/kernel/Makefile b/kernel/Makefile
-index 0b0ed50..b34456e 100644
+index 0b0ed50948b3..b34456ece18e 100644
 --- a/kernel/Makefile
 +++ b/kernel/Makefile
 @@ -11,7 +11,7 @@ obj-y     = sched.o fork.o exec_domain.o panic.o printk.o \
@@ -64,7 +64,7 @@ index 0b0ed50..b34456e 100644
  # Do not trace debug files and internal ftrace files
 diff --git a/kernel/work-simple.c b/kernel/work-simple.c
 new file mode 100644
-index 0000000..c996f75
+index 000000000000..c996f755dba6
 --- /dev/null
 +++ b/kernel/work-simple.c
 @@ -0,0 +1,172 @@
diff --git a/debian/patches/features/all/rt/0368-sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch b/debian/patches/features/all/rt/0368-sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch
index c2c0008..4c6c19f 100644
--- a/debian/patches/features/all/rt/0368-sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch
+++ b/debian/patches/features/all/rt/0368-sunrpc-make-svc_xprt_do_enqueue-use-get_cpu_light.patch
@@ -1,8 +1,8 @@
 From: Mike Galbraith <umgwanakikbuti at gmail.com>
 Date: Wed, 18 Feb 2015 16:05:28 +0100
-Subject: [PATCH 368/374] sunrpc: make svc_xprt_do_enqueue() use
+Subject: [PATCH 368/380] sunrpc: make svc_xprt_do_enqueue() use
  get_cpu_light()
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=8c210f7806ea033d772142c85621a914e00fbb8e
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=17c20c43c778dc4a719a077f25fbfd9e508875a6
 
 |BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:915
 |in_atomic(): 1, irqs_disabled(): 0, pid: 3194, name: rpc.nfsd
@@ -35,7 +35,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/net/sunrpc/svc_xprt.c b/net/sunrpc/svc_xprt.c
-index 9acee9d..877ec8c 100644
+index 9acee9d0c57f..877ec8cd4a05 100644
 --- a/net/sunrpc/svc_xprt.c
 +++ b/net/sunrpc/svc_xprt.c
 @@ -322,9 +322,9 @@ void svc_xprt_enqueue(struct svc_xprt *xprt)
diff --git a/debian/patches/features/all/rt/0369-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch b/debian/patches/features/all/rt/0369-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch
index ae8720c..98d9238 100644
--- a/debian/patches/features/all/rt/0369-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch
+++ b/debian/patches/features/all/rt/0369-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch
@@ -1,8 +1,8 @@
 From: Josh Cartwright <josh.cartwright at ni.com>
 Date: Wed, 28 Jan 2015 13:08:45 -0600
-Subject: [PATCH 369/374] lockdep: selftest: fix warnings due to missing
+Subject: [PATCH 369/380] lockdep: selftest: fix warnings due to missing
  PREEMPT_RT conditionals
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=52e52359481621684d4056e5a9c6f6dfe1af7606
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=1f6bb1b55d9e9212c20477cf58e738d140626bfe
 
 "lockdep: Selftest: Only do hardirq context test for raw spinlock"
 disabled the execution of certain tests with PREEMPT_RT_FULL, but did
@@ -30,7 +30,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 27 insertions(+)
 
 diff --git a/lib/locking-selftest.c b/lib/locking-selftest.c
-index 507a22f..51e558f 100644
+index 507a22fab738..51e558f5c93d 100644
 --- a/lib/locking-selftest.c
 +++ b/lib/locking-selftest.c
 @@ -570,6 +570,8 @@ GENERATE_TESTCASE(init_held_rsem)
diff --git a/debian/patches/features/all/rt/0370-fs-btrfs-fix-rt-deadlock-on-extent_buffer-lock.patch b/debian/patches/features/all/rt/0370-fs-btrfs-fix-rt-deadlock-on-extent_buffer-lock.patch
index c1a6086..a2ce33f 100644
--- a/debian/patches/features/all/rt/0370-fs-btrfs-fix-rt-deadlock-on-extent_buffer-lock.patch
+++ b/debian/patches/features/all/rt/0370-fs-btrfs-fix-rt-deadlock-on-extent_buffer-lock.patch
@@ -1,7 +1,7 @@
 From: Mike Galbraith <mgalbraith at suse.de>
 Date: Sun, 2 Nov 2014 08:31:18 +0100
-Subject: [PATCH 370/374] fs,btrfs: fix rt deadlock on extent_buffer->lock
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c876a31d10e609a5b3a0ab8fe0bc66d8bf9f11ff
+Subject: [PATCH 370/380] fs,btrfs: fix rt deadlock on extent_buffer->lock
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d0b39a27694470b15e8a7fecae8251bbc13ebc9e
 
 Sat Jul 14 12:30:41 CEST 2012
 
@@ -34,7 +34,7 @@ Conflicts:
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c
-index dede441..980adc0 100644
+index dede441bdeee..980adc0ecc3a 100644
 --- a/fs/btrfs/ctree.c
 +++ b/fs/btrfs/ctree.c
 @@ -77,7 +77,7 @@ noinline void btrfs_clear_path_blocking(struct btrfs_path *p,
diff --git a/debian/patches/features/all/rt/0371-KVM-lapic-mark-LAPIC-timer-handler-as-irqsafe.patch b/debian/patches/features/all/rt/0371-KVM-lapic-mark-LAPIC-timer-handler-as-irqsafe.patch
index 56487f9..3010095 100644
--- a/debian/patches/features/all/rt/0371-KVM-lapic-mark-LAPIC-timer-handler-as-irqsafe.patch
+++ b/debian/patches/features/all/rt/0371-KVM-lapic-mark-LAPIC-timer-handler-as-irqsafe.patch
@@ -1,7 +1,7 @@
 From: Marcelo Tosatti <mtosatti at redhat.com>
 Date: Wed, 8 Apr 2015 20:33:25 -0300
-Subject: [PATCH 371/374] KVM: lapic: mark LAPIC timer handler as irqsafe
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=4e96cd404dc6b211bade4a290aa727c70c7ebe2c
+Subject: [PATCH 371/380] KVM: lapic: mark LAPIC timer handler as irqsafe
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=710650f71125f05ae88c18c0f8eb5faffb1bca19
 
 Since lapic timer handler only wakes up a simple waitqueue,
 it can be executed from hardirq context.
@@ -89,7 +89,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  	apic->lapic_timer.t_ops = &lapic_timer_ops;
  	apic->lapic_timer.kvm = vcpu->kvm;
  	apic->lapic_timer.vcpu = vcpu;
-@@ -1269,7 +1304,8 @@ void __kvm_migrate_apic_timer(struct kvm_vcpu *vcpu)
+@@ -1270,7 +1305,8 @@ void __kvm_migrate_apic_timer(struct kvm_vcpu *vcpu)
  
  	timer = &apic->lapic_timer.timer;
  	if (hrtimer_cancel(timer))
diff --git a/debian/patches/features/all/rt/0372-mm-slub-move-slab-initialization-into-irq-enabled-re.patch b/debian/patches/features/all/rt/0372-mm-slub-move-slab-initialization-into-irq-enabled-re.patch
index e628a67..e44a8eb 100644
--- a/debian/patches/features/all/rt/0372-mm-slub-move-slab-initialization-into-irq-enabled-re.patch
+++ b/debian/patches/features/all/rt/0372-mm-slub-move-slab-initialization-into-irq-enabled-re.patch
@@ -1,8 +1,8 @@
 From: Thomas Gleixner <tglx at linutronix.de>
 Date: Tue, 14 Jul 2015 14:26:34 +0200
-Subject: [PATCH 372/374] mm/slub: move slab initialization into irq enabled
+Subject: [PATCH 372/380] mm/slub: move slab initialization into irq enabled
  region
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=9d105e26682b5d15d045db66e7b4034a0d871cda
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=31f018a674f2e7405c7d8a5c27e96ec3c2c54ca3
 
 Initializing a new slab can introduce rather large latencies because most
 of the initialization runs always with interrupts disabled.
@@ -28,7 +28,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 37 insertions(+), 40 deletions(-)
 
 diff --git a/mm/slub.c b/mm/slub.c
-index 60c69696..9948315 100644
+index 60c69696eb0b..9948315499bf 100644
 --- a/mm/slub.c
 +++ b/mm/slub.c
 @@ -1258,6 +1258,14 @@ static inline void slab_free_hook(struct kmem_cache *s, void *x) {}
diff --git a/debian/patches/features/all/rt/0373-xfs-Disable-percpu-SB-on-PREEMPT_RT_FULL.patch b/debian/patches/features/all/rt/0373-xfs-Disable-percpu-SB-on-PREEMPT_RT_FULL.patch
index af31c5e..75b5018 100644
--- a/debian/patches/features/all/rt/0373-xfs-Disable-percpu-SB-on-PREEMPT_RT_FULL.patch
+++ b/debian/patches/features/all/rt/0373-xfs-Disable-percpu-SB-on-PREEMPT_RT_FULL.patch
@@ -1,7 +1,7 @@
 From: Steven Rostedt <rostedt at goodmis.org>
 Date: Wed, 13 May 2015 11:36:32 -0400
-Subject: [PATCH 373/374] xfs: Disable percpu SB on PREEMPT_RT_FULL
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=d530196283c43abf8523dfe6651d27827f88e851
+Subject: [PATCH 373/380] xfs: Disable percpu SB on PREEMPT_RT_FULL
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=627c5cc17d53b155583fe4f94bc0f92dfcad0426
 
 Running a test on a large CPU count box with xfs, I hit a live lock
 with the following backtraces on several CPUs:
@@ -98,7 +98,7 @@ Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/fs/xfs/xfs_linux.h b/fs/xfs/xfs_linux.h
-index 828662f..13d86a8 100644
+index 828662f70d64..13d86a8dae43 100644
 --- a/fs/xfs/xfs_linux.h
 +++ b/fs/xfs/xfs_linux.h
 @@ -97,7 +97,7 @@
diff --git a/debian/patches/features/all/rt/0374-rtmutex-Handle-non-enqueued-waiters-gracefully.patch b/debian/patches/features/all/rt/0374-rtmutex-Handle-non-enqueued-waiters-gracefully.patch
new file mode 100644
index 0000000..dd09278
--- /dev/null
+++ b/debian/patches/features/all/rt/0374-rtmutex-Handle-non-enqueued-waiters-gracefully.patch
@@ -0,0 +1,35 @@
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Fri, 6 Nov 2015 18:51:03 +0100
+Subject: [PATCH 374/380] rtmutex: Handle non enqueued waiters gracefully
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2c0a3d7de764bb6bf6e4af8d471bce8427ae5333
+
+Yimin debugged that in case of a PI wakeup in progress when
+rt_mutex_start_proxy_lock() calls task_blocks_on_rt_mutex() the latter
+returns -EAGAIN and in consequence the remove_waiter() call runs into
+a BUG_ON() because there is nothing to remove.
+
+Guard it with rt_mutex_has_waiters(). This is a quick fix which is
+easy to backport. The proper fix is to have a central check in
+remove_waiter() so we can call it unconditionally.
+
+Reported-and-debugged-by: Yimin Deng <yimin11.deng at gmail.com>
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Cc: stable-rt at vger.kernel.org
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ kernel/rtmutex.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
+index 52cab2720a06..f074834c1ad6 100644
+--- a/kernel/rtmutex.c
++++ b/kernel/rtmutex.c
+@@ -1935,7 +1935,7 @@ int rt_mutex_start_proxy_lock(struct rt_mutex *lock,
+ 		ret = 0;
+ 	}
+ 
+-	if (unlikely(ret))
++	if (ret && rt_mutex_has_waiters(lock))
+ 		remove_waiter(lock, waiter);
+ 
+ 	raw_spin_unlock(&lock->wait_lock);
diff --git a/debian/patches/features/all/rt/0375-rtmutex-Use-chainwalking-control-enum.patch b/debian/patches/features/all/rt/0375-rtmutex-Use-chainwalking-control-enum.patch
new file mode 100644
index 0000000..6aac906
--- /dev/null
+++ b/debian/patches/features/all/rt/0375-rtmutex-Use-chainwalking-control-enum.patch
@@ -0,0 +1,31 @@
+From: "bmouring at ni.com" <bmouring at ni.com>
+Date: Tue, 15 Dec 2015 17:07:30 -0600
+Subject: [PATCH 375/380] rtmutex: Use chainwalking control enum
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3be5599ec37b044b03688570ffe5e001fd56adbe
+
+In 8930ed80 (rtmutex: Cleanup deadlock detector debug logic),
+chainwalking control enums were introduced to limit the deadlock
+detection logic. One of the calls to task_blocks_on_rt_mutex was
+missed when converting to use the enums.
+
+Cc: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Brad Mouring <brad.mouring at ni.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ kernel/rtmutex.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
+index f074834c1ad6..2a4c34bb586f 100644
+--- a/kernel/rtmutex.c
++++ b/kernel/rtmutex.c
+@@ -1179,7 +1179,7 @@ static void  noinline __sched rt_spin_lock_slowlock(struct rt_mutex *lock)
+ 	__set_current_state(TASK_UNINTERRUPTIBLE);
+ 	pi_unlock(&self->pi_lock);
+ 
+-	ret = task_blocks_on_rt_mutex(lock, &waiter, self, 0);
++	ret = task_blocks_on_rt_mutex(lock, &waiter, self, RT_MUTEX_MIN_CHAINWALK);
+ 	BUG_ON(ret);
+ 
+ 	for (;;) {
diff --git a/debian/patches/features/all/rt/0376-dump-stack-don-t-disable-preemption-during-trace.patch b/debian/patches/features/all/rt/0376-dump-stack-don-t-disable-preemption-during-trace.patch
new file mode 100644
index 0000000..012a38d
--- /dev/null
+++ b/debian/patches/features/all/rt/0376-dump-stack-don-t-disable-preemption-during-trace.patch
@@ -0,0 +1,60 @@
+From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
+Date: Sun, 16 Aug 2015 14:27:50 +0200
+Subject: [PATCH 376/380] dump stack: don't disable preemption during trace
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=b95ca6c1a3dad3d44b25bb65d66c38d4836c0b13
+
+I see here large latencies during a stack dump on x86. The
+preempt_disable() and get_cpu() should forbid moving the task to another
+CPU during a stack dump and avoiding two stack traces in parallel on the
+same CPU. However a stack trace from a second CPU may still happen in
+parallel. Also nesting is allowed so a stack trace happens in
+process-context and we may have another one from IRQ context. With migrate
+disable we keep this code preemptible and allow a second backtrace on
+the same CPU by another task.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ arch/x86/kernel/dumpstack_64.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/arch/x86/kernel/dumpstack_64.c b/arch/x86/kernel/dumpstack_64.c
+index 5e890ccd5429..530fdb80d250 100644
+--- a/arch/x86/kernel/dumpstack_64.c
++++ b/arch/x86/kernel/dumpstack_64.c
+@@ -114,7 +114,7 @@ void dump_trace(struct task_struct *task, struct pt_regs *regs,
+ 		unsigned long *stack, unsigned long bp,
+ 		const struct stacktrace_ops *ops, void *data)
+ {
+-	const unsigned cpu = get_cpu();
++	const unsigned cpu = get_cpu_light();
+ 	unsigned long *irq_stack_end =
+ 		(unsigned long *)per_cpu(irq_stack_ptr, cpu);
+ 	unsigned used = 0;
+@@ -191,7 +191,7 @@ void dump_trace(struct task_struct *task, struct pt_regs *regs,
+ 	 * This handles the process stack:
+ 	 */
+ 	bp = ops->walk_stack(tinfo, stack, bp, ops, data, NULL, &graph);
+-	put_cpu();
++	put_cpu_light();
+ }
+ EXPORT_SYMBOL(dump_trace);
+ 
+@@ -205,7 +205,7 @@ show_stack_log_lvl(struct task_struct *task, struct pt_regs *regs,
+ 	int cpu;
+ 	int i;
+ 
+-	preempt_disable();
++	migrate_disable();
+ 	cpu = smp_processor_id();
+ 
+ 	irq_stack_end	= (unsigned long *)(per_cpu(irq_stack_ptr, cpu));
+@@ -238,7 +238,7 @@ show_stack_log_lvl(struct task_struct *task, struct pt_regs *regs,
+ 		printk(KERN_CONT " %016lx", *stack++);
+ 		touch_nmi_watchdog();
+ 	}
+-	preempt_enable();
++	migrate_enable();
+ 
+ 	printk(KERN_CONT "\n");
+ 	show_trace_log_lvl(task, regs, sp, bp, log_lvl);
diff --git a/debian/patches/features/all/rt/0377-net-Make-synchronize_rcu_expedited-conditional-on-RT.patch b/debian/patches/features/all/rt/0377-net-Make-synchronize_rcu_expedited-conditional-on-RT.patch
new file mode 100644
index 0000000..8d8ef21
--- /dev/null
+++ b/debian/patches/features/all/rt/0377-net-Make-synchronize_rcu_expedited-conditional-on-RT.patch
@@ -0,0 +1,40 @@
+From: Josh Cartwright <joshc at ni.com>
+Date: Tue, 27 Oct 2015 07:31:53 -0500
+Subject: [PATCH 377/380] net: Make synchronize_rcu_expedited() conditional on
+ !RT_FULL
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=2d565bfbc6ff3ae770bf0eab9caea63ea169014b
+
+While the use of synchronize_rcu_expedited() might make
+synchronize_net() "faster", it does so at significant cost on RT
+systems, as expediting a grace period forcibly preempts any
+high-priority RT tasks (via the stop_machine() mechanism).
+
+Without this change, we can observe a latency spike up to 30us with
+cyclictest by rapidly unplugging/reestablishing an ethernet link.
+
+Suggested-by: Paul E. McKenney <paulmck at linux.vnet.ibm.com>
+Signed-off-by: Josh Cartwright <joshc at ni.com>
+Cc: bigeasy at linutronix.de
+Acked-by: Eric Dumazet <eric.dumazet at gmail.com>
+Acked-by: David S. Miller <davem at davemloft.net>
+Cc: Paul E. McKenney <paulmck at linux.vnet.ibm.com>
+Link: http://lkml.kernel.org/r/20151027123153.GG8245@jcartwri.amer.corp.natinst.com
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ net/core/dev.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/net/core/dev.c b/net/core/dev.c
+index f7f91c97933b..b6fa0b2fd713 100644
+--- a/net/core/dev.c
++++ b/net/core/dev.c
+@@ -6169,7 +6169,7 @@ EXPORT_SYMBOL(free_netdev);
+ void synchronize_net(void)
+ {
+ 	might_sleep();
+-	if (rtnl_is_locked())
++	if (rtnl_is_locked() && !IS_ENABLED(CONFIG_PREEMPT_RT_FULL))
+ 		synchronize_rcu_expedited();
+ 	else
+ 		synchronize_rcu();
diff --git a/debian/patches/features/all/rt/0378-sched-Introduce-the-trace_sched_waking-tracepoint.patch b/debian/patches/features/all/rt/0378-sched-Introduce-the-trace_sched_waking-tracepoint.patch
new file mode 100644
index 0000000..486e94a
--- /dev/null
+++ b/debian/patches/features/all/rt/0378-sched-Introduce-the-trace_sched_waking-tracepoint.patch
@@ -0,0 +1,170 @@
+From: Peter Zijlstra <peterz at infradead.org>
+Date: Sun, 25 Oct 2015 16:35:24 -0400
+Subject: [PATCH 378/380] sched: Introduce the trace_sched_waking tracepoint
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=10fa1ca0c0feac60a4f9570fd8c01ecbd51ed8c7
+
+Upstream commit fbd705a0c6184580d0e2fbcbd47a37b6e5822511
+
+Mathieu reported that since 317f394160e9 ("sched: Move the second half
+of ttwu() to the remote cpu") trace_sched_wakeup() can happen out of
+context of the waker.
+
+This is a problem when you want to analyse wakeup paths because it is
+now very hard to correlate the wakeup event to whoever issued the
+wakeup.
+
+OTOH trace_sched_wakeup() is issued at the point where we set
+p->state = TASK_RUNNING, which is right were we hand the task off to
+the scheduler, so this is an important point when looking at
+scheduling behaviour, up to here its been the wakeup path everything
+hereafter is due to scheduler policy.
+
+To bridge this gap, introduce a second tracepoint: trace_sched_waking.
+It is guaranteed to be called in the waker context.
+
+[ Ported to linux-4.1.y-rt kernel by Mathieu Desnoyers. Resolved
+  conflict: try_to_wake_up_local() does not exist in -rt kernel. Removed
+  its instrumentation hunk. ]
+
+Reported-by: Mathieu Desnoyers <mathieu.desnoyers at efficios.com>
+CC: Julien Desfossez <jdesfossez at efficios.com>
+CC: Peter Zijlstra (Intel) <peterz at infradead.org>
+Cc: Francis Giraldeau <francis.giraldeau at gmail.com>
+Cc: Linus Torvalds <torvalds at linux-foundation.org>
+Cc: Mike Galbraith <efault at gmx.de>
+Cc: Peter Zijlstra <peterz at infradead.org>
+Cc: Steven Rostedt <rostedt at goodmis.org>
+Cc: Thomas Gleixner <tglx at linutronix.de>
+CC: Ingo Molnar <mingo at kernel.org>
+Link: http://lkml.kernel.org/r/20150609091336.GQ3644@twins.programming.kicks-ass.net
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers at efficios.com>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ include/trace/events/sched.h      | 30 +++++++++++++++++++++---------
+ kernel/sched.c                    |  7 +++++--
+ kernel/trace/trace_sched_switch.c |  2 +-
+ kernel/trace/trace_sched_wakeup.c |  2 +-
+ 4 files changed, 28 insertions(+), 13 deletions(-)
+
+diff --git a/include/trace/events/sched.h b/include/trace/events/sched.h
+index 959ff18b63b6..29cfc3fe68ad 100644
+--- a/include/trace/events/sched.h
++++ b/include/trace/events/sched.h
+@@ -54,9 +54,9 @@ TRACE_EVENT(sched_kthread_stop_ret,
+  */
+ DECLARE_EVENT_CLASS(sched_wakeup_template,
+ 
+-	TP_PROTO(struct task_struct *p, int success),
++	TP_PROTO(struct task_struct *p),
+ 
+-	TP_ARGS(p, success),
++	TP_ARGS(p),
+ 
+ 	TP_STRUCT__entry(
+ 		__array(	char,	comm,	TASK_COMM_LEN	)
+@@ -70,25 +70,37 @@ DECLARE_EVENT_CLASS(sched_wakeup_template,
+ 		memcpy(__entry->comm, p->comm, TASK_COMM_LEN);
+ 		__entry->pid		= p->pid;
+ 		__entry->prio		= p->prio;
+-		__entry->success	= success;
++		__entry->success	= 1; /* rudiment, kill when possible */
+ 		__entry->target_cpu	= task_cpu(p);
+ 	),
+ 
+-	TP_printk("comm=%s pid=%d prio=%d success=%d target_cpu=%03d",
++	TP_printk("comm=%s pid=%d prio=%d target_cpu=%03d",
+ 		  __entry->comm, __entry->pid, __entry->prio,
+-		  __entry->success, __entry->target_cpu)
++		  __entry->target_cpu)
+ );
+ 
++/*
++ * Tracepoint called when waking a task; this tracepoint is guaranteed to be
++ * called from the waking context.
++ */
++DEFINE_EVENT(sched_wakeup_template, sched_waking,
++	     TP_PROTO(struct task_struct *p),
++	     TP_ARGS(p));
++
++ /*
++  * Tracepoint called when the task is actually woken; p->state == TASK_RUNNNG.
++  * It it not always called from the waking context.
++  */
+ DEFINE_EVENT(sched_wakeup_template, sched_wakeup,
+-	     TP_PROTO(struct task_struct *p, int success),
+-	     TP_ARGS(p, success));
++	     TP_PROTO(struct task_struct *p),
++	     TP_ARGS(p));
+ 
+ /*
+  * Tracepoint for waking up a new task:
+  */
+ DEFINE_EVENT(sched_wakeup_template, sched_wakeup_new,
+-	     TP_PROTO(struct task_struct *p, int success),
+-	     TP_ARGS(p, success));
++	     TP_PROTO(struct task_struct *p),
++	     TP_ARGS(p));
+ 
+ #ifdef CREATE_TRACE_POINTS
+ static inline long __trace_sched_switch_state(struct task_struct *p)
+diff --git a/kernel/sched.c b/kernel/sched.c
+index 1615ca209afd..a9f6d6c0ab93 100644
+--- a/kernel/sched.c
++++ b/kernel/sched.c
+@@ -2661,10 +2661,11 @@ static void ttwu_activate(struct rq *rq, struct task_struct *p, int en_flags)
+ static void
+ ttwu_do_wakeup(struct rq *rq, struct task_struct *p, int wake_flags)
+ {
+-	trace_sched_wakeup(p, true);
+ 	check_preempt_curr(rq, p, wake_flags);
+ 
+ 	p->state = TASK_RUNNING;
++	trace_sched_wakeup(p);
++
+ #ifdef CONFIG_SMP
+ 	if (p->sched_class->task_woken)
+ 		p->sched_class->task_woken(rq, p);
+@@ -2852,6 +2853,8 @@ try_to_wake_up(struct task_struct *p, unsigned int state, int wake_flags)
+ 	if (!(wake_flags & WF_LOCK_SLEEPER))
+ 		p->saved_state = TASK_RUNNING;
+ 
++	trace_sched_waking(p);
++
+ 	success = 1; /* we're going to change ->state */
+ 	cpu = task_cpu(p);
+ 
+@@ -3070,7 +3073,7 @@ void wake_up_new_task(struct task_struct *p)
+ 	rq = __task_rq_lock(p);
+ 	activate_task(rq, p, 0);
+ 	p->on_rq = 1;
+-	trace_sched_wakeup_new(p, true);
++	trace_sched_wakeup_new(p);
+ 	check_preempt_curr(rq, p, WF_FORK);
+ #ifdef CONFIG_SMP
+ 	if (p->sched_class->task_woken)
+diff --git a/kernel/trace/trace_sched_switch.c b/kernel/trace/trace_sched_switch.c
+index 7e62c0a18456..5982146ee863 100644
+--- a/kernel/trace/trace_sched_switch.c
++++ b/kernel/trace/trace_sched_switch.c
+@@ -108,7 +108,7 @@ tracing_sched_wakeup_trace(struct trace_array *tr,
+ }
+ 
+ static void
+-probe_sched_wakeup(void *ignore, struct task_struct *wakee, int success)
++probe_sched_wakeup(void *ignore, struct task_struct *wakee)
+ {
+ 	struct trace_array_cpu *data;
+ 	unsigned long flags;
+diff --git a/kernel/trace/trace_sched_wakeup.c b/kernel/trace/trace_sched_wakeup.c
+index 6857e0c99656..a3f6ef0642f1 100644
+--- a/kernel/trace/trace_sched_wakeup.c
++++ b/kernel/trace/trace_sched_wakeup.c
+@@ -403,7 +403,7 @@ static void wakeup_reset(struct trace_array *tr)
+ }
+ 
+ static void
+-probe_wakeup(void *ignore, struct task_struct *p, int success)
++probe_wakeup(void *ignore, struct task_struct *p)
+ {
+ 	struct trace_array_cpu *data;
+ 	int cpu = smp_processor_id();
diff --git a/debian/patches/features/all/rt/0379-rtmutex-Have-slowfn-of-rt_mutex_timed_fastlock-use-e.patch b/debian/patches/features/all/rt/0379-rtmutex-Have-slowfn-of-rt_mutex_timed_fastlock-use-e.patch
new file mode 100644
index 0000000..3dc9f04
--- /dev/null
+++ b/debian/patches/features/all/rt/0379-rtmutex-Have-slowfn-of-rt_mutex_timed_fastlock-use-e.patch
@@ -0,0 +1,29 @@
+From: "Steven Rostedt (Red Hat)" <rostedt at goodmis.org>
+Date: Fri, 26 Feb 2016 10:03:48 -0500
+Subject: [PATCH 379/380] rtmutex: Have slowfn of rt_mutex_timed_fastlock() use
+ enum
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=c1548010e72e35c24663fc8c16e31da739f0da17
+
+The backport of commit 8930ed80f970 "rtmutex: Cleanup deadlock detector
+debug logic" had conflicts, and the conflict resolution changed
+rt_mutex_timed_fastlock()'s parameter to an enum, but missed changing its
+slowfn's prototype.
+
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ kernel/rtmutex.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
+index 2a4c34bb586f..e836b05093a1 100644
+--- a/kernel/rtmutex.c
++++ b/kernel/rtmutex.c
+@@ -1657,7 +1657,7 @@ rt_mutex_timed_fastlock(struct rt_mutex *lock, int state,
+ 			enum rtmutex_chainwalk chwalk,
+ 			int (*slowfn)(struct rt_mutex *lock, int state,
+ 				      struct hrtimer_sleeper *timeout,
+-				      int detect_deadlock))
++				      enum rtmutex_chainwalk chwalk))
+ {
+ 	if (chwalk == RT_MUTEX_MIN_CHAINWALK &&
+ 	    likely(rt_mutex_cmpxchg(lock, NULL, current))) {
diff --git a/debian/patches/features/all/rt/0374-Linux-3.2.72-rt105-REBASE.patch b/debian/patches/features/all/rt/0380-Linux-3.2.77-rt111-REBASE.patch
similarity index 60%
rename from debian/patches/features/all/rt/0374-Linux-3.2.72-rt105-REBASE.patch
rename to debian/patches/features/all/rt/0380-Linux-3.2.77-rt111-REBASE.patch
index 4a9072d..3395fee 100644
--- a/debian/patches/features/all/rt/0374-Linux-3.2.72-rt105-REBASE.patch
+++ b/debian/patches/features/all/rt/0380-Linux-3.2.77-rt111-REBASE.patch
@@ -1,16 +1,16 @@
 From: "Steven Rostedt (Red Hat)" <rostedt at goodmis.org>
-Date: Mon, 10 Aug 2015 10:14:45 -0400
-Subject: [PATCH 374/374] Linux 3.2.72-rt105 REBASE
-Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=990858a55976e7701718911eb94fce5411e8509e
+Date: Mon, 29 Feb 2016 12:01:30 -0500
+Subject: [PATCH 380/380] Linux 3.2.77-rt111 REBASE
+Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=3e2fab6ff342fc0b94d30cc90789df71f06a46c9
 
 ---
  localversion-rt | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/localversion-rt b/localversion-rt
-index b2111a2..b4e5b00 100644
+index b2111a212663..9969a4b69fad 100644
 --- a/localversion-rt
 +++ b/localversion-rt
 @@ -1 +1 @@
 --rt24
-+-rt105
++-rt111
diff --git a/debian/patches/series b/debian/patches/series
index 27c9952..dc4c89b 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1159,33 +1159,12 @@ debian/bh-avoid-abi-change-in-3.2.71.patch
 debian/x86-mm-avoid-abi-change-in-3.2.72.patch
 
 bugfix/all/KEYS-Don-t-permit-request_key-to-construct-a-new-key.patch
-bugfix/all/media-usbvision-video-fix-memory-leak-of-alt_max_pkt.patch
-bugfix/all/media-usbvision-fix-leak-of-usb_dev-on-failure-paths.patch
-bugfix/all/usbvision-fix-overflow-of-interfaces-array.patch
-bugfix/all/media-usbvision-fix-crash-on-detecting-device-with-i.patch
 debian/af_unix-avoid-abi-changes.patch
 bugfix/all/drm-radeon-fix-hotplug-race-at-startup.patch
-bugfix/all/revert-xhci-don-t-finish-a-td-if-we-get-a-short-transfer.patch
 debian/enclosure-fix-abi-change-in-2.6.32.70.patch
-bugfix/all/usb-serial-visor-fix-crash-on-detecting-device-without-write_urbs.patch
-bugfix/all/sctp-prevent-soft-lockup-when-sctp_accept-is-called-.patch
-bugfix/all/tty-fix-unsafe-ldisc-reference-via-ioctl-tiocgetd.patch
-bugfix/all/unix-properly-account-for-FDs-passed-over-unix-socke.patch
-bugfix/all/pipe-limit-the-per-user-amount-of-pages-allocated-in.patch
 debian/fix-abi-changes-for-cve-2013-4312-fix.patch
-bugfix/x86/x86-mm-Add-barriers-and-document-switch_mm-vs-flush-.patch
-bugfix/x86/x86-mm-Improve-switch_mm-barrier-comments.patch
-bugfix/all/iw_cxgb3-Fix-incorrectly-returning-error-on-success.patch
 bugfix/all/aufs-tiny-extract-a-new-func-xino_fwrite_wkq.patch
 bugfix/all/aufs-for-4.3-xino-handles-eintr-from-the-dying-proce.patch
 bugfix/all/af_unix-guard-against-other-sk-in-unix_dgram_sendmsg.patch
-bugfix/all/pipe-fix-buffer-offset-after-partially-failed-read.patch
-bugfix/all/alsa-usb-audio-avoid-freeing-umidi-object-twice.patch
-bugfix/all/unix-correctly-track-in-flight-fds-in-sending-process-user_struct.patch
-bugfix/all/alsa-seq-fix-missing-null-check-at-remove_events-ioctl.patch
-bugfix/all/alsa-seq-fix-race-at-timer-setup-and-close.patch
-bugfix/all/alsa-timer-fix-double-unlink-of-active_list.patch
-bugfix/all/alsa-timer-fix-race-among-timer-ioctls.patch
-bugfix/all/alsa-timer-harden-slave-timer-list-handling.patch
-bugfix/all/alsa-hrtimer-fix-stall-by-hrtimer_cancel.patch
-
+debian/hrtimer-fix-abi-change-in-3.2.78.patch
+debian/crypto-fix-abi-change-in-3.2.77.patch
diff --git a/debian/patches/series-rt b/debian/patches/series-rt
index 68b775f..82acb29 100644
--- a/debian/patches/series-rt
+++ b/debian/patches/series-rt
@@ -371,4 +371,10 @@ features/all/rt/0370-fs-btrfs-fix-rt-deadlock-on-extent_buffer-lock.patch
 features/all/rt/0371-KVM-lapic-mark-LAPIC-timer-handler-as-irqsafe.patch
 features/all/rt/0372-mm-slub-move-slab-initialization-into-irq-enabled-re.patch
 features/all/rt/0373-xfs-Disable-percpu-SB-on-PREEMPT_RT_FULL.patch
-features/all/rt/0374-Linux-3.2.72-rt105-REBASE.patch
+features/all/rt/0374-rtmutex-Handle-non-enqueued-waiters-gracefully.patch
+features/all/rt/0375-rtmutex-Use-chainwalking-control-enum.patch
+features/all/rt/0376-dump-stack-don-t-disable-preemption-during-trace.patch
+features/all/rt/0377-net-Make-synchronize_rcu_expedited-conditional-on-RT.patch
+features/all/rt/0378-sched-Introduce-the-trace_sched_waking-tracepoint.patch
+features/all/rt/0379-rtmutex-Have-slowfn-of-rt_mutex_timed_fastlock-use-e.patch
+features/all/rt/0380-Linux-3.2.77-rt111-REBASE.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/kernel/linux.git



More information about the Kernel-svn-changes mailing list