[kernel] r19869 - in dists/squeeze-backports/linux: . debian debian/config debian/config/alpha debian/config/armel debian/config/armhf debian/config/hppa debian/config/ia64 debian/config/kernelarch-x86 debian/config/m68k debian/config/mips debian/config/mipsel debian/config/powerpc debian/config/s390 debian/config/sparc debian/installer debian/patches debian/patches/bugfix/all debian/patches/bugfix/ia64 debian/patches/bugfix/x86 debian/patches/debian debian/patches/features/all debian/patches/features/all/alx debian/patches/features/all/aufs3 debian/patches/features/all/be2net debian/patches/features/all/drm debian/patches/features/all/fermi-accel debian/patches/features/all/iguanair debian/patches/features/all/line6 debian/patches/features/all/rt debian/patches/features/all/virtio_scsi debian/patches/features/all/wacom debian/patches/features/arm debian/patches/features/x86/efi-stub
Ben Hutchings
benh at alioth.debian.org
Wed Feb 27 05:58:40 UTC 2013
Author: benh
Date: Wed Feb 27 05:58:28 2013
New Revision: 19869
Log:
Merge changes from sid up to 3.2.39-2
Added:
dists/squeeze-backports/linux/debian/patches/bugfix/all/USB-usb-storage-unusual_devs-update-for-Super-TOP-SA.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/USB-usb-storage-unusual_devs-update-for-Super-TOP-SA.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-nouveau-fix-init-with-agpgart-uninorth.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/drm-nouveau-fix-init-with-agpgart-uninorth.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-Mac-G4-Silver.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-Mac-G4-Silver.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-SAM440ep-embedded.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-SAM440ep-embedded.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-dce32-use-fractional-fb-dividers-for-high.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-dce32-use-fractional-fb-dividers-for-high.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-fix-amd-afusion-gpu-setup-aka-sumo-v2.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-fix-amd-afusion-gpu-setup-aka-sumo-v2.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/ext4-fix-hole-punch-failure-when-depth-is-greater-th.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-hole-punch-failure-when-depth-is-greater-th.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/ext4-fix-kernel-BUG-on-large-scale-rm-rf-commands.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-kernel-BUG-on-large-scale-rm-rf-commands.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/ext4-rewrite-punch-hole-to-use-ext4_ext_remove_space.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/ext4-rewrite-punch-hole-to-use-ext4_ext_remove_space.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/fs-cachefiles-add-support-for-large-files-in-filesys.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/fs-cachefiles-add-support-for-large-files-in-filesys.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/i915-ensure-that-VGA-plane-is-disabled.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/i915-ensure-that-VGA-plane-is-disabled.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/md-protect-against-crash-upon-fsync-on-ro-array.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/md-protect-against-crash-upon-fsync-on-ro-array.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/mm-Try-harder-to-allocate-vmemmap-blocks.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/mm-Try-harder-to-allocate-vmemmap-blocks.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/mm-fix-pageblock-bitmap-allocation.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/all/mm-fix-pageblock-bitmap-allocation.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Close-race-between-processing-unpin-task-an.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-Close-race-between-processing-unpin-task-an.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Disable-AsyncFlip-performance-optimisations.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-Disable-AsyncFlip-performance-optimisations.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-EBUSY-status-handling-added-to-i915_gem_fau.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-EBUSY-status-handling-added-to-i915_gem_fau.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-GFX_MODE-Flush-TLB-Invalidate-Mode-must-be-.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-GFX_MODE-Flush-TLB-Invalidate-Mode-must-be-.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Only-increment-the-user-pin-count-after-suc.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-Only-increment-the-user-pin-count-after-suc.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk_invert_brightness-for-ncr-machine.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk_invert_brightness-for-ncr-machine.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-dump-UTS_RELEASE-into-the-error_state.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-dump-UTS_RELEASE-into-the-error_state.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-kick-any-firmware-framebuffers-before-claim.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-kick-any-firmware-framebuffers-before-claim.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-parameter.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-parameter.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-quirk.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-quirk.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/efi-Clear-EFI_RUNTIME_SERVICES-rather-than-EFI_BOOT-.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/efi-Clear-EFI_RUNTIME_SERVICES-rather-than-EFI_BOOT-.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/x86-efi-Make-noefi-really-disable-EFI-runtime-serivc.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/bugfix/x86/x86-efi-Make-noefi-really-disable-EFI-runtime-serivc.patch
dists/squeeze-backports/linux/debian/patches/debian/net-avoid-ABI-break-in-3.2.37.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/debian/net-avoid-ABI-break-in-3.2.37.patch
dists/squeeze-backports/linux/debian/patches/debian/radeon-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/debian/radeon-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
dists/squeeze-backports/linux/debian/patches/debian/x86-efi-avoid-abi-change-in-3.2.38.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/debian/x86-efi-avoid-abi-change-in-3.2.38.patch
dists/squeeze-backports/linux/debian/patches/features/all/I2C-Add-helper-macro-for-i2c_driver-boilerplate.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/I2C-Add-helper-macro-for-i2c_driver-boilerplate.patch
dists/squeeze-backports/linux/debian/patches/features/all/PCI-Add-helper-macro-for-pci_register_driver-boilerp.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/PCI-Add-helper-macro-for-pci_register_driver-boilerp.patch
dists/squeeze-backports/linux/debian/patches/features/all/USB-Add-helper-macro-for-usb_driver-boilerplate.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/USB-Add-helper-macro-for-usb_driver-boilerplate.patch
dists/squeeze-backports/linux/debian/patches/features/all/alx/
- copied from r19868, dists/sid/linux/debian/patches/features/all/alx/
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0059-be2net-do-not-modify-PCI-MaxReadReq-size.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0059-be2net-do-not-modify-PCI-MaxReadReq-size.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0060-be2net-fix-reporting-number-of-actual-rx-queues.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0060-be2net-fix-reporting-number-of-actual-rx-queues.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0061-be2net-do-not-use-SCRATCHPAD-register.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0061-be2net-do-not-use-SCRATCHPAD-register.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0062-be2net-reduce-gso_max_size-setting-to-account-for-et.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0062-be2net-reduce-gso_max_size-setting-to-account-for-et.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0063-be2net-Increase-statistics-structure-size-for-skyhaw.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0063-be2net-Increase-statistics-structure-size-for-skyhaw.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0064-be2net-Explicitly-clear-the-reserved-field-in-the-Tx.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0064-be2net-Explicitly-clear-the-reserved-field-in-the-Tx.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0065-be2net-Regression-bug-wherein-VFs-creation-broken-fo.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0065-be2net-Regression-bug-wherein-VFs-creation-broken-fo.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0066-be2net-Fix-to-trim-skb-for-padded-vlan-packets-to-wo.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0066-be2net-Fix-to-trim-skb-for-padded-vlan-packets-to-wo.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0067-be2net-Fix-Endian.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0067-be2net-Fix-Endian.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0068-be2net-Enable-RSS-UDP-hashing-for-Lancer-and-Skyhawk.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0068-be2net-Enable-RSS-UDP-hashing-for-Lancer-and-Skyhawk.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0069-be2net-dont-pull-too-much-data-in-skb-linear-part.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0069-be2net-dont-pull-too-much-data-in-skb-linear-part.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0070-be2net-Fix-to-parse-RSS-hash-from-Receive-completion.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0070-be2net-Fix-to-parse-RSS-hash-from-Receive-completion.patch
dists/squeeze-backports/linux/debian/patches/features/all/be2net/0071-netpoll-revert-6bdb7fe3104-and-fix-be_poll-instead.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/be2net/0071-netpoll-revert-6bdb7fe3104-and-fix-be_poll-instead.patch
dists/squeeze-backports/linux/debian/patches/features/all/drivercore-Generalize-module_platform_driver.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/drivercore-Generalize-module_platform_driver.patch
dists/squeeze-backports/linux/debian/patches/features/all/drm/
- copied from r19868, dists/sid/linux/debian/patches/features/all/drm/
dists/squeeze-backports/linux/debian/patches/features/all/ethernet-define-eth_hw_addr_random.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/ethernet-define-eth_hw_addr_random.patch
dists/squeeze-backports/linux/debian/patches/features/all/iguanair/
- copied from r19868, dists/sid/linux/debian/patches/features/all/iguanair/
dists/squeeze-backports/linux/debian/patches/features/all/line6/
- copied from r19868, dists/sid/linux/debian/patches/features/all/line6/
dists/squeeze-backports/linux/debian/patches/features/all/net-define-netdev_features_t.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/net-define-netdev_features_t.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0290-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0290-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0291-sched-Queue-RT-tasks-to-head-when-prio-drops.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0291-sched-Queue-RT-tasks-to-head-when-prio-drops.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0292-sched-Consider-pi-boosting-in-setscheduler.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0292-sched-Consider-pi-boosting-in-setscheduler.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0293-drivers-tty-pl011-irq-disable-madness.patch.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0293-drivers-tty-pl011-irq-disable-madness.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0294-mmci-Remove-bogus-local_irq_save.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0294-mmci-Remove-bogus-local_irq_save.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0295-sched-Init-idle-on_rq-in-init_idle.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0295-sched-Init-idle-on_rq-in-init_idle.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0296-sched-Check-for-idle-task-in-might_sleep.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0296-sched-Check-for-idle-task-in-might_sleep.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0297-mm-swap-Initialize-local-locks-early.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0297-mm-swap-Initialize-local-locks-early.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0298-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0298-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0299-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0299-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0300-printk-Fix-rq-lock-vs-logbuf_lock-unlock-lock-invers.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0300-printk-Fix-rq-lock-vs-logbuf_lock-unlock-lock-invers.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0301-serial-Imx-Fix-recursive-locking-bug.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0301-serial-Imx-Fix-recursive-locking-bug.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0302-wait-simple-Simple-waitqueue-implementation.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0302-wait-simple-Simple-waitqueue-implementation.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0303-rcutiny-Use-simple-waitqueue.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0303-rcutiny-Use-simple-waitqueue.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0304-Linux-3.2.39-rt59-REBASE.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt/0304-Linux-3.2.39-rt59-REBASE.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt2800-add-chipset-revision-RT5390R-support.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/rt2800-add-chipset-revision-RT5390R-support.patch
dists/squeeze-backports/linux/debian/patches/features/all/virtio_scsi/
- copied from r19868, dists/sid/linux/debian/patches/features/all/virtio_scsi/
dists/squeeze-backports/linux/debian/patches/features/all/wacom/0031-input-wacom-fix-touch-support-for-bamboo-fun-cth-461.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/all/wacom/0031-input-wacom-fix-touch-support-for-bamboo-fun-cth-461.patch
dists/squeeze-backports/linux/debian/patches/features/arm/rtc-s35390a-wakealarm.patch
- copied unchanged from r19868, dists/sid/linux/debian/patches/features/arm/rtc-s35390a-wakealarm.patch
Deleted:
dists/squeeze-backports/linux/debian/patches/bugfix/all/exec-do-not-leave-bprm-interp-on-stack.patch
dists/squeeze-backports/linux/debian/patches/bugfix/all/use-clamp_t-in-UNAME26-fix.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/ACPI-video-ignore-BIOS-initial-backlight-value-for-H.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/KVM-x86-invalid-opcode-oops-on-SET_SREGS-with-OSXSAV.patch
dists/squeeze-backports/linux/debian/patches/debian/radeon-no-modeset-without-firmware.patch
dists/squeeze-backports/linux/debian/patches/features/all/fermi-accel/
dists/squeeze-backports/linux/debian/patches/features/all/rt/0290-Linux-3.2.35-rt52-REBASE.patch
Modified:
dists/squeeze-backports/linux/ (props changed)
dists/squeeze-backports/linux/debian/changelog
dists/squeeze-backports/linux/debian/config/alpha/config
dists/squeeze-backports/linux/debian/config/armel/config.iop32x
dists/squeeze-backports/linux/debian/config/armel/config.ixp4xx
dists/squeeze-backports/linux/debian/config/armel/config.kirkwood
dists/squeeze-backports/linux/debian/config/armel/config.mv78xx0
dists/squeeze-backports/linux/debian/config/armel/config.orion5x
dists/squeeze-backports/linux/debian/config/armel/config.versatile
dists/squeeze-backports/linux/debian/config/armhf/config.mx5
dists/squeeze-backports/linux/debian/config/armhf/config.vexpress
dists/squeeze-backports/linux/debian/config/armhf/defines
dists/squeeze-backports/linux/debian/config/config
dists/squeeze-backports/linux/debian/config/defines
dists/squeeze-backports/linux/debian/config/hppa/config
dists/squeeze-backports/linux/debian/config/ia64/config
dists/squeeze-backports/linux/debian/config/kernelarch-x86/config
dists/squeeze-backports/linux/debian/config/kernelarch-x86/config-arch-64
dists/squeeze-backports/linux/debian/config/m68k/config
dists/squeeze-backports/linux/debian/config/mips/config.4kc-malta
dists/squeeze-backports/linux/debian/config/mips/config.5kc-malta
dists/squeeze-backports/linux/debian/config/mips/config.r4k-ip22
dists/squeeze-backports/linux/debian/config/mips/config.sb1-bcm91250a
dists/squeeze-backports/linux/debian/config/mips/config.sb1a-bcm91480b
dists/squeeze-backports/linux/debian/config/mipsel/config.r5k-cobalt
dists/squeeze-backports/linux/debian/config/powerpc/config
dists/squeeze-backports/linux/debian/config/powerpc/config.powerpc64
dists/squeeze-backports/linux/debian/config/s390/config
dists/squeeze-backports/linux/debian/config/sparc/config
dists/squeeze-backports/linux/debian/installer/package-list
dists/squeeze-backports/linux/debian/patches/bugfix/all/usb-Add-USB_QUIRK_RESET_RESUME-for-all-Logitech-UVC-.patch
dists/squeeze-backports/linux/debian/patches/bugfix/ia64/nouveau-ACPI-support-is-dependent-on-X86.patch
dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Only-kick-out-vesafb-if-we-takeover-the-fbc.patch
dists/squeeze-backports/linux/debian/patches/features/all/aufs3/aufs3-add.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0001-Revert-workqueue-skip-nr_running-sanity-check-in-wor.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0002-x86-Call-idle-notifier-after-irq_enter.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0003-slab-lockdep-Annotate-all-slab-caches.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0004-x86-kprobes-Remove-remove-bogus-preempt_enable.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0005-x86-hpet-Disable-MSI-on-Lenovo-W510.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0006-block-Shorten-interrupt-disabled-regions.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0007-sched-Distangle-worker-accounting-from-rq-3Elock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0008-mips-enable-interrupts-in-signal.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0009-arm-enable-interrupts-in-signal-code.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0010-powerpc-85xx-Mark-cascade-irq-IRQF_NO_THREAD.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0011-powerpc-wsp-Mark-opb-cascade-handler-IRQF_NO_THREAD.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0012-powerpc-Mark-IPI-interrupts-IRQF_NO_THREAD.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0013-powerpc-Allow-irq-threading.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0014-sched-Keep-period-timer-ticking-when-throttling-acti.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0015-sched-Do-not-throttle-due-to-PI-boosting.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0016-time-Remove-bogus-comments.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0017-x86-vdso-Remove-bogus-locking-in-update_vsyscall_tz.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0018-x86-vdso-Use-seqcount-instead-of-seqlock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0019-ia64-vsyscall-Use-seqcount-instead-of-seqlock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0020-seqlock-Remove-unused-functions.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0021-seqlock-Use-seqcount.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0022-vfs-fs_struct-Move-code-out-of-seqcount-write-sectio.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0023-timekeeping-Split-xtime_lock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0024-intel_idle-Convert-i7300_idle_lock-to-raw-spinlock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0025-mm-memcg-shorten-preempt-disabled-section-around-eve.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0026-tracing-Account-for-preempt-off-in-preempt_schedule.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0027-signal-revert-ptrace-preempt-magic.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0028-arm-Mark-pmu-interupt-IRQF_NO_THREAD.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0029-arm-Allow-forced-irq-threading.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0030-preempt-rt-Convert-arm-boot_lock-to-raw.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0031-sched-Create-schedule_preempt_disabled.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0032-sched-Use-schedule_preempt_disabled.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0033-signals-Do-not-wakeup-self.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0034-posix-timers-Prevent-broadcast-signals.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0035-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0036-signal-x86-Delay-calling-signals-in-atomic.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0037-generic-Use-raw-local-irq-variant-for-generic-cmpxch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0038-drivers-random-Reduce-preempt-disabled-region.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0039-ARM-AT91-PIT-Remove-irq-handler-when-clock-event-is-.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0040-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0041-drivers-net-tulip_remove_one-needs-to-call-pci_disab.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0042-drivers-net-Use-disable_irq_nosync-in-8139too.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0043-drivers-net-ehea-Make-rx-irq-handler-non-threaded-IR.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0044-drivers-net-at91_ether-Make-mdio-protection-rt-safe.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0045-preempt-mark-legitimated-no-resched-sites.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0046-mm-Prepare-decoupling-the-page-fault-disabling-logic.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0047-mm-Fixup-all-fault-handlers-to-check-current-pagefau.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0048-mm-pagefault_disabled.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0049-mm-raw_pagefault_disable.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0050-filemap-fix-up.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0051-mm-Remove-preempt-count-from-pagefault-disable-enabl.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0052-x86-highmem-Replace-BUG_ON-by-WARN_ON.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0053-suspend-Prevent-might-sleep-splats.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0054-OF-Fixup-resursive-locking-code-paths.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0055-of-convert-devtree-lock.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0056-list-add-list-last-entry.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0057-mm-page-alloc-use-list-last-entry.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0058-mm-slab-move-debug-out.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0059-rwsem-inlcude-fix.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0060-sysctl-include-fix.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0061-net-flip-lock-dep-thingy.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0062-softirq-thread-do-softirq.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0063-softirq-split-out-code.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0064-x86-Do-not-unmask-io_apic-when-interrupt-is-in-progr.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0065-x86-32-fix-signal-crap.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0066-x86-Do-not-disable-preemption-in-int3-on-32bit.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0067-rcu-Reduce-lock-section.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0068-locking-various-init-fixes.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0069-wait-Provide-__wake_up_all_locked.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0070-pci-Use-__wake_up_all_locked-pci_unblock_user_cfg_ac.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0071-latency-hist.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0072-hwlatdetect.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0073-localversion.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0074-early-printk-consolidate.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0075-printk-kill.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0076-printk-force_early_printk-boot-param-to-help-with-de.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0077-rt-preempt-base-config.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0078-bug-BUG_ON-WARN_ON-variants-dependend-on-RT-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0079-rt-local_irq_-variants-depending-on-RT-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0080-preempt-Provide-preempt_-_-no-rt-variants.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0081-ata-Do-not-disable-interrupts-in-ide-code-for-preemp.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0082-ide-Do-not-disable-interrupts-for-PREEMPT-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0083-infiniband-Mellanox-IB-driver-patch-use-_nort-primit.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0084-input-gameport-Do-not-disable-interrupts-on-PREEMPT_.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0085-acpi-Do-not-disable-interrupts-on-PREEMPT_RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0086-core-Do-not-disable-interrupts-on-RT-in-kernel-users.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0087-core-Do-not-disable-interrupts-on-RT-in-res_counter..patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0088-usb-Use-local_irq_-_nort-variants.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0089-tty-Do-not-disable-interrupts-in-put_ldisc-on-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0090-mm-scatterlist-dont-disable-irqs-on-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0091-signal-fix-up-rcu-wreckage.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0092-net-wireless-warn-nort.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0093-mm-Replace-cgroup_page-bit-spinlock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0094-buffer_head-Replace-bh_uptodate_lock-for-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0095-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0096-genirq-Disable-DEBUG_SHIRQ-for-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0097-genirq-Disable-random-call-on-preempt-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0098-genirq-disable-irqpoll-on-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0099-genirq-force-threading.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0100-drivers-net-fix-livelock-issues.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0101-drivers-net-vortex-fix-locking-issues.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0102-drivers-net-gianfar-Make-RT-aware.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0103-USB-Fix-the-mouse-problem-when-copying-large-amounts.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0104-local-var.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0105-rt-local-irq-lock.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0106-cpu-rt-variants.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0107-mm-slab-wrap-functions.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0108-slab-Fix-__do_drain-to-use-the-right-array-cache.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0109-mm-More-lock-breaks-in-slab.c.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0110-mm-page_alloc-rt-friendly-per-cpu-pages.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0111-mm-page_alloc-reduce-lock-sections-further.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0112-mm-page-alloc-fix.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0113-mm-convert-swap-to-percpu-locked.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0114-mm-vmstat-fix-the-irq-lock-asymetry.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0115-mm-make-vmstat-rt-aware.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0116-mm-shrink-the-page-frame-to-rt-size.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0117-ARM-Initialize-ptl-lock-for-vector-page.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0118-mm-Allow-only-slab-on-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0119-radix-tree-rt-aware.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0120-panic-disable-random-on-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0121-ipc-Make-the-ipc-code-rt-aware.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0122-ipc-mqueue-Add-a-critical-section-to-avoid-a-deadloc.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0123-relay-fix-timer-madness.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0124-net-ipv4-route-use-locks-on-up-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0125-workqueue-avoid-the-lock-in-cpu-dying.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0126-timers-prepare-for-full-preemption.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0127-timers-preempt-rt-support.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0128-timers-fix-timer-hotplug-on-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0129-timers-mov-printk_tick-to-soft-interrupt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0130-timer-delay-waking-softirqs-from-the-jiffy-tick.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0131-timers-Avoid-the-switch-timers-base-set-to-NULL-tric.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0132-printk-Don-t-call-printk_tick-in-printk_needs_cpu-on.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0133-hrtimers-prepare-full-preemption.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0134-hrtimer-fixup-hrtimer-callback-changes-for-preempt-r.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0135-hrtimer-Don-t-call-the-timer-handler-from-hrtimer_st.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0136-hrtimer-Add-missing-debug_activate-aid-Was-Re-ANNOUN.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0137-hrtimer-fix-reprogram-madness.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0138-timer-fd-Prevent-live-lock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0139-posix-timers-thread-posix-cpu-timers-on-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0140-posix-timers-Shorten-posix_cpu_timers-CPU-kernel-thr.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0141-posix-timers-Avoid-wakeups-when-no-timers-are-active.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0142-sched-delay-put-task.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0143-sched-limit-nr-migrate.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0144-sched-mmdrop-delayed.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0145-sched-rt-mutex-wakeup.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0146-sched-prevent-idle-boost.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0147-sched-might-sleep-do-not-account-rcu-depth.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0148-sched-Break-out-from-load_balancing-on-rq_lock-conte.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0149-sched-cond-resched.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0150-cond-resched-softirq-fix.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0151-sched-no-work-when-pi-blocked.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0152-cond-resched-lock-rt-tweak.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0153-sched-disable-ttwu-queue.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0154-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0155-sched-ttwu-Return-success-when-only-changing-the-sav.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0156-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0157-stomp-machine-mark-stomper-thread.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0158-stomp-machine-raw-lock.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0159-hotplug-Lightweight-get-online-cpus.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0160-hotplug-sync_unplug-No.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0161-hotplug-Reread-hotplug_pcp-on-pin_current_cpu-retry.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0162-sched-migrate-disable.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0163-hotplug-use-migrate-disable.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0164-hotplug-Call-cpu_unplug_begin-before-DOWN_PREPARE.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0165-ftrace-migrate-disable-tracing.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0166-tracing-Show-padding-as-unsigned-short.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0167-migrate-disable-rt-variant.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0168-sched-Optimize-migrate_disable.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0169-sched-Generic-migrate_disable.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0170-sched-rt-Fix-migrate_enable-thinko.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0171-sched-teach-migrate_disable-about-atomic-contexts.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0172-sched-Postpone-actual-migration-disalbe-to-schedule.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0173-sched-Do-not-compare-cpu-masks-in-scheduler.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0174-sched-Have-migrate_disable-ignore-bounded-threads.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0175-sched-clear-pf-thread-bound-on-fallback-rq.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0176-ftrace-crap.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0177-ring-buffer-Convert-reader_lock-from-raw_spin_lock-i.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0178-net-netif_rx_ni-migrate-disable.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0179-softirq-Sanitize-softirq-pending-for-NOHZ-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0180-lockdep-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0181-mutex-no-spin-on-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0182-softirq-local-lock.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0183-softirq-Export-in_serving_softirq.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0184-hardirq.h-Define-softirq_count-as-OUL-to-kill-build-.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0185-softirq-Fix-unplug-deadlock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0186-softirq-disable-softirq-stacks-for-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0187-softirq-make-fifo.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0188-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0189-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0190-local-vars-migrate-disable.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0191-md-raid5-Make-raid5_percpu-handling-RT-aware.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0192-rtmutex-lock-killable.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0193-rtmutex-futex-prepare-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0194-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0195-rt-mutex-add-sleeping-spinlocks-support.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0196-spinlock-types-separate-raw.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0197-rtmutex-avoid-include-hell.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0198-rt-add-rt-spinlocks.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0199-rt-add-rt-to-mutex-headers.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0200-rwsem-add-rt-variant.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0201-rt-Add-the-preempt-rt-lock-replacement-APIs.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0202-rwlocks-Fix-section-mismatch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0203-timer-handle-idle-trylock-in-get-next-timer-irq.patc.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0204-RCU-Force-PREEMPT_RCU-for-PREEMPT-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0205-rcu-Frob-softirq-test.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0206-rcu-Merge-RCU-bh-into-RCU-preempt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0207-rcu-Fix-macro-substitution-for-synchronize_rcu_bh-on.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0208-rcu-more-fallout.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0209-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0210-rt-rcutree-Move-misplaced-prototype.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0211-lglocks-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0212-serial-8250-Clean-up-the-locking-for-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0213-serial-8250-Call-flush_to_ldisc-when-the-irq-is-thre.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0214-drivers-tty-fix-omap-lock-crap.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0215-rt-Improve-the-serial-console-PASS_LIMIT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0216-fs-namespace-preemption-fix.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0217-mm-protect-activate-switch-mm.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0218-fs-block-rt-support.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0219-fs-ntfs-disable-interrupt-only-on-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0220-x86-Convert-mce-timer-to-hrtimer.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0221-x86-stackprotector-Avoid-random-pool-on-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0222-x86-Use-generic-rwsem_spinlocks-on-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0223-x86-Disable-IST-stacks-for-debug-int-3-stack-fault-f.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0224-workqueue-use-get-cpu-light.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0225-epoll.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0226-mm-vmalloc.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0227-debugobjects-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0228-jump-label-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0229-skbufhead-raw-lock.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0230-x86-no-perf-irq-work-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0231-console-make-rt-friendly.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0232-printk-Disable-migration-instead-of-preemption.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0233-power-use-generic-rwsem-on-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0234-power-disable-highmem-on-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0235-arm-disable-highmem-on-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0236-ARM-at91-tclib-Default-to-tclib-timer-for-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0237-mips-disable-highmem-on-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0238-net-Avoid-livelock-in-net_tx_action-on-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0239-ping-sysrq.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0240-kgdb-serial-Short-term-workaround.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0241-add-sys-kernel-realtime-entry.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0242-mm-rt-kmap_atomic-scheduling.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0243-ipc-sem-Rework-semaphore-wakeups.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0244-sysrq-Allow-immediate-Magic-SysRq-output-for-PREEMPT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0245-x86-kvm-require-const-tsc-for-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0246-scsi-fcoe-rt-aware.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0247-x86-crypto-Reduce-preempt-disabled-regions.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0248-dm-Make-rt-aware.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0249-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0250-seqlock-Prevent-rt-starvation.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0251-timer-Fix-hotplug-for-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0252-futex-rt-Fix-possible-lockup-when-taking-pi_lock-in-.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0253-ring-buffer-rt-Check-for-irqs-disabled-before-grabbi.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0254-sched-rt-Fix-wait_task_interactive-to-test-rt_spin_l.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0255-lglock-rt-Use-non-rt-for_each_cpu-in-rt-code.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0256-cpu-Make-hotplug.lock-a-sleeping-spinlock-on-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0257-softirq-Check-preemption-after-reenabling-interrupts.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0258-rt-Introduce-cpu_chill.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0259-fs-dcache-Use-cpu_chill-in-trylock-loops.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0260-net-Use-cpu_chill-instead-of-cpu_relax.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0261-kconfig-disable-a-few-options-rt.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0262-kconfig-preempt-rt-full.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0263-rt-Make-migrate_disable-enable-and-__rt_mutex_init-n.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0264-scsi-qla2xxx-Use-local_irq_save_nort-in-qla2x00_poll.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0265-net-RT-REmove-preemption-disabling-in-netif_rx.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0266-mips-remove-smp-reserve-lock.patch.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0267-Latency-histogramms-Cope-with-backwards-running-loca.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0268-Latency-histograms-Adjust-timer-if-already-elapsed-w.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0269-Disable-RT_GROUP_SCHED-in-PREEMPT_RT_FULL.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0270-Latency-histograms-Detect-another-yet-overlooked-sha.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0271-slab-Prevent-local-lock-deadlock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0272-fs-jbd-pull-your-plug-when-waiting-for-space.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0273-perf-Make-swevent-hrtimer-run-in-irq-instead-of-soft.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0274-cpu-rt-Rework-cpu-down-for-PREEMPT_RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0275-cpu-rt-Fix-cpu_hotplug-variable-initialization.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0276-time-rt-Fix-up-leap-second-backport-for-RT-changes.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0277-fix-printk-flush-of-messages.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0278-fix-printk-flush-of-messages.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0279-random-Make-it-work-on-rt.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0280-softirq-Init-softirq-local-lock-after-per-cpu-sectio.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0281-mm-slab-Fix-potential-deadlock.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0282-mm-page_alloc-Use-local_lock_on-instead-of-plain-spi.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0283-rt-rwsem-rwlock-lockdep-annotations.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0284-sched-Better-debug-output-for-might-sleep.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0285-stomp_machine-Use-mutex_trylock-when-called-from-ina.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0286-slab-Fix-up-stable-merge-of-slab-init_lock_keys.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0287-hrtimer-Raise-softirq-if-hrtimer-irq-stalled.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0288-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/0289-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch
dists/squeeze-backports/linux/debian/patches/features/all/rt/series
dists/squeeze-backports/linux/debian/patches/features/x86/efi-stub/0002-x86-Don-t-use-magic-strings-for-EFI-loader-signature.patch
dists/squeeze-backports/linux/debian/patches/series
dists/squeeze-backports/linux/debian/patches/series-rt
dists/squeeze-backports/linux/debian/rules.real
Modified: dists/squeeze-backports/linux/debian/changelog
==============================================================================
--- dists/squeeze-backports/linux/debian/changelog Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/changelog Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,4 +1,4 @@
-linux (3.2.35-2~bpo60+1) squeeze-backports; urgency=low
+linux (3.2.39-2~bpo60+1) squeeze-backports; urgency=high
* Rebuild for squeeze:
- Use gcc-4.4 for all architectures
@@ -11,7 +11,229 @@
- Make build target depend on build-arch only, so we don't redundantly
build documentation on each architecture
- -- Ben Hutchings <ben at decadent.org.uk> Fri, 28 Dec 2012 21:14:12 +0100
+ -- Ben Hutchings <ben at decadent.org.uk> Wed, 27 Feb 2013 05:50:49 +0000
+
+linux (3.2.39-2) unstable; urgency=high
+
+ * [s390,s390x] virtio: Ignore ABI changes in 3.2.39 (fixes FTBFS)
+ * [sparc] drm: Ignore ABI changes in 3.2.39 (fixes FTBFS)
+ * [sparc] drm: Change from built-in to module
+ * [rt] Update to 3.2.39-rt59:
+ - acpi/rt: Convert acpi_gbl_hardware lock back to a raw_spinlock_t
+ - printk: Fix rq->lock vs logbuf_lock unlock lock inversion
+ - wait-simple: Simple waitqueue implementation
+ - rcutiny: Use simple waitqueue
+ * [x86] efi: Fix ABI change for introduction of efi_enabled() function
+ in 3.2.38 (Closes: #701690)
+ * [armel/versatile] i2c: Re-enable I2C_PCA_PLATFORM as module, erroneously
+ disabled in 3.2.39-1 (fixes FTBFS)
+ * [x86,powerpc/powerpc64] random: Change HW_RANDOM from module to built-in,
+ to work around virtio-rng bug (Closes: #701784)
+
+ -- Ben Hutchings <ben at decadent.org.uk> Wed, 27 Feb 2013 03:48:30 +0000
+
+linux (3.2.39-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.36
+ - freezer: PF_FREEZER_NOSIG should be cleared along with PF_NOFREEZE
+ (Closes: #697077)
+ - tmpfs: fix shared mempolicy leak
+ - virtio: 9p: correctly pass physical address to userspace for high pages
+ - virtio: force vring descriptors to be allocated from lowmem
+ - USB: EHCI: bugfix: urb->hcpriv should not be NULL
+ - rcu: Fix batch-limit size problem
+ - Bluetooth: ath3k: Add support for VAIO VPCEH [0489:e027]
+ (Closes: #700550)
+ - mvsas: fix undefined bit shift
+ - ALSA: usb-audio: Avoid autopm calls after disconnection; Fix missing
+ autopm for MIDI input (Closes: #664068)
+ - target/file: Fix 32-bit highmem breakage for SGL -> iovec mapping
+ - SCSI: fix Null pointer dereference on disk error
+ - proc: pid/status: show all supplementary groups
+ - nfsd4: fix oops on unusual readlike compound
+ - ARM: missing ->mmap_sem around find_vma() in swp_emulate.c
+ - sctp: fix memory leak in sctp_datamsg_from_user() when copy from user
+ space fails
+ - ne2000: add the right platform device
+ - irda: sir_dev: Fix copy/paste typo
+ - ipv4: ip_check_defrag must not modify skb before unsharing
+ - telephony: ijx: buffer overflow in ixj_write_cid()
+ - udf: fix memory leak while allocating blocks during write
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.37
+ - ext4: fix extent tree corruption caused by hole punch
+ - jbd2: fix assertion failure in jbd2_journal_flush()
+ - tmpfs mempolicy: fix /proc/mounts corrupting memory
+ - sparc: huge_ptep_set_* functions need to call set_huge_pte_at()
+ - inet: Fix kmemleak in tcp_v4/6_syn_recv_sock and
+ dccp_v4/6_request_recv_sock
+ - net: sched: integer overflow fix
+ - tcp: implement RFC 5961 3.2
+ - tcp: implement RFC 5961 4.2
+ - tcp: refine SYN handling in tcp_validate_incoming
+ - tcp: tcp_replace_ts_recent() should not be called from
+ tcp_validate_incoming()
+ - tcp: RFC 5961 5.2 Blind Data Injection Attack Mitigation
+ - RDMA/nes: Fix for crash when registering zero length MR for CQ
+ - ACPI : do not use Lid and Sleep button for S5 wakeup
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.38
+ - staging: comedi: comedi_test: fix race when cancelling command
+ - mm: use aligned zone start for pfn_to_bitidx calculation
+ - [s390] s390/time: fix sched_clock() overflow (Closes: #698382)
+ - [i386] xen: Fix stack corruption in xen_failsafe_callback for 32bit
+ PVOPS guests. (CVE-2013-0190)
+ - KVM: PPC: Emulate dcbf
+ - evm: checking if removexattr is not a NULL
+ - ath9k_htc: Fix memory leak
+ - ath9k: do not link receive buffers during flush
+ - ath9k: fix double-free bug on beacon generate failure
+ - x86/msr: Add capabilities check
+ - can: c_can: fix invalid error codes
+ - can: ti_hecc: fix invalid error codes
+ - can: pch_can: fix invalid error codes
+ - smp: Fix SMP function call empty cpu mask race
+ - xfs: Fix possible use-after-free with AIO
+ - EDAC: Test correct variable in ->store function
+ - samsung-laptop: Disable on EFI hardware, to avoid damaging it
+ - NFS: Don't silently fail setattr() requests on mountpoints
+ - intel-iommu: Prevent devices with RMRRs from being placed into SI Domain
+ - ALSA: usb-audio: Fix regression by disconnection-race-fix patch
+ (Closes: #696321)
+ - printk: fix buffer overflow when calling log_prefix function from
+ call_console_drivers
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.39
+ - USB: XHCI: fix memory leak of URB-private data
+ - sched/rt: Use root_domain of rt_rq not current processor
+ - mwifiex: fix incomplete scan in case of IE parsing error
+ - x86-64: Replace left over sti/cli in ia32 audit exit code
+ - Bluetooth: Fix handling of unexpected SMP PDUs
+ - ptrace/x86: Partly fix set_task_blockstep()->update_debugctlmsr() logic
+ - Fix race condition with PTRACE_SETREGS and fatal signal (CVE-2013-0871)
+ + ptrace: introduce signal_wake_up_state() and ptrace_signal_wake_up()
+ + ptrace: ensure arch_ptrace/ptrace_request can never race with SIGKILL
+ + wake_up_process() should be never used to wakeup a TASK_STOPPED/TRACED
+ task
+ - net: prevent setting ttl=0 via IP_TTL
+ - ipv6: fix header length calculation in ip6_append_data()
+ - netxen: fix off by one bug in netxen_release_tx_buffer()
+ - r8169: remove the obsolete and incorrect AMD workaround
+ - net: loopback: fix a dst refcounting issue
+ - packet: fix leakage of tx_ring memory
+ - net: sctp: sctp_setsockopt_auth_key: use kzfree instead of kfree
+ - net: sctp: sctp_endpoint_free: zero out secret key data
+ - xen/netback: shutdown the ring if it contains garbage. (CVE-2013-0216)
+ - xen/netback: don't leak pages on failure in xen_netbk_tx_check_gop.
+ - xen/netback: free already allocated memory on failure in
+ xen_netbk_get_requests
+ - netback: correct netbk_tx_err to handle wrap around. (CVE-2013-0217)
+ - tcp: frto should not set snd_cwnd to 0
+ - tcp: fix for zero packets_in_flight was too broad
+ - tcp: fix MSG_SENDPAGE_NOTLAST logic
+ - bridge: Pull ip header into skb->data before looking into ip header.
+ (Closes: #697903)
+ - x86/xen: don't assume %ds is usable in xen_iret for 32-bit PVOPS.
+ (CVE-2013-0228)
+
+ [ Aurelien Jarno ]
+ * [armhf/vexpress] Add kernel udebs.
+
+ [ Julien Cristau ]
+ * Backport drm and agp subsystems from Linux 3.4.29 (closes: #687442)
+ - [x86] i915: Fixes freezes on Ivy Bridge (Closes: #689268)
+ - nouveau: Support for newer nvidia chipsets (Closes: #690284)
+ - radeon: Support for HD7000 'Southern Islands' chips
+ - [x86] drm/i915: add Ivy Bridge GT2 Server entries (Closes: #684767)
+ - [x86] drm/i915: Close race between processing unpin task and queueing
+ the flip
+
+ [ Ben Hutchings ]
+ * Input: wacom - fix touch support for Bamboo Fun CTH-461
+ * media/rc: Add iguanair driver from Linux 3.7 (Closes: #696925)
+ * rt2800: add chipset revision RT5390R support (Closes: #696592)
+ * [armhf/mx5] mtd: Enable MTD_BLOCK as module
+ * [armhf/mx5] udeb: Add missing storage drivers (Closes: #697128)
+ - Add ata-modules including libata, pata-modules including pata_imx,
+ sata-modules including ahci_platform
+ - Add sdhci-esdhc-imx to mmc-modules
+ - Add mtd-modules including mtd, mtdblock and m25p80
+ * [armhf] udeb: Fix network driver selection
+ - [armhf/mx5] Remove nic-modules
+ - [armhf/vexpress] Add usb-modules
+ - Add standard set of USB drivers to nic-usb-modules
+ - Add nic-wireless-modules
+ * be2net: Apply backported fixes requested by Emulex (Closes: #697479)
+ - be2net: do not modify PCI MaxReadReq size
+ - be2net: fix reporting number of actual rx queues
+ - be2net: do not use SCRATCHPAD register
+ - be2net: reduce gso_max_size setting to account for ethernet header.
+ - be2net: Increase statistics structure size for skyhawk.
+ - be2net: Explicitly clear the reserved field in the Tx Descriptor
+ - be2net: Regression bug wherein VFs creation broken for multiple cards.
+ - be2net: Fix to trim skb for padded vlan packets to workaround an ASIC Bug
+ - be2net: Fix Endian
+ - be2net: Enable RSS UDP hashing for Lancer and Skyhawk
+ - be2net: dont pull too much data in skb linear part
+ - be2net: Fix to parse RSS hash from Receive completions correctly.
+ - be2net: Avoid disabling BH in be_poll()
+ * udeb: Add specialised USB keyboard/mouse drivers to input-modules:
+ hid-a4tech, hid-cypress, hid-ezkey (Closes: #697035), hid-kensington,
+ hid-keytouch, hid-kye, hid-multitouch, hid-ortek, hid-primax,
+ hid-quanta, hid-samsung, hid-speedlink
+ * radeon: Firmware is required for DRM and KMS on R600 onward, but not
+ for KMS on earlier chips (Closes: #697229)
+ * [!powerpc] radeon: Reenable DRM_RADEON_KMS, as it apparently works on
+ most non-PowerMac systems
+ * fs: cachefiles: add support for large files in filesystem caching
+ (Closes: #698376)
+ * [rt] Update to 3.2.38-rt57:
+ - sched: Adjust sched_reset_on_fork when nothing else changes
+ - sched: Queue RT tasks to head when prio drops
+ - sched: Consider pi boosting in setscheduler
+ - sched: Init idle->on_rq in init_idle()
+ - sched: Check for idle task in might_sleep()
+ - mm: swap: Initialize local locks early
+ * [armel/versatile,armhf/vexpress] i2c: Enable I2C, I2C_VERSATILE as modules
+ (Closes: #696182)
+ * ext4: Fix corruption by hole punch in large files (Closes: #685726)
+ - rewrite punch hole to use ext4_ext_remove_space()
+ - fix hole punch failure when depth is greater than 0
+ - fix kernel BUG on large-scale rm -rf commands
+ * md: protect against crash upon fsync on ro array (Closes: #696650)
+ * net: Add alx driver for Atheros AR8161 and AR8162 (Closes: #699129)
+ - Mark as staging, since it has not been accepted upstream
+ * [armel/kirkwood] rtc-s35390a: add wakealarm support (Closes: #693997)
+ * [x86] i915: Invert backlight brightness control for various models
+ including Packard Bell NCL20 (Closes: #627372) and eMachines G725
+ (Closes: #680737)
+ - Also allow this behaviour to be enabled via module parameter
+ invert_brightness=1
+ * [amd64] edac: Enable EDAC_SBRIDGE as module (Closes: #699283)
+ * SCSI: Add virtio_scsi driver (Closes: #686636)
+ * [x86] sound: Enable LINE6_USB as module (Closes: #700211)
+ - Apply upstream changes up to Linux 3.8-rc1
+ * [armhf/mx5] Update description to mention i.MX53
+ * mm: Try harder to allocate vmemmap blocks (Closes: #699913)
+ * aufs: Update to aufs3.2-20130204:
+ - support for syncfs(2)
+ - possible bugfix, race in lookup
+ - bugfix, half refreshed iinfo
+ - possible bugfix, au_lkup_by_ino() returns ESTALE
+ * [x86] efi: Clear EFI_RUNTIME_SERVICES rather than EFI_BOOT by "noefi" boot
+ parameter
+ * [x86] efi: Make "noefi" really disable EFI runtime serivces
+ * drm, agp: Update to 3.4.32
+ - drm/radeon: add WAIT_UNTIL to the non-VM safe regs list for cayman/TN
+ - drm/radeon: prevent crash in the ring space allocation
+ * linux-image-dbg: Add symlinks to vmlinux from the locations expected by
+ kdump-tools (Closes: #700418), systemtap and others
+ * mm: fix pageblock bitmap allocation (fixes regression in 3.2.38)
+ * USB: usb-storage: unusual_devs update for Super TOP SATA bridge
+
+ [ Cyril Brulebois ]
+ * Bump python build-dep, needed since the switch from local SortedDict
+ to collections.OrderedDict (new in version 2.7). (Closes: #697740)
+
+ -- Ben Hutchings <ben at decadent.org.uk> Mon, 25 Feb 2013 00:36:51 +0000
linux (3.2.35-2) unstable; urgency=low
Modified: dists/squeeze-backports/linux/debian/config/alpha/config
==============================================================================
--- dists/squeeze-backports/linux/debian/config/alpha/config Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/alpha/config Wed Feb 27 05:58:28 2013 (r19869)
@@ -771,7 +771,6 @@
CONFIG_DLCI=m
CONFIG_DLCI_MAX=8
CONFIG_SDLA=m
-CONFIG_CYCLADES_SYNC=m
##
## file: drivers/net/wireless/Kconfig
@@ -1109,11 +1108,6 @@
CONFIG_LAPB=m
##
-## file: net/wanrouter/Kconfig
-##
-CONFIG_WAN_ROUTER=m
-
-##
## file: sound/drivers/Kconfig
##
CONFIG_SND_DUMMY=m
Modified: dists/squeeze-backports/linux/debian/config/armel/config.iop32x
==============================================================================
--- dists/squeeze-backports/linux/debian/config/armel/config.iop32x Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/armel/config.iop32x Wed Feb 27 05:58:28 2013 (r19869)
@@ -645,11 +645,6 @@
# CONFIG_LAPB is not set
##
-## file: net/wanrouter/Kconfig
-##
-# CONFIG_WAN_ROUTER is not set
-
-##
## file: sound/drivers/Kconfig
##
CONFIG_SND_DUMMY=m
Modified: dists/squeeze-backports/linux/debian/config/armel/config.ixp4xx
==============================================================================
--- dists/squeeze-backports/linux/debian/config/armel/config.ixp4xx Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/armel/config.ixp4xx Wed Feb 27 05:58:28 2013 (r19869)
@@ -776,11 +776,6 @@
CONFIG_LAPB=m
##
-## file: net/wanrouter/Kconfig
-##
-CONFIG_WAN_ROUTER=m
-
-##
## file: sound/drivers/Kconfig
##
CONFIG_SND_DUMMY=m
Modified: dists/squeeze-backports/linux/debian/config/armel/config.kirkwood
==============================================================================
--- dists/squeeze-backports/linux/debian/config/armel/config.kirkwood Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/armel/config.kirkwood Wed Feb 27 05:58:28 2013 (r19869)
@@ -680,11 +680,6 @@
CONFIG_ROSE=m
##
-## file: net/wanrouter/Kconfig
-##
-CONFIG_WAN_ROUTER=m
-
-##
## file: sound/soc/Kconfig
##
CONFIG_SND_SOC=m
Modified: dists/squeeze-backports/linux/debian/config/armel/config.mv78xx0
==============================================================================
--- dists/squeeze-backports/linux/debian/config/armel/config.mv78xx0 Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/armel/config.mv78xx0 Wed Feb 27 05:58:28 2013 (r19869)
@@ -593,8 +593,3 @@
CONFIG_NETROM=m
CONFIG_ROSE=m
-##
-## file: net/wanrouter/Kconfig
-##
-CONFIG_WAN_ROUTER=m
-
Modified: dists/squeeze-backports/linux/debian/config/armel/config.orion5x
==============================================================================
--- dists/squeeze-backports/linux/debian/config/armel/config.orion5x Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/armel/config.orion5x Wed Feb 27 05:58:28 2013 (r19869)
@@ -616,8 +616,3 @@
CONFIG_NETROM=m
CONFIG_ROSE=m
-##
-## file: net/wanrouter/Kconfig
-##
-CONFIG_WAN_ROUTER=m
-
Modified: dists/squeeze-backports/linux/debian/config/armel/config.versatile
==============================================================================
--- dists/squeeze-backports/linux/debian/config/armel/config.versatile Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/armel/config.versatile Wed Feb 27 05:58:28 2013 (r19869)
@@ -148,7 +148,16 @@
##
## file: drivers/i2c/Kconfig
##
-# CONFIG_I2C is not set
+CONFIG_I2C=m
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+# CONFIG_I2C_ISCH is not set
+# CONFIG_I2C_OCORES is not set
+CONFIG_I2C_PCA_PLATFORM=m
+# CONFIG_I2C_SIMTEC is not set
+CONFIG_I2C_VERSATILE=m
##
## file: drivers/input/keyboard/Kconfig
@@ -509,8 +518,3 @@
##
# CONFIG_LAPB is not set
-##
-## file: net/wanrouter/Kconfig
-##
-# CONFIG_WAN_ROUTER is not set
-
Modified: dists/squeeze-backports/linux/debian/config/armhf/config.mx5
==============================================================================
--- dists/squeeze-backports/linux/debian/config/armhf/config.mx5 Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/armhf/config.mx5 Wed Feb 27 05:58:28 2013 (r19869)
@@ -90,19 +90,20 @@
##
## file: drivers/mmc/card/Kconfig
##
-CONFIG_MMC_BLOCK=y
+CONFIG_MMC_BLOCK=m
##
## file: drivers/mmc/host/Kconfig
##
-CONFIG_MMC_SDHCI_ESDHC_IMX=y
-CONFIG_MMC_MXC=y
+CONFIG_MMC_SDHCI_ESDHC_IMX=m
+CONFIG_MMC_MXC=m
##
## file: drivers/mtd/Kconfig
##
#. Efika has SPI NOR MTD device
CONFIG_MTD=m
+CONFIG_MTD_BLOCK=m
##
## file: drivers/net/wireless/mwifiex/Kconfig
Modified: dists/squeeze-backports/linux/debian/config/armhf/config.vexpress
==============================================================================
--- dists/squeeze-backports/linux/debian/config/armhf/config.vexpress Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/armhf/config.vexpress Wed Feb 27 05:58:28 2013 (r19869)
@@ -21,6 +21,20 @@
CONFIG_PATA_PLATFORM=m
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=m
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+# CONFIG_I2C_ISCH is not set
+# CONFIG_I2C_OCORES is not set
+# CONFIG_I2C_PCA_PLATFORM is not set
+# CONFIG_I2C_SIMTEC is not set
+CONFIG_I2C_VERSATILE=m
+
CONFIG_MTD=m
CONFIG_MTD_CONCAT=m
CONFIG_MTD_PARTITIONS=m
Modified: dists/squeeze-backports/linux/debian/config/armhf/defines
==============================================================================
--- dists/squeeze-backports/linux/debian/config/armhf/defines Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/armhf/defines Wed Feb 27 05:58:28 2013 (r19869)
@@ -15,8 +15,8 @@
image-file: arch/arm/boot/zImage
[mx5_description]
-hardware: Freescale i.MX51
-hardware-long: Support for Freescale i.MX51 family of processors
+hardware: Freescale i.MX51/53
+hardware-long: Freescale i.MX51 or i.MX53 based systems
[omap_build]
image-file: arch/arm/boot/zImage
Modified: dists/squeeze-backports/linux/debian/config/config
==============================================================================
--- dists/squeeze-backports/linux/debian/config/config Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/config Wed Feb 27 05:58:28 2013 (r19869)
@@ -361,7 +361,7 @@
##
## file: drivers/gpu/drm/radeon/Kconfig
##
-# CONFIG_DRM_RADEON_KMS is not set
+CONFIG_DRM_RADEON_KMS=y
##
## file: drivers/gpu/drm/vmwgfx/Kconfig
@@ -1144,6 +1144,7 @@
# CONFIG_IR_NUVOTON is not set
CONFIG_IR_REDRAT3=m
CONFIG_IR_STREAMZAP=m
+CONFIG_IR_IGUANA=m
CONFIG_RC_LOOPBACK=m
##
@@ -1756,6 +1757,7 @@
CONFIG_ATL1=m
CONFIG_ATL1E=m
CONFIG_ATL1C=m
+CONFIG_ALX=m
##
## file: drivers/net/ethernet/broadcom/Kconfig
@@ -2153,8 +2155,6 @@
CONFIG_HDLC_PPP=m
# CONFIG_HDLC_X25 is not set
# CONFIG_PC300TOO is not set
-CONFIG_WAN_ROUTER_DRIVERS=m
-# CONFIG_CYCLOMX_X25 is not set
##
## file: drivers/net/wimax/i2400m/Kconfig
@@ -2626,6 +2626,7 @@
CONFIG_SCSI_PM8001=m
CONFIG_SCSI_SRP=m
CONFIG_SCSI_BFA_FC=m
+CONFIG_SCSI_VIRTIO=m
##
## file: drivers/scsi/aic7xxx/Kconfig.aic79xx
@@ -4632,6 +4633,11 @@
CONFIG_UNIX=y
##
+## file: net/wanrouter/Kconfig
+##
+# CONFIG_WAN_ROUTER is not set
+
+##
## file: net/wimax/Kconfig
##
CONFIG_WIMAX=m
Modified: dists/squeeze-backports/linux/debian/config/defines
==============================================================================
--- dists/squeeze-backports/linux/debian/config/defines Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/defines Wed Feb 27 05:58:28 2013 (r19869)
@@ -20,6 +20,25 @@
svcauth_unix_set_client
unix_domain_find
xprt_*
+# Inline function, did not need to be exported at all
+ get_write_access
+# AGP and DRM were bumped to 3.4, but no-one tries to use these from OOT
+ module:drivers/gpu/drm/*
+ drm_sman_*
+ intel_agp_enabled
+ intel_gmch_*
+ intel_gtt_*
+# wanrouter was totally broken
+ module:drivers/net/wan/cycx_drv
+ module:net/wanrouter/wanrouter
+# No-one tries to use virtio from OOT
+ register_virtio_*
+ unregister_virtio_*
+ virtio_*
+ virtqueue_*
+ vring_*
+# No-one should depend on staging from OOT
+ module:drivers/staging/*
[base]
arches:
Modified: dists/squeeze-backports/linux/debian/config/hppa/config
==============================================================================
--- dists/squeeze-backports/linux/debian/config/hppa/config Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/hppa/config Wed Feb 27 05:58:28 2013 (r19869)
@@ -696,11 +696,6 @@
# CONFIG_LLC2 is not set
##
-## file: net/wanrouter/Kconfig
-##
-# CONFIG_WAN_ROUTER is not set
-
-##
## file: sound/drivers/Kconfig
##
CONFIG_SND_DUMMY=m
Modified: dists/squeeze-backports/linux/debian/config/ia64/config
==============================================================================
--- dists/squeeze-backports/linux/debian/config/ia64/config Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/ia64/config Wed Feb 27 05:58:28 2013 (r19869)
@@ -551,7 +551,6 @@
# CONFIG_DSCC4_PCI_RST is not set
CONFIG_DLCI=m
CONFIG_DLCI_MAX=8
-# CONFIG_CYCLADES_SYNC is not set
##
## file: drivers/net/wireless/Kconfig
Modified: dists/squeeze-backports/linux/debian/config/kernelarch-x86/config
==============================================================================
--- dists/squeeze-backports/linux/debian/config/kernelarch-x86/config Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/kernelarch-x86/config Wed Feb 27 05:58:28 2013 (r19869)
@@ -293,7 +293,7 @@
##
## file: drivers/char/hw_random/Kconfig
##
-CONFIG_HW_RANDOM=m
+CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_INTEL=m
CONFIG_HW_RANDOM_AMD=m
CONFIG_HW_RANDOM_GEODE=m
@@ -424,11 +424,6 @@
CONFIG_DRM_I2C_SIL164=m
##
-## file: drivers/gpu/drm/radeon/Kconfig
-##
-CONFIG_DRM_RADEON_KMS=y
-
-##
## file: drivers/gpu/stub/Kconfig
##
# CONFIG_STUB_POULSBO is not set
@@ -1006,7 +1001,6 @@
CONFIG_DSCC4_PCI_RST=y
CONFIG_DLCI=m
CONFIG_DLCI_MAX=8
-CONFIG_CYCLADES_SYNC=m
CONFIG_SBNI=m
# CONFIG_SBNI_MULTILINE is not set
@@ -1295,6 +1289,13 @@
CONFIG_EASYCAP=m
##
+## file: drivers/staging/line6/Kconfig
+##
+CONFIG_LINE6_USB=m
+# CONFIG_LINE6_USB_DUMP_PCM is not set
+# CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set
+
+##
## file: drivers/staging/media/go7007/Kconfig
##
# CONFIG_VIDEO_GO7007 is not set
@@ -1686,11 +1687,6 @@
CONFIG_LAPB=m
##
-## file: net/wanrouter/Kconfig
-##
-CONFIG_WAN_ROUTER=m
-
-##
## file: sound/drivers/Kconfig
##
CONFIG_SND_DUMMY=m
Modified: dists/squeeze-backports/linux/debian/config/kernelarch-x86/config-arch-64
==============================================================================
--- dists/squeeze-backports/linux/debian/config/kernelarch-x86/config-arch-64 Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/kernelarch-x86/config-arch-64 Wed Feb 27 05:58:28 2013 (r19869)
@@ -48,6 +48,11 @@
CONFIG_AGP_AMD64=y
##
+## file: drivers/edac/Kconfig
+##
+CONFIG_EDAC_SBRIDGE=m
+
+##
## file: drivers/i2c/busses/Kconfig
##
CONFIG_I2C_STUB=m
Modified: dists/squeeze-backports/linux/debian/config/m68k/config
==============================================================================
--- dists/squeeze-backports/linux/debian/config/m68k/config Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/m68k/config Wed Feb 27 05:58:28 2013 (r19869)
@@ -296,11 +296,6 @@
# CONFIG_NET_SCHED is not set
##
-## file: net/wanrouter/Kconfig
-##
-# CONFIG_WAN_ROUTER is not set
-
-##
## file: net/xfrm/Kconfig
##
#. TODO
Modified: dists/squeeze-backports/linux/debian/config/mips/config.4kc-malta
==============================================================================
--- dists/squeeze-backports/linux/debian/config/mips/config.4kc-malta Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/mips/config.4kc-malta Wed Feb 27 05:58:28 2013 (r19869)
@@ -1153,11 +1153,6 @@
# CONFIG_NETLABEL is not set
##
-## file: net/wanrouter/Kconfig
-##
-CONFIG_WAN_ROUTER=m
-
-##
## file: sound/drivers/Kconfig
##
CONFIG_SND_DUMMY=m
Modified: dists/squeeze-backports/linux/debian/config/mips/config.5kc-malta
==============================================================================
--- dists/squeeze-backports/linux/debian/config/mips/config.5kc-malta Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/mips/config.5kc-malta Wed Feb 27 05:58:28 2013 (r19869)
@@ -1157,11 +1157,6 @@
# CONFIG_NETLABEL is not set
##
-## file: net/wanrouter/Kconfig
-##
-CONFIG_WAN_ROUTER=m
-
-##
## file: sound/drivers/Kconfig
##
CONFIG_SND_DUMMY=m
Modified: dists/squeeze-backports/linux/debian/config/mips/config.r4k-ip22
==============================================================================
--- dists/squeeze-backports/linux/debian/config/mips/config.r4k-ip22 Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/mips/config.r4k-ip22 Wed Feb 27 05:58:28 2013 (r19869)
@@ -530,11 +530,6 @@
# CONFIG_LAPB is not set
##
-## file: net/wanrouter/Kconfig
-##
-# CONFIG_WAN_ROUTER is not set
-
-##
## file: sound/drivers/Kconfig
##
# CONFIG_SND_DUMMY is not set
Modified: dists/squeeze-backports/linux/debian/config/mips/config.sb1-bcm91250a
==============================================================================
--- dists/squeeze-backports/linux/debian/config/mips/config.sb1-bcm91250a Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/mips/config.sb1-bcm91250a Wed Feb 27 05:58:28 2013 (r19869)
@@ -800,8 +800,3 @@
##
# CONFIG_LAPB is not set
-##
-## file: net/wanrouter/Kconfig
-##
-# CONFIG_WAN_ROUTER is not set
-
Modified: dists/squeeze-backports/linux/debian/config/mips/config.sb1a-bcm91480b
==============================================================================
--- dists/squeeze-backports/linux/debian/config/mips/config.sb1a-bcm91480b Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/mips/config.sb1a-bcm91480b Wed Feb 27 05:58:28 2013 (r19869)
@@ -806,8 +806,3 @@
##
# CONFIG_LAPB is not set
-##
-## file: net/wanrouter/Kconfig
-##
-# CONFIG_WAN_ROUTER is not set
-
Modified: dists/squeeze-backports/linux/debian/config/mipsel/config.r5k-cobalt
==============================================================================
--- dists/squeeze-backports/linux/debian/config/mipsel/config.r5k-cobalt Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/mipsel/config.r5k-cobalt Wed Feb 27 05:58:28 2013 (r19869)
@@ -759,11 +759,6 @@
# CONFIG_LAPB is not set
##
-## file: net/wanrouter/Kconfig
-##
-# CONFIG_WAN_ROUTER is not set
-
-##
## file: sound/drivers/Kconfig
##
# CONFIG_SND_DUMMY is not set
Modified: dists/squeeze-backports/linux/debian/config/powerpc/config
==============================================================================
--- dists/squeeze-backports/linux/debian/config/powerpc/config Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/powerpc/config Wed Feb 27 05:58:28 2013 (r19869)
@@ -202,6 +202,11 @@
CONFIG_DRM_I2C_SIL164=m
##
+## file: drivers/gpu/drm/radeon/Kconfig
+##
+# CONFIG_DRM_RADEON_KMS is not set
+
+##
## file: drivers/hid/usbhid/Kconfig
##
CONFIG_USB_HID=m
@@ -633,7 +638,6 @@
# CONFIG_DSCC4_PCI_RST is not set
CONFIG_DLCI=m
CONFIG_DLCI_MAX=8
-CONFIG_CYCLADES_SYNC=m
##
## file: drivers/net/wireless/Kconfig
@@ -938,11 +942,6 @@
CONFIG_LAPB=m
##
-## file: net/wanrouter/Kconfig
-##
-CONFIG_WAN_ROUTER=m
-
-##
## file: sound/aoa/Kconfig
##
CONFIG_SND_AOA=m
Modified: dists/squeeze-backports/linux/debian/config/powerpc/config.powerpc64
==============================================================================
--- dists/squeeze-backports/linux/debian/config/powerpc/config.powerpc64 Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/powerpc/config.powerpc64 Wed Feb 27 05:58:28 2013 (r19869)
@@ -95,7 +95,7 @@
##
## file: drivers/char/hw_random/Kconfig
##
-CONFIG_HW_RANDOM=m
+CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_PASEMI=m
##
Modified: dists/squeeze-backports/linux/debian/config/s390/config
==============================================================================
--- dists/squeeze-backports/linux/debian/config/s390/config Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/s390/config Wed Feb 27 05:58:28 2013 (r19869)
@@ -192,8 +192,3 @@
##
# CONFIG_LLC2 is not set
-##
-## file: net/wanrouter/Kconfig
-##
-# CONFIG_WAN_ROUTER is not set
-
Modified: dists/squeeze-backports/linux/debian/config/sparc/config
==============================================================================
--- dists/squeeze-backports/linux/debian/config/sparc/config Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/config/sparc/config Wed Feb 27 05:58:28 2013 (r19869)
@@ -68,7 +68,7 @@
##
## file: drivers/gpu/drm/Kconfig
##
-CONFIG_DRM=y
+CONFIG_DRM=m
CONFIG_DRM_TDFX=m
CONFIG_DRM_R128=m
CONFIG_DRM_RADEON=m
@@ -605,11 +605,6 @@
# CONFIG_LAPB is not set
##
-## file: net/wanrouter/Kconfig
-##
-# CONFIG_WAN_ROUTER is not set
-
-##
## file: sound/drivers/Kconfig
##
# CONFIG_SND_DUMMY is not set
Modified: dists/squeeze-backports/linux/debian/installer/package-list
==============================================================================
--- dists/squeeze-backports/linux/debian/installer/package-list Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/installer/package-list Wed Feb 27 05:58:28 2013 (r19869)
@@ -466,3 +466,9 @@
Priority: extra
Description: FUSE modules
This package contains the Filesystem in Userspace (FUSE) module.
+
+Package: mtd-modules
+Depends: kernel-image
+Priority: extra
+Description: MTD modules
+ This package contains MTD modules.
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/USB-usb-storage-unusual_devs-update-for-Super-TOP-SA.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/USB-usb-storage-unusual_devs-update-for-Super-TOP-SA.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/USB-usb-storage-unusual_devs-update-for-Super-TOP-SA.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/USB-usb-storage-unusual_devs-update-for-Super-TOP-SA.patch)
@@ -0,0 +1,38 @@
+From: Josh Boyer <jwboyer at redhat.com>
+Date: Thu, 14 Feb 2013 09:39:09 -0500
+Subject: USB: usb-storage: unusual_devs update for Super TOP SATA bridge
+
+commit 18e03310b5caa6d11c1a8c61b982c37047693fba upstream.
+
+The current entry in unusual_cypress.h for the Super TOP SATA bridge devices
+seems to be causing corruption on newer revisions of this device. This has
+been reported in Arch Linux and Fedora. The original patch was tested on
+devices with bcdDevice of 1.60, whereas the newer devices report bcdDevice
+as 2.20. Limit the UNUSUAL_DEV entry to devices less than 2.20.
+
+This fixes https://bugzilla.redhat.com/show_bug.cgi?id=909591
+
+The Arch Forum post on this is here:
+ https://bbs.archlinux.org/viewtopic.php?id=152011
+
+Reported-by: Carsten S. <carsteniq at yahoo.com>
+Tested-by: Carsten S. <carsteniq at yahoo.com>
+Signed-off-by: Josh Boyer <jwboyer at redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ drivers/usb/storage/unusual_cypress.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/usb/storage/unusual_cypress.h b/drivers/usb/storage/unusual_cypress.h
+index 2c85530..65a6a75 100644
+--- a/drivers/usb/storage/unusual_cypress.h
++++ b/drivers/usb/storage/unusual_cypress.h
+@@ -31,7 +31,7 @@ UNUSUAL_DEV( 0x04b4, 0x6831, 0x0000, 0x9999,
+ "Cypress ISD-300LP",
+ USB_SC_CYP_ATACB, USB_PR_DEVICE, NULL, 0),
+
+-UNUSUAL_DEV( 0x14cd, 0x6116, 0x0000, 0x9999,
++UNUSUAL_DEV( 0x14cd, 0x6116, 0x0000, 0x0219,
+ "Super Top",
+ "USB 2.0 SATA BRIDGE",
+ USB_SC_CYP_ATACB, USB_PR_DEVICE, NULL, 0),
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-nouveau-fix-init-with-agpgart-uninorth.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/drm-nouveau-fix-init-with-agpgart-uninorth.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-nouveau-fix-init-with-agpgart-uninorth.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/drm-nouveau-fix-init-with-agpgart-uninorth.patch)
@@ -0,0 +1,38 @@
+From: Aaro Koskinen <aaro.koskinen at iki.fi>
+Date: Mon, 31 Dec 2012 03:34:59 +0200
+Subject: drm/nouveau: fix init with agpgart-uninorth
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+commit eda85d6ad490923152544fba0473798b6cc0edf6 upstream.
+
+Check that the AGP aperture can be mapped. This follows a similar change
+done for Radeon (commit 365048ff, drm/radeon: AGP memory is only I/O if
+the aperture can be mapped by the CPU.).
+
+The patch fixes the following error seen on G5 iMac:
+
+ nouveau E[ DRM] failed to create kernel channel, -12
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=58806
+Reviewed-by: Michel Dänzer <michel at daenzer.net>
+Signed-off-by: Aaro Koskinen <aaro.koskinen at iki.fi>
+Signed-off-by: Dave Airlie <airlied at redhat.com>
+[bwh: Backported to 3.2: adjust context]
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ drivers/gpu/drm/nouveau/nouveau_bo.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/gpu/drm/nouveau/nouveau_bo.c
++++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
+@@ -940,7 +940,7 @@ nouveau_ttm_io_mem_reserve(struct ttm_bo
+ if (dev_priv->gart_info.type == NOUVEAU_GART_AGP) {
+ mem->bus.offset = mem->start << PAGE_SHIFT;
+ mem->bus.base = dev_priv->gart_info.aper_base;
+- mem->bus.is_iomem = true;
++ mem->bus.is_iomem = !dev->agp->cant_use_aperture;
+ }
+ #endif
+ break;
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-Mac-G4-Silver.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-Mac-G4-Silver.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-Mac-G4-Silver.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-Mac-G4-Silver.patch)
@@ -0,0 +1,103 @@
+From: Alex Deucher <alexander.deucher at amd.com>
+Date: Thu, 20 Dec 2012 16:35:47 -0500
+Subject: drm/radeon: add connector table for Mac G4 Silver
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+commit cafa59b9011a7790be4ddd5979419259844a165d upstream.
+
+Apple cards do not provide data tables in the vbios
+so we have to hard code the connector parameters
+in the driver.
+
+Reported-by: Albrecht Dreß <albrecht.dress at arcor.de>
+Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
+---
+ drivers/gpu/drm/radeon/radeon_combios.c | 51 +++++++++++++++++++++++++++++++
+ drivers/gpu/drm/radeon/radeon_mode.h | 3 +-
+ 2 files changed, 53 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c
+index 4af8912..33a56a0 100644
+--- a/drivers/gpu/drm/radeon/radeon_combios.c
++++ b/drivers/gpu/drm/radeon/radeon_combios.c
+@@ -1548,6 +1548,9 @@ bool radeon_get_legacy_connector_info_from_table(struct drm_device *dev)
+ of_machine_is_compatible("PowerBook6,7")) {
+ /* ibook */
+ rdev->mode_info.connector_table = CT_IBOOK;
++ } else if (of_machine_is_compatible("PowerMac3,5")) {
++ /* PowerMac G4 Silver radeon 7500 */
++ rdev->mode_info.connector_table = CT_MAC_G4_SILVER;
+ } else if (of_machine_is_compatible("PowerMac4,4")) {
+ /* emac */
+ rdev->mode_info.connector_table = CT_EMAC;
+@@ -2212,6 +2215,54 @@ bool radeon_get_legacy_connector_info_from_table(struct drm_device *dev)
+ CONNECTOR_OBJECT_ID_SVIDEO,
+ &hpd);
+ break;
++ case CT_MAC_G4_SILVER:
++ DRM_INFO("Connector Table: %d (mac g4 silver)\n",
++ rdev->mode_info.connector_table);
++ /* DVI-I - tv dac, int tmds */
++ ddc_i2c = combios_setup_i2c_bus(rdev, DDC_DVI, 0, 0);
++ hpd.hpd = RADEON_HPD_1; /* ??? */
++ radeon_add_legacy_encoder(dev,
++ radeon_get_encoder_enum(dev,
++ ATOM_DEVICE_DFP1_SUPPORT,
++ 0),
++ ATOM_DEVICE_DFP1_SUPPORT);
++ radeon_add_legacy_encoder(dev,
++ radeon_get_encoder_enum(dev,
++ ATOM_DEVICE_CRT2_SUPPORT,
++ 2),
++ ATOM_DEVICE_CRT2_SUPPORT);
++ radeon_add_legacy_connector(dev, 0,
++ ATOM_DEVICE_DFP1_SUPPORT |
++ ATOM_DEVICE_CRT2_SUPPORT,
++ DRM_MODE_CONNECTOR_DVII, &ddc_i2c,
++ CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I,
++ &hpd);
++ /* VGA - primary dac */
++ ddc_i2c = combios_setup_i2c_bus(rdev, DDC_VGA, 0, 0);
++ hpd.hpd = RADEON_HPD_NONE;
++ radeon_add_legacy_encoder(dev,
++ radeon_get_encoder_enum(dev,
++ ATOM_DEVICE_CRT1_SUPPORT,
++ 1),
++ ATOM_DEVICE_CRT1_SUPPORT);
++ radeon_add_legacy_connector(dev, 1, ATOM_DEVICE_CRT1_SUPPORT,
++ DRM_MODE_CONNECTOR_VGA, &ddc_i2c,
++ CONNECTOR_OBJECT_ID_VGA,
++ &hpd);
++ /* TV - TV DAC */
++ ddc_i2c.valid = false;
++ hpd.hpd = RADEON_HPD_NONE;
++ radeon_add_legacy_encoder(dev,
++ radeon_get_encoder_enum(dev,
++ ATOM_DEVICE_TV1_SUPPORT,
++ 2),
++ ATOM_DEVICE_TV1_SUPPORT);
++ radeon_add_legacy_connector(dev, 2, ATOM_DEVICE_TV1_SUPPORT,
++ DRM_MODE_CONNECTOR_SVIDEO,
++ &ddc_i2c,
++ CONNECTOR_OBJECT_ID_SVIDEO,
++ &hpd);
++ break;
+ default:
+ DRM_INFO("Connector table: %d (invalid)\n",
+ rdev->mode_info.connector_table);
+diff --git a/drivers/gpu/drm/radeon/radeon_mode.h b/drivers/gpu/drm/radeon/radeon_mode.h
+index d818b50..ed8a0fa 100644
+--- a/drivers/gpu/drm/radeon/radeon_mode.h
++++ b/drivers/gpu/drm/radeon/radeon_mode.h
+@@ -209,7 +209,8 @@ enum radeon_connector_table {
+ CT_RN50_POWER,
+ CT_MAC_X800,
+ CT_MAC_G5_9600,
+- CT_SAM440EP
++ CT_SAM440EP,
++ CT_MAC_G4_SILVER
+ };
+
+ enum radeon_dvo_chip {
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-SAM440ep-embedded.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-SAM440ep-embedded.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-SAM440ep-embedded.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-add-connector-table-for-SAM440ep-embedded.patch)
@@ -0,0 +1,112 @@
+From: Alex Deucher <alexander.deucher at amd.com>
+Date: Wed, 2 May 2012 12:10:21 -0400
+Subject: drm/radeon: add connector table for SAM440ep embedded board
+
+commit 6a556039e7823d27a0a7f7724d4d455053ea9253 upstream.
+
+RV250 found on ppc embedded boards.
+
+Cc: Hans Verkuil <hverkuil at xs4all.nl>
+Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
+Signed-off-by: Dave Airlie <airlied at redhat.com>
+---
+ drivers/gpu/drm/radeon/radeon_combios.c | 66 +++++++++++++++++++++++++++++++
+ drivers/gpu/drm/radeon/radeon_mode.h | 1 +
+ 2 files changed, 67 insertions(+)
+
+diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c
+index 2cad9fd..576f4f6 100644
+--- a/drivers/gpu/drm/radeon/radeon_combios.c
++++ b/drivers/gpu/drm/radeon/radeon_combios.c
+@@ -1561,6 +1561,11 @@ bool radeon_get_legacy_connector_info_from_table(struct drm_device *dev)
+ (rdev->pdev->subsystem_device == 0x4150)) {
+ /* Mac G5 tower 9600 */
+ rdev->mode_info.connector_table = CT_MAC_G5_9600;
++ } else if ((rdev->pdev->device == 0x4c66) &&
++ (rdev->pdev->subsystem_vendor == 0x1002) &&
++ (rdev->pdev->subsystem_device == 0x4c66)) {
++ /* SAM440ep RV250 embedded board */
++ rdev->mode_info.connector_table = CT_SAM440EP;
+ } else
+ #endif /* CONFIG_PPC_PMAC */
+ #ifdef CONFIG_PPC64
+@@ -2134,6 +2139,67 @@ bool radeon_get_legacy_connector_info_from_table(struct drm_device *dev)
+ CONNECTOR_OBJECT_ID_SVIDEO,
+ &hpd);
+ break;
++ case CT_SAM440EP:
++ DRM_INFO("Connector Table: %d (SAM440ep embedded board)\n",
++ rdev->mode_info.connector_table);
++ /* LVDS */
++ ddc_i2c = combios_setup_i2c_bus(rdev, DDC_NONE_DETECTED, 0, 0);
++ hpd.hpd = RADEON_HPD_NONE;
++ radeon_add_legacy_encoder(dev,
++ radeon_get_encoder_enum(dev,
++ ATOM_DEVICE_LCD1_SUPPORT,
++ 0),
++ ATOM_DEVICE_LCD1_SUPPORT);
++ radeon_add_legacy_connector(dev, 0, ATOM_DEVICE_LCD1_SUPPORT,
++ DRM_MODE_CONNECTOR_LVDS, &ddc_i2c,
++ CONNECTOR_OBJECT_ID_LVDS,
++ &hpd);
++ /* DVI-I - secondary dac, int tmds */
++ ddc_i2c = combios_setup_i2c_bus(rdev, DDC_DVI, 0, 0);
++ hpd.hpd = RADEON_HPD_1; /* ??? */
++ radeon_add_legacy_encoder(dev,
++ radeon_get_encoder_enum(dev,
++ ATOM_DEVICE_DFP1_SUPPORT,
++ 0),
++ ATOM_DEVICE_DFP1_SUPPORT);
++ radeon_add_legacy_encoder(dev,
++ radeon_get_encoder_enum(dev,
++ ATOM_DEVICE_CRT2_SUPPORT,
++ 2),
++ ATOM_DEVICE_CRT2_SUPPORT);
++ radeon_add_legacy_connector(dev, 1,
++ ATOM_DEVICE_DFP1_SUPPORT |
++ ATOM_DEVICE_CRT2_SUPPORT,
++ DRM_MODE_CONNECTOR_DVII, &ddc_i2c,
++ CONNECTOR_OBJECT_ID_SINGLE_LINK_DVI_I,
++ &hpd);
++ /* VGA - primary dac */
++ ddc_i2c = combios_setup_i2c_bus(rdev, DDC_VGA, 0, 0);
++ hpd.hpd = RADEON_HPD_NONE;
++ radeon_add_legacy_encoder(dev,
++ radeon_get_encoder_enum(dev,
++ ATOM_DEVICE_CRT1_SUPPORT,
++ 1),
++ ATOM_DEVICE_CRT1_SUPPORT);
++ radeon_add_legacy_connector(dev, 2,
++ ATOM_DEVICE_CRT1_SUPPORT,
++ DRM_MODE_CONNECTOR_VGA, &ddc_i2c,
++ CONNECTOR_OBJECT_ID_VGA,
++ &hpd);
++ /* TV - TV DAC */
++ ddc_i2c.valid = false;
++ hpd.hpd = RADEON_HPD_NONE;
++ radeon_add_legacy_encoder(dev,
++ radeon_get_encoder_enum(dev,
++ ATOM_DEVICE_TV1_SUPPORT,
++ 2),
++ ATOM_DEVICE_TV1_SUPPORT);
++ radeon_add_legacy_connector(dev, 3, ATOM_DEVICE_TV1_SUPPORT,
++ DRM_MODE_CONNECTOR_SVIDEO,
++ &ddc_i2c,
++ CONNECTOR_OBJECT_ID_SVIDEO,
++ &hpd);
++ break;
+ default:
+ DRM_INFO("Connector table: %d (invalid)\n",
+ rdev->mode_info.connector_table);
+diff --git a/drivers/gpu/drm/radeon/radeon_mode.h b/drivers/gpu/drm/radeon/radeon_mode.h
+index 0c3cdbd..499a5fe 100644
+--- a/drivers/gpu/drm/radeon/radeon_mode.h
++++ b/drivers/gpu/drm/radeon/radeon_mode.h
+@@ -210,6 +210,7 @@ enum radeon_connector_table {
+ CT_RN50_POWER,
+ CT_MAC_X800,
+ CT_MAC_G5_9600,
++ CT_SAM440EP
+ };
+
+ enum radeon_dvo_chip {
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-dce32-use-fractional-fb-dividers-for-high.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-dce32-use-fractional-fb-dividers-for-high.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-dce32-use-fractional-fb-dividers-for-high.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-dce32-use-fractional-fb-dividers-for-high.patch)
@@ -0,0 +1,26 @@
+From: Alex Deucher <alexander.deucher at amd.com>
+Date: Tue, 13 Nov 2012 18:03:41 -0500
+Subject: drm/radeon/dce32+: use fractional fb dividers for high clocks
+
+commit a02dc74b317d78298cb0587b9b1f6f741fd5c139 upstream.
+
+Fixes flickering with some high res montiors.
+
+Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
+[bwh: Backported to 3.4: use pll->flags instead of radeon_crtc->pll_flags]
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ drivers/gpu/drm/radeon/atombios_crtc.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/gpu/drm/radeon/atombios_crtc.c
++++ b/drivers/gpu/drm/radeon/atombios_crtc.c
+@@ -577,6 +577,8 @@ static u32 atombios_adjust_pll(struct dr
+ /* use frac fb div on APUs */
+ if (ASIC_IS_DCE41(rdev) || ASIC_IS_DCE61(rdev))
+ pll->flags |= RADEON_PLL_USE_FRAC_FB_DIV;
++ if (ASIC_IS_DCE32(rdev) && mode->clock > 165000)
++ pll->flags |= RADEON_PLL_USE_FRAC_FB_DIV;
+ } else {
+ pll->flags |= RADEON_PLL_LEGACY;
+
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-fix-amd-afusion-gpu-setup-aka-sumo-v2.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-fix-amd-afusion-gpu-setup-aka-sumo-v2.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/drm-radeon-fix-amd-afusion-gpu-setup-aka-sumo-v2.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/drm-radeon-fix-amd-afusion-gpu-setup-aka-sumo-v2.patch)
@@ -0,0 +1,44 @@
+From: Jerome Glisse <jglisse at redhat.com>
+Date: Tue, 11 Dec 2012 11:56:52 -0500
+Subject: drm/radeon: fix amd afusion gpu setup aka sumo v2
+
+commit bd25f0783dc3fb72e1e2779c2b99b2d34b67fa8a upstream.
+
+Set the proper number of tile pipe that should be a multiple of
+pipe depending on the number of se engine.
+
+Fix:
+https://bugs.freedesktop.org/show_bug.cgi?id=56405
+https://bugs.freedesktop.org/show_bug.cgi?id=56720
+
+v2: Don't change sumo2
+
+Signed-off-by: Jerome Glisse <jglisse at redhat.com>
+Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
+[bwh: Backported to 3.2: don't define/use *_GB_ADDR_CONFIG_GOLDEN]
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ drivers/gpu/drm/radeon/evergreen.c | 8 ++++----
+ drivers/gpu/drm/radeon/evergreend.h | 2 ++
+ 2 files changed, 6 insertions(+), 4 deletions(-)
+
+--- a/drivers/gpu/drm/radeon/evergreen.c
++++ b/drivers/gpu/drm/radeon/evergreen.c
+@@ -1730,7 +1730,7 @@ static void evergreen_gpu_init(struct ra
+ case CHIP_SUMO:
+ rdev->config.evergreen.num_ses = 1;
+ rdev->config.evergreen.max_pipes = 4;
+- rdev->config.evergreen.max_tile_pipes = 2;
++ rdev->config.evergreen.max_tile_pipes = 4;
+ if (rdev->pdev->device == 0x9648)
+ rdev->config.evergreen.max_simds = 3;
+ else if ((rdev->pdev->device == 0x9647) ||
+@@ -1819,7 +1819,7 @@ static void evergreen_gpu_init(struct ra
+ break;
+ case CHIP_CAICOS:
+ rdev->config.evergreen.num_ses = 1;
+- rdev->config.evergreen.max_pipes = 4;
++ rdev->config.evergreen.max_pipes = 2;
+ rdev->config.evergreen.max_tile_pipes = 2;
+ rdev->config.evergreen.max_simds = 2;
+ rdev->config.evergreen.max_backends = 1 * rdev->config.evergreen.num_ses;
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/ext4-fix-hole-punch-failure-when-depth-is-greater-th.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-hole-punch-failure-when-depth-is-greater-th.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/ext4-fix-hole-punch-failure-when-depth-is-greater-th.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-hole-punch-failure-when-depth-is-greater-th.patch)
@@ -0,0 +1,120 @@
+From: Ashish Sangwan <ashishsangwan2 at gmail.com>
+Date: Sun, 22 Jul 2012 22:49:08 -0400
+Subject: [PATCH 2/3] ext4: fix hole punch failure when depth is greater than 0
+
+commit 968dee77220768a5f52cf8b21d0bdb73486febef upstream.
+
+Whether to continue removing extents or not is decided by the return
+value of function ext4_ext_more_to_rm() which checks 2 conditions:
+a) if there are no more indexes to process.
+b) if the number of entries are decreased in the header of "depth -1".
+
+In case of hole punch, if the last block to be removed is not part of
+the last extent index than this index will not be deleted, hence the
+number of valid entries in the extent header of "depth - 1" will
+remain as it is and ext4_ext_more_to_rm will return 0 although the
+required blocks are not yet removed.
+
+This patch fixes the above mentioned problem as instead of removing
+the extents from the end of file, it starts removing the blocks from
+the particular extent from which removing blocks is actually required
+and continue backward until done.
+
+Signed-off-by: Ashish Sangwan <ashish.sangwan2 at gmail.com>
+Signed-off-by: Namjae Jeon <linkinjeon at gmail.com>
+Reviewed-by: Lukas Czerner <lczerner at redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ fs/ext4/extents.c | 46 +++++++++++++++++++++++++++++-----------------
+ 1 file changed, 29 insertions(+), 17 deletions(-)
+
+--- a/fs/ext4/extents.c
++++ b/fs/ext4/extents.c
+@@ -2518,10 +2518,10 @@ static int ext4_ext_remove_space(struct
+ {
+ struct super_block *sb = inode->i_sb;
+ int depth = ext_depth(inode);
+- struct ext4_ext_path *path;
++ struct ext4_ext_path *path = NULL;
+ ext4_fsblk_t partial_cluster = 0;
+ handle_t *handle;
+- int i, err;
++ int i = 0, err;
+
+ ext_debug("truncate since %u to %u\n", start, end);
+
+@@ -2554,8 +2554,12 @@ again:
+ }
+ depth = ext_depth(inode);
+ ex = path[depth].p_ext;
+- if (!ex)
++ if (!ex) {
++ ext4_ext_drop_refs(path);
++ kfree(path);
++ path = NULL;
+ goto cont;
++ }
+
+ ee_block = le32_to_cpu(ex->ee_block);
+
+@@ -2585,8 +2589,6 @@ again:
+ if (err < 0)
+ goto out;
+ }
+- ext4_ext_drop_refs(path);
+- kfree(path);
+ }
+ cont:
+
+@@ -2595,19 +2597,27 @@ cont:
+ * after i_size and walking into the tree depth-wise.
+ */
+ depth = ext_depth(inode);
+- path = kzalloc(sizeof(struct ext4_ext_path) * (depth + 1), GFP_NOFS);
+- if (path == NULL) {
+- ext4_journal_stop(handle);
+- return -ENOMEM;
+- }
+- path[0].p_depth = depth;
+- path[0].p_hdr = ext_inode_hdr(inode);
+-
+- if (ext4_ext_check(inode, path[0].p_hdr, depth)) {
+- err = -EIO;
+- goto out;
++ if (path) {
++ int k = i = depth;
++ while (--k > 0)
++ path[k].p_block =
++ le16_to_cpu(path[k].p_hdr->eh_entries)+1;
++ } else {
++ path = kzalloc(sizeof(struct ext4_ext_path) * (depth + 1),
++ GFP_NOFS);
++ if (path == NULL) {
++ ext4_journal_stop(handle);
++ return -ENOMEM;
++ }
++ path[0].p_depth = depth;
++ path[0].p_hdr = ext_inode_hdr(inode);
++
++ if (ext4_ext_check(inode, path[0].p_hdr, depth)) {
++ err = -EIO;
++ goto out;
++ }
+ }
+- i = err = 0;
++ err = 0;
+
+ while (i >= 0 && err == 0) {
+ if (i == depth) {
+@@ -2721,8 +2731,10 @@ cont:
+ out:
+ ext4_ext_drop_refs(path);
+ kfree(path);
+- if (err == -EAGAIN)
++ if (err == -EAGAIN) {
++ path = NULL;
+ goto again;
++ }
+ ext4_journal_stop(handle);
+
+ return err;
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/ext4-fix-kernel-BUG-on-large-scale-rm-rf-commands.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-kernel-BUG-on-large-scale-rm-rf-commands.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/ext4-fix-kernel-BUG-on-large-scale-rm-rf-commands.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-kernel-BUG-on-large-scale-rm-rf-commands.patch)
@@ -0,0 +1,63 @@
+From: Theodore Ts'o <tytso at mit.edu>
+Date: Fri, 17 Aug 2012 08:54:52 -0400
+Subject: [PATCH 3/3] ext4: fix kernel BUG on large-scale rm -rf commands
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+commit 89a4e48f8479f8145eca9698f39fe188c982212f upstream.
+
+Commit 968dee7722: "ext4: fix hole punch failure when depth is greater
+than 0" introduced a regression in v3.5.1/v3.6-rc1 which caused kernel
+crashes when users ran run "rm -rf" on large directory hierarchy on
+ext4 filesystems on RAID devices:
+
+ BUG: unable to handle kernel NULL pointer dereference at 0000000000000028
+
+ Process rm (pid: 18229, threadinfo ffff8801276bc000, task ffff880123631710)
+ Call Trace:
+ [<ffffffff81236483>] ? __ext4_handle_dirty_metadata+0x83/0x110
+ [<ffffffff812353d3>] ext4_ext_truncate+0x193/0x1d0
+ [<ffffffff8120a8cf>] ? ext4_mark_inode_dirty+0x7f/0x1f0
+ [<ffffffff81207e05>] ext4_truncate+0xf5/0x100
+ [<ffffffff8120cd51>] ext4_evict_inode+0x461/0x490
+ [<ffffffff811a1312>] evict+0xa2/0x1a0
+ [<ffffffff811a1513>] iput+0x103/0x1f0
+ [<ffffffff81196d84>] do_unlinkat+0x154/0x1c0
+ [<ffffffff8118cc3a>] ? sys_newfstatat+0x2a/0x40
+ [<ffffffff81197b0b>] sys_unlinkat+0x1b/0x50
+ [<ffffffff816135e9>] system_call_fastpath+0x16/0x1b
+ Code: 8b 4d 20 0f b7 41 02 48 8d 04 40 48 8d 04 81 49 89 45 18 0f b7 49 02 48 83 c1 01 49 89 4d 00 e9 ae f8 ff ff 0f 1f 00 49 8b 45 28 <48> 8b 40 28 49 89 45 20 e9 85 f8 ff ff 0f 1f 80 00 00 00
+
+ RIP [<ffffffff81233164>] ext4_ext_remove_space+0xa34/0xdf0
+
+This could be reproduced as follows:
+
+The problem in commit 968dee7722 was that caused the variable 'i' to
+be left uninitialized if the truncate required more space than was
+available in the journal. This resulted in the function
+ext4_ext_truncate_extend_restart() returning -EAGAIN, which caused
+ext4_ext_remove_space() to restart the truncate operation after
+starting a new jbd2 handle.
+
+Reported-by: Maciej Żenczykowski <maze at google.com>
+Reported-by: Marti Raudsepp <marti at juffo.org>
+Tested-by: Fengguang Wu <fengguang.wu at intel.com>
+Signed-off-by: "Theodore Ts'o" <tytso at mit.edu>
+Cc: stable at vger.kernel.org
+---
+ fs/ext4/extents.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
+index 2b8b3c9..9169e11 100644
+--- a/fs/ext4/extents.c
++++ b/fs/ext4/extents.c
+@@ -2594,6 +2594,7 @@ cont:
+ }
+ path[0].p_depth = depth;
+ path[0].p_hdr = ext_inode_hdr(inode);
++ i = 0;
+
+ if (ext4_ext_check(inode, path[0].p_hdr, depth)) {
+ err = -EIO;
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/ext4-rewrite-punch-hole-to-use-ext4_ext_remove_space.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/ext4-rewrite-punch-hole-to-use-ext4_ext_remove_space.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/ext4-rewrite-punch-hole-to-use-ext4_ext_remove_space.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/ext4-rewrite-punch-hole-to-use-ext4_ext_remove_space.patch)
@@ -0,0 +1,349 @@
+From: Lukas Czerner <lczerner at redhat.com>
+Date: Mon, 19 Mar 2012 23:03:19 -0400
+Subject: [PATCH 1/3] ext4: rewrite punch hole to use ext4_ext_remove_space()
+
+commit 5f95d21fb6f2aaa52830e5b7fb405f6c71d3ab85 upstream.
+
+This commit rewrites ext4 punch hole implementation to use
+ext4_ext_remove_space() instead of its home gown way of doing this via
+ext4_ext_map_blocks(). There are several reasons for changing this.
+
+Firstly it is quite non obvious that punching hole needs to
+ext4_ext_map_blocks() to punch a hole, especially given that this
+function should map blocks, not unmap it. It also required a lot of new
+code in ext4_ext_map_blocks().
+
+Secondly the design of it is not very effective. The reason is that we
+are trying to punch out blocks in ext4_ext_punch_hole() in opposite
+direction than in ext4_ext_rm_leaf() which causes the ext4_ext_rm_leaf()
+to iterate through the whole tree from the end to the start to find the
+requested extent for every extent we are going to punch out.
+
+And finally the current implementation does not use the existing code,
+but bring a lot of new code, which is IMO unnecessary since there
+already is some infrastructure we can use. Specifically
+ext4_ext_remove_space().
+
+This commit changes ext4_ext_remove_space() to accept 'end' parameter so
+we can not only truncate to the end of file, but also remove the space
+in the middle of the file (punch a hole). Moreover, because the last
+block to punch out, might be in the middle of the extent, we have to
+split the extent at 'end + 1' so ext4_ext_rm_leaf() can easily either
+remove the whole fist part of split extent, or change its size.
+
+ext4_ext_remove_space() is then used to actually remove the space
+(extents) from within the hole, instead of ext4_ext_map_blocks().
+
+Note that this also fix the issue with punch hole, where we would forget
+to remove empty index blocks from the extent tree, resulting in double
+free block error and file system corruption. This is simply because we
+now use different code path, where this problem does not exist.
+
+This has been tested with fsx running for several days and xfstests,
+plus xfstest #251 with '-o discard' run on the loop image (which
+converts discard requestes into punch hole to the backing file). All of
+it on 1K and 4K file system block size.
+
+Signed-off-by: Lukas Czerner <lczerner at redhat.com>
+Signed-off-by: "Theodore Ts'o" <tytso at mit.edu>
+[bwh: Backported to 3.2.y: move EXT4_EXT_DATA_VALID{1,2} along with the
+ other extent splitting flags]
+---
+ fs/ext4/extents.c | 170 ++++++++++++++++++++++++++++--------------------------
+ 1 file changed, 88 insertions(+), 82 deletions(-)
+
+--- a/fs/ext4/extents.c
++++ b/fs/ext4/extents.c
+@@ -45,6 +45,17 @@
+
+ #include <trace/events/ext4.h>
+
++/*
++ * used by extent splitting.
++ */
++#define EXT4_EXT_MAY_ZEROOUT 0x1 /* safe to zeroout if split fails \
++ due to ENOSPC */
++#define EXT4_EXT_MARK_UNINIT1 0x2 /* mark first half uninitialized */
++#define EXT4_EXT_MARK_UNINIT2 0x4 /* mark second half uninitialized */
++
++#define EXT4_EXT_DATA_VALID1 0x8 /* first half contains valid data */
++#define EXT4_EXT_DATA_VALID2 0x10 /* second half contains valid data */
++
+ static int ext4_split_extent(handle_t *handle,
+ struct inode *inode,
+ struct ext4_ext_path *path,
+@@ -52,6 +63,13 @@ static int ext4_split_extent(handle_t *h
+ int split_flag,
+ int flags);
+
++static int ext4_split_extent_at(handle_t *handle,
++ struct inode *inode,
++ struct ext4_ext_path *path,
++ ext4_lblk_t split,
++ int split_flag,
++ int flags);
++
+ static int ext4_ext_truncate_extend_restart(handle_t *handle,
+ struct inode *inode,
+ int needed)
+@@ -2321,7 +2339,7 @@ ext4_ext_rm_leaf(handle_t *handle, struc
+ struct ext4_extent *ex;
+
+ /* the header must be checked already in ext4_ext_remove_space() */
+- ext_debug("truncate since %u in leaf\n", start);
++ ext_debug("truncate since %u in leaf to %u\n", start, end);
+ if (!path[depth].p_hdr)
+ path[depth].p_hdr = ext_block_hdr(path[depth].p_bh);
+ eh = path[depth].p_hdr;
+@@ -2356,7 +2374,7 @@ ext4_ext_rm_leaf(handle_t *handle, struc
+ ext_debug(" border %u:%u\n", a, b);
+
+ /* If this extent is beyond the end of the hole, skip it */
+- if (end <= ex_ee_block) {
++ if (end < ex_ee_block) {
+ ex--;
+ ex_ee_block = le32_to_cpu(ex->ee_block);
+ ex_ee_len = ext4_ext_get_actual_len(ex);
+@@ -2495,7 +2513,8 @@ ext4_ext_more_to_rm(struct ext4_ext_path
+ return 1;
+ }
+
+-static int ext4_ext_remove_space(struct inode *inode, ext4_lblk_t start)
++static int ext4_ext_remove_space(struct inode *inode, ext4_lblk_t start,
++ ext4_lblk_t end)
+ {
+ struct super_block *sb = inode->i_sb;
+ int depth = ext_depth(inode);
+@@ -2504,7 +2523,7 @@ static int ext4_ext_remove_space(struct
+ handle_t *handle;
+ int i, err;
+
+- ext_debug("truncate since %u\n", start);
++ ext_debug("truncate since %u to %u\n", start, end);
+
+ /* probably first extent we're gonna free will be last in block */
+ handle = ext4_journal_start(inode, depth + 1);
+@@ -2517,6 +2536,61 @@ again:
+ trace_ext4_ext_remove_space(inode, start, depth);
+
+ /*
++ * Check if we are removing extents inside the extent tree. If that
++ * is the case, we are going to punch a hole inside the extent tree
++ * so we have to check whether we need to split the extent covering
++ * the last block to remove so we can easily remove the part of it
++ * in ext4_ext_rm_leaf().
++ */
++ if (end < EXT_MAX_BLOCKS - 1) {
++ struct ext4_extent *ex;
++ ext4_lblk_t ee_block;
++
++ /* find extent for this block */
++ path = ext4_ext_find_extent(inode, end, NULL);
++ if (IS_ERR(path)) {
++ ext4_journal_stop(handle);
++ return PTR_ERR(path);
++ }
++ depth = ext_depth(inode);
++ ex = path[depth].p_ext;
++ if (!ex)
++ goto cont;
++
++ ee_block = le32_to_cpu(ex->ee_block);
++
++ /*
++ * See if the last block is inside the extent, if so split
++ * the extent at 'end' block so we can easily remove the
++ * tail of the first part of the split extent in
++ * ext4_ext_rm_leaf().
++ */
++ if (end >= ee_block &&
++ end < ee_block + ext4_ext_get_actual_len(ex) - 1) {
++ int split_flag = 0;
++
++ if (ext4_ext_is_uninitialized(ex))
++ split_flag = EXT4_EXT_MARK_UNINIT1 |
++ EXT4_EXT_MARK_UNINIT2;
++
++ /*
++ * Split the extent in two so that 'end' is the last
++ * block in the first new extent
++ */
++ err = ext4_split_extent_at(handle, inode, path,
++ end + 1, split_flag,
++ EXT4_GET_BLOCKS_PRE_IO |
++ EXT4_GET_BLOCKS_PUNCH_OUT_EXT);
++
++ if (err < 0)
++ goto out;
++ }
++ ext4_ext_drop_refs(path);
++ kfree(path);
++ }
++cont:
++
++ /*
+ * We start scanning from right side, freeing all the blocks
+ * after i_size and walking into the tree depth-wise.
+ */
+@@ -2528,6 +2602,7 @@ again:
+ }
+ path[0].p_depth = depth;
+ path[0].p_hdr = ext_inode_hdr(inode);
++
+ if (ext4_ext_check(inode, path[0].p_hdr, depth)) {
+ err = -EIO;
+ goto out;
+@@ -2539,7 +2614,7 @@ again:
+ /* this is leaf block */
+ err = ext4_ext_rm_leaf(handle, inode, path,
+ &partial_cluster, start,
+- EXT_MAX_BLOCKS - 1);
++ end);
+ /* root level has p_bh == NULL, brelse() eats this */
+ brelse(path[i].p_bh);
+ path[i].p_bh = NULL;
+@@ -2722,17 +2797,6 @@ static int ext4_ext_zeroout(struct inode
+ }
+
+ /*
+- * used by extent splitting.
+- */
+-#define EXT4_EXT_MAY_ZEROOUT 0x1 /* safe to zeroout if split fails \
+- due to ENOSPC */
+-#define EXT4_EXT_MARK_UNINIT1 0x2 /* mark first half uninitialized */
+-#define EXT4_EXT_MARK_UNINIT2 0x4 /* mark second half uninitialized */
+-
+-#define EXT4_EXT_DATA_VALID1 0x8 /* first half contains valid data */
+-#define EXT4_EXT_DATA_VALID2 0x10 /* second half contains valid data */
+-
+-/*
+ * ext4_split_extent_at() splits an extent at given block.
+ *
+ * @handle: the journal handle
+@@ -4274,7 +4338,7 @@ void ext4_ext_truncate(struct inode *ino
+
+ last_block = (inode->i_size + sb->s_blocksize - 1)
+ >> EXT4_BLOCK_SIZE_BITS(sb);
+- err = ext4_ext_remove_space(inode, last_block);
++ err = ext4_ext_remove_space(inode, last_block, EXT_MAX_BLOCKS - 1);
+
+ /* In a multi-transaction truncate, we only make the final
+ * transaction synchronous.
+@@ -4751,14 +4815,12 @@ int ext4_ext_punch_hole(struct file *fil
+ {
+ struct inode *inode = file->f_path.dentry->d_inode;
+ struct super_block *sb = inode->i_sb;
+- struct ext4_ext_cache cache_ex;
+- ext4_lblk_t first_block, last_block, num_blocks, iblock, max_blocks;
++ ext4_lblk_t first_block, stop_block;
+ struct address_space *mapping = inode->i_mapping;
+- struct ext4_map_blocks map;
+ handle_t *handle;
+ loff_t first_page, last_page, page_len;
+ loff_t first_page_offset, last_page_offset;
+- int ret, credits, blocks_released, err = 0;
++ int credits, err = 0;
+
+ /* No need to punch hole beyond i_size */
+ if (offset >= inode->i_size)
+@@ -4774,10 +4836,6 @@ int ext4_ext_punch_hole(struct file *fil
+ offset;
+ }
+
+- first_block = (offset + sb->s_blocksize - 1) >>
+- EXT4_BLOCK_SIZE_BITS(sb);
+- last_block = (offset + length) >> EXT4_BLOCK_SIZE_BITS(sb);
+-
+ first_page = (offset + PAGE_CACHE_SIZE - 1) >> PAGE_CACHE_SHIFT;
+ last_page = (offset + length) >> PAGE_CACHE_SHIFT;
+
+@@ -4856,7 +4914,6 @@ int ext4_ext_punch_hole(struct file *fil
+ }
+ }
+
+-
+ /*
+ * If i_size is contained in the last page, we need to
+ * unmap and zero the partial page after i_size
+@@ -4876,73 +4933,22 @@ int ext4_ext_punch_hole(struct file *fil
+ }
+ }
+
++ first_block = (offset + sb->s_blocksize - 1) >>
++ EXT4_BLOCK_SIZE_BITS(sb);
++ stop_block = (offset + length) >> EXT4_BLOCK_SIZE_BITS(sb);
++
+ /* If there are no blocks to remove, return now */
+- if (first_block >= last_block)
++ if (first_block >= stop_block)
+ goto out;
+
+ down_write(&EXT4_I(inode)->i_data_sem);
+ ext4_ext_invalidate_cache(inode);
+ ext4_discard_preallocations(inode);
+
+- /*
+- * Loop over all the blocks and identify blocks
+- * that need to be punched out
+- */
+- iblock = first_block;
+- blocks_released = 0;
+- while (iblock < last_block) {
+- max_blocks = last_block - iblock;
+- num_blocks = 1;
+- memset(&map, 0, sizeof(map));
+- map.m_lblk = iblock;
+- map.m_len = max_blocks;
+- ret = ext4_ext_map_blocks(handle, inode, &map,
+- EXT4_GET_BLOCKS_PUNCH_OUT_EXT);
+-
+- if (ret > 0) {
+- blocks_released += ret;
+- num_blocks = ret;
+- } else if (ret == 0) {
+- /*
+- * If map blocks could not find the block,
+- * then it is in a hole. If the hole was
+- * not already cached, then map blocks should
+- * put it in the cache. So we can get the hole
+- * out of the cache
+- */
+- memset(&cache_ex, 0, sizeof(cache_ex));
+- if ((ext4_ext_check_cache(inode, iblock, &cache_ex)) &&
+- !cache_ex.ec_start) {
+-
+- /* The hole is cached */
+- num_blocks = cache_ex.ec_block +
+- cache_ex.ec_len - iblock;
+-
+- } else {
+- /* The block could not be identified */
+- err = -EIO;
+- break;
+- }
+- } else {
+- /* Map blocks error */
+- err = ret;
+- break;
+- }
++ err = ext4_ext_remove_space(inode, first_block, stop_block - 1);
+
+- if (num_blocks == 0) {
+- /* This condition should never happen */
+- ext_debug("Block lookup failed");
+- err = -EIO;
+- break;
+- }
+-
+- iblock += num_blocks;
+- }
+-
+- if (blocks_released > 0) {
+- ext4_ext_invalidate_cache(inode);
+- ext4_discard_preallocations(inode);
+- }
++ ext4_ext_invalidate_cache(inode);
++ ext4_discard_preallocations(inode);
+
+ if (IS_SYNC(inode))
+ ext4_handle_sync(handle);
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/fs-cachefiles-add-support-for-large-files-in-filesys.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/fs-cachefiles-add-support-for-large-files-in-filesys.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/fs-cachefiles-add-support-for-large-files-in-filesys.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/fs-cachefiles-add-support-for-large-files-in-filesys.patch)
@@ -0,0 +1,31 @@
+From: Justin Lecher <jlec at gentoo.org>
+Date: Mon, 30 Jul 2012 14:42:53 -0700
+Subject: fs: cachefiles: add support for large files in filesystem caching
+
+commit 98c350cda2c14a343d34ea01a3d9c24fea5ec66d upstream.
+
+Support the caching of large files.
+
+Addresses https://bugzilla.kernel.org/show_bug.cgi?id=31182
+
+Signed-off-by: Justin Lecher <jlec at gentoo.org>
+Signed-off-by: Suresh Jayaraman <sjayaraman at suse.com>
+Tested-by: Suresh Jayaraman <sjayaraman at suse.com>
+Acked-by: David Howells <dhowells at redhat.com>
+Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
+[bwh: Backported to 3.2:
+ - Adjust context
+ - dentry_open() takes dentry and vfsmount pointers, not a path pointer]
+---
+--- a/fs/cachefiles/rdwr.c
++++ b/fs/cachefiles/rdwr.c
+@@ -918,7 +918,7 @@ int cachefiles_write_page(struct fscache_storage *op, struct page *page)
+ * own time */
+ dget(object->backer);
+ mntget(cache->mnt);
+- file = dentry_open(object->backer, cache->mnt, O_RDWR,
++ file = dentry_open(object->backer, cache->mnt, O_RDWR | O_LARGEFILE,
+ cache->cache_cred);
+ if (IS_ERR(file)) {
+ ret = PTR_ERR(file);
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/i915-ensure-that-VGA-plane-is-disabled.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/i915-ensure-that-VGA-plane-is-disabled.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/i915-ensure-that-VGA-plane-is-disabled.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/i915-ensure-that-VGA-plane-is-disabled.patch)
@@ -0,0 +1,65 @@
+From: Krzysztof Mazur <krzysiek at podlesie.net>
+Date: Wed, 19 Dec 2012 11:03:41 +0100
+Subject: i915: ensure that VGA plane is disabled
+
+commit 0fde901f1ddd2ce0e380a6444f1fb7ca555859e9 upstream.
+
+Some broken systems (like HP nc6120) in some cases, usually after LID
+close/open, enable VGA plane, making display unusable (black screen on LVDS,
+some strange mode on VGA output). We used to disable VGA plane only once at
+startup. Now we also check, if VGA plane is still disabled while changing
+mode, and fix that if something changed it.
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57434
+Signed-off-by: Krzysztof Mazur <krzysiek at podlesie.net>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+[bwh: Backported to 3.2: intel_modeset_setup_hw_state() does not
+ exist, so call i915_redisable_vga() directly from intel_lid_notify()]
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+--- a/drivers/gpu/drm/i915/intel_display.c
++++ b/drivers/gpu/drm/i915/intel_display.c
+@@ -8898,6 +8898,23 @@ static void i915_disable_vga(struct drm_
+ POSTING_READ(vga_reg);
+ }
+
++void i915_redisable_vga(struct drm_device *dev)
++{
++ struct drm_i915_private *dev_priv = dev->dev_private;
++ u32 vga_reg;
++
++ if (HAS_PCH_SPLIT(dev))
++ vga_reg = CPU_VGACNTRL;
++ else
++ vga_reg = VGACNTRL;
++
++ if (I915_READ(vga_reg) != VGA_DISP_DISABLE) {
++ DRM_DEBUG_KMS("Something enabled VGA plane, disabling it\n");
++ I915_WRITE(vga_reg, VGA_DISP_DISABLE);
++ POSTING_READ(vga_reg);
++ }
++}
++
+ void intel_modeset_init(struct drm_device *dev)
+ {
+ struct drm_i915_private *dev_priv = dev->dev_private;
+--- a/drivers/gpu/drm/i915/i915_drv.h
++++ b/drivers/gpu/drm/i915/i915_drv.h
+@@ -1305,6 +1305,7 @@ static inline void intel_unregister_dsm_
+ #endif /* CONFIG_ACPI */
+
+ /* modesetting */
++extern void i915_redisable_vga(struct drm_device *dev);
+ extern void intel_modeset_init(struct drm_device *dev);
+ extern void intel_modeset_gem_init(struct drm_device *dev);
+ extern void intel_modeset_cleanup(struct drm_device *dev);
+--- a/drivers/gpu/drm/i915/intel_lvds.c
++++ b/drivers/gpu/drm/i915/intel_lvds.c
+@@ -535,6 +535,7 @@ static int intel_lid_notify(struct notif
+
+ mutex_lock(&dev->mode_config.mutex);
+ drm_helper_resume_force_mode(dev);
++ i915_redisable_vga(dev);
+ mutex_unlock(&dev->mode_config.mutex);
+
+ return NOTIFY_OK;
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/md-protect-against-crash-upon-fsync-on-ro-array.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/md-protect-against-crash-upon-fsync-on-ro-array.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/md-protect-against-crash-upon-fsync-on-ro-array.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/md-protect-against-crash-upon-fsync-on-ro-array.patch)
@@ -0,0 +1,41 @@
+From: Sebastian Riemer <sebastian.riemer at profitbricks.com>
+Date: Fri, 25 Jan 2013 12:46:59 +0100
+Subject: md: protect against crash upon fsync on ro array
+Bug-Debian: http://bugs.debian.org/696650
+
+commit 0ecfa11f08c79be05eb00bba537e764e6672774d upstream.
+
+If an fsync occurs on a read-only array, we need to send a
+completion for the IO and may not increment the active IO count.
+Otherwise, we hit a bug trace and can't stop the MD array anymore.
+
+By advice of Christoph Hellwig we return success upon a flush
+request but we return -EROFS for other writes.
+We detect flush requests by checking if the bio has zero sectors.
+
+Cc: Christoph Hellwig <hch at infradead.org>
+Cc: Ben Hutchings <ben at decadent.org.uk>
+Cc: NeilBrown <neilb at suse.de>
+Signed-off-by: Sebastian Riemer <sebastian.riemer at profitbricks.com>
+Reported-by: Ben Hutchings <ben at decadent.org.uk>
+Acked-by: Paul Menzel <paulepanter at users.sourceforge.net>
+Signed-off-by: NeilBrown <neilb at suse.de>
+---
+ drivers/md/md.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/drivers/md/md.c b/drivers/md/md.c
+index 3db3d1b..1e634a6 100644
+--- a/drivers/md/md.c
++++ b/drivers/md/md.c
+@@ -307,6 +307,10 @@ static void md_make_request(struct request_queue *q, struct bio *bio)
+ bio_io_error(bio);
+ return;
+ }
++ if (mddev->ro == 1 && unlikely(rw == WRITE)) {
++ bio_endio(bio, bio_sectors(bio) == 0 ? 0 : -EROFS);
++ return;
++ }
+ smp_rmb(); /* Ensure implications of 'active' are visible */
+ rcu_read_lock();
+ if (mddev->suspended) {
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/mm-Try-harder-to-allocate-vmemmap-blocks.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/mm-Try-harder-to-allocate-vmemmap-blocks.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/mm-Try-harder-to-allocate-vmemmap-blocks.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/mm-Try-harder-to-allocate-vmemmap-blocks.patch)
@@ -0,0 +1,36 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Date: Mon, 11 Feb 2013 00:56:24 +0000
+Subject: mm: Try harder to allocate vmemmap blocks
+Bug-Debian: http://bugs.debian.org/699913
+
+Hot-adding memory on x86_64 normally requires huge page allocation.
+When this is done to a VM guest, it's usually because the system is
+already tight on memory, so the request tends to fail. Try to avoid
+this by adding __GFP_REPEAT to the allocation flags.
+
+Reported-and-tested-by: Bernhard Schmidt <Bernhard.Schmidt at lrz.de>
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ mm/sparse-vmemmap.c | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/mm/sparse-vmemmap.c b/mm/sparse-vmemmap.c
+index 1b7e22a..22b7e18 100644
+--- a/mm/sparse-vmemmap.c
++++ b/mm/sparse-vmemmap.c
+@@ -53,10 +53,12 @@ void * __meminit vmemmap_alloc_block(unsigned long size, int node)
+ struct page *page;
+
+ if (node_state(node, N_HIGH_MEMORY))
+- page = alloc_pages_node(node,
+- GFP_KERNEL | __GFP_ZERO, get_order(size));
++ page = alloc_pages_node(
++ node, GFP_KERNEL | __GFP_ZERO | __GFP_REPEAT,
++ get_order(size));
+ else
+- page = alloc_pages(GFP_KERNEL | __GFP_ZERO,
++ page = alloc_pages(
++ GFP_KERNEL | __GFP_ZERO | __GFP_REPEAT,
+ get_order(size));
+ if (page)
+ return page_address(page);
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/all/mm-fix-pageblock-bitmap-allocation.patch (from r19868, dists/sid/linux/debian/patches/bugfix/all/mm-fix-pageblock-bitmap-allocation.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/mm-fix-pageblock-bitmap-allocation.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/all/mm-fix-pageblock-bitmap-allocation.patch)
@@ -0,0 +1,80 @@
+From: Linus Torvalds <torvalds at linux-foundation.org>
+Date: Mon, 18 Feb 2013 09:58:02 -0800
+Subject: mm: fix pageblock bitmap allocation
+
+commit 7c45512df987c5619db041b5c9b80d281e26d3db upstream.
+
+Commit c060f943d092 ("mm: use aligned zone start for pfn_to_bitidx
+calculation") fixed out calculation of the index into the pageblock
+bitmap when a !SPARSEMEM zome was not aligned to pageblock_nr_pages.
+
+However, the _allocation_ of that bitmap had never taken this alignment
+requirement into accout, so depending on the exact size and alignment of
+the zone, the use of that index could then access past the allocation,
+resulting in some very subtle memory corruption.
+
+This was reported (and bisected) by Ingo Molnar: one of his random
+config builds would hang with certain very specific kernel command line
+options.
+
+In the meantime, commit c060f943d092 has been marked for stable, so this
+fix needs to be back-ported to the stable kernels that backported the
+commit to use the right alignment.
+
+Bisected-and-tested-by: Ingo Molnar <mingo at kernel.org>
+Acked-by: Mel Gorman <mgorman at suse.de>
+Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
+---
+ mm/page_alloc.c | 15 +++++++++------
+ 1 file changed, 9 insertions(+), 6 deletions(-)
+
+diff --git a/mm/page_alloc.c b/mm/page_alloc.c
+index 9673d96..6a83cd3 100644
+--- a/mm/page_alloc.c
++++ b/mm/page_alloc.c
+@@ -4420,10 +4420,11 @@ static void __meminit calculate_node_totalpages(struct pglist_data *pgdat,
+ * round what is now in bits to nearest long in bits, then return it in
+ * bytes.
+ */
+-static unsigned long __init usemap_size(unsigned long zonesize)
++static unsigned long __init usemap_size(unsigned long zone_start_pfn, unsigned long zonesize)
+ {
+ unsigned long usemapsize;
+
++ zonesize += zone_start_pfn & (pageblock_nr_pages-1);
+ usemapsize = roundup(zonesize, pageblock_nr_pages);
+ usemapsize = usemapsize >> pageblock_order;
+ usemapsize *= NR_PAGEBLOCK_BITS;
+@@ -4433,17 +4434,19 @@ static unsigned long __init usemap_size(unsigned long zonesize)
+ }
+
+ static void __init setup_usemap(struct pglist_data *pgdat,
+- struct zone *zone, unsigned long zonesize)
++ struct zone *zone,
++ unsigned long zone_start_pfn,
++ unsigned long zonesize)
+ {
+- unsigned long usemapsize = usemap_size(zonesize);
++ unsigned long usemapsize = usemap_size(zone_start_pfn, zonesize);
+ zone->pageblock_flags = NULL;
+ if (usemapsize)
+ zone->pageblock_flags = alloc_bootmem_node_nopanic(pgdat,
+ usemapsize);
+ }
+ #else
+-static inline void setup_usemap(struct pglist_data *pgdat,
+- struct zone *zone, unsigned long zonesize) {}
++static inline void setup_usemap(struct pglist_data *pgdat, struct zone *zone,
++ unsigned long zone_start_pfn, unsigned long zonesize) {}
+ #endif /* CONFIG_SPARSEMEM */
+
+ #ifdef CONFIG_HUGETLB_PAGE_SIZE_VARIABLE
+@@ -4594,7 +4597,7 @@ static void __paginginit free_area_init_core(struct pglist_data *pgdat,
+ continue;
+
+ set_pageblock_order();
+- setup_usemap(pgdat, zone, size);
++ setup_usemap(pgdat, zone, zone_start_pfn, size);
+ ret = init_currently_empty_zone(zone, zone_start_pfn,
+ size, MEMMAP_EARLY);
+ BUG_ON(ret);
Modified: dists/squeeze-backports/linux/debian/patches/bugfix/all/usb-Add-USB_QUIRK_RESET_RESUME-for-all-Logitech-UVC-.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/bugfix/all/usb-Add-USB_QUIRK_RESET_RESUME-for-all-Logitech-UVC-.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/all/usb-Add-USB_QUIRK_RESET_RESUME-for-all-Logitech-UVC-.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -12,17 +12,16 @@
Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
Acked-by: Alan Stern <stern at rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+[bwh: Adjust context to apply after 3.2.38]
---
drivers/usb/core/quirks.c | 58 +++++++++++++--------------------------------
1 file changed, 16 insertions(+), 42 deletions(-)
-diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
-index cbd15d1..f15501f4c 100644
--- a/drivers/usb/core/quirks.c
+++ b/drivers/usb/core/quirks.c
-@@ -43,53 +43,23 @@ static const struct usb_device_id usb_quirk_list[] = {
- /* Creative SB Audigy 2 NX */
- { USB_DEVICE(0x041e, 0x3020), .driver_info = USB_QUIRK_RESET_RESUME },
+@@ -46,53 +46,23 @@ static const struct usb_device_id usb_qu
+ /* Microsoft LifeCam-VX700 v2.0 */
+ { USB_DEVICE(0x045e, 0x0770), .driver_info = USB_QUIRK_RESET_RESUME },
- /* Logitech Webcam C200 */
- { USB_DEVICE(0x046d, 0x0802), .driver_info = USB_QUIRK_RESET_RESUME },
@@ -86,7 +85,7 @@
/* Logitech Harmony 700-series */
{ USB_DEVICE(0x046d, 0xc122), .driver_info = USB_QUIRK_DELAY_INIT },
-@@ -162,6 +132,10 @@ static const struct usb_device_id usb_quirk_list[] = {
+@@ -169,6 +139,10 @@ static const struct usb_device_id usb_qu
};
static const struct usb_device_id usb_interface_quirk_list[] = {
Modified: dists/squeeze-backports/linux/debian/patches/bugfix/ia64/nouveau-ACPI-support-is-dependent-on-X86.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/bugfix/ia64/nouveau-ACPI-support-is-dependent-on-X86.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/ia64/nouveau-ACPI-support-is-dependent-on-X86.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -13,10 +13,10 @@
drivers/gpu/drm/nouveau/nouveau_drv.h | 2 +-
3 files changed, 5 insertions(+), 3 deletions(-)
-diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
-index ca16399..5a85697 100644
---- a/drivers/gpu/drm/nouveau/Kconfig
-+++ b/drivers/gpu/drm/nouveau/Kconfig
+Index: linux/drivers/gpu/drm/nouveau/Kconfig
+===================================================================
+--- linux.orig/drivers/gpu/drm/nouveau/Kconfig
++++ linux/drivers/gpu/drm/nouveau/Kconfig
@@ -11,8 +11,8 @@ config DRM_NOUVEAU
select FRAMEBUFFER_CONSOLE if !EXPERT
select FB_BACKLIGHT if DRM_NOUVEAU_BACKLIGHT
@@ -25,14 +25,14 @@
- select MXM_WMI if ACPI
+ select ACPI_WMI if ACPI && X86
+ select MXM_WMI if ACPI && X86
+ select POWER_SUPPLY
help
Choose this option for open-source nVidia support.
-
-diff --git a/drivers/gpu/drm/nouveau/Makefile b/drivers/gpu/drm/nouveau/Makefile
-index 0583677..797b808 100644
---- a/drivers/gpu/drm/nouveau/Makefile
-+++ b/drivers/gpu/drm/nouveau/Makefile
-@@ -37,6 +37,8 @@ nouveau-y := nouveau_drv.o nouveau_state.o nouveau_channel.o nouveau_mem.o \
+Index: linux/drivers/gpu/drm/nouveau/Makefile
+===================================================================
+--- linux.orig/drivers/gpu/drm/nouveau/Makefile
++++ linux/drivers/gpu/drm/nouveau/Makefile
+@@ -42,6 +42,8 @@ nouveau-y := nouveau_drv.o nouveau_state
nouveau-$(CONFIG_DRM_NOUVEAU_DEBUG) += nouveau_debugfs.o
nouveau-$(CONFIG_COMPAT) += nouveau_ioc32.o
nouveau-$(CONFIG_DRM_NOUVEAU_BACKLIGHT) += nouveau_backlight.o
@@ -41,11 +41,11 @@
+endif
obj-$(CONFIG_DRM_NOUVEAU)+= nouveau.o
-diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.h b/drivers/gpu/drm/nouveau/nouveau_drv.h
-index 9c56331..9ea5a17 100644
---- a/drivers/gpu/drm/nouveau/nouveau_drv.h
-+++ b/drivers/gpu/drm/nouveau/nouveau_drv.h
-@@ -968,7 +968,7 @@ extern int nouveau_dma_wait(struct nouveau_channel *, int slots, int size);
+Index: linux/drivers/gpu/drm/nouveau/nouveau_drv.h
+===================================================================
+--- linux.orig/drivers/gpu/drm/nouveau/nouveau_drv.h
++++ linux/drivers/gpu/drm/nouveau/nouveau_drv.h
+@@ -1095,7 +1095,7 @@ extern int nouveau_dma_wait(struct nouv
/* nouveau_acpi.c */
#define ROM_BIOS_PAGE 4096
@@ -53,7 +53,4 @@
+#if defined(CONFIG_ACPI) && defined(CONFIG_X86)
void nouveau_register_dsm_handler(void);
void nouveau_unregister_dsm_handler(void);
- int nouveau_acpi_get_bios_chunk(uint8_t *bios, int offset, int len);
---
-1.7.5.3
-
+ void nouveau_switcheroo_optimus_dsm(void);
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Close-race-between-processing-unpin-task-an.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-Close-race-between-processing-unpin-task-an.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Close-race-between-processing-unpin-task-an.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-Close-race-between-processing-unpin-task-an.patch)
@@ -0,0 +1,185 @@
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Mon, 3 Dec 2012 11:36:30 +0000
+Subject: drm/i915: Close race between processing unpin task and queueing the
+ flip
+
+commit e7d841ca03b7ab668620045cd7b428eda9f41601 upstream.
+
+Before queuing the flip but crucially after attaching the unpin-work to
+the crtc, we continue to setup the unpin-work. However, should the
+hardware fire early, we see the connected unpin-work and queue the task.
+The task then promptly runs and unpins the fb before we finish taking
+the required references or even pinning it... Havoc.
+
+To close the race, we use the flip-pending atomic to indicate when the
+flip is finally setup and enqueued. So during the flip-done processing,
+we can check more accurately whether the flip was expected.
+
+v2: Add the appropriate mb() to ensure that the writes to the page-flip
+worker are complete prior to marking it active and emitting the MI_FLIP.
+On the read side, the mb should be enforced by the spinlocks.
+
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+[danvet: Review the barriers a bit, we need a write barrier both
+before and after updating ->pending. Similarly we need a read barrier
+in the interrupt handler both before and after reading ->pending. With
+well-ordered irqs only one barrier in each place should be required,
+but since this patch explicitly sets out to combat spurious interrupts
+with is staged activation of the unpin work we need to go full-bore on
+the barriers, too. Discussed with Chris Wilson on irc and changes
+acked by him.]
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+[bwh: Backported to 3.4: adjust context]
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ drivers/gpu/drm/i915/i915_debugfs.c | 4 ++--
+ drivers/gpu/drm/i915/i915_irq.c | 4 +++-
+ drivers/gpu/drm/i915/intel_display.c | 39 ++++++++++++++++++++++++++++------
+ drivers/gpu/drm/i915/intel_drv.h | 5 ++++-
+ 4 files changed, 41 insertions(+), 11 deletions(-)
+
+--- a/drivers/gpu/drm/i915/i915_debugfs.c
++++ b/drivers/gpu/drm/i915/i915_debugfs.c
+@@ -340,7 +340,7 @@ static int i915_gem_pageflip_info(struct
+ seq_printf(m, "No flip due on pipe %c (plane %c)\n",
+ pipe, plane);
+ } else {
+- if (!work->pending) {
++ if (atomic_read(&work->pending) < INTEL_FLIP_COMPLETE) {
+ seq_printf(m, "Flip queued on pipe %c (plane %c)\n",
+ pipe, plane);
+ } else {
+@@ -351,7 +351,7 @@ static int i915_gem_pageflip_info(struct
+ seq_printf(m, "Stall check enabled, ");
+ else
+ seq_printf(m, "Stall check waiting for page flip ioctl, ");
+- seq_printf(m, "%d prepares\n", work->pending);
++ seq_printf(m, "%d prepares\n", atomic_read(&work->pending));
+
+ if (work->old_fb_obj) {
+ struct drm_i915_gem_object *obj = work->old_fb_obj;
+--- a/drivers/gpu/drm/i915/i915_irq.c
++++ b/drivers/gpu/drm/i915/i915_irq.c
+@@ -1251,7 +1251,9 @@ static void i915_pageflip_stall_check(st
+ spin_lock_irqsave(&dev->event_lock, flags);
+ work = intel_crtc->unpin_work;
+
+- if (work == NULL || work->pending || !work->enable_stall_check) {
++ if (work == NULL ||
++ atomic_read(&work->pending) >= INTEL_FLIP_COMPLETE ||
++ !work->enable_stall_check) {
+ /* Either the pending flip IRQ arrived, or we're too early. Don't check */
+ spin_unlock_irqrestore(&dev->event_lock, flags);
+ return;
+--- a/drivers/gpu/drm/i915/intel_display.c
++++ b/drivers/gpu/drm/i915/intel_display.c
+@@ -7234,11 +7234,18 @@ static void do_intel_finish_page_flip(st
+
+ spin_lock_irqsave(&dev->event_lock, flags);
+ work = intel_crtc->unpin_work;
+- if (work == NULL || !work->pending) {
++
++ /* Ensure we don't miss a work->pending update ... */
++ smp_rmb();
++
++ if (work == NULL || atomic_read(&work->pending) < INTEL_FLIP_COMPLETE) {
+ spin_unlock_irqrestore(&dev->event_lock, flags);
+ return;
+ }
+
++ /* and that the unpin work is consistent wrt ->pending. */
++ smp_rmb();
++
+ intel_crtc->unpin_work = NULL;
+
+ if (work->event) {
+@@ -7310,16 +7317,25 @@ void intel_prepare_page_flip(struct drm_
+ to_intel_crtc(dev_priv->plane_to_crtc_mapping[plane]);
+ unsigned long flags;
+
++ /* NB: An MMIO update of the plane base pointer will also
++ * generate a page-flip completion irq, i.e. every modeset
++ * is also accompanied by a spurious intel_prepare_page_flip().
++ */
+ spin_lock_irqsave(&dev->event_lock, flags);
+- if (intel_crtc->unpin_work) {
+- if ((++intel_crtc->unpin_work->pending) > 1)
+- DRM_ERROR("Prepared flip multiple times\n");
+- } else {
+- DRM_DEBUG_DRIVER("preparing flip with no unpin work?\n");
+- }
++ if (intel_crtc->unpin_work)
++ atomic_inc_not_zero(&intel_crtc->unpin_work->pending);
+ spin_unlock_irqrestore(&dev->event_lock, flags);
+ }
+
++inline static void intel_mark_page_flip_active(struct intel_crtc *intel_crtc)
++{
++ /* Ensure that the work item is consistent when activating it ... */
++ smp_wmb();
++ atomic_set(&intel_crtc->unpin_work->pending, INTEL_FLIP_PENDING);
++ /* and that it is marked active as soon as the irq could fire. */
++ smp_wmb();
++}
++
+ static int intel_gen2_queue_flip(struct drm_device *dev,
+ struct drm_crtc *crtc,
+ struct drm_framebuffer *fb,
+@@ -7356,6 +7372,8 @@ static int intel_gen2_queue_flip(struct
+ OUT_RING(fb->pitches[0]);
+ OUT_RING(obj->gtt_offset + offset);
+ OUT_RING(0); /* aux display base address, unused */
++
++ intel_mark_page_flip_active(intel_crtc);
+ ADVANCE_LP_RING();
+ return 0;
+
+@@ -7399,6 +7417,7 @@ static int intel_gen3_queue_flip(struct
+ OUT_RING(obj->gtt_offset + offset);
+ OUT_RING(MI_NOOP);
+
++ intel_mark_page_flip_active(intel_crtc);
+ ADVANCE_LP_RING();
+ return 0;
+
+@@ -7442,6 +7461,8 @@ static int intel_gen4_queue_flip(struct
+ pf = 0;
+ pipesrc = I915_READ(PIPESRC(intel_crtc->pipe)) & 0x0fff0fff;
+ OUT_RING(pf | pipesrc);
++
++ intel_mark_page_flip_active(intel_crtc);
+ ADVANCE_LP_RING();
+ return 0;
+
+@@ -7483,6 +7504,8 @@ static int intel_gen6_queue_flip(struct
+ pf = 0;
+ pipesrc = I915_READ(PIPESRC(intel_crtc->pipe)) & 0x0fff0fff;
+ OUT_RING(pf | pipesrc);
++
++ intel_mark_page_flip_active(intel_crtc);
+ ADVANCE_LP_RING();
+ return 0;
+
+@@ -7537,6 +7560,8 @@ static int intel_gen7_queue_flip(struct
+ intel_ring_emit(ring, (fb->pitches[0] | obj->tiling_mode));
+ intel_ring_emit(ring, (obj->gtt_offset));
+ intel_ring_emit(ring, (MI_NOOP));
++
++ intel_mark_page_flip_active(intel_crtc);
+ intel_ring_advance(ring);
+ return 0;
+
+--- a/drivers/gpu/drm/i915/intel_drv.h
++++ b/drivers/gpu/drm/i915/intel_drv.h
+@@ -277,7 +277,10 @@ struct intel_unpin_work {
+ struct drm_i915_gem_object *old_fb_obj;
+ struct drm_i915_gem_object *pending_flip_obj;
+ struct drm_pending_vblank_event *event;
+- int pending;
++ atomic_t pending;
++#define INTEL_FLIP_INACTIVE 0
++#define INTEL_FLIP_PENDING 1
++#define INTEL_FLIP_COMPLETE 2
+ bool enable_stall_check;
+ };
+
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Disable-AsyncFlip-performance-optimisations.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-Disable-AsyncFlip-performance-optimisations.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Disable-AsyncFlip-performance-optimisations.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-Disable-AsyncFlip-performance-optimisations.patch)
@@ -0,0 +1,62 @@
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Sun, 20 Jan 2013 16:11:20 +0000
+Subject: drm/i915: Disable AsyncFlip performance optimisations
+
+commit 1c8c38c588ea91f8deeae21284840459d1bb58e3 upstream.
+
+This is a required workarounds for all products, especially on gen6+
+where it causes the command streamer to fail to parse instructions
+following a WAIT_FOR_EVENT. We use WAIT_FOR_EVENT for synchronising
+between the GPU and the display engines, and so this bit being unset may
+cause hangs.
+
+References: https://bugzilla.kernel.org/show_bug.cgi?id=52311
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+Reviewed-by: Imre Deak <imre.deak at intel.com>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+[bwh: Backported to 3.2:
+ - Adjust context
+ - s/_MASKED_BIT/GFX_MODE/]
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ drivers/gpu/drm/i915/i915_reg.h | 1 +
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 19 +++++++++++++------
+ 2 files changed, 14 insertions(+), 6 deletions(-)
+
+--- a/drivers/gpu/drm/i915/i915_reg.h
++++ b/drivers/gpu/drm/i915/i915_reg.h
+@@ -400,6 +400,7 @@
+ #define MI_MODE 0x0209c
+ # define VS_TIMER_DISPATCH (1 << 6)
+ # define MI_FLUSH_ENABLE (1 << 12)
++# define ASYNC_FLIP_PERF_DISABLE (1 << 14)
+
+ #define GEN6_GT_MODE 0x20d0
+ #define GEN6_GT_MODE_HI (1 << 9)
+--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
++++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
+@@ -399,12 +399,20 @@ static int init_render_ring(struct intel
+ if (INTEL_INFO(dev)->gen > 3) {
+ int mode = VS_TIMER_DISPATCH << 16 | VS_TIMER_DISPATCH;
+ I915_WRITE(MI_MODE, mode);
+- if (IS_GEN7(dev))
+- I915_WRITE(GFX_MODE_GEN7,
+- GFX_MODE_DISABLE(GFX_TLB_INVALIDATE_ALWAYS) |
+- GFX_MODE_ENABLE(GFX_REPLAY_MODE));
+ }
+
++ /* We need to disable the AsyncFlip performance optimisations in order
++ * to use MI_WAIT_FOR_EVENT within the CS. It should already be
++ * programmed to '1' on all products.
++ */
++ if (INTEL_INFO(dev)->gen >= 6)
++ I915_WRITE(MI_MODE, GFX_MODE_ENABLE(ASYNC_FLIP_PERF_DISABLE));
++
++ if (IS_GEN7(dev))
++ I915_WRITE(GFX_MODE_GEN7,
++ GFX_MODE_DISABLE(GFX_TLB_INVALIDATE_ALWAYS) |
++ GFX_MODE_ENABLE(GFX_REPLAY_MODE));
++
+ if (INTEL_INFO(dev)->gen >= 5) {
+ ret = init_pipe_control(ring);
+ if (ret)
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-EBUSY-status-handling-added-to-i915_gem_fau.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-EBUSY-status-handling-added-to-i915_gem_fau.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-EBUSY-status-handling-added-to-i915_gem_fau.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-EBUSY-status-handling-added-to-i915_gem_fau.patch)
@@ -0,0 +1,36 @@
+From: Dmitry Rogozhkin <dmitry.v.rogozhkin at intel.com>
+Date: Wed, 3 Oct 2012 17:15:26 +0300
+Subject: drm/i915: EBUSY status handling added to i915_gem_fault().
+
+commit e79e0fe380847493266fba557217e2773c61bd1b upstream.
+
+Subsequent threads returning EBUSY from vm_insert_pfn() was not handled
+correctly. As a result concurrent access from new threads to
+mmapped data caused SIGBUS.
+
+Note that this fixes i-g-t/tests/gem_threaded_tiled_access.
+
+Tested-by: Mika Kuoppala <mika.kuoppala at intel.com>
+Signed-off-by: Dmitry Rogozhkin <dmitry.v.rogozhkin at intel.com>
+Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+---
+ drivers/gpu/drm/i915/i915_gem.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
+index 76bbb37..5fa3419 100644
+--- a/drivers/gpu/drm/i915/i915_gem.c
++++ b/drivers/gpu/drm/i915/i915_gem.c
+@@ -1400,6 +1400,11 @@ out:
+ case 0:
+ case -ERESTARTSYS:
+ case -EINTR:
++ case -EBUSY:
++ /*
++ * EBUSY is ok: this just means that another thread
++ * already did the job.
++ */
+ return VM_FAULT_NOPAGE;
+ case -ENOMEM:
+ return VM_FAULT_OOM;
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-GFX_MODE-Flush-TLB-Invalidate-Mode-must-be-.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-GFX_MODE-Flush-TLB-Invalidate-Mode-must-be-.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-GFX_MODE-Flush-TLB-Invalidate-Mode-must-be-.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-GFX_MODE-Flush-TLB-Invalidate-Mode-must-be-.patch)
@@ -0,0 +1,38 @@
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Sun, 20 Jan 2013 16:33:32 +0000
+Subject: drm/i915: GFX_MODE Flush TLB Invalidate Mode must be '1' for
+ scanline waits
+
+commit f05bb0c7b624252a5e768287e340e8e45df96e42 upstream.
+
+On SNB, if bit 13 of GFX_MODE, Flush TLB Invalidate Mode, is not set to 1,
+the hardware can not program the scanline values. Those scanline values
+then control when the signal is sent from the display engine to the render
+ring for MI_WAIT_FOR_EVENTs. Note setting this bit means that TLB
+invalidations must be performed explicitly through the appropriate bits
+being set in PIPE_CONTROL.
+
+References: https://bugzilla.kernel.org/show_bug.cgi?id=52311
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+Reviewed-by: Ben Widawsky <ben at bwidawsk.net>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+[bwh: Backported to 3.2: s/_MASKED_BIT/GFX_MODE/]
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ drivers/gpu/drm/i915/intel_ringbuffer.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
++++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
+@@ -407,6 +407,11 @@ static int init_render_ring(struct intel
+ if (INTEL_INFO(dev)->gen >= 6)
+ I915_WRITE(MI_MODE, GFX_MODE_ENABLE(ASYNC_FLIP_PERF_DISABLE));
+
++ /* Required for the hardware to program scanline values for waiting */
++ if (INTEL_INFO(dev)->gen == 6)
++ I915_WRITE(GFX_MODE,
++ GFX_MODE_ENABLE(GFX_TLB_INVALIDATE_ALWAYS));
++
+ if (IS_GEN7(dev))
+ I915_WRITE(GFX_MODE_GEN7,
+ GFX_MODE_DISABLE(GFX_TLB_INVALIDATE_ALWAYS) |
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Only-increment-the-user-pin-count-after-suc.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-Only-increment-the-user-pin-count-after-suc.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Only-increment-the-user-pin-count-after-suc.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-Only-increment-the-user-pin-count-after-suc.patch)
@@ -0,0 +1,40 @@
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Wed, 2 Jan 2013 10:31:22 +0000
+Subject: drm/i915; Only increment the user-pin-count after successfully
+ pinning the bo
+
+commit 93be8788e648817d62fda33e2998eb6ca6ebf3a3 upstream.
+
+As along the error path we do not correct the user pin-count for the
+failure, we may end up with userspace believing that it has a pinned
+object at offset 0 (when interrupted by a signal for example).
+
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+[bwh: Backported to 3.2: adjust context]
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ drivers/gpu/drm/i915/i915_gem.c | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+--- a/drivers/gpu/drm/i915/i915_gem.c
++++ b/drivers/gpu/drm/i915/i915_gem.c
+@@ -3456,14 +3456,15 @@ i915_gem_pin_ioctl(struct drm_device *de
+ goto out;
+ }
+
+- obj->user_pin_count++;
+- obj->pin_filp = file;
+- if (obj->user_pin_count == 1) {
++ if (obj->user_pin_count == 0) {
+ ret = i915_gem_object_pin(obj, args->alignment, true);
+ if (ret)
+ goto out;
+ }
+
++ obj->user_pin_count++;
++ obj->pin_filp = file;
++
+ /* XXX - flush the CPU caches for pinned objects
+ * as the X server doesn't manage domains yet
+ */
Modified: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Only-kick-out-vesafb-if-we-takeover-the-fbc.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Only-kick-out-vesafb-if-we-takeover-the-fbc.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-Only-kick-out-vesafb-if-we-takeover-the-fbc.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -23,7 +23,7 @@
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1955,7 +1955,8 @@ int i915_driver_load(struct drm_device *
+@@ -1999,7 +1999,8 @@ int i915_driver_load(struct drm_device *
goto put_bridge;
}
@@ -31,5 +31,5 @@
+ if (drm_core_check_feature(dev, DRIVER_MODESET))
+ i915_kick_out_firmware_fb(dev_priv);
- /* overlay on gen2 is broken and can't address above 1G */
- if (IS_GEN2(dev))
+ pci_set_master(dev->pdev);
+
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch)
@@ -0,0 +1,26 @@
+From: Jani Nikula <jani.nikula at intel.com>
+Date: Tue, 22 Jan 2013 10:50:35 +0000
+Subject: drm/i915: add quirk to invert brightness on eMachines e725
+
+commit 01e3a8feb40e54b962a20fa7eb595c5efef5e109 upstream.
+
+Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=31522#c35
+[Note: There are more than one broken setups in the bug. This fixes one.]
+Reported-by: Martins <andrissr at inbox.lv>
+Signed-off-by: Jani Nikula <jani.nikula at intel.com>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+---
+diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
+index 44f9d8f..8575a62 100644
+--- a/drivers/gpu/drm/i915/intel_display.c
++++ b/drivers/gpu/drm/i915/intel_display.c
+@@ -8602,6 +8602,9 @@ static struct intel_quirk intel_quirks[] = {
+
+ /* Acer/eMachines G725 */
+ { 0x2a42, 0x1025, 0x0210, quirk_invert_brightness },
++
++ /* Acer/eMachines e725 */
++ { 0x2a42, 0x1025, 0x0212, quirk_invert_brightness },
+ };
+
+ static void intel_init_quirks(struct drm_device *dev)
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch)
@@ -0,0 +1,25 @@
+From: Jani Nikula <jani.nikula at intel.com>
+Date: Tue, 22 Jan 2013 10:50:34 +0000
+Subject: drm/i915: add quirk to invert brightness on eMachines G725
+
+commit 1ffff60320879830e469e26062c18f75236822ba upstream.
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59628
+Reported-by: Roland Gruber <post at rolandgruber.de>
+Signed-off-by: Jani Nikula <jani.nikula at intel.com>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+---
+diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
+index 7725446..44f9d8f 100644
+--- a/drivers/gpu/drm/i915/intel_display.c
++++ b/drivers/gpu/drm/i915/intel_display.c
+@@ -8599,6 +8599,9 @@ static struct intel_quirk intel_quirks[] = {
+
+ /* Acer Aspire 5734Z must invert backlight brightness */
+ { 0x2a42, 0x1025, 0x0459, quirk_invert_brightness },
++
++ /* Acer/eMachines G725 */
++ { 0x2a42, 0x1025, 0x0210, quirk_invert_brightness },
+ };
+
+ static void intel_init_quirks(struct drm_device *dev)
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch)
@@ -0,0 +1,25 @@
+From: Jani Nikula <jani.nikula at intel.com>
+Date: Tue, 22 Jan 2013 10:50:36 +0000
+Subject: drm/i915: add quirk to invert brightness on Packard Bell NCL20
+
+commit 5559ecadad5a73b27f863e92f4b4f369501dce6f upstream.
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44156
+Reported-by: Alan Zimmerman <alan.zimm at gmail.com>
+Signed-off-by: Jani Nikula <jani.nikula at intel.com>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+---
+diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
+index 8575a62..7262786 100644
+--- a/drivers/gpu/drm/i915/intel_display.c
++++ b/drivers/gpu/drm/i915/intel_display.c
+@@ -8605,6 +8605,9 @@ static struct intel_quirk intel_quirks[] = {
+
+ /* Acer/eMachines e725 */
+ { 0x2a42, 0x1025, 0x0212, quirk_invert_brightness },
++
++ /* Acer/Packard Bell NCL20 */
++ { 0x2a42, 0x1025, 0x034b, quirk_invert_brightness },
+ };
+
+ static void intel_init_quirks(struct drm_device *dev)
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk_invert_brightness-for-ncr-machine.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk_invert_brightness-for-ncr-machine.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-add-quirk_invert_brightness-for-ncr-machine.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-quirk_invert_brightness-for-ncr-machine.patch)
@@ -0,0 +1,77 @@
+From: Egbert Eich <eich at suse.de>
+Date: Sun, 14 Oct 2012 15:46:38 +0200
+Subject: DRM/i915: Add QUIRK_INVERT_BRIGHTNESS for NCR machines.
+
+commit 5f85f176c2f1c9d2a23f60ca0b99e4d0aa5a26a7 upstream.
+
+NCR machines with LVDS panels using Intel chipsets need to have the
+QUIRK_INVERT_BRIGHTNESS bit set.
+Unfortunately NCR doesn't set a meaningful subvendor/subdevice ID,
+therefore we add a DMI dependent quirk list.
+
+Signed-off-by: Egbert Eich <eich at suse.de>
+[danvet: fixup whitespace fail.]
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+[bwh: Backported to 3.2:
+ - Adjust context
+ - Add #include <linux/dmi.h>]
+---
+ drivers/gpu/drm/i915/intel_display.c | 32 ++++++++++++++++++++++++++++++++
+ 1 file changed, 32 insertions(+)
+
+--- a/drivers/gpu/drm/i915/intel_display.c
++++ b/drivers/gpu/drm/i915/intel_display.c
+@@ -25,6 +25,7 @@
+ */
+
+ #include <linux/cpufreq.h>
++#include <linux/dmi.h>
+ #include <linux/module.h>
+ #include <linux/input.h>
+ #include <linux/i2c.h>
+@@ -9172,6 +9173,34 @@ struct intel_quirk {
+ void (*hook)(struct drm_device *dev);
+ };
+
++/* For systems that don't have a meaningful PCI subdevice/subvendor ID */
++struct intel_dmi_quirk {
++ void (*hook)(struct drm_device *dev);
++ const struct dmi_system_id (*dmi_id_list)[];
++};
++
++static int intel_dmi_reverse_brightness(const struct dmi_system_id *id)
++{
++ DRM_INFO("Backlight polarity reversed on %s\n", id->ident);
++ return 1;
++}
++
++static const struct intel_dmi_quirk intel_dmi_quirks[] = {
++ {
++ .dmi_id_list = &(const struct dmi_system_id[]) {
++ {
++ .callback = intel_dmi_reverse_brightness,
++ .ident = "NCR Corporation",
++ .matches = {DMI_MATCH(DMI_SYS_VENDOR, "NCR Corporation"),
++ DMI_MATCH(DMI_PRODUCT_NAME, ""),
++ },
++ },
++ { } /* terminating entry */
++ },
++ .hook = quirk_invert_brightness,
++ },
++};
++
+ struct intel_quirk intel_quirks[] = {
+ /* HP Mini needs pipe A force quirk (LP: #322104) */
+ { 0x27ae, 0x103c, 0x361a, quirk_pipea_force },
+@@ -9217,6 +9246,10 @@ static void intel_init_quirks(struct drm
+ q->subsystem_device == PCI_ANY_ID))
+ q->hook(dev);
+ }
++ for (i = 0; i < ARRAY_SIZE(intel_dmi_quirks); i++) {
++ if (dmi_check_system(*intel_dmi_quirks[i].dmi_id_list) != 0)
++ intel_dmi_quirks[i].hook(dev);
++ }
+ }
+
+ /* Disable the VGA plane that we never use */
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-dump-UTS_RELEASE-into-the-error_state.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-dump-UTS_RELEASE-into-the-error_state.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-dump-UTS_RELEASE-into-the-error_state.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-dump-UTS_RELEASE-into-the-error_state.patch)
@@ -0,0 +1,35 @@
+From: Daniel Vetter <daniel.vetter at ffwll.ch>
+Date: Wed, 23 Jan 2013 16:16:35 +0100
+Subject: drm/i915: dump UTS_RELEASE into the error_state
+
+commit 4518f611ba21ba165ea3714055938a8984a44ff9 upstream.
+
+Useful for statistics or on overflowing bug reports to keep things all
+lined up.
+
+Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+[bwh: Backported to 3.2: adjust context]
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ drivers/gpu/drm/i915/i915_debugfs.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/gpu/drm/i915/i915_debugfs.c
++++ b/drivers/gpu/drm/i915/i915_debugfs.c
+@@ -30,6 +30,7 @@
+ #include <linux/debugfs.h>
+ #include <linux/slab.h>
+ #include <linux/export.h>
++#include <generated/utsrelease.h>
+ #include "drmP.h"
+ #include "drm.h"
+ #include "intel_drv.h"
+@@ -755,6 +756,7 @@ static int i915_error_state(struct seq_f
+
+ seq_printf(m, "Time: %ld s %ld us\n", error->time.tv_sec,
+ error->time.tv_usec);
++ seq_printf(m, "Kernel: " UTS_RELEASE);
+ seq_printf(m, "PCI ID: 0x%04x\n", dev->pci_device);
+ seq_printf(m, "EIR: 0x%08x\n", error->eir);
+ seq_printf(m, "PGTBL_ER: 0x%08x\n", error->pgtbl_er);
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-kick-any-firmware-framebuffers-before-claim.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-kick-any-firmware-framebuffers-before-claim.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-kick-any-firmware-framebuffers-before-claim.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-kick-any-firmware-framebuffers-before-claim.patch)
@@ -0,0 +1,115 @@
+From: Daniel Vetter <daniel.vetter at ffwll.ch>
+Date: Sun, 1 Jul 2012 17:09:42 +0200
+Subject: drm/i915: kick any firmware framebuffers before claiming the gtt
+
+commit 9f846a16d213523fbe6daea17e20df6b8ac5a1e5 upstream.
+
+Especially vesafb likes to map everything as uc- (yikes), and if that
+mapping hangs around still while we try to map the gtt as wc the
+kernel will downgrade our request to uc-, resulting in abyssal
+performance.
+
+Unfortunately we can't do this as early as readon does (i.e. as the
+first thing we do when initializing the hw) because our fb/mmio space
+region moves around on a per-gen basis. So I've had to move it below
+the gtt initialization, but that seems to work, too. The important
+thing is that we do this before we set up the gtt wc mapping.
+
+Now an altogether different question is why people compile their
+kernels with vesafb enabled, but I guess making things just work isn't
+bad per se ...
+
+v2:
+- s/radeondrmfb/inteldrmfb/
+- fix up error handling
+
+v3: Kill #ifdef X86, this is Intel after all. Noticed by Ben Widawsky.
+
+v4: Jani Nikula complained about the pointless bool primary
+initialization.
+
+v5: Don't oops if we can't allocate, noticed by Chris Wilson.
+
+v6: Resolve conflicts with agp rework and fixup whitespace.
+
+This is commit e188719a2891f01b3100d in drm-next.
+
+Backport to 3.5 -fixes queue requested by Dave Airlie - due to grub
+using vesa on fedora their initrd seems to load vesafb before loading
+the real kms driver. So tons more people actually experience a
+dead-slow gpu. Hence also the Cc: stable.
+
+Reported-and-tested-by: "Kilarski, Bernard R" <bernard.r.kilarski at intel.com>
+Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+Signed-off-by: Dave Airlie <airlied at redhat.com>
+[jcristau: fix up context for 3.4]
+---
+ drivers/gpu/drm/i915/i915_dma.c | 37 ++++++++++++++++++++++++++++++-------
+ 1 file changed, 30 insertions(+), 7 deletions(-)
+
+diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
+index f947926..36822b9 100644
+--- a/drivers/gpu/drm/i915/i915_dma.c
++++ b/drivers/gpu/drm/i915/i915_dma.c
+@@ -1401,6 +1401,27 @@ i915_mtrr_setup(struct drm_i915_private *dev_priv, unsigned long base,
+ }
+ }
+
++static void i915_kick_out_firmware_fb(struct drm_i915_private *dev_priv)
++{
++ struct apertures_struct *ap;
++ struct pci_dev *pdev = dev_priv->dev->pdev;
++ bool primary;
++
++ ap = alloc_apertures(1);
++ if (!ap)
++ return;
++
++ ap->ranges[0].base = dev_priv->dev->agp->base;
++ ap->ranges[0].size =
++ dev_priv->mm.gtt->gtt_mappable_entries << PAGE_SHIFT;
++ primary =
++ pdev->resource[PCI_ROM_RESOURCE].flags & IORESOURCE_ROM_SHADOW;
++
++ remove_conflicting_framebuffers(ap, "inteldrmfb", primary);
++
++ kfree(ap);
++}
++
+ /**
+ * i915_driver_load - setup chip and create an initial config
+ * @dev: DRM device
+@@ -1446,6 +1467,15 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+ goto free_priv;
+ }
+
++ dev_priv->mm.gtt = intel_gtt_get();
++ if (!dev_priv->mm.gtt) {
++ DRM_ERROR("Failed to initialize GTT\n");
++ ret = -ENODEV;
++ goto put_bridge;
++ }
++
++ i915_kick_out_firmware_fb(dev_priv);
++
+ pci_set_master(dev->pdev);
+
+ /* overlay on gen2 is broken and can't address above 1G */
+@@ -1471,13 +1501,6 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
+ goto put_bridge;
+ }
+
+- dev_priv->mm.gtt = intel_gtt_get();
+- if (!dev_priv->mm.gtt) {
+- DRM_ERROR("Failed to initialize GTT\n");
+- ret = -ENODEV;
+- goto out_rmmap;
+- }
+-
+ agp_size = dev_priv->mm.gtt->gtt_mappable_entries << PAGE_SHIFT;
+
+ dev_priv->mm.gtt_mapping =
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch)
@@ -0,0 +1,41 @@
+From: Carsten Emde <C.Emde at osadl.org>
+Date: Thu, 15 Mar 2012 15:56:27 +0100
+Subject: drm/i915: panel: invert brightness acer aspire 5734z
+
+commit 5a15ab5b93e4a3ebcd4fa6c76cf646a45e9cf806 upstream.
+
+Mark the Acer Aspire 5734Z that this machines requires the module to
+invert the panel backlight brightness value after reading from and prior
+to writing to the PCI configuration space.
+
+Signed-off-by: Carsten Emde <C.Emde at osadl.org>
+Acked-by: Chris Wilson <chris at chris-wilson.co.uk>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+---
+ drivers/gpu/drm/i915/intel_display.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
+index 92208f8..683002fb 100644
+--- a/drivers/gpu/drm/i915/intel_display.c
++++ b/drivers/gpu/drm/i915/intel_display.c
+@@ -9021,7 +9021,8 @@ static void quirk_ssc_force_disable(struct drm_device *dev)
+ }
+
+ /*
+- * A machine may need to invert the panel backlight brightness value
++ * A machine (e.g. Acer Aspire 5734Z) may need to invert the panel backlight
++ * brightness value
+ */
+ static void quirk_invert_brightness(struct drm_device *dev)
+ {
+@@ -9061,6 +9062,9 @@ struct intel_quirk intel_quirks[] = {
+
+ /* Sony Vaio Y cannot use SSC on LVDS */
+ { 0x0046, 0x104d, 0x9076, quirk_ssc_force_disable },
++
++ /* Acer Aspire 5734Z must invert backlight brightness */
++ { 0x2a42, 0x1025, 0x0459, quirk_invert_brightness },
+ };
+
+ static void intel_init_quirks(struct drm_device *dev)
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-parameter.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-parameter.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-parameter.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-parameter.patch)
@@ -0,0 +1,98 @@
+From: Carsten Emde <C.Emde at osadl.org>
+Date: Thu, 15 Mar 2012 15:56:25 +0100
+Subject: drm/i915: panel: invert brightness via parameter
+
+commit 7bd90909bbf9ce7c40e1da3d72b97b93839c188a upstream.
+
+Following the documentation of the Legacy Backlight Brightness (LBB)
+Register in the configuration space of some Intel PCI graphics adapters,
+setting the LBB register with the value 0x0 causes the backlight to be
+turned off, and 0xFF causes the backlight to be set to 100% intensity
+(http://download.intel.com/embedded/processors/Whitepaper/324567.pdf).
+The Acer Aspire 5734Z, however, turns the backlight off at 0xFF and sets
+it to maximum intensity at 0. In consequence, the screen of this systems
+becomes dark at an early boot stage which makes it unusable. The same
+inversion applies to the BLC_PWM_CTL I915 register. This problem was
+introduced in kernel version 2.6.38 when the PCI device of this system
+was first supported by the i915 KMS module.
+
+This patch adds a parameter to the i915 module to enable inversion of
+the brightness variable (i915.invert_brightness).
+
+Signed-off-by: Carsten Emde <C.Emde at osadl.org>
+Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+---
+ Documentation/kernel-parameters.txt | 9 +++++++++
+ drivers/gpu/drm/i915/intel_panel.c | 17 +++++++++++++++++
+ 2 files changed, 26 insertions(+)
+
+diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
+index 033d4e6..9f6ba8f 100644
+--- a/Documentation/kernel-parameters.txt
++++ b/Documentation/kernel-parameters.txt
+@@ -967,6 +967,15 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
+ i8k.restricted [HW] Allow controlling fans only if SYS_ADMIN
+ capability is set.
+
++ i915.invert_brightness
++ [DRM] Invert the sense of the variable that is used to
++ set the brightness of the panel backlight. Normally a
++ value of 0 indicates backlight switched off, and the
++ maximum value sets the backlight to maximum brightness.
++ If this parameter is specified, a value of 0 sets the
++ backlight to maximum brightness, and the maximum value
++ switches the backlight off.
++
+ icn= [HW,ISDN]
+ Format: <io>[,<membase>[,<icn_id>[,<icn_id2>]]]
+
+diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c
+index 230a141..c4b3f34 100644
+--- a/drivers/gpu/drm/i915/intel_panel.c
++++ b/drivers/gpu/drm/i915/intel_panel.c
+@@ -28,6 +28,7 @@
+ * Chris Wilson <chris at chris-wilson.co.uk>
+ */
+
++#include <linux/moduleparam.h>
+ #include "intel_drv.h"
+
+ #define PCI_LBPC 0xf4 /* legacy/combination backlight modes */
+@@ -191,6 +192,20 @@ u32 intel_panel_get_max_backlight(struct drm_device *dev)
+ return max;
+ }
+
++static bool i915_panel_invert_brightness;
++MODULE_PARM_DESC(invert_brightness, "Invert backlight brightness, please "
++ "report PCI device ID, subsystem vendor and subsystem device ID "
++ "to dri-devel at lists.freedesktop.org, if your machine needs it. "
++ "It will then be included in an upcoming module version.");
++module_param_named(invert_brightness, i915_panel_invert_brightness, bool, 0600);
++static u32 intel_panel_compute_brightness(struct drm_device *dev, u32 val)
++{
++ if (i915_panel_invert_brightness)
++ return intel_panel_get_max_backlight(dev) - val;
++
++ return val;
++}
++
+ u32 intel_panel_get_backlight(struct drm_device *dev)
+ {
+ struct drm_i915_private *dev_priv = dev->dev_private;
+@@ -211,6 +226,7 @@ u32 intel_panel_get_backlight(struct drm_device *dev)
+ }
+ }
+
++ val = intel_panel_compute_brightness(dev, val);
+ DRM_DEBUG_DRIVER("get backlight PWM = %d\n", val);
+ return val;
+ }
+@@ -228,6 +244,7 @@ static void intel_panel_actually_set_backlight(struct drm_device *dev, u32 level
+ u32 tmp;
+
+ DRM_DEBUG_DRIVER("set backlight PWM = %d\n", level);
++ level = intel_panel_compute_brightness(dev, level);
+
+ if (HAS_PCH_SPLIT(dev))
+ return intel_pch_panel_set_backlight(dev, level);
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-quirk.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-quirk.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-quirk.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-panel-invert-brightness-via-quirk.patch)
@@ -0,0 +1,112 @@
+From: Carsten Emde <C.Emde at osadl.org>
+Date: Thu, 15 Mar 2012 15:56:26 +0100
+Subject: drm/i915: panel: invert brightness via quirk
+
+commit 4dca20efb1a9c2efefc28ad2867e5d6c3f5e1955 upstream.
+
+A machine may need to invert the panel backlight brightness value. This
+patch adds the infrastructure for a quirk to do so.
+
+Signed-off-by: Carsten Emde <C.Emde at osadl.org>
+Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
+Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+---
+ Documentation/kernel-parameters.txt | 17 +++++++++++------
+ drivers/gpu/drm/i915/i915_drv.h | 1 +
+ drivers/gpu/drm/i915/intel_display.c | 9 +++++++++
+ drivers/gpu/drm/i915/intel_panel.c | 15 +++++++++++----
+ 4 files changed, 32 insertions(+), 10 deletions(-)
+
+diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
+index 9f6ba8f..da44999 100644
+--- a/Documentation/kernel-parameters.txt
++++ b/Documentation/kernel-parameters.txt
+@@ -967,14 +967,19 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
+ i8k.restricted [HW] Allow controlling fans only if SYS_ADMIN
+ capability is set.
+
+- i915.invert_brightness
++ i915.invert_brightness=
+ [DRM] Invert the sense of the variable that is used to
+ set the brightness of the panel backlight. Normally a
+- value of 0 indicates backlight switched off, and the
+- maximum value sets the backlight to maximum brightness.
+- If this parameter is specified, a value of 0 sets the
+- backlight to maximum brightness, and the maximum value
+- switches the backlight off.
++ brightness value of 0 indicates backlight switched off,
++ and the maximum of the brightness value sets the backlight
++ to maximum brightness. If this parameter is set to 0
++ (default) and the machine requires it, or this parameter
++ is set to 1, a brightness value of 0 sets the backlight
++ to maximum brightness, and the maximum of the brightness
++ value switches the backlight off.
++ -1 -- never invert brightness
++ 0 -- machine default
++ 1 -- force brightness inversion
+
+ icn= [HW,ISDN]
+ Format: <io>[,<membase>[,<icn_id>[,<icn_id2>]]]
+diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
+index c0f19f5..e7a00b7 100644
+--- a/drivers/gpu/drm/i915/i915_drv.h
++++ b/drivers/gpu/drm/i915/i915_drv.h
+@@ -295,6 +295,7 @@ enum intel_pch {
+
+ #define QUIRK_PIPEA_FORCE (1<<0)
+ #define QUIRK_LVDS_SSC_DISABLE (1<<1)
++#define QUIRK_INVERT_BRIGHTNESS (1<<2)
+
+ struct intel_fbdev;
+ struct intel_fbc_work;
+diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
+index 615b397..92208f8 100644
+--- a/drivers/gpu/drm/i915/intel_display.c
++++ b/drivers/gpu/drm/i915/intel_display.c
+@@ -9020,6 +9020,15 @@ static void quirk_ssc_force_disable(struct drm_device *dev)
+ dev_priv->quirks |= QUIRK_LVDS_SSC_DISABLE;
+ }
+
++/*
++ * A machine may need to invert the panel backlight brightness value
++ */
++static void quirk_invert_brightness(struct drm_device *dev)
++{
++ struct drm_i915_private *dev_priv = dev->dev_private;
++ dev_priv->quirks |= QUIRK_INVERT_BRIGHTNESS;
++}
++
+ struct intel_quirk {
+ int device;
+ int subsystem_vendor;
+diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c
+index c4b3f34..7998ca6 100644
+--- a/drivers/gpu/drm/i915/intel_panel.c
++++ b/drivers/gpu/drm/i915/intel_panel.c
+@@ -192,15 +192,22 @@ u32 intel_panel_get_max_backlight(struct drm_device *dev)
+ return max;
+ }
+
+-static bool i915_panel_invert_brightness;
+-MODULE_PARM_DESC(invert_brightness, "Invert backlight brightness, please "
++static int i915_panel_invert_brightness;
++MODULE_PARM_DESC(invert_brightness, "Invert backlight brightness "
++ "(-1 force normal, 0 machine defaults, 1 force inversion), please "
+ "report PCI device ID, subsystem vendor and subsystem device ID "
+ "to dri-devel at lists.freedesktop.org, if your machine needs it. "
+ "It will then be included in an upcoming module version.");
+-module_param_named(invert_brightness, i915_panel_invert_brightness, bool, 0600);
++module_param_named(invert_brightness, i915_panel_invert_brightness, int, 0600);
+ static u32 intel_panel_compute_brightness(struct drm_device *dev, u32 val)
+ {
+- if (i915_panel_invert_brightness)
++ struct drm_i915_private *dev_priv = dev->dev_private;
++
++ if (i915_panel_invert_brightness < 0)
++ return val;
++
++ if (i915_panel_invert_brightness > 0 ||
++ dev_priv->quirks & QUIRK_INVERT_BRIGHTNESS)
+ return intel_panel_get_max_backlight(dev) - val;
+
+ return val;
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/efi-Clear-EFI_RUNTIME_SERVICES-rather-than-EFI_BOOT-.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/efi-Clear-EFI_RUNTIME_SERVICES-rather-than-EFI_BOOT-.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/efi-Clear-EFI_RUNTIME_SERVICES-rather-than-EFI_BOOT-.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/efi-Clear-EFI_RUNTIME_SERVICES-rather-than-EFI_BOOT-.patch)
@@ -0,0 +1,65 @@
+From: Satoru Takeuchi <takeuchi_satoru at jp.fujitsu.com>
+Date: Thu, 14 Feb 2013 09:12:52 +0900
+Subject: efi: Clear EFI_RUNTIME_SERVICES rather than EFI_BOOT by "noefi" boot
+ parameter
+
+commit 1de63d60cd5b0d33a812efa455d5933bf1564a51 upstream.
+
+There was a serious problem in samsung-laptop that its platform driver is
+designed to run under BIOS and running under EFI can cause the machine to
+become bricked or can cause Machine Check Exceptions.
+
+ Discussion about this problem:
+ https://bugs.launchpad.net/ubuntu-cdimage/+bug/1040557
+ https://bugzilla.kernel.org/show_bug.cgi?id=47121
+
+ The patches to fix this problem:
+ efi: Make 'efi_enabled' a function to query EFI facilities
+ 83e68189745ad931c2afd45d8ee3303929233e7f
+
+ samsung-laptop: Disable on EFI hardware
+ e0094244e41c4d0c7ad69920681972fc45d8ce34
+
+Unfortunately this problem comes back again if users specify "noefi" option.
+This parameter clears EFI_BOOT and that driver continues to run even if running
+under EFI. Refer to the document, this parameter should clear
+EFI_RUNTIME_SERVICES instead.
+
+Documentation/kernel-parameters.txt:
+===============================================================================
+...
+ noefi [X86] Disable EFI runtime services support.
+...
+===============================================================================
+
+Documentation/x86/x86_64/uefi.txt:
+===============================================================================
+...
+- If some or all EFI runtime services don't work, you can try following
+ kernel command line parameters to turn off some or all EFI runtime
+ services.
+ noefi turn off all EFI runtime services
+...
+===============================================================================
+
+Signed-off-by: Satoru Takeuchi <takeuchi_satoru at jp.fujitsu.com>
+Link: http://lkml.kernel.org/r/511C2C04.2070108@jp.fujitsu.com
+Cc: Matt Fleming <matt.fleming at intel.com>
+Signed-off-by: H. Peter Anvin <hpa at linux.intel.com>
+---
+ arch/x86/platform/efi/efi.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/x86/platform/efi/efi.c b/arch/x86/platform/efi/efi.c
+index 77cf009..928bf83 100644
+--- a/arch/x86/platform/efi/efi.c
++++ b/arch/x86/platform/efi/efi.c
+@@ -87,7 +87,7 @@ EXPORT_SYMBOL(efi_enabled);
+
+ static int __init setup_noefi(char *arg)
+ {
+- clear_bit(EFI_BOOT, &x86_efi_facility);
++ clear_bit(EFI_RUNTIME_SERVICES, &x86_efi_facility);
+ return 0;
+ }
+ early_param("noefi", setup_noefi);
Copied: dists/squeeze-backports/linux/debian/patches/bugfix/x86/x86-efi-Make-noefi-really-disable-EFI-runtime-serivc.patch (from r19868, dists/sid/linux/debian/patches/bugfix/x86/x86-efi-Make-noefi-really-disable-EFI-runtime-serivc.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/bugfix/x86/x86-efi-Make-noefi-really-disable-EFI-runtime-serivc.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/bugfix/x86/x86-efi-Make-noefi-really-disable-EFI-runtime-serivc.patch)
@@ -0,0 +1,105 @@
+From: Matt Fleming <matt.fleming at intel.com>
+Date: Wed, 20 Feb 2013 20:36:12 +0000
+Subject: x86, efi: Make "noefi" really disable EFI runtime serivces
+
+commit fb834c7acc5e140cf4f9e86da93a66de8c0514da upstream.
+
+commit 1de63d60cd5b ("efi: Clear EFI_RUNTIME_SERVICES rather than
+EFI_BOOT by "noefi" boot parameter") attempted to make "noefi" true to
+its documentation and disable EFI runtime services to prevent the
+bricking bug described in commit e0094244e41c ("samsung-laptop:
+Disable on EFI hardware"). However, it's not possible to clear
+EFI_RUNTIME_SERVICES from an early param function because
+EFI_RUNTIME_SERVICES is set in efi_init() *after* parse_early_param().
+
+This resulted in "noefi" effectively becoming a no-op and no longer
+providing users with a way to disable EFI, which is bad for those
+users that have buggy machines.
+
+Reported-by: Walt Nelson Jr <walt0924 at gmail.com>
+Cc: Satoru Takeuchi <takeuchi_satoru at jp.fujitsu.com>
+Signed-off-by: Matt Fleming <matt.fleming at intel.com>
+Link: http://lkml.kernel.org/r/1361392572-25657-1-git-send-email-matt@console-pimps.org
+Signed-off-by: H. Peter Anvin <hpa at linux.intel.com>
+[bwh: Backported to 3.2: efi_runtime_init() is not a separate function,
+ so put a whole set of statements in an if (!disable_runtime) block]
+---
+--- a/arch/x86/platform/efi/efi.c
++++ b/arch/x86/platform/efi/efi.c
+@@ -83,9 +83,10 @@ int efi_enabled(int facility)
+ }
+ EXPORT_SYMBOL(efi_enabled);
+
++static bool disable_runtime = false;
+ static int __init setup_noefi(char *arg)
+ {
+- clear_bit(EFI_RUNTIME_SERVICES, &x86_efi_facility);
++ disable_runtime = true;
+ return 0;
+ }
+ early_param("noefi", setup_noefi);
+@@ -549,35 +550,37 @@ void __init efi_init(void)
+
+ set_bit(EFI_CONFIG_TABLES, &x86_efi_facility);
+
+- /*
+- * Check out the runtime services table. We need to map
+- * the runtime services table so that we can grab the physical
+- * address of several of the EFI runtime functions, needed to
+- * set the firmware into virtual mode.
+- */
+- runtime = early_ioremap((unsigned long)efi.systab->runtime,
+- sizeof(efi_runtime_services_t));
+- if (runtime != NULL) {
+- /*
+- * We will only need *early* access to the following
+- * two EFI runtime services before set_virtual_address_map
+- * is invoked.
+- */
+- efi_phys.get_time = (efi_get_time_t *)runtime->get_time;
+- efi_phys.set_virtual_address_map =
+- (efi_set_virtual_address_map_t *)
+- runtime->set_virtual_address_map;
++ if (!disable_runtime) {
+ /*
+- * Make efi_get_time can be called before entering
+- * virtual mode.
++ * Check out the runtime services table. We need to map
++ * the runtime services table so that we can grab the physical
++ * address of several of the EFI runtime functions, needed to
++ * set the firmware into virtual mode.
+ */
+- efi.get_time = phys_efi_get_time;
+-
+- set_bit(EFI_RUNTIME_SERVICES, &x86_efi_facility);
+- } else
+- printk(KERN_ERR "Could not map the EFI runtime service "
+- "table!\n");
+- early_iounmap(runtime, sizeof(efi_runtime_services_t));
++ runtime = early_ioremap((unsigned long)efi.systab->runtime,
++ sizeof(efi_runtime_services_t));
++ if (runtime != NULL) {
++ /*
++ * We will only need *early* access to the following
++ * two EFI runtime services before set_virtual_address_map
++ * is invoked.
++ */
++ efi_phys.get_time = (efi_get_time_t *)runtime->get_time;
++ efi_phys.set_virtual_address_map =
++ (efi_set_virtual_address_map_t *)
++ runtime->set_virtual_address_map;
++ /*
++ * Make efi_get_time can be called before entering
++ * virtual mode.
++ */
++ efi.get_time = phys_efi_get_time;
++
++ set_bit(EFI_RUNTIME_SERVICES, &x86_efi_facility);
++ } else
++ printk(KERN_ERR "Could not map the EFI runtime service "
++ "table!\n");
++ early_iounmap(runtime, sizeof(efi_runtime_services_t));
++ }
+
+ /* Map the EFI memory map */
+ memmap.map = early_ioremap((unsigned long)memmap.phys_map,
Copied: dists/squeeze-backports/linux/debian/patches/debian/net-avoid-ABI-break-in-3.2.37.patch (from r19868, dists/sid/linux/debian/patches/debian/net-avoid-ABI-break-in-3.2.37.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/debian/net-avoid-ABI-break-in-3.2.37.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/debian/net-avoid-ABI-break-in-3.2.37.patch)
@@ -0,0 +1,31 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Subject: net: Avoid ABI break in 3.2.37
+Date: Sun, 27 Jan 2013 01:29:15 +0000
+
+A huge number of source files indirectly include <linux/snmp.h> even
+though nothing outside the TCP stack should make any use for the
+numbers defined there. To avoid symbol version changes, restore the
+deleted enumerator and hide the added enumerators from genksyms.
+
+---
+--- a/include/linux/snmp.h
++++ b/include/linux/snmp.h
+@@ -210,6 +210,7 @@ enum
+ LINUX_MIB_TCPDSACKRECV, /* TCPDSACKRecv */
+ LINUX_MIB_TCPDSACKOFORECV, /* TCPDSACKOfoRecv */
+ LINUX_MIB_TCPABORTONDATA, /* TCPAbortOnData */
++ LINUX_MIB_TCPABORTONSYN, /* unused, binary compat */
+ LINUX_MIB_TCPABORTONCLOSE, /* TCPAbortOnClose */
+ LINUX_MIB_TCPABORTONMEMORY, /* TCPAbortOnMemory */
+ LINUX_MIB_TCPABORTONTIMEOUT, /* TCPAbortOnTimeout */
+@@ -232,8 +233,10 @@ enum
+ LINUX_MIB_TCPTIMEWAITOVERFLOW, /* TCPTimeWaitOverflow */
+ LINUX_MIB_TCPREQQFULLDOCOOKIES, /* TCPReqQFullDoCookies */
+ LINUX_MIB_TCPREQQFULLDROP, /* TCPReqQFullDrop */
++#ifndef __GENKSYMS__
+ LINUX_MIB_TCPCHALLENGEACK, /* TCPChallengeACK */
+ LINUX_MIB_TCPSYNCHALLENGE, /* TCPSYNChallenge */
++#endif
+ __LINUX_MIB_MAX
+ };
+
Copied: dists/squeeze-backports/linux/debian/patches/debian/radeon-firmware-is-required-for-drm-and-kms-on-r600-onward.patch (from r19868, dists/sid/linux/debian/patches/debian/radeon-firmware-is-required-for-drm-and-kms-on-r600-onward.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/debian/radeon-firmware-is-required-for-drm-and-kms-on-r600-onward.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/debian/radeon-firmware-is-required-for-drm-and-kms-on-r600-onward.patch)
@@ -0,0 +1,95 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Subject: radeon: Firmware is required for DRM and KMS on R600 onward
+Date: Tue, 08 Jan 2013 03:25:52 +0000
+Bug-Debian: http://bugs.debian.org/607194
+Bug-Debian: http://bugs.debian.org/607471
+Bug-Debian: http://bugs.debian.org/610851
+Bug-Debian: http://bugs.debian.org/627497
+Bug-Debian: http://bugs.debian.org/632212
+Bug-Debian: http://bugs.debian.org/637943
+Bug-Debian: http://bugs.debian.org/649448
+Bug-Debian: http://bugs.debian.org/697229
+
+radeon requires firmware/microcode for the GPU in all chips, but for
+newer chips (apparently R600 'Evergreen' onward) it also expects
+firmware for the memory controller and other sub-blocks.
+
+radeon attempts to gracefully fall back and disable some features if
+the firmware is not available, but becomes unstable - the framebuffer
+and/or system memory may be corrupted, or the display may stay black.
+This does not seem to happen if KMS is disabled, but with both KMS
+and GPU acceleration disabled radeon is not doing anything useful!
+
+Therefore, perform a basic check for the existence of
+/lib/firmware/radeon when a device is probed, and abort if it is
+missing, except for the pre-R600 KMS case.
+
+---
+--- a/drivers/gpu/drm/radeon/radeon_drv.c
++++ b/drivers/gpu/drm/radeon/radeon_drv.c
+@@ -37,6 +37,8 @@
+ #include "drm_pciids.h"
+ #include <linux/console.h>
+ #include <linux/module.h>
++#include <linux/namei.h>
++#include <linux/path.h>
+
+
+ /*
+@@ -257,6 +259,35 @@ static struct drm_driver driver_old = {
+
+ static struct drm_driver kms_driver;
+
++/* Test that /lib/firmware/radeon is a directory (or symlink to a
++ * directory). We could try to match the udev search path, but let's
++ * assume people take the easy route and install
++ * firmware-linux-nonfree.
++ */
++static bool __devinit radeon_firmware_installed(void)
++{
++ struct path path;
++
++ if (kern_path("/lib/firmware/radeon", LOOKUP_DIRECTORY | LOOKUP_FOLLOW,
++ &path) == 0) {
++ path_put(&path);
++ return true;
++ }
++
++ return false;
++}
++
++static int __devinit
++radeon_ums_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
++{
++ if (!radeon_firmware_installed()) {
++ DRM_ERROR("radeon DRM requires firmware-linux-nonfree.\n");
++ return -ENODEV;
++ }
++
++ return 0;
++}
++
+ static void radeon_kick_out_firmware_fb(struct pci_dev *pdev)
+ {
+ struct apertures_struct *ap;
+@@ -276,6 +307,12 @@ static void radeon_kick_out_firmware_fb(
+ static int __devinit
+ radeon_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
+ {
++ if ((ent->driver_data & RADEON_FAMILY_MASK) >= CHIP_R600 &&
++ !radeon_firmware_installed()) {
++ DRM_ERROR("radeon kernel modesetting for R600 or later requires firmware-linux-nonfree.\n");
++ return -ENODEV;
++ }
++
+ /* Get rid of things like offb */
+ radeon_kick_out_firmware_fb(pdev);
+
+@@ -367,6 +404,7 @@ static struct pci_driver *pdriver;
+ static struct pci_driver radeon_pci_driver = {
+ .name = DRIVER_NAME,
+ .id_table = pciidlist,
++ .probe = radeon_ums_pci_probe,
+ };
+
+ static struct pci_driver radeon_kms_pci_driver = {
Copied: dists/squeeze-backports/linux/debian/patches/debian/x86-efi-avoid-abi-change-in-3.2.38.patch (from r19868, dists/sid/linux/debian/patches/debian/x86-efi-avoid-abi-change-in-3.2.38.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/debian/x86-efi-avoid-abi-change-in-3.2.38.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/debian/x86-efi-avoid-abi-change-in-3.2.38.patch)
@@ -0,0 +1,62 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Subject: [x86] efi: Avoid ABI change in 3.2.38
+Date: Tue, 26 Feb 2013 13:56:01 +0000
+Bug-Debian: http://bugs.debian.org/701690
+
+"efi: Make 'efi_enabled' a function to query EFI facilities" (commit
+83e68189745a upstream, backported into 3.2.38) obviously changes ABI,
+but I thought this symbol wasn't used out-of-tree. Unfortunately
+nvidia does use it, but its source is packaged up such that
+codesearch.debian.net didn't show me that.
+
+Restore the efi_enabled variable. Rename the efi_enabled() function
+and make efi_enabled() a function-macro. This should keep both old
+and new usage working.
+
+--- a/arch/x86/platform/efi/efi.c
++++ b/arch/x86/platform/efi/efi.c
+@@ -49,6 +49,9 @@
+ #define EFI_DEBUG 1
+ #define PFX "EFI: "
+
++int efi_enabled;
++EXPORT_SYMBOL(efi_enabled);
++
+ struct efi __read_mostly efi = {
+ .mps = EFI_INVALID_TABLE_ADDR,
+ .acpi = EFI_INVALID_TABLE_ADDR,
+@@ -77,11 +80,11 @@ unsigned long x86_efi_facility;
+ /*
+ * Returns 1 if 'facility' is enabled, 0 otherwise.
+ */
+-int efi_enabled(int facility)
++int efi_enabled_facility(int facility)
+ {
+ return test_bit(facility, &x86_efi_facility) != 0;
+ }
+-EXPORT_SYMBOL(efi_enabled);
++EXPORT_SYMBOL(efi_enabled_facility);
+
+ static bool disable_runtime = false;
+ static int __init setup_noefi(char *arg)
+@@ -576,6 +579,7 @@ void __init efi_init(void)
+ efi.get_time = phys_efi_get_time;
+
+ set_bit(EFI_RUNTIME_SERVICES, &x86_efi_facility);
++ efi_enabled = 1;
+ } else
+ printk(KERN_ERR "Could not map the EFI runtime service "
+ "table!\n");
+--- a/include/linux/efi.h
++++ b/include/linux/efi.h
+@@ -503,7 +503,9 @@ extern int __init efi_setup_pcdp_console
+
+ #ifdef CONFIG_EFI
+ # ifdef CONFIG_X86
+-extern int efi_enabled(int facility);
++extern int efi_enabled; /* ABI compat; please use efi_enabled() instead */
++extern int efi_enabled_facility(int facility);
++#define efi_enabled(f) efi_enabled_facility(f)
+ # else
+ static inline int efi_enabled(int facility)
+ {
Copied: dists/squeeze-backports/linux/debian/patches/features/all/I2C-Add-helper-macro-for-i2c_driver-boilerplate.patch (from r19868, dists/sid/linux/debian/patches/features/all/I2C-Add-helper-macro-for-i2c_driver-boilerplate.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/I2C-Add-helper-macro-for-i2c_driver-boilerplate.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/I2C-Add-helper-macro-for-i2c_driver-boilerplate.patch)
@@ -0,0 +1,46 @@
+From: Lars-Peter Clausen <lars at metafoo.de>
+Date: Wed, 16 Nov 2011 10:13:36 +0100
+Subject: I2C: Add helper macro for i2c_driver boilerplate
+
+commit 7c92784a546d2945b6d6973a30f7134be78eb7a4 upstream.
+
+This patch introduces the module_i2c_driver macro which is a convenience macro
+for I2C driver modules similar to module_platform_driver. It is intended to be
+used by drivers which init/exit section does nothing but register/unregister
+the I2C driver. By using this macro it is possible to eliminate a few lines of
+boilerplate code per I2C driver.
+
+Signed-off-by: Lars-Peter Clausen <lars at metafoo.de>
+Acked-by: Grant Likely <grant.likely at secretlab.ca>
+Acked-by: Jonathan Cameron <jic23 at cam.ac.uk>
+Acked-by: Wolfram Sang <w.sang at pengutronix.de>
+Acked-by: Jean Delvare <khali at linux-fr.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
+---
+ include/linux/i2c.h | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/include/linux/i2c.h b/include/linux/i2c.h
+index a81bf6d..7e92854 100644
+--- a/include/linux/i2c.h
++++ b/include/linux/i2c.h
+@@ -485,6 +485,19 @@ static inline int i2c_adapter_id(struct i2c_adapter *adap)
+ {
+ return adap->nr;
+ }
++
++/**
++ * module_i2c_driver() - Helper macro for registering a I2C driver
++ * @__i2c_driver: i2c_driver struct
++ *
++ * Helper macro for I2C drivers which do not do anything special in module
++ * init/exit. This eliminates a lot of boilerplate. Each module may only
++ * use this macro once, and calling it replaces module_init() and module_exit()
++ */
++#define module_i2c_driver(__i2c_driver) \
++ module_driver(__i2c_driver, i2c_add_driver, \
++ i2c_del_driver)
++
+ #endif /* I2C */
+ #endif /* __KERNEL__ */
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/PCI-Add-helper-macro-for-pci_register_driver-boilerp.patch (from r19868, dists/sid/linux/debian/patches/features/all/PCI-Add-helper-macro-for-pci_register_driver-boilerp.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/PCI-Add-helper-macro-for-pci_register_driver-boilerp.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/PCI-Add-helper-macro-for-pci_register_driver-boilerp.patch)
@@ -0,0 +1,47 @@
+From: Greg Kroah-Hartman <gregkh at suse.de>
+Date: Fri, 18 Nov 2011 10:12:49 -0800
+Subject: PCI: Add helper macro for pci_register_driver boilerplate
+
+commit aad4f4000cecec9c80b5f9aff91043dc104d61a0 upstream.
+
+This patch introduces the module_pci_driver macro which is a convenience
+macro for PCI driver modules similar to module_platform_driver. It is
+intended to be used by drivers which init/exit section does nothing but
+register/unregister the PCI driver. By using this macro it is possible
+to eliminate a few lines of boilerplate code per PCI driver.
+
+Based on work done by Lars-Peter Clausen <lars at metafoo.de> for other
+busses (i2c and spi).
+
+Cc: Lars-Peter Clausen <lars at metafoo.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
+Acked-by: Jesse Barnes <jbarnes at virtuousgeek.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ include/linux/pci.h | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/include/linux/pci.h b/include/linux/pci.h
+index a16b1df..d4afd70 100644
+--- a/include/linux/pci.h
++++ b/include/linux/pci.h
+@@ -946,6 +946,19 @@ int __must_check __pci_register_driver(struct pci_driver *, struct module *,
+ __pci_register_driver(driver, THIS_MODULE, KBUILD_MODNAME)
+
+ void pci_unregister_driver(struct pci_driver *dev);
++
++/**
++ * module_pci_driver() - Helper macro for registering a PCI driver
++ * @__pci_driver: pci_driver struct
++ *
++ * Helper macro for PCI drivers which do not do anything special in module
++ * init/exit. This eliminates a lot of boilerplate. Each module may only
++ * use this macro once, and calling it replaces module_init() and module_exit()
++ */
++#define module_pci_driver(__pci_driver) \
++ module_driver(__pci_driver, pci_register_driver, \
++ pci_unregister_driver)
++
+ void pci_remove_behind_bridge(struct pci_dev *dev);
+ struct pci_driver *pci_dev_driver(const struct pci_dev *dev);
+ int pci_add_dynid(struct pci_driver *drv,
Copied: dists/squeeze-backports/linux/debian/patches/features/all/USB-Add-helper-macro-for-usb_driver-boilerplate.patch (from r19868, dists/sid/linux/debian/patches/features/all/USB-Add-helper-macro-for-usb_driver-boilerplate.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/USB-Add-helper-macro-for-usb_driver-boilerplate.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/USB-Add-helper-macro-for-usb_driver-boilerplate.patch)
@@ -0,0 +1,44 @@
+From: Greg Kroah-Hartman <gregkh at suse.de>
+Date: Thu, 17 Nov 2011 14:38:33 -0800
+Subject: USB: Add helper macro for usb_driver boilerplate
+
+commit f3a6a4b6cfc80e57bf16bb12f9425bec1a5731a9 upstream.
+
+This patch introduces the module_usb_driver macro which is a convenience
+macro for USB driver modules similar to module_platform_driver. It is
+intended to be used by drivers which init/exit section does nothing but
+register/unregister the USB driver. By using this macro it is possible
+to eliminate a few lines of boilerplate code per USB driver.
+
+Based on work done by Lars-Peter Clausen <lars at metafoo.de> for other
+busses (i2c and spi).
+
+Cc: Lars-Peter Clausen <lars at metafoo.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
+---
+ include/linux/usb.h | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/include/linux/usb.h b/include/linux/usb.h
+index d3d0c13..5d258c3 100644
+--- a/include/linux/usb.h
++++ b/include/linux/usb.h
+@@ -953,6 +953,18 @@ extern int usb_register_driver(struct usb_driver *, struct module *,
+
+ extern void usb_deregister(struct usb_driver *);
+
++/**
++ * module_usb_driver() - Helper macro for registering a USB driver
++ * @__usb_driver: usb_driver struct
++ *
++ * Helper macro for USB drivers which do not do anything special in module
++ * init/exit. This eliminates a lot of boilerplate. Each module may only
++ * use this macro once, and calling it replaces module_init() and module_exit()
++ */
++#define module_usb_driver(__usb_driver) \
++ module_driver(__usb_driver, usb_register, \
++ usb_deregister)
++
+ extern int usb_register_device_driver(struct usb_device_driver *,
+ struct module *);
+ extern void usb_deregister_device_driver(struct usb_device_driver *);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/aufs3/aufs3-add.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/aufs3/aufs3-add.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/aufs3/aufs3-add.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,5 +1,5 @@
--- a/fs/aufs/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/Kconfig 2012-01-10 02:15:56.545455955 +0000
++++ b/fs/aufs/Kconfig 2012-01-10 02:15:56.000000000 +0000
@@ -0,0 +1,203 @@
+config AUFS_FS
+ tristate "Aufs (Advanced multi layered unification filesystem) support"
@@ -205,7 +205,7 @@
+ When aufs supports Magic SysRq, enabled automatically.
+endif
--- a/fs/aufs/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/Makefile 2012-08-01 03:41:52.619414717 +0100
++++ b/fs/aufs/Makefile 2012-08-01 03:41:52.000000000 +0100
@@ -0,0 +1,42 @@
+
+include ${src}/magic.mk
@@ -250,10 +250,10 @@
+aufs-$(CONFIG_AUFS_DEBUG) += debug.o
+aufs-$(CONFIG_AUFS_MAGIC_SYSRQ) += sysrq.o
--- a/fs/aufs/aufs.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/aufs.h 2012-01-10 02:15:56.545455955 +0000
++++ b/fs/aufs/aufs.h 2013-02-13 14:16:11.494511808 +0000
@@ -0,0 +1,60 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -313,10 +313,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_H__ */
--- a/fs/aufs/branch.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/branch.c 2012-10-10 06:26:21.201348727 +0100
-@@ -0,0 +1,1169 @@
++++ b/fs/aufs/branch.c 2013-02-13 14:16:11.494511808 +0000
+@@ -0,0 +1,1172 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -373,7 +373,10 @@
+ else
+ break;
+
++ /* recursive lock, s_umount of branch's */
++ lockdep_off();
+ mntput(br->br_mnt);
++ lockdep_on();
+ kfree(wbr);
+ kfree(br);
+}
@@ -949,7 +952,7 @@
+ continue;
+
+ /* AuDbgInode(i); */
-+ if (au_iigen(i) == sigen)
++ if (au_iigen(i, NULL) == sigen)
+ ii_read_lock_child(i);
+ else {
+ ii_write_lock_child(i);
@@ -1485,10 +1488,10 @@
+ return err;
+}
--- a/fs/aufs/branch.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/branch.h 2012-01-10 02:15:56.545455955 +0000
++++ b/fs/aufs/branch.h 2013-02-13 14:16:11.494511808 +0000
@@ -0,0 +1,230 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -1718,7 +1721,7 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_BRANCH_H__ */
--- a/fs/aufs/conf.mk 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/conf.mk 2012-01-10 02:15:56.545455955 +0000
++++ b/fs/aufs/conf.mk 2012-01-10 02:15:56.000000000 +0000
@@ -0,0 +1,38 @@
+
+AuConfStr = CONFIG_AUFS_FS=${CONFIG_AUFS_FS}
@@ -1759,10 +1762,10 @@
+
+-include ${srctree}/${src}/conf_priv.mk
--- a/fs/aufs/cpup.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/cpup.c 2012-10-10 06:26:21.205348749 +0100
++++ b/fs/aufs/cpup.c 2013-02-13 14:16:11.494511808 +0000
@@ -0,0 +1,1079 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -2841,10 +2844,10 @@
+ return err;
+}
--- a/fs/aufs/cpup.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/cpup.h 2012-01-10 02:15:56.545455955 +0000
++++ b/fs/aufs/cpup.h 2013-02-13 14:16:11.494511808 +0000
@@ -0,0 +1,81 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -2925,10 +2928,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_CPUP_H__ */
--- a/fs/aufs/dbgaufs.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dbgaufs.c 2012-01-10 02:15:56.545455955 +0000
++++ b/fs/aufs/dbgaufs.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,334 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -3262,10 +3265,10 @@
+ return err;
+}
--- a/fs/aufs/dbgaufs.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dbgaufs.h 2012-01-10 02:15:56.545455955 +0000
++++ b/fs/aufs/dbgaufs.h 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,49 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -3314,10 +3317,10 @@
+#endif /* __KERNEL__ */
+#endif /* __DBGAUFS_H__ */
--- a/fs/aufs/dcsub.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dcsub.c 2012-01-10 02:15:56.545455955 +0000
++++ b/fs/aufs/dcsub.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,243 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -3560,10 +3563,10 @@
+ return path_is_under(path + 0, path + 1);
+}
--- a/fs/aufs/dcsub.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dcsub.h 2012-01-10 02:15:56.545455955 +0000
++++ b/fs/aufs/dcsub.h 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,94 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -3657,10 +3660,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_DCSUB_H__ */
--- a/fs/aufs/debug.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/debug.c 2012-10-10 06:26:21.205348749 +0100
++++ b/fs/aufs/debug.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,489 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -3785,7 +3788,7 @@
+ if (!iinfo)
+ return;
+ dpri("i-1: bstart %d, bend %d, gen %d\n",
-+ iinfo->ii_bstart, iinfo->ii_bend, au_iigen(inode));
++ iinfo->ii_bstart, iinfo->ii_bend, au_iigen(inode, NULL));
+ if (iinfo->ii_bstart < 0)
+ return;
+ hn = 0;
@@ -4149,10 +4152,10 @@
+ return 0;
+}
--- a/fs/aufs/debug.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/debug.h 2012-10-10 06:26:21.225348843 +0100
++++ b/fs/aufs/debug.h 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,243 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -4395,10 +4398,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_DEBUG_H__ */
--- a/fs/aufs/dentry.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dentry.c 2012-10-10 06:26:21.225348843 +0100
++++ b/fs/aufs/dentry.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,1140 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -5538,10 +5541,10 @@
+ .d_release = aufs_d_release
+};
--- a/fs/aufs/dentry.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dentry.h 2012-10-10 06:26:21.225348843 +0100
++++ b/fs/aufs/dentry.h 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,237 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -5778,10 +5781,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_DENTRY_H__ */
--- a/fs/aufs/dinfo.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dinfo.c 2012-01-10 02:15:56.549455982 +0000
++++ b/fs/aufs/dinfo.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,543 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -6324,10 +6327,10 @@
+ return -1;
+}
--- a/fs/aufs/dir.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dir.c 2012-10-10 06:26:21.225348843 +0100
++++ b/fs/aufs/dir.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,634 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -6961,10 +6964,10 @@
+ .fsync = aufs_fsync_dir
+};
--- a/fs/aufs/dir.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dir.h 2012-01-10 02:15:56.549455982 +0000
++++ b/fs/aufs/dir.h 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,137 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -7101,10 +7104,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_DIR_H__ */
--- a/fs/aufs/dynop.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dynop.c 2012-10-10 06:26:21.225348843 +0100
++++ b/fs/aufs/dynop.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,377 @@
+/*
-+ * Copyright (C) 2010-2012 Junjiro R. Okajima
++ * Copyright (C) 2010-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -7481,10 +7484,10 @@
+ WARN_ON(!list_empty(&dynop[i].head));
+}
--- a/fs/aufs/dynop.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/dynop.h 2012-01-10 02:15:56.549455982 +0000
++++ b/fs/aufs/dynop.h 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,76 @@
+/*
-+ * Copyright (C) 2010-2012 Junjiro R. Okajima
++ * Copyright (C) 2010-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -7560,10 +7563,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_DYNOP_H__ */
--- a/fs/aufs/export.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/export.c 2012-10-10 06:26:21.241348914 +0100
-@@ -0,0 +1,804 @@
++++ b/fs/aufs/export.c 2013-02-13 14:16:11.498511808 +0000
+@@ -0,0 +1,805 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -7784,7 +7787,7 @@
+ sigen = au_sigen(sb);
+ if (unlikely(is_bad_inode(inode)
+ || IS_DEADDIR(inode)
-+ || sigen != au_iigen(inode)))
++ || sigen != au_iigen(inode, NULL)))
+ goto out_iput;
+
+ dentry = NULL;
@@ -7944,7 +7947,8 @@
+ dentry = ERR_PTR(err);
+ if (unlikely(err))
+ goto out_name;
-+ dentry = ERR_PTR(-ENOENT);
++ /* instead of ENOENT */
++ dentry = ERR_PTR(-ESTALE);
+ if (!arg.found)
+ goto out_name;
+
@@ -8367,10 +8371,10 @@
+ atomic_set(&sbinfo->si_xigen_next, u);
+}
--- a/fs/aufs/f_op.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/f_op.c 2012-10-10 06:26:21.241348914 +0100
++++ b/fs/aufs/f_op.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,729 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -9099,10 +9103,10 @@
+#endif
+};
--- a/fs/aufs/f_op_sp.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/f_op_sp.c 2012-10-10 06:26:21.241348914 +0100
++++ b/fs/aufs/f_op_sp.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,298 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -9400,10 +9404,10 @@
+ return ret;
+}
--- a/fs/aufs/file.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/file.c 2012-10-10 06:26:21.241348914 +0100
++++ b/fs/aufs/file.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,673 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -10076,10 +10080,10 @@
+#endif /* CONFIG_AUFS_DEBUG */
+};
--- a/fs/aufs/file.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/file.h 2012-08-01 03:41:52.619414717 +0100
++++ b/fs/aufs/file.h 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,298 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -10377,10 +10381,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_FILE_H__ */
--- a/fs/aufs/finfo.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/finfo.c 2012-01-10 02:15:56.549455982 +0000
-@@ -0,0 +1,156 @@
++++ b/fs/aufs/finfo.c 2013-02-13 14:16:11.498511808 +0000
+@@ -0,0 +1,157 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -10508,7 +10512,7 @@
+
+int au_finfo_init(struct file *file, struct au_fidir *fidir)
+{
-+ int err, lc_idx;
++ int err;
+ struct au_finfo *finfo;
+ struct dentry *dentry;
+
@@ -10520,10 +10524,11 @@
+
+ err = 0;
+ au_nfiles_inc(dentry->d_sb);
-+ lc_idx = AuLcNonDir_FIINFO;
-+ if (fidir)
-+ lc_idx = AuLcDir_FIINFO;
-+ au_rw_class(&finfo->fi_rwsem, au_lc_key + lc_idx);
++ /* verbose coding for lock class name */
++ if (!fidir)
++ au_rw_class(&finfo->fi_rwsem, au_lc_key + AuLcNonDir_FIINFO);
++ else
++ au_rw_class(&finfo->fi_rwsem, au_lc_key + AuLcDir_FIINFO);
+ au_rw_write_lock(&finfo->fi_rwsem);
+ finfo->fi_btop = -1;
+ finfo->fi_hdir = fidir;
@@ -10536,10 +10541,10 @@
+ return err;
+}
--- a/fs/aufs/fstype.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/fstype.h 2012-10-10 06:26:21.241348914 +0100
++++ b/fs/aufs/fstype.h 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,496 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -11035,10 +11040,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_FSTYPE_H__ */
--- a/fs/aufs/hfsnotify.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/hfsnotify.c 2012-10-10 06:26:21.241348914 +0100
++++ b/fs/aufs/hfsnotify.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,260 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -11298,10 +11303,10 @@
+ .init_br = au_hfsn_init_br
+};
--- a/fs/aufs/hfsplus.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/hfsplus.c 2012-01-10 02:15:56.553455997 +0000
++++ b/fs/aufs/hfsplus.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,57 @@
+/*
-+ * Copyright (C) 2010-2012 Junjiro R. Okajima
++ * Copyright (C) 2010-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -11358,10 +11363,10 @@
+ }
+}
--- a/fs/aufs/hnotify.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/hnotify.c 2012-10-10 06:26:21.241348914 +0100
++++ b/fs/aufs/hnotify.c 2013-02-13 14:16:11.498511808 +0000
@@ -0,0 +1,712 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -12073,10 +12078,10 @@
+ au_hn_destroy_cache();
+}
--- a/fs/aufs/i_op.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/i_op.c 2012-10-10 06:26:21.241348914 +0100
-@@ -0,0 +1,987 @@
++++ b/fs/aufs/i_op.c 2013-02-13 14:16:11.498511808 +0000
+@@ -0,0 +1,1004 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -12235,19 +12240,25 @@
+ struct dentry *ret, *parent;
+ struct inode *inode;
+ struct super_block *sb;
-+ int err, npositive, lc_idx;
++ int err, npositive;
+
+ IMustLock(dir);
+
++ /* todo: support rcu-walk? */
++ ret = ERR_PTR(-ECHILD);
++ if (nd && (nd->flags & LOOKUP_RCU))
++ goto out;
++
++ ret = ERR_PTR(-ENAMETOOLONG);
++ if (unlikely(dentry->d_name.len > AUFS_MAX_NAMELEN))
++ goto out;
++
+ sb = dir->i_sb;
+ err = si_read_lock(sb, AuLock_FLUSH | AuLock_NOPLM);
+ ret = ERR_PTR(err);
+ if (unlikely(err))
+ goto out;
+
-+ ret = ERR_PTR(-ENAMETOOLONG);
-+ if (unlikely(dentry->d_name.len > AUFS_MAX_NAMELEN))
-+ goto out_si;
+ err = au_di_init(dentry);
+ ret = ERR_PTR(err);
+ if (unlikely(err))
@@ -12280,6 +12291,13 @@
+ }
+
+ ret = d_splice_alias(inode, dentry);
++#if 0
++ if (unlikely(d_need_lookup(dentry))) {
++ spin_lock(&dentry->d_lock);
++ dentry->d_flags &= ~DCACHE_NEED_LOOKUP;
++ spin_unlock(&dentry->d_lock);
++ } else
++#endif
+ if (unlikely(IS_ERR(ret) && inode)) {
+ ii_write_unlock(inode);
+ iput(inode);
@@ -12289,12 +12307,16 @@
+out_unlock:
+ di_write_unlock(dentry);
+ if (inode) {
-+ lc_idx = AuLcNonDir_DIINFO;
-+ if (S_ISLNK(inode->i_mode))
-+ lc_idx = AuLcSymlink_DIINFO;
-+ else if (S_ISDIR(inode->i_mode))
-+ lc_idx = AuLcDir_DIINFO;
-+ au_rw_class(&au_di(dentry)->di_rwsem, au_lc_key + lc_idx);
++ /* verbose coding for lock class name */
++ if (unlikely(S_ISLNK(inode->i_mode)))
++ au_rw_class(&au_di(dentry)->di_rwsem,
++ au_lc_key + AuLcSymlink_DIINFO);
++ else if (unlikely(S_ISDIR(inode->i_mode)))
++ au_rw_class(&au_di(dentry)->di_rwsem,
++ au_lc_key + AuLcDir_DIINFO);
++ else /* likely */
++ au_rw_class(&au_di(dentry)->di_rwsem,
++ au_lc_key + AuLcNonDir_DIINFO);
+ }
+out_si:
+ si_read_unlock(sb);
@@ -13063,10 +13085,10 @@
+ .truncate_range = aufs_truncate_range
+};
--- a/fs/aufs/i_op_add.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/i_op_add.c 2012-10-10 06:26:21.261349000 +0100
++++ b/fs/aufs/i_op_add.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,711 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -13777,10 +13799,10 @@
+ return err;
+}
--- a/fs/aufs/i_op_del.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/i_op_del.c 2012-10-10 06:26:21.261349000 +0100
++++ b/fs/aufs/i_op_del.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,478 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -14258,10 +14280,10 @@
+ return err;
+}
--- a/fs/aufs/i_op_ren.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/i_op_ren.c 2012-10-10 06:26:21.261349000 +0100
++++ b/fs/aufs/i_op_ren.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,1026 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -15287,10 +15309,10 @@
+ return err;
+}
--- a/fs/aufs/iinfo.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/iinfo.c 2012-01-10 02:15:56.557456016 +0000
-@@ -0,0 +1,264 @@
++++ b/fs/aufs/iinfo.c 2013-02-13 14:16:11.502511808 +0000
+@@ -0,0 +1,276 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -15401,10 +15423,22 @@
+ hinode->hi_whdentry = h_wh;
+}
+
-+void au_update_iigen(struct inode *inode)
++void au_update_iigen(struct inode *inode, int half)
+{
-+ atomic_set(&au_ii(inode)->ii_generation, au_sigen(inode->i_sb));
-+ /* smp_mb(); */ /* atomic_set */
++ struct au_iinfo *iinfo;
++ struct au_iigen *iigen;
++ unsigned int sigen;
++
++ sigen = au_sigen(inode->i_sb);
++ iinfo = au_ii(inode);
++ iigen = &iinfo->ii_generation;
++ spin_lock(&iinfo->ii_genspin);
++ iigen->ig_generation = sigen;
++ if (half)
++ au_ig_fset(iigen->ig_flags, HALF_REFRESHED);
++ else
++ au_ig_fclr(iigen->ig_flags, HALF_REFRESHED);
++ spin_unlock(&iinfo->ii_genspin);
+}
+
+/* it may be called at remount time, too */
@@ -15455,6 +15489,7 @@
+ struct au_iinfo *iinfo = &c->iinfo;
+ static struct lock_class_key aufs_ii;
+
++ spin_lock_init(&iinfo->ii_genspin);
+ au_rw_init(&iinfo->ii_rwsem);
+ au_rw_class(&iinfo->ii_rwsem, &aufs_ii);
+ inode_init_once(&c->vfs_inode);
@@ -15477,8 +15512,7 @@
+ for (i = 0; i < nbr; i++)
+ iinfo->ii_hinode[i].hi_id = -1;
+
-+ atomic_set(&iinfo->ii_generation, au_sigen(sb));
-+ /* smp_mb(); */ /* atomic_set */
++ iinfo->ii_generation.ig_generation = au_sigen(sb);
+ iinfo->ii_bstart = -1;
+ iinfo->ii_bend = -1;
+ iinfo->ii_vdir = NULL;
@@ -15554,10 +15588,10 @@
+ AuRwDestroy(&iinfo->ii_rwsem);
+}
--- a/fs/aufs/inode.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/inode.c 2012-10-10 06:26:21.261349000 +0100
-@@ -0,0 +1,478 @@
++++ b/fs/aufs/inode.c 2013-02-13 14:16:11.502511808 +0000
+@@ -0,0 +1,492 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -15592,7 +15626,7 @@
+static void au_refresh_hinode_attr(struct inode *inode, int do_version)
+{
+ au_cpup_attr_all(inode, /*force*/0);
-+ au_update_iigen(inode);
++ au_update_iigen(inode, /*half*/1);
+ if (do_version)
+ inode->i_version++;
+}
@@ -15811,6 +15845,8 @@
+static int reval_inode(struct inode *inode, struct dentry *dentry)
+{
+ int err;
++ unsigned int gen;
++ struct au_iigen iigen;
+ aufs_bindex_t bindex, bend;
+ struct inode *h_inode, *h_dinode;
+
@@ -15829,12 +15865,20 @@
+ bend = au_ibend(inode);
+ for (bindex = au_ibstart(inode); bindex <= bend; bindex++) {
+ h_inode = au_h_iptr(inode, bindex);
-+ if (h_inode && h_inode == h_dinode) {
-+ err = 0;
-+ if (au_iigen_test(inode, au_digen(dentry)))
-+ err = au_refresh_hinode(inode, dentry);
++ if (!h_inode || h_inode != h_dinode)
++ continue;
++
++ err = 0;
++ gen = au_iigen(inode, &iigen);
++ if (gen == au_digen(dentry)
++ && !au_ig_ftest(iigen.ig_flags, HALF_REFRESHED))
+ break;
-+ }
++
++ /* fully refresh inode using dentry */
++ err = au_refresh_hinode(inode, dentry);
++ if (!err)
++ au_update_iigen(inode, /*half*/0);
++ break;
+ }
+
+ if (unlikely(err))
@@ -15884,7 +15928,7 @@
+ struct super_block *sb;
+ struct mutex *mtx;
+ ino_t h_ino, ino;
-+ int err, lc_idx;
++ int err;
+ aufs_bindex_t bstart;
+
+ sb = dentry->d_sb;
@@ -15925,12 +15969,16 @@
+
+ AuDbg("%lx, new %d\n", inode->i_state, !!(inode->i_state & I_NEW));
+ if (inode->i_state & I_NEW) {
-+ lc_idx = AuLcNonDir_IIINFO;
-+ if (S_ISLNK(h_inode->i_mode))
-+ lc_idx = AuLcSymlink_IIINFO;
-+ else if (S_ISDIR(h_inode->i_mode))
-+ lc_idx = AuLcDir_IIINFO;
-+ au_rw_class(&au_ii(inode)->ii_rwsem, au_lc_key + lc_idx);
++ /* verbose coding for lock class name */
++ if (unlikely(S_ISLNK(h_inode->i_mode)))
++ au_rw_class(&au_ii(inode)->ii_rwsem,
++ au_lc_key + AuLcSymlink_IIINFO);
++ else if (unlikely(S_ISDIR(h_inode->i_mode)))
++ au_rw_class(&au_ii(inode)->ii_rwsem,
++ au_lc_key + AuLcDir_IIINFO);
++ else /* likely */
++ au_rw_class(&au_ii(inode)->ii_rwsem,
++ au_lc_key + AuLcNonDir_IIINFO);
+
+ ii_write_lock_new_child(inode);
+ err = set_inode(inode, dentry);
@@ -16035,10 +16083,10 @@
+ return au_test_h_perm(h_inode, mask);
+}
--- a/fs/aufs/inode.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/inode.h 2012-10-10 06:26:21.261349000 +0100
-@@ -0,0 +1,559 @@
++++ b/fs/aufs/inode.h 2013-02-13 14:16:11.502511808 +0000
+@@ -0,0 +1,587 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -16090,9 +16138,22 @@
+ struct dentry *hi_whdentry;
+};
+
++/* ig_flags */
++#define AuIG_HALF_REFRESHED 1
++#define au_ig_ftest(flags, name) ((flags) & AuIG_##name)
++#define au_ig_fset(flags, name) \
++ do { (flags) |= AuIG_##name; } while (0)
++#define au_ig_fclr(flags, name) \
++ do { (flags) &= ~AuIG_##name; } while (0)
++
++struct au_iigen {
++ __u32 ig_generation, ig_flags;
++};
++
+struct au_vdir;
+struct au_iinfo {
-+ atomic_t ii_generation;
++ spinlock_t ii_genspin;
++ struct au_iigen ii_generation;
+ struct super_block *ii_hsb1; /* no get/put */
+
+ struct au_rwsem ii_rwsem;
@@ -16240,7 +16301,7 @@
+void au_set_h_iptr(struct inode *inode, aufs_bindex_t bindex,
+ struct inode *h_inode, unsigned int flags);
+
-+void au_update_iigen(struct inode *inode);
++void au_update_iigen(struct inode *inode, int half);
+void au_update_ibrange(struct inode *inode, int do_put_zero);
+
+void au_icntnr_init_once(void *_c);
@@ -16348,9 +16409,19 @@
+#endif
+}
+
-+static inline unsigned int au_iigen(struct inode *inode)
++static inline unsigned int au_iigen(struct inode *inode, struct au_iigen *iigen)
+{
-+ return atomic_read(&au_ii(inode)->ii_generation);
++ unsigned int gen;
++ struct au_iinfo *iinfo;
++
++ iinfo = au_ii(inode);
++ spin_lock(&iinfo->ii_genspin);
++ if (iigen)
++ *iigen = iinfo->ii_generation;
++ gen = iinfo->ii_generation.ig_generation;
++ spin_unlock(&iinfo->ii_genspin);
++
++ return gen;
+}
+
+/* tiny test for inode number */
@@ -16367,7 +16438,12 @@
+
+static inline void au_iigen_dec(struct inode *inode)
+{
-+ atomic_dec(&au_ii(inode)->ii_generation);
++ struct au_iinfo *iinfo;
++
++ iinfo = au_ii(inode);
++ spin_lock(&iinfo->ii_genspin);
++ iinfo->ii_generation.ig_generation--;
++ spin_unlock(&iinfo->ii_genspin);
+}
+
+static inline int au_iigen_test(struct inode *inode, unsigned int sigen)
@@ -16375,7 +16451,7 @@
+ int err;
+
+ err = 0;
-+ if (unlikely(inode && au_iigen(inode) != sigen))
++ if (unlikely(inode && au_iigen(inode, NULL) != sigen))
+ err = -EIO;
+
+ return err;
@@ -16597,10 +16673,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_INODE_H__ */
--- a/fs/aufs/ioctl.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/ioctl.c 2012-01-10 02:15:56.557456016 +0000
++++ b/fs/aufs/ioctl.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,196 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -16796,10 +16872,10 @@
+#endif
+#endif
--- a/fs/aufs/loop.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/loop.c 2012-07-22 01:31:00.162115458 +0100
++++ b/fs/aufs/loop.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,133 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -16932,10 +17008,10 @@
+ kfree(au_warn_loopback_array);
+}
--- a/fs/aufs/loop.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/loop.h 2012-01-10 02:15:56.557456016 +0000
++++ b/fs/aufs/loop.h 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,50 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -16985,7 +17061,7 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_LOOP_H__ */
--- a/fs/aufs/magic.mk 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/magic.mk 2012-01-10 02:15:56.557456016 +0000
++++ b/fs/aufs/magic.mk 2012-01-10 02:15:56.000000000 +0000
@@ -0,0 +1,54 @@
+
+# defined in ${srctree}/fs/fuse/inode.c
@@ -17042,10 +17118,10 @@
+ccflags-y += -DHFSPLUS_SUPER_MAGIC=0x482b
+endif
--- a/fs/aufs/module.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/module.c 2012-03-11 05:01:22.570973560 +0000
++++ b/fs/aufs/module.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,196 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -17241,10 +17317,10 @@
+module_init(aufs_init);
+module_exit(aufs_exit);
--- a/fs/aufs/module.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/module.h 2012-03-11 05:01:22.570973560 +0000
++++ b/fs/aufs/module.h 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,105 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -17349,10 +17425,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_MODULE_H__ */
--- a/fs/aufs/opts.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/opts.c 2012-07-22 01:31:00.166115467 +0100
++++ b/fs/aufs/opts.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,1677 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -19029,10 +19105,10 @@
+ return au_mntflags(sb) & AuOptMask_UDBA;
+}
--- a/fs/aufs/opts.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/opts.h 2012-01-10 02:15:56.561456041 +0000
++++ b/fs/aufs/opts.h 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,209 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -19241,10 +19317,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_OPTS_H__ */
--- a/fs/aufs/plink.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/plink.c 2012-10-10 06:26:21.261349000 +0100
++++ b/fs/aufs/plink.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,515 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -19759,10 +19835,10 @@
+ }
+}
--- a/fs/aufs/poll.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/poll.c 2012-01-10 02:15:56.561456041 +0000
++++ b/fs/aufs/poll.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,56 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -19818,10 +19894,10 @@
+ return mask;
+}
--- a/fs/aufs/procfs.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/procfs.c 2012-01-10 02:15:56.561456041 +0000
++++ b/fs/aufs/procfs.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,170 @@
+/*
-+ * Copyright (C) 2010-2012 Junjiro R. Okajima
++ * Copyright (C) 2010-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -19991,10 +20067,10 @@
+ return err;
+}
--- a/fs/aufs/rdu.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/rdu.c 2012-10-10 06:26:21.261349000 +0100
++++ b/fs/aufs/rdu.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,383 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -20377,10 +20453,10 @@
+}
+#endif
--- a/fs/aufs/rwsem.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/rwsem.h 2012-01-10 02:15:56.561456041 +0000
++++ b/fs/aufs/rwsem.h 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,188 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -20568,10 +20644,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_RWSEM_H__ */
--- a/fs/aufs/sbinfo.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/sbinfo.c 2012-01-10 02:15:56.561456041 +0000
++++ b/fs/aufs/sbinfo.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,343 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -20729,7 +20805,7 @@
+
+ gen = ++au_sbi(sb)->si_generation;
+ au_update_digen(sb->s_root);
-+ au_update_iigen(sb->s_root->d_inode);
++ au_update_iigen(sb->s_root->d_inode, /*half*/0);
+ sb->s_root->d_inode->i_version++;
+ return gen;
+}
@@ -20914,10 +20990,10 @@
+ spin_unlock(&sbinfo->au_si_pid.tree_lock);
+}
--- a/fs/aufs/spl.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/spl.h 2012-01-10 02:15:56.561456041 +0000
++++ b/fs/aufs/spl.h 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,62 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -20979,10 +21055,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_SPL_H__ */
--- a/fs/aufs/super.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/super.c 2012-10-10 06:26:21.261349000 +0100
-@@ -0,0 +1,968 @@
++++ b/fs/aufs/super.c 2013-02-13 14:16:11.502511808 +0000
+@@ -0,0 +1,999 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -21402,6 +21478,36 @@
+
+/* ---------------------------------------------------------------------- */
+
++static int aufs_sync_fs(struct super_block *sb, int wait)
++{
++ int err, e;
++ aufs_bindex_t bend, bindex;
++ struct au_branch *br;
++ struct super_block *h_sb;
++
++ err = 0;
++ si_noflush_read_lock(sb);
++ bend = au_sbend(sb);
++ for (bindex = 0; bindex <= bend; bindex++) {
++ br = au_sbr(sb, bindex);
++ if (!au_br_writable(br->br_perm))
++ continue;
++
++ h_sb = au_sbr_sb(sb, bindex);
++ if (h_sb->s_op->sync_fs) {
++ e = h_sb->s_op->sync_fs(h_sb, wait);
++ if (unlikely(e && !err))
++ err = e;
++ /* go on even if an error happens */
++ }
++ }
++ si_read_unlock(sb);
++
++ return err;
++}
++
++/* ---------------------------------------------------------------------- */
++
+/* final actions when unmounting a file system */
+static void aufs_put_super(struct super_block *sb)
+{
@@ -21612,7 +21718,7 @@
+ sigen = au_sigen(sb);
+ for (ull = 0; ull < max; ull++) {
+ inode = array[ull];
-+ if (au_iigen(inode) != sigen) {
++ if (au_iigen(inode, NULL) != sigen) {
+ ii_write_lock_child(inode);
+ e = au_refresh_hinode_self(inode);
+ ii_write_unlock(inode);
@@ -21765,6 +21871,7 @@
+ .show_options = aufs_show_options,
+ .statfs = aufs_statfs,
+ .put_super = aufs_put_super,
++ .sync_fs = aufs_sync_fs,
+ .remount_fs = aufs_remount_fs
+};
+
@@ -21950,10 +22057,10 @@
+ .owner = THIS_MODULE,
+};
--- a/fs/aufs/super.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/super.h 2012-01-10 02:15:56.569456073 +0000
++++ b/fs/aufs/super.h 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,546 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -22499,10 +22606,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_SUPER_H__ */
--- a/fs/aufs/sysaufs.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/sysaufs.c 2012-01-10 02:15:56.569456073 +0000
++++ b/fs/aufs/sysaufs.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,105 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -22607,10 +22714,10 @@
+ return err;
+}
--- a/fs/aufs/sysaufs.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/sysaufs.h 2012-01-10 02:15:56.569456073 +0000
++++ b/fs/aufs/sysaufs.h 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,104 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -22714,10 +22821,10 @@
+#endif /* __KERNEL__ */
+#endif /* __SYSAUFS_H__ */
--- a/fs/aufs/sysfs.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/sysfs.c 2012-07-22 01:31:00.166115467 +0100
++++ b/fs/aufs/sysfs.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,257 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -22974,10 +23081,10 @@
+ }
+}
--- a/fs/aufs/sysrq.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/sysrq.c 2012-10-10 06:26:21.261349000 +0100
++++ b/fs/aufs/sysrq.c 2013-02-13 14:16:11.502511808 +0000
@@ -0,0 +1,148 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -23125,10 +23232,10 @@
+ pr_err("err %d (ignored)\n", err);
+}
--- a/fs/aufs/vdir.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/vdir.c 2012-01-10 02:15:56.569456073 +0000
++++ b/fs/aufs/vdir.c 2013-02-13 14:16:11.506511808 +0000
@@ -0,0 +1,885 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -24013,10 +24120,10 @@
+ return 0;
+}
--- a/fs/aufs/vfsub.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/vfsub.c 2012-10-10 06:26:21.265349041 +0100
++++ b/fs/aufs/vfsub.c 2013-02-13 14:16:11.506511808 +0000
@@ -0,0 +1,835 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -24851,10 +24958,10 @@
+ return err;
+}
--- a/fs/aufs/vfsub.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/vfsub.h 2012-10-10 06:26:21.265349041 +0100
++++ b/fs/aufs/vfsub.h 2013-02-13 14:16:11.506511808 +0000
@@ -0,0 +1,232 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -25086,10 +25193,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_VFSUB_H__ */
--- a/fs/aufs/wbr_policy.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/wbr_policy.c 2012-01-10 02:15:56.569456073 +0000
++++ b/fs/aufs/wbr_policy.c 2013-02-13 14:16:11.506511808 +0000
@@ -0,0 +1,700 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -25789,10 +25896,10 @@
+ }
+};
--- a/fs/aufs/whout.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/whout.c 2012-10-10 06:26:21.265349041 +0100
++++ b/fs/aufs/whout.c 2013-02-13 14:16:11.506511808 +0000
@@ -0,0 +1,1049 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -26841,10 +26948,10 @@
+ }
+}
--- a/fs/aufs/whout.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/whout.h 2012-01-10 02:15:56.573456100 +0000
++++ b/fs/aufs/whout.h 2013-02-13 14:16:11.506511808 +0000
@@ -0,0 +1,88 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -26932,10 +27039,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_WHOUT_H__ */
--- a/fs/aufs/wkq.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/wkq.c 2012-10-10 06:26:21.265349041 +0100
++++ b/fs/aufs/wkq.c 2013-02-13 14:16:11.506511808 +0000
@@ -0,0 +1,214 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -27149,10 +27256,10 @@
+ return err;
+}
--- a/fs/aufs/wkq.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/wkq.h 2012-01-10 02:15:56.573456100 +0000
++++ b/fs/aufs/wkq.h 2013-02-13 14:16:11.506511808 +0000
@@ -0,0 +1,92 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -27244,10 +27351,10 @@
+#endif /* __KERNEL__ */
+#endif /* __AUFS_WKQ_H__ */
--- a/fs/aufs/xino.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/fs/aufs/xino.c 2012-07-22 01:31:00.166115467 +0100
-@@ -0,0 +1,1264 @@
++++ b/fs/aufs/xino.c 2013-02-13 14:16:11.506511808 +0000
+@@ -0,0 +1,1265 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -27564,7 +27671,8 @@
+
+ ii_read_unlock(dir);
+ if (unlikely(err))
-+ pr_warn("err b%d, (%d)\n", bindex, err);
++ pr_warn("err b%d, upper %llu, (%d)\n",
++ bindex, (unsigned long long)br->br_xino_upper, err);
+ atomic_dec(&br->br_xino_running);
+ atomic_dec(&br->br_count);
+ si_write_unlock(sb);
@@ -28511,10 +28619,10 @@
+ return err;
+}
--- a/include/linux/aufs_type.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/include/linux/aufs_type.h 2012-10-10 06:26:21.265349041 +0100
++++ b/include/linux/aufs_type.h 2013-02-13 14:16:11.506511808 +0000
@@ -0,0 +1,233 @@
+/*
-+ * Copyright (C) 2005-2012 Junjiro R. Okajima
++ * Copyright (C) 2005-2013 Junjiro R. Okajima
+ *
+ * This program, aufs is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -28554,7 +28662,7 @@
+
+#include <linux/limits.h>
+
-+#define AUFS_VERSION "3.2-20120827"
++#define AUFS_VERSION "3.2-20130204"
+
+/* todo? move this to linux-2.6.19/include/magic.h */
+#define AUFS_SUPER_MAGIC ('a' << 24 | 'u' << 16 | 'f' << 8 | 's')
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0059-be2net-do-not-modify-PCI-MaxReadReq-size.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0059-be2net-do-not-modify-PCI-MaxReadReq-size.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0059-be2net-do-not-modify-PCI-MaxReadReq-size.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0059-be2net-do-not-modify-PCI-MaxReadReq-size.patch)
@@ -0,0 +1,41 @@
+From 21ba34daa00d71715d5d49740ebc8caac5e522d5 Mon Sep 17 00:00:00 2001
+From: Sathya Perla <sathya.perla at emulex.com>
+Date: Tue, 5 Jun 2012 19:37:19 +0000
+Subject: [PATCH 01/13] be2net: do not modify PCI MaxReadReq size
+
+commit 0513ac3d2212072c6694430b1003ad4246a35466 upstream.
+
+Setting the PCI MRRS to a value of 4096 (overriding the system decided
+value) had provided perf improvement in TX.
+But, IBM has provided feedback that on POWER platforms, this value is set
+by the system firmware, and drivers modifying this value can cause
+unpredictable results (like EEH errors.) So, backing off this change.
+On POWER7 platforms most slots, it seems, do get a MRRS of 4096.
+
+This patch reverts the following commit:
+"be2net: Modified PCI MaxReadReq size to 4096 bytes"
+commit 5a56eb10babbcd7b3796dc3c28c271260aa3608d.
+
+Suggested-by: Brian King <bjking1 at us.ibm.com>
+Signed-off-by: Sathya Perla <sathya.perla at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be_main.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
+index 8b6ce5b..2cf02d6 100644
+--- a/drivers/net/ethernet/emulex/benet/be_main.c
++++ b/drivers/net/ethernet/emulex/benet/be_main.c
+@@ -2745,8 +2745,6 @@ static int be_setup(struct be_adapter *adapter)
+ be_cmd_set_flow_control(adapter, adapter->tx_fc,
+ adapter->rx_fc);
+
+- pcie_set_readrq(adapter->pdev, 4096);
+-
+ if (be_physfn(adapter) && num_vfs) {
+ if (adapter->dev_num_vfs)
+ be_vf_setup(adapter);
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0060-be2net-fix-reporting-number-of-actual-rx-queues.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0060-be2net-fix-reporting-number-of-actual-rx-queues.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0060-be2net-fix-reporting-number-of-actual-rx-queues.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0060-be2net-fix-reporting-number-of-actual-rx-queues.patch)
@@ -0,0 +1,42 @@
+From 4df5eb92325bde926fc45d8609a1cac6ceef6bc5 Mon Sep 17 00:00:00 2001
+From: Sathya Perla <sathya.perla at emulex.com>
+Date: Tue, 5 Jun 2012 19:37:20 +0000
+Subject: [PATCH 02/13] be2net: fix reporting number of actual rx queues
+
+commit 7f6400626631454f5b535eb92c09a35390777a52 upstream.
+
+Signed-off-by: Sathya Perla <sathya.perla at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be_main.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
+index 2cf02d6..4e1305f 100644
+--- a/drivers/net/ethernet/emulex/benet/be_main.c
++++ b/drivers/net/ethernet/emulex/benet/be_main.c
+@@ -1890,6 +1890,12 @@ static int be_rx_cqs_create(struct be_adapter *adapter)
+ */
+ adapter->num_rx_qs = (num_irqs(adapter) > 1) ?
+ num_irqs(adapter) + 1 : 1;
++ if (adapter->num_rx_qs != MAX_RX_QS) {
++ rtnl_lock();
++ netif_set_real_num_rx_queues(adapter->netdev,
++ adapter->num_rx_qs);
++ rtnl_unlock();
++ }
+
+ adapter->big_page_size = (1 << get_order(rx_frag_size)) * PAGE_SIZE;
+ for_all_rx_queues(adapter, rxo, i) {
+@@ -3640,7 +3646,7 @@ static int __devinit be_probe(struct pci_dev *pdev,
+ goto disable_dev;
+ pci_set_master(pdev);
+
+- netdev = alloc_etherdev_mq(sizeof(struct be_adapter), MAX_TX_QS);
++ netdev = alloc_etherdev_mqs(sizeof(*adapter), MAX_TX_QS, MAX_RX_QS);
+ if (netdev == NULL) {
+ status = -ENOMEM;
+ goto rel_reg;
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0061-be2net-do-not-use-SCRATCHPAD-register.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0061-be2net-do-not-use-SCRATCHPAD-register.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0061-be2net-do-not-use-SCRATCHPAD-register.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0061-be2net-do-not-use-SCRATCHPAD-register.patch)
@@ -0,0 +1,78 @@
+From 798402055b562b87e4e9a1b6caf5e9e1d685af22 Mon Sep 17 00:00:00 2001
+From: Sathya Perla <sathya.perla at emulex.com>
+Date: Tue, 5 Jun 2012 19:37:22 +0000
+Subject: [PATCH 03/13] be2net: do not use SCRATCHPAD register
+
+commit d79c0a207aa3be002e1d9473ea98cc4f838e5a8b upstream.
+
+The CUST_SCRATCHPAD_CSR register is used for marking if FW cleanup is
+needed. This is used in a crash kernel scenario. Do no use this register as
+it is not available for some functions. Instead, always issue an FLR when
+a function is probed *except* when VFs are preset (enabled in the previous
+PF load).
+
+Signed-off-by: Sathya Perla <sathya.perla at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be_hw.h | 2 --
+ drivers/net/ethernet/emulex/benet/be_main.c | 10 +++-------
+ 2 files changed, 3 insertions(+), 9 deletions(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be_hw.h b/drivers/net/ethernet/emulex/benet/be_hw.h
+index f38b58c..0949aa6 100644
+--- a/drivers/net/ethernet/emulex/benet/be_hw.h
++++ b/drivers/net/ethernet/emulex/benet/be_hw.h
+@@ -58,8 +58,6 @@
+
+ #define SLI_PORT_CONTROL_IP_MASK 0x08000000
+
+-#define PCICFG_CUST_SCRATCHPAD_CSR 0x1EC
+-
+ /********* Memory BAR register ************/
+ #define PCICFG_MEMBAR_CTRL_INT_CTRL_OFFSET 0xfc
+ /* Host Interrupt Enable, if set interrupts are enabled although "PCI Interrupt
+diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
+index 4e1305f..24bd2cb 100644
+--- a/drivers/net/ethernet/emulex/benet/be_main.c
++++ b/drivers/net/ethernet/emulex/benet/be_main.c
+@@ -1049,6 +1049,8 @@ static int be_find_vfs(struct be_adapter *adapter, int vf_state)
+ u16 offset, stride;
+
+ pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_SRIOV);
++ if (!pos)
++ return 0;
+ pci_read_config_word(pdev, pos + PCI_SRIOV_VF_OFFSET, &offset);
+ pci_read_config_word(pdev, pos + PCI_SRIOV_VF_STRIDE, &stride);
+
+@@ -2522,7 +2524,6 @@ static int be_clear(struct be_adapter *adapter)
+ be_cmd_fw_clean(adapter);
+
+ be_msix_disable(adapter);
+- pci_write_config_dword(adapter->pdev, PCICFG_CUST_SCRATCHPAD_CSR, 0);
+ return 0;
+ }
+
+@@ -2764,8 +2765,6 @@ static int be_setup(struct be_adapter *adapter)
+
+ schedule_delayed_work(&adapter->work, msecs_to_jiffies(1000));
+ adapter->flags |= BE_FLAGS_WORKER_SCHEDULED;
+-
+- pci_write_config_dword(adapter->pdev, PCICFG_CUST_SCRATCHPAD_CSR, 1);
+ return 0;
+ err:
+ be_clear(adapter);
+@@ -3624,10 +3623,7 @@ reschedule:
+
+ static bool be_reset_required(struct be_adapter *adapter)
+ {
+- u32 reg;
+-
+- pci_read_config_dword(adapter->pdev, PCICFG_CUST_SCRATCHPAD_CSR, ®);
+- return reg;
++ return be_find_vfs(adapter, ENABLED) > 0 ? false : true;
+ }
+
+ static int __devinit be_probe(struct pci_dev *pdev,
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0062-be2net-reduce-gso_max_size-setting-to-account-for-et.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0062-be2net-reduce-gso_max_size-setting-to-account-for-et.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0062-be2net-reduce-gso_max_size-setting-to-account-for-et.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0062-be2net-reduce-gso_max_size-setting-to-account-for-et.patch)
@@ -0,0 +1,33 @@
+From cdabe042d89c1fc8cb8cf7aaaf0d902b1bab5549 Mon Sep 17 00:00:00 2001
+From: Sarveshwar Bandi <sarveshwar.bandi at emulex.com>
+Date: Wed, 13 Jun 2012 19:51:43 +0000
+Subject: [PATCH 04/13] be2net: reduce gso_max_size setting to account for
+ ethernet header.
+
+commit b7e5887e0e414bde0a2f311ae3fbea5611562e29 upstream.
+
+The maximum size of packet that can be handled by controller including ethernet
+header is 65535. Reducing gso_max_size accordingly.
+
+Signed-off-by: Sarveshwar Bandi <sarveshwar.bandi at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be_main.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
+index 24bd2cb..9c42942 100644
+--- a/drivers/net/ethernet/emulex/benet/be_main.c
++++ b/drivers/net/ethernet/emulex/benet/be_main.c
+@@ -3212,7 +3212,7 @@ static void be_netdev_init(struct net_device *netdev)
+
+ netdev->flags |= IFF_MULTICAST;
+
+- netif_set_gso_max_size(netdev, 65535);
++ netif_set_gso_max_size(netdev, 65535 - ETH_HLEN);
+
+ netdev->netdev_ops = &be_netdev_ops;
+
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0063-be2net-Increase-statistics-structure-size-for-skyhaw.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0063-be2net-Increase-statistics-structure-size-for-skyhaw.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0063-be2net-Increase-statistics-structure-size-for-skyhaw.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0063-be2net-Increase-statistics-structure-size-for-skyhaw.patch)
@@ -0,0 +1,32 @@
+From 779671a8948dd9d4c2b1394f7cd3a7608b56488f Mon Sep 17 00:00:00 2001
+From: Vasundhara Volam <vasundhara.volam at emulex.com>
+Date: Wed, 13 Jun 2012 19:51:45 +0000
+Subject: [PATCH 05/13] be2net: Increase statistics structure size for
+ skyhawk.
+
+commit 0b3f0e7ae0765c81c7d659811595ea5058ae05a7 upstream.
+
+Increasing the hardware statistics structure to accomodate statistics for skyhawk.
+
+Signed-off-by: Vasundhara Volam <vasundhara.volam at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be_cmds.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be_cmds.h b/drivers/net/ethernet/emulex/benet/be_cmds.h
+index 944f031..c3d881f 100644
+--- a/drivers/net/ethernet/emulex/benet/be_cmds.h
++++ b/drivers/net/ethernet/emulex/benet/be_cmds.h
+@@ -1563,7 +1563,7 @@ struct be_hw_stats_v1 {
+ u32 rsvd0[BE_TXP_SW_SZ];
+ struct be_erx_stats_v1 erx;
+ struct be_pmem_stats pmem;
+- u32 rsvd1[3];
++ u32 rsvd1[18];
+ };
+
+ struct be_cmd_req_get_stats_v1 {
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0064-be2net-Explicitly-clear-the-reserved-field-in-the-Tx.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0064-be2net-Explicitly-clear-the-reserved-field-in-the-Tx.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0064-be2net-Explicitly-clear-the-reserved-field-in-the-Tx.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0064-be2net-Explicitly-clear-the-reserved-field-in-the-Tx.patch)
@@ -0,0 +1,29 @@
+From fcbdb4746284b89d8d81bef4efbbe082b5862fad Mon Sep 17 00:00:00 2001
+From: Somnath Kotur <somnath.kotur at emulex.com>
+Date: Sun, 24 Jun 2012 19:40:55 +0000
+Subject: [PATCH 06/13] be2net: Explicitly clear the reserved field in the Tx
+ Descriptor
+
+commit 89b1f496d2b659eaaac5a8d80b801661ab03854f upstream.
+
+Signed-off-by: Somnath Kotur <somnath.kotur at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be_main.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
+index 9c42942..3041436 100644
+--- a/drivers/net/ethernet/emulex/benet/be_main.c
++++ b/drivers/net/ethernet/emulex/benet/be_main.c
+@@ -558,6 +558,7 @@ static inline void wrb_fill(struct be_eth_wrb *wrb, u64 addr, int len)
+ wrb->frag_pa_hi = upper_32_bits(addr);
+ wrb->frag_pa_lo = addr & 0xFFFFFFFF;
+ wrb->frag_len = len & ETH_WRB_FRAG_LEN_MASK;
++ wrb->rsvd0 = 0;
+ }
+
+ static inline u16 be_get_tx_vlan_tag(struct be_adapter *adapter,
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0065-be2net-Regression-bug-wherein-VFs-creation-broken-fo.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0065-be2net-Regression-bug-wherein-VFs-creation-broken-fo.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0065-be2net-Regression-bug-wherein-VFs-creation-broken-fo.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0065-be2net-Regression-bug-wherein-VFs-creation-broken-fo.patch)
@@ -0,0 +1,33 @@
+From c6edc77cb260e386ccc2d0270bf1dfd6159171a7 Mon Sep 17 00:00:00 2001
+From: Somnath Kotur <somnath.kotur at emulex.com>
+Date: Sun, 24 Jun 2012 19:42:00 +0000
+Subject: [PATCH 07/13] be2net: Regression bug wherein VFs creation broken for
+ multiple cards.
+
+commit 7665de15642dfb1709177517aa0488162727342c upstream.
+
+Fix be_find_vfs() to check for matching bus number as well along with devfn
+
+Signed-off-by: Somnath Kotur <somnath.kotur at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be_main.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
+index 3041436..dc10904 100644
+--- a/drivers/net/ethernet/emulex/benet/be_main.c
++++ b/drivers/net/ethernet/emulex/benet/be_main.c
+@@ -1058,7 +1058,8 @@ static int be_find_vfs(struct be_adapter *adapter, int vf_state)
+ dev = pci_get_device(pdev->vendor, PCI_ANY_ID, NULL);
+ while (dev) {
+ vf_fn = (pdev->devfn + offset + stride * vfs) & 0xFFFF;
+- if (dev->is_virtfn && dev->devfn == vf_fn) {
++ if (dev->is_virtfn && dev->devfn == vf_fn &&
++ dev->bus->number == pdev->bus->number) {
+ vfs++;
+ if (dev->dev_flags & PCI_DEV_FLAGS_ASSIGNED)
+ assigned_vfs++;
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0066-be2net-Fix-to-trim-skb-for-padded-vlan-packets-to-wo.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0066-be2net-Fix-to-trim-skb-for-padded-vlan-packets-to-wo.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0066-be2net-Fix-to-trim-skb-for-padded-vlan-packets-to-wo.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0066-be2net-Fix-to-trim-skb-for-padded-vlan-packets-to-wo.patch)
@@ -0,0 +1,126 @@
+From 13cc6abaa4635ed09e676a68aeb17e9f62405469 Mon Sep 17 00:00:00 2001
+From: Somnath Kotur <somnath.kotur at emulex.com>
+Date: Tue, 26 Jun 2012 22:32:10 +0000
+Subject: [PATCH 08/13] be2net: Fix to trim skb for padded vlan packets to
+ workaround an ASIC Bug
+
+commit 93040ae5cc8dcc893eca4a4366dc8415af278edf upstream.
+
+Fixed spelling error in a comment as pointed out by DaveM.
+Also refactored existing code a bit to provide placeholders for another ASIC
+Bug workaround that will be checked-in soon after this.
+
+Signed-off-by: Somnath Kotur <somnath.kotur at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be.h | 5 +++
+ drivers/net/ethernet/emulex/benet/be_main.c | 57 ++++++++++++++++++++-------
+ 2 files changed, 48 insertions(+), 14 deletions(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be.h b/drivers/net/ethernet/emulex/benet/be.h
+index ecf1a81..d1a17dc 100644
+--- a/drivers/net/ethernet/emulex/benet/be.h
++++ b/drivers/net/ethernet/emulex/benet/be.h
+@@ -555,6 +555,11 @@ static inline u8 is_udp_pkt(struct sk_buff *skb)
+ return val;
+ }
+
++static inline bool is_ipv4_pkt(struct sk_buff *skb)
++{
++ return skb->protocol == ntohs(ETH_P_IP) && ip_hdr(skb)->version == 4;
++}
++
+ static inline void be_vf_eth_addr_generate(struct be_adapter *adapter, u8 *mac)
+ {
+ u32 addr;
+diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
+index dc10904..ec72318 100644
+--- a/drivers/net/ethernet/emulex/benet/be_main.c
++++ b/drivers/net/ethernet/emulex/benet/be_main.c
+@@ -577,6 +577,11 @@ static inline u16 be_get_tx_vlan_tag(struct be_adapter *adapter,
+ return vlan_tag;
+ }
+
++static int be_vlan_tag_chk(struct be_adapter *adapter, struct sk_buff *skb)
++{
++ return vlan_tx_tag_present(skb) || adapter->pvid;
++}
++
+ static void wrb_fill_hdr(struct be_adapter *adapter, struct be_eth_hdr_wrb *hdr,
+ struct sk_buff *skb, u32 wrb_cnt, u32 len)
+ {
+@@ -704,33 +709,57 @@ dma_err:
+ return 0;
+ }
+
++static struct sk_buff *be_insert_vlan_in_pkt(struct be_adapter *adapter,
++ struct sk_buff *skb)
++{
++ u16 vlan_tag = 0;
++
++ skb = skb_share_check(skb, GFP_ATOMIC);
++ if (unlikely(!skb))
++ return skb;
++
++ if (vlan_tx_tag_present(skb)) {
++ vlan_tag = be_get_tx_vlan_tag(adapter, skb);
++ __vlan_put_tag(skb, vlan_tag);
++ skb->vlan_tci = 0;
++ }
++
++ return skb;
++}
++
++
+ static netdev_tx_t be_xmit(struct sk_buff *skb,
+ struct net_device *netdev)
+ {
+ struct be_adapter *adapter = netdev_priv(netdev);
+ struct be_tx_obj *txo = &adapter->tx_obj[skb_get_queue_mapping(skb)];
+ struct be_queue_info *txq = &txo->q;
++ struct iphdr *ip = NULL;
+ u32 wrb_cnt = 0, copied = 0;
+- u32 start = txq->head;
++ u32 start = txq->head, eth_hdr_len;
+ bool dummy_wrb, stopped = false;
+
+- /* For vlan tagged pkts, BE
+- * 1) calculates checksum even when CSO is not requested
+- * 2) calculates checksum wrongly for padded pkt less than
+- * 60 bytes long.
+- * As a workaround disable TX vlan offloading in such cases.
++ eth_hdr_len = ntohs(skb->protocol) == ETH_P_8021Q ?
++ VLAN_ETH_HLEN : ETH_HLEN;
++
++ /* HW has a bug which considers padding bytes as legal
++ * and modifies the IPv4 hdr's 'tot_len' field
+ */
+- if (unlikely(vlan_tx_tag_present(skb) &&
+- (skb->ip_summed != CHECKSUM_PARTIAL || skb->len <= 60))) {
+- skb = skb_share_check(skb, GFP_ATOMIC);
+- if (unlikely(!skb))
+- goto tx_drop;
++ if (skb->len <= 60 && be_vlan_tag_chk(adapter, skb) &&
++ is_ipv4_pkt(skb)) {
++ ip = (struct iphdr *)ip_hdr(skb);
++ pskb_trim(skb, eth_hdr_len + ntohs(ip->tot_len));
++ }
+
+- skb = __vlan_put_tag(skb, be_get_tx_vlan_tag(adapter, skb));
++ /* HW has a bug wherein it will calculate CSUM for VLAN
++ * pkts even though it is disabled.
++ * Manually insert VLAN in pkt.
++ */
++ if (skb->ip_summed != CHECKSUM_PARTIAL &&
++ be_vlan_tag_chk(adapter, skb)) {
++ skb = be_insert_vlan_in_pkt(adapter, skb);
+ if (unlikely(!skb))
+ goto tx_drop;
+-
+- skb->vlan_tci = 0;
+ }
+
+ wrb_cnt = wrb_cnt_for_skb(adapter, skb, &dummy_wrb);
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0067-be2net-Fix-Endian.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0067-be2net-Fix-Endian.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0067-be2net-Fix-Endian.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0067-be2net-Fix-Endian.patch)
@@ -0,0 +1,35 @@
+From 1dbfee7f77c8b507207a89fe576d1cd4485672ca Mon Sep 17 00:00:00 2001
+From: Li RongQing <roy.qing.li at gmail.com>
+Date: Wed, 4 Jul 2012 16:05:42 +0000
+Subject: [PATCH 09/13] be2net: Fix Endian
+
+commit e8efcec5394cbf7ae67ccb137cb1a45ae3e6f6c8 upstream.
+
+ETH_P_IP is host Endian, skb->protocol is big Endian, when
+compare them, we should change ETH_P_IP from host endian
+to big endian, htons, not ntohs.
+
+CC: Somnath Kotur <somnath.kotur at emulex.com>
+Signed-off-by: Li RongQing <roy.qing.li at gmail.com>
+Acked-by: Somnath Kotur <somnath.kotur at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be.h b/drivers/net/ethernet/emulex/benet/be.h
+index d1a17dc..75d9b60 100644
+--- a/drivers/net/ethernet/emulex/benet/be.h
++++ b/drivers/net/ethernet/emulex/benet/be.h
+@@ -557,7 +557,7 @@ static inline u8 is_udp_pkt(struct sk_buff *skb)
+
+ static inline bool is_ipv4_pkt(struct sk_buff *skb)
+ {
+- return skb->protocol == ntohs(ETH_P_IP) && ip_hdr(skb)->version == 4;
++ return skb->protocol == htons(ETH_P_IP) && ip_hdr(skb)->version == 4;
+ }
+
+ static inline void be_vf_eth_addr_generate(struct be_adapter *adapter, u8 *mac)
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0068-be2net-Enable-RSS-UDP-hashing-for-Lancer-and-Skyhawk.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0068-be2net-Enable-RSS-UDP-hashing-for-Lancer-and-Skyhawk.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0068-be2net-Enable-RSS-UDP-hashing-for-Lancer-and-Skyhawk.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0068-be2net-Enable-RSS-UDP-hashing-for-Lancer-and-Skyhawk.patch)
@@ -0,0 +1,64 @@
+From 9818fbc76520775e4087141bfa23ede010063ea5 Mon Sep 17 00:00:00 2001
+From: Padmanabh Ratnakar <padmanabh.ratnakar at emulex.com>
+Date: Thu, 12 Jul 2012 03:57:47 +0000
+Subject: [PATCH 10/13] be2net: Enable RSS UDP hashing for Lancer and Skyhawk
+
+commit d3bd3a5eeb087bf6a06e9bdfc589096608f933a0 upstream.
+
+Signed-off-by: Padmanabh Ratnakar <padmanabh.ratnakar at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be.h | 4 ++++
+ drivers/net/ethernet/emulex/benet/be_cmds.c | 7 +++++++
+ drivers/net/ethernet/emulex/benet/be_cmds.h | 2 ++
+ 3 files changed, 13 insertions(+)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be.h b/drivers/net/ethernet/emulex/benet/be.h
+index 75d9b60..c648a40 100644
+--- a/drivers/net/ethernet/emulex/benet/be.h
++++ b/drivers/net/ethernet/emulex/benet/be.h
+@@ -440,6 +440,10 @@ struct be_adapter {
+ #define lancer_chip(adapter) ((adapter->pdev->device == OC_DEVICE_ID3) || \
+ (adapter->pdev->device == OC_DEVICE_ID4))
+
++#define skyhawk_chip(adapter) (adapter->pdev->device == OC_DEVICE_ID5)
++
++
++
+ extern const struct ethtool_ops be_ethtool_ops;
+
+ #define msix_enabled(adapter) (adapter->num_msix_vec > 0)
+diff --git a/drivers/net/ethernet/emulex/benet/be_cmds.c b/drivers/net/ethernet/emulex/benet/be_cmds.c
+index 43167e8..0757df4 100644
+--- a/drivers/net/ethernet/emulex/benet/be_cmds.c
++++ b/drivers/net/ethernet/emulex/benet/be_cmds.c
+@@ -1727,6 +1727,13 @@ int be_cmd_rss_config(struct be_adapter *adapter, u8 *rsstable, u16 table_size)
+ req->if_id = cpu_to_le32(adapter->if_handle);
+ req->enable_rss = cpu_to_le16(RSS_ENABLE_TCP_IPV4 | RSS_ENABLE_IPV4 |
+ RSS_ENABLE_TCP_IPV6 | RSS_ENABLE_IPV6);
++
++ if (lancer_chip(adapter) || skyhawk_chip(adapter)) {
++ req->hdr.version = 1;
++ req->enable_rss |= cpu_to_le16(RSS_ENABLE_UDP_IPV4 |
++ RSS_ENABLE_UDP_IPV6);
++ }
++
+ req->cpu_table_size_log2 = cpu_to_le16(fls(table_size) - 1);
+ memcpy(req->cpu_table, rsstable, table_size);
+ memcpy(req->hash, myhash, sizeof(myhash));
+diff --git a/drivers/net/ethernet/emulex/benet/be_cmds.h b/drivers/net/ethernet/emulex/benet/be_cmds.h
+index c3d881f..d42b3b9 100644
+--- a/drivers/net/ethernet/emulex/benet/be_cmds.h
++++ b/drivers/net/ethernet/emulex/benet/be_cmds.h
+@@ -1085,6 +1085,8 @@ struct be_cmd_resp_query_fw_cfg {
+ #define RSS_ENABLE_TCP_IPV4 0x2
+ #define RSS_ENABLE_IPV6 0x4
+ #define RSS_ENABLE_TCP_IPV6 0x8
++#define RSS_ENABLE_UDP_IPV4 0x10
++#define RSS_ENABLE_UDP_IPV6 0x20
+
+ struct be_cmd_req_rss_config {
+ struct be_cmd_req_hdr hdr;
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0069-be2net-dont-pull-too-much-data-in-skb-linear-part.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0069-be2net-dont-pull-too-much-data-in-skb-linear-part.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0069-be2net-dont-pull-too-much-data-in-skb-linear-part.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0069-be2net-dont-pull-too-much-data-in-skb-linear-part.patch)
@@ -0,0 +1,49 @@
+From 6c7d98f7988abe6d28de0acd0ee0eaecea61ac79 Mon Sep 17 00:00:00 2001
+From: Eric Dumazet <edumazet at google.com>
+Date: Fri, 13 Jul 2012 03:19:41 +0000
+Subject: [PATCH 11/13] be2net: dont pull too much data in skb linear part
+
+commit ac1ae5f33fd225f46da0072e2091962410a0431b upstream.
+
+skb_fill_rx_data() pulls 64 byte of data in skb->data
+
+Its too much for TCP (with no options) on IPv4, as total size of headers
+is 14 + 40 = 54
+
+This means tcp stack and splice() are suboptimal, since tcp payload
+is in part in tcp->data, and in part in skb frag.
+
+Signed-off-by: Eric Dumazet <edumazet at google.com>
+Acked-by: Padmanabh Ratnakar <padmanabh.ratnakar at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be_main.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
+index ec72318..e2e2472 100644
+--- a/drivers/net/ethernet/emulex/benet/be_main.c
++++ b/drivers/net/ethernet/emulex/benet/be_main.c
+@@ -1228,16 +1228,16 @@ static void skb_fill_rx_data(struct be_rx_obj *rxo, struct sk_buff *skb,
+ /* Copy data in the first descriptor of this completion */
+ curr_frag_len = min(rxcp->pkt_size, rx_frag_size);
+
+- /* Copy the header portion into skb_data */
+- hdr_len = min(BE_HDR_LEN, curr_frag_len);
+- memcpy(skb->data, start, hdr_len);
+ skb->len = curr_frag_len;
+ if (curr_frag_len <= BE_HDR_LEN) { /* tiny packet */
++ memcpy(skb->data, start, curr_frag_len);
+ /* Complete packet has now been moved to data */
+ put_page(page_info->page);
+ skb->data_len = 0;
+ skb->tail += curr_frag_len;
+ } else {
++ hdr_len = ETH_HLEN;
++ memcpy(skb->data, start, hdr_len);
+ skb_shinfo(skb)->nr_frags = 1;
+ skb_frag_set_page(skb, 0, page_info->page);
+ skb_shinfo(skb)->frags[0].page_offset =
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0070-be2net-Fix-to-parse-RSS-hash-from-Receive-completion.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0070-be2net-Fix-to-parse-RSS-hash-from-Receive-completion.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0070-be2net-Fix-to-parse-RSS-hash-from-Receive-completion.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0070-be2net-Fix-to-parse-RSS-hash-from-Receive-completion.patch)
@@ -0,0 +1,42 @@
+From 3a194352de63562cbc39ad9b394df45cd01c2564 Mon Sep 17 00:00:00 2001
+From: Sarveshwar Bandi <sarveshwar.bandi at emulex.com>
+Date: Wed, 25 Jul 2012 21:29:50 +0000
+Subject: [PATCH 12/13] be2net: Fix to parse RSS hash from Receive completions
+ correctly.
+
+commit c297977ec18deb36b2c0a5ee57101f7ab736ec00 upstream.
+
+Wrong pointer variable is being used to parse the rss hash from
+receive completions leading to corrupted rss_hash values filled into skb.
+
+Signed-off-by: Sarveshwar Bandi <sarveshwar.bandi at emulex.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ drivers/net/ethernet/emulex/benet/be_main.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
+index e2e2472..19307ad 100644
+--- a/drivers/net/ethernet/emulex/benet/be_main.c
++++ b/drivers/net/ethernet/emulex/benet/be_main.c
+@@ -1397,7 +1397,7 @@ static void be_parse_rx_compl_v1(struct be_eth_rx_compl *compl,
+ rxcp->pkt_type =
+ AMAP_GET_BITS(struct amap_eth_rx_compl_v1, cast_enc, compl);
+ rxcp->rss_hash =
+- AMAP_GET_BITS(struct amap_eth_rx_compl_v1, rsshash, rxcp);
++ AMAP_GET_BITS(struct amap_eth_rx_compl_v1, rsshash, compl);
+ if (rxcp->vlanf) {
+ rxcp->vtm = AMAP_GET_BITS(struct amap_eth_rx_compl_v1, vtm,
+ compl);
+@@ -1429,7 +1429,7 @@ static void be_parse_rx_compl_v0(struct be_eth_rx_compl *compl,
+ rxcp->pkt_type =
+ AMAP_GET_BITS(struct amap_eth_rx_compl_v0, cast_enc, compl);
+ rxcp->rss_hash =
+- AMAP_GET_BITS(struct amap_eth_rx_compl_v0, rsshash, rxcp);
++ AMAP_GET_BITS(struct amap_eth_rx_compl_v0, rsshash, compl);
+ if (rxcp->vlanf) {
+ rxcp->vtm = AMAP_GET_BITS(struct amap_eth_rx_compl_v0, vtm,
+ compl);
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/be2net/0071-netpoll-revert-6bdb7fe3104-and-fix-be_poll-instead.patch (from r19868, dists/sid/linux/debian/patches/features/all/be2net/0071-netpoll-revert-6bdb7fe3104-and-fix-be_poll-instead.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/be2net/0071-netpoll-revert-6bdb7fe3104-and-fix-be_poll-instead.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/be2net/0071-netpoll-revert-6bdb7fe3104-and-fix-be_poll-instead.patch)
@@ -0,0 +1,110 @@
+From ecc8aa51db91b113fd17027733636de37f2760e6 Mon Sep 17 00:00:00 2001
+From: Amerigo Wang <amwang at redhat.com>
+Date: Fri, 24 Aug 2012 21:41:11 +0000
+Subject: [PATCH 13/13] netpoll: revert 6bdb7fe3104 and fix be_poll() instead
+
+commit 072a9c48600409d72aeb0d5b29fbb75861a06631 upstream.
+
+Against -net.
+
+In the patch "netpoll: re-enable irq in poll_napi()", I tried to
+fix the following warning:
+
+[100718.051041] ------------[ cut here ]------------
+[100718.051048] WARNING: at kernel/softirq.c:159 local_bh_enable_ip+0x7d/0xb0()
+(Not tainted)
+[100718.051049] Hardware name: ProLiant BL460c G7
+...
+[100718.051068] Call Trace:
+[100718.051073] [<ffffffff8106b747>] ? warn_slowpath_common+0x87/0xc0
+[100718.051075] [<ffffffff8106b79a>] ? warn_slowpath_null+0x1a/0x20
+[100718.051077] [<ffffffff810747ed>] ? local_bh_enable_ip+0x7d/0xb0
+[100718.051080] [<ffffffff8150041b>] ? _spin_unlock_bh+0x1b/0x20
+[100718.051085] [<ffffffffa00ee974>] ? be_process_mcc+0x74/0x230 [be2net]
+[100718.051088] [<ffffffffa00ea68c>] ? be_poll_tx_mcc+0x16c/0x290 [be2net]
+[100718.051090] [<ffffffff8144fe76>] ? netpoll_poll_dev+0xd6/0x490
+[100718.051095] [<ffffffffa01d24a5>] ? bond_poll_controller+0x75/0x80 [bonding]
+[100718.051097] [<ffffffff8144fde5>] ? netpoll_poll_dev+0x45/0x490
+[100718.051100] [<ffffffff81161b19>] ? ksize+0x19/0x80
+[100718.051102] [<ffffffff81450437>] ? netpoll_send_skb_on_dev+0x157/0x240
+
+by reenabling IRQ before calling ->poll, but it seems more
+problems are introduced after that patch:
+
+http://ozlabs.org/~akpm/stuff/IMG_20120824_122054.jpg
+http://marc.info/?l=linux-netdev&m=134563282530588&w=2
+
+So it is safe to fix be2net driver code directly.
+
+This patch reverts the offending commit and fixes be_poll() by
+avoid disabling BH there, this is okay because be_poll()
+can be called either by poll_napi() which already disables
+IRQ, or by net_rx_action() which already disables BH.
+
+Reported-by: Andrew Morton <akpm at linux-foundation.org>
+Reported-by: Sylvain Munaut <s.munaut at whatever-company.com>
+Cc: Sylvain Munaut <s.munaut at whatever-company.com>
+Cc: Andrew Morton <akpm at linux-foundation.org>
+Cc: David Miller <davem at davemloft.net>
+Cc: Sathya Perla <sathya.perla at emulex.com>
+Cc: Subbu Seetharaman <subbu.seetharaman at emulex.com>
+Cc: Ajit Khaparde <ajit.khaparde at emulex.com>
+Signed-off-by: Cong Wang <amwang at redhat.com>
+Tested-by: Sylvain Munaut <s.munaut at whatever-company.com>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+[bwh: Restricted to drivers/net/ethernet/emulex/benet/; commit 6bdb7fe3104
+ has not been applied here]
+---
+ drivers/net/ethernet/emulex/benet/be_cmds.c | 6 ++++--
+ drivers/net/ethernet/emulex/benet/be_main.c | 2 ++
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/net/ethernet/emulex/benet/be_cmds.c b/drivers/net/ethernet/emulex/benet/be_cmds.c
+index 0757df4..5d42468 100644
+--- a/drivers/net/ethernet/emulex/benet/be_cmds.c
++++ b/drivers/net/ethernet/emulex/benet/be_cmds.c
+@@ -256,7 +256,7 @@ int be_process_mcc(struct be_adapter *adapter)
+ int num = 0, status = 0;
+ struct be_mcc_obj *mcc_obj = &adapter->mcc_obj;
+
+- spin_lock_bh(&adapter->mcc_cq_lock);
++ spin_lock(&adapter->mcc_cq_lock);
+ while ((compl = be_mcc_compl_get(adapter))) {
+ if (compl->flags & CQE_FLAGS_ASYNC_MASK) {
+ /* Interpret flags as an async trailer */
+@@ -277,7 +277,7 @@ int be_process_mcc(struct be_adapter *adapter)
+ if (num)
+ be_cq_notify(adapter, mcc_obj->cq.id, mcc_obj->rearm_cq, num);
+
+- spin_unlock_bh(&adapter->mcc_cq_lock);
++ spin_unlock(&adapter->mcc_cq_lock);
+ return status;
+ }
+
+@@ -292,7 +292,9 @@ static int be_mcc_wait_compl(struct be_adapter *adapter)
+ if (be_error(adapter))
+ return -EIO;
+
++ local_bh_disable();
+ status = be_process_mcc(adapter);
++ local_bh_enable();
+
+ if (atomic_read(&mcc_obj->q.used) == 0)
+ break;
+diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
+index 19307ad..3a21dda 100644
+--- a/drivers/net/ethernet/emulex/benet/be_main.c
++++ b/drivers/net/ethernet/emulex/benet/be_main.c
+@@ -3625,7 +3625,9 @@ static void be_worker(struct work_struct *work)
+ /* when interrupts are not yet enabled, just reap any pending
+ * mcc completions */
+ if (!netif_running(adapter->netdev)) {
++ local_bh_disable();
+ be_process_mcc(adapter);
++ local_bh_enable();
+ goto reschedule;
+ }
+
+--
+1.7.10.4
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/drivercore-Generalize-module_platform_driver.patch (from r19868, dists/sid/linux/debian/patches/features/all/drivercore-Generalize-module_platform_driver.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/drivercore-Generalize-module_platform_driver.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/drivercore-Generalize-module_platform_driver.patch)
@@ -0,0 +1,80 @@
+From: Lars-Peter Clausen <lars at metafoo.de>
+Date: Wed, 16 Nov 2011 10:13:35 +0100
+Subject: drivercore: Generalize module_platform_driver
+
+commit 907d0ed1c84114d4e8dafd66af982515d3739c90 upstream.
+
+This patch generalizes the module_platform_driver macro and introduces a new
+module_driver macro. The module_driver macro takes a driver name, a register
+and a unregister function for this driver type. Using these it construct the
+module init and exit sections which register and unregister the driver. Since
+such init/exit sections are commonly found in drivers this macro can be used
+to eliminate a lot of boilerplate code.
+
+The macro is not intended to be used by driver modules directly, instead it
+should be used to generate bus specific macros for registering drivers like
+the module_platform_driver macro.
+
+Signed-off-by: Lars-Peter Clausen <lars at metafoo.de>
+Acked-by: Grant Likely <grant.likely at secretlab.ca>
+Acked-by: Jonathan Cameron <jic23 at kernel.org>
+Acked-by: Wolfram Sang <w.sang at pengutronix.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
+---
+ include/linux/device.h | 21 +++++++++++++++++++++
+ include/linux/platform_device.h | 12 ++----------
+ 2 files changed, 23 insertions(+), 10 deletions(-)
+
+diff --git a/include/linux/device.h b/include/linux/device.h
+index c633598..341fb74 100644
+--- a/include/linux/device.h
++++ b/include/linux/device.h
+@@ -922,4 +922,25 @@ extern long sysfs_deprecated;
+ #define sysfs_deprecated 0
+ #endif
+
++/**
++ * module_driver() - Helper macro for drivers that don't do anything
++ * special in module init/exit. This eliminates a lot of boilerplate.
++ * Each module may only use this macro once, and calling it replaces
++ * module_init() and module_exit().
++ *
++ * Use this macro to construct bus specific macros for registering
++ * drivers, and do not use it on its own.
++ */
++#define module_driver(__driver, __register, __unregister) \
++static int __init __driver##_init(void) \
++{ \
++ return __register(&(__driver)); \
++} \
++module_init(__driver##_init); \
++static void __exit __driver##_exit(void) \
++{ \
++ __unregister(&(__driver)); \
++} \
++module_exit(__driver##_exit);
++
+ #endif /* _DEVICE_H_ */
+diff --git a/include/linux/platform_device.h b/include/linux/platform_device.h
+index 2a23f7d..165a8d1 100644
+--- a/include/linux/platform_device.h
++++ b/include/linux/platform_device.h
+@@ -196,16 +196,8 @@ static inline void platform_set_drvdata(struct platform_device *pdev, void *data
+ * calling it replaces module_init() and module_exit()
+ */
+ #define module_platform_driver(__platform_driver) \
+-static int __init __platform_driver##_init(void) \
+-{ \
+- return platform_driver_register(&(__platform_driver)); \
+-} \
+-module_init(__platform_driver##_init); \
+-static void __exit __platform_driver##_exit(void) \
+-{ \
+- platform_driver_unregister(&(__platform_driver)); \
+-} \
+-module_exit(__platform_driver##_exit);
++ module_driver(__platform_driver, platform_driver_register, \
++ platform_driver_unregister)
+
+ extern struct platform_device *platform_create_bundle(struct platform_driver *driver,
+ int (*probe)(struct platform_device *),
Copied: dists/squeeze-backports/linux/debian/patches/features/all/ethernet-define-eth_hw_addr_random.patch (from r19868, dists/sid/linux/debian/patches/features/all/ethernet-define-eth_hw_addr_random.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/ethernet-define-eth_hw_addr_random.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/ethernet-define-eth_hw_addr_random.patch)
@@ -0,0 +1,35 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Subject: ethernet: define eth_hw_add_random()
+Date: Mon, 28 Jan 2013 00:03:32 +0000
+Bug-Debian: http://bugs.debian.org/699129
+Forwarded: not-needed
+
+This was defined in commit 1a0d6ae5795c376bae6d012fb25e8341e4c6d5f2
+upstream, where it replaced dev_hw_addr_random(). Obviously we
+can't remove the latter.
+
+---
+--- a/include/linux/etherdevice.h
++++ b/include/linux/etherdevice.h
+@@ -154,6 +154,21 @@ static inline void dev_hw_addr_random(st
+ }
+
+ /**
++ * eth_hw_addr_random - Generate software assigned random Ethernet and
++ * set device flag
++ * @dev: pointer to net_device structure
++ *
++ * Generate a random Ethernet address (MAC) to be used by a net device
++ * and set addr_assign_type so the state can be read by sysfs and be
++ * used by userspace.
++ */
++static inline void eth_hw_addr_random(struct net_device *dev)
++{
++ dev->addr_assign_type |= NET_ADDR_RANDOM;
++ random_ether_addr(dev->dev_addr);
++}
++
++/**
+ * compare_ether_addr - Compare two Ethernet addresses
+ * @addr1: Pointer to a six-byte array containing the Ethernet address
+ * @addr2: Pointer other six-byte array containing the Ethernet address
Copied: dists/squeeze-backports/linux/debian/patches/features/all/net-define-netdev_features_t.patch (from r19868, dists/sid/linux/debian/patches/features/all/net-define-netdev_features_t.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/net-define-netdev_features_t.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/net-define-netdev_features_t.patch)
@@ -0,0 +1,20 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Subject: net: define netdev_features_t
+Date: Sun, 27 Jan 2013 23:59:43 +0000
+Bug-Debian: http://bugs.debian.org/699129
+Forwarded: not-needed
+
+This was added by commit c8f44affb7244f2ac3e703cab13d55ede27621bb upstream.
+
+---
+--- a/include/linux/netdevice.h
++++ b/include/linux/netdevice.h
+@@ -57,6 +57,8 @@ struct netpoll_info;
+ struct phy_device;
+ /* 802.11 specific */
+ struct wireless_dev;
++
++typedef u32 netdev_features_t;
+ /* source back-compat hooks */
+ #define SET_ETHTOOL_OPS(netdev,ops) \
+ ( (netdev)->ethtool_ops = (ops) )
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0001-Revert-workqueue-skip-nr_running-sanity-check-in-wor.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0001-Revert-workqueue-skip-nr_running-sanity-check-in-wor.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0001-Revert-workqueue-skip-nr_running-sanity-check-in-wor.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ea6e4ad49591661040e23bce514421555f9d8919 Mon Sep 17 00:00:00 2001
+From 4080ba071043dedf518dbf5f9f48cda2edd748d8 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <srostedt at redhat.com>
Date: Wed, 6 Jun 2012 17:07:34 -0400
-Subject: [PATCH 001/290] Revert "workqueue: skip nr_running sanity check in
+Subject: [PATCH 001/304] Revert "workqueue: skip nr_running sanity check in
worker_enter_idle() if trustee is active"
This reverts commit 5d79c6f64a904afc92a329f80abe693e3ae105fe.
@@ -14,7 +14,7 @@
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index d551d5f..d4cd6dc 100644
+index 7bf068a..c58e142 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -1215,13 +1215,8 @@ static void worker_enter_idle(struct worker *worker)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0002-x86-Call-idle-notifier-after-irq_enter.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0002-x86-Call-idle-notifier-after-irq_enter.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0002-x86-Call-idle-notifier-after-irq_enter.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b66f93bb674b1c58310aab96c5e3b5f540d8490b Mon Sep 17 00:00:00 2001
+From 04e888e86193098bba652b67b12361ce38032881 Mon Sep 17 00:00:00 2001
From: Frederic Weisbecker <fweisbec at gmail.com>
Date: Mon, 26 Sep 2011 12:19:11 +0200
-Subject: [PATCH 002/290] x86: Call idle notifier after irq_enter()
+Subject: [PATCH 002/304] x86: Call idle notifier after irq_enter()
Interrupts notify the idle exit state before calling irq_enter(). But
the notifier code calls rcu_read_lock() and this is not allowed while
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0003-slab-lockdep-Annotate-all-slab-caches.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0003-slab-lockdep-Annotate-all-slab-caches.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0003-slab-lockdep-Annotate-all-slab-caches.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From c8e9305887e030146f2272a83bfcca0e0b7302c4 Mon Sep 17 00:00:00 2001
+From 15ee71d300baed7e5a2bcd9dee6d6db4a55479ce Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Mon, 28 Nov 2011 19:51:51 +0100
-Subject: [PATCH 003/290] slab, lockdep: Annotate all slab caches
+Subject: [PATCH 003/304] slab, lockdep: Annotate all slab caches
Currently we only annotate the kmalloc caches, annotate all of them.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0004-x86-kprobes-Remove-remove-bogus-preempt_enable.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0004-x86-kprobes-Remove-remove-bogus-preempt_enable.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0004-x86-kprobes-Remove-remove-bogus-preempt_enable.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ce7afcfce4f89e045ea64126b6ca30278b677aa9 Mon Sep 17 00:00:00 2001
+From 85b24d758843cf9ffaca854e64c5cd2f98427a4d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 17 Mar 2011 11:02:15 +0100
-Subject: [PATCH 004/290] x86: kprobes: Remove remove bogus preempt_enable
+Subject: [PATCH 004/304] x86: kprobes: Remove remove bogus preempt_enable
The CONFIG_PREEMPT=n section of setup_singlestep() contains:
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0005-x86-hpet-Disable-MSI-on-Lenovo-W510.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0005-x86-hpet-Disable-MSI-on-Lenovo-W510.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0005-x86-hpet-Disable-MSI-on-Lenovo-W510.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b2ec496ca91b2ead43c09273eff3f1b8ac35d88f Mon Sep 17 00:00:00 2001
+From 721f7f35c51196324b16e35a15e8483cab45315c Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 30 Sep 2011 20:03:37 +0200
-Subject: [PATCH 005/290] x86: hpet: Disable MSI on Lenovo W510
+Subject: [PATCH 005/304] x86: hpet: Disable MSI on Lenovo W510
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 @@
1 file changed, 27 insertions(+)
diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
-index 1bb0bf4..d86b821 100644
+index 4970ef0..424ae2e 100644
--- a/arch/x86/kernel/hpet.c
+++ b/arch/x86/kernel/hpet.c
@@ -9,6 +9,7 @@
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0006-block-Shorten-interrupt-disabled-regions.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0006-block-Shorten-interrupt-disabled-regions.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0006-block-Shorten-interrupt-disabled-regions.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From df8e6bc90b3e71e486cf294ffc449c1f1b5a6260 Mon Sep 17 00:00:00 2001
+From d6cb4a7e84ec7796720e3ba60594ee6a9de2f716 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 22 Jun 2011 19:47:02 +0200
-Subject: [PATCH 006/290] block: Shorten interrupt disabled regions
+Subject: [PATCH 006/304] block: Shorten interrupt disabled regions
Moving the blk_sched_flush_plug() call out of the interrupt/preempt
disabled region in the scheduler allows us to replace
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0007-sched-Distangle-worker-accounting-from-rq-3Elock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0007-sched-Distangle-worker-accounting-from-rq-3Elock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0007-sched-Distangle-worker-accounting-from-rq-3Elock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 4d2e79aae8a840be19113e71229087feadccc501 Mon Sep 17 00:00:00 2001
+From b8a07f6476c04d864ad002f1ac713abbda608d3d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 22 Jun 2011 19:47:03 +0200
-Subject: [PATCH 007/290] sched: Distangle worker accounting from rq-%3Elock
+Subject: [PATCH 007/304] sched: Distangle worker accounting from rq-%3Elock
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,7 +30,7 @@
3 files changed, 47 insertions(+), 91 deletions(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index fcc893f..b14949d 100644
+index eeeec4e..561aa10 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -2640,10 +2640,6 @@ static void ttwu_activate(struct rq *rq, struct task_struct *p, int en_flags)
@@ -85,7 +85,7 @@
* wake_up_process - Wake up a specific process
* @p: The process to be woken up.
*
-@@ -4612,19 +4574,6 @@ need_resched:
+@@ -4613,19 +4575,6 @@ need_resched:
} else {
deactivate_task(rq, prev, DEQUEUE_SLEEP);
prev->on_rq = 0;
@@ -105,7 +105,7 @@
}
switch_count = &prev->nvcsw;
}
-@@ -4667,6 +4616,14 @@ static inline void sched_submit_work(struct task_struct *tsk)
+@@ -4668,6 +4617,14 @@ static inline void sched_submit_work(struct task_struct *tsk)
{
if (!tsk->state)
return;
@@ -120,7 +120,7 @@
/*
* If we are going to sleep and we have plugged IO queued,
* make sure to submit it to avoid deadlocks.
-@@ -4675,12 +4632,19 @@ static inline void sched_submit_work(struct task_struct *tsk)
+@@ -4676,12 +4633,19 @@ static inline void sched_submit_work(struct task_struct *tsk)
blk_schedule_flush_plug(tsk);
}
@@ -141,7 +141,7 @@
EXPORT_SYMBOL(schedule);
diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index d4cd6dc..edf509e 100644
+index c58e142..1c16faf 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -137,6 +137,7 @@ struct worker {
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0008-mips-enable-interrupts-in-signal.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0008-mips-enable-interrupts-in-signal.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0008-mips-enable-interrupts-in-signal.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 79039a689141046a11e595777dc6362110cde8ec Mon Sep 17 00:00:00 2001
+From 708c67b6892ce21a838b8bc6c6da937dea49b30b Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 18 Jul 2011 21:32:10 +0200
-Subject: [PATCH 008/290] mips-enable-interrupts-in-signal.patch
+Subject: [PATCH 008/304] mips-enable-interrupts-in-signal.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0009-arm-enable-interrupts-in-signal-code.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0009-arm-enable-interrupts-in-signal-code.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0009-arm-enable-interrupts-in-signal-code.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ac4f5e4f9f5181f7a8a6a52d6f976799d75659be Mon Sep 17 00:00:00 2001
+From 16f05de8665ad363ee70ff967cbc2af50c4c42fb Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 16 Jul 2011 16:27:13 +0200
-Subject: [PATCH 009/290] arm-enable-interrupts-in-signal-code.patch
+Subject: [PATCH 009/304] arm-enable-interrupts-in-signal-code.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0010-powerpc-85xx-Mark-cascade-irq-IRQF_NO_THREAD.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0010-powerpc-85xx-Mark-cascade-irq-IRQF_NO_THREAD.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0010-powerpc-85xx-Mark-cascade-irq-IRQF_NO_THREAD.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From dc7359687dac1153e0ab68d2d9882553bf50c7f4 Mon Sep 17 00:00:00 2001
+From 239e65cf297bd8c459dabff7b137eba58b949240 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 16 Jul 2011 12:09:54 +0200
-Subject: [PATCH 010/290] powerpc: 85xx: Mark cascade irq IRQF_NO_THREAD
+Subject: [PATCH 010/304] powerpc: 85xx: Mark cascade irq IRQF_NO_THREAD
Cascade interrupt must run in hard interrupt context.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0011-powerpc-wsp-Mark-opb-cascade-handler-IRQF_NO_THREAD.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0011-powerpc-wsp-Mark-opb-cascade-handler-IRQF_NO_THREAD.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0011-powerpc-wsp-Mark-opb-cascade-handler-IRQF_NO_THREAD.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6d7dd39f6335cb7062f59c547baf5b611a51ba69 Mon Sep 17 00:00:00 2001
+From e3a3d66e062a9e30a03cd2c4d8723475200c9f43 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 5 Oct 2011 14:11:24 +0200
-Subject: [PATCH 011/290] powerpc: wsp: Mark opb cascade handler
+Subject: [PATCH 011/304] powerpc: wsp: Mark opb cascade handler
IRQF_NO_THREAD
Cascade handlers must run in hard interrupt context.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0012-powerpc-Mark-IPI-interrupts-IRQF_NO_THREAD.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0012-powerpc-Mark-IPI-interrupts-IRQF_NO_THREAD.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0012-powerpc-Mark-IPI-interrupts-IRQF_NO_THREAD.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 510abbf86c541d1f9b46333fe77f22ddf8323da8 Mon Sep 17 00:00:00 2001
+From 8a890ac5641bdc42156f29b4bf132e4405363ca1 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 5 Oct 2011 14:00:26 +0200
-Subject: [PATCH 012/290] powerpc: Mark IPI interrupts IRQF_NO_THREAD
+Subject: [PATCH 012/304] powerpc: Mark IPI interrupts IRQF_NO_THREAD
IPI handlers cannot be threaded. Remove the obsolete IRQF_DISABLED
flag (see commit e58aa3d2) while at it.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0013-powerpc-Allow-irq-threading.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0013-powerpc-Allow-irq-threading.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0013-powerpc-Allow-irq-threading.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b9a0b67f80b4f9d9ac658a8350731948c3a80aa9 Mon Sep 17 00:00:00 2001
+From d7835b602a6890bc13f052626f40d29675b4cab6 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 16 Jul 2011 13:16:24 +0200
-Subject: [PATCH 013/290] powerpc: Allow irq threading
+Subject: [PATCH 013/304] powerpc: Allow irq threading
All interrupts which must be non threaded are marked
IRQF_NO_THREAD. So it's safe to allow force threaded handlers.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0014-sched-Keep-period-timer-ticking-when-throttling-acti.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0014-sched-Keep-period-timer-ticking-when-throttling-acti.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0014-sched-Keep-period-timer-ticking-when-throttling-acti.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 3b8be90db2c3d00d4b2f0cc51969f826da209ca7 Mon Sep 17 00:00:00 2001
+From 953da6243e3f0efd29dc975590e4a5d7788cfce7 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <peterz at infradead.org>
Date: Tue, 18 Oct 2011 22:03:48 +0200
-Subject: [PATCH 014/290] sched: Keep period timer ticking when throttling
+Subject: [PATCH 014/304] sched: Keep period timer ticking when throttling
active
When a runqueue is throttled we cannot disable the period timer
@@ -18,7 +18,7 @@
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c
-index 78fcacf..40d97e1 100644
+index 6ad4fb3..b7a4c72 100644
--- a/kernel/sched_rt.c
+++ b/kernel/sched_rt.c
@@ -580,12 +580,9 @@ static inline int balance_runtime(struct rt_rq *rt_rq)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0015-sched-Do-not-throttle-due-to-PI-boosting.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0015-sched-Do-not-throttle-due-to-PI-boosting.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0015-sched-Do-not-throttle-due-to-PI-boosting.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 77958edbe07bb0c4aa2db2e29c0f63425af01ff8 Mon Sep 17 00:00:00 2001
+From f0ae682e1fa8444b95e4fde76ab2389583b774fd Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <peterz at infradead.org>
Date: Tue, 18 Oct 2011 22:03:48 +0200
-Subject: [PATCH 015/290] sched: Do not throttle due to PI boosting
+Subject: [PATCH 015/304] sched: Do not throttle due to PI boosting
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 @@
1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c
-index 40d97e1..c108b9c 100644
+index b7a4c72..5806f48 100644
--- a/kernel/sched_rt.c
+++ b/kernel/sched_rt.c
@@ -659,8 +659,24 @@ static int sched_rt_runtime_exceeded(struct rt_rq *rt_rq)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0016-time-Remove-bogus-comments.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0016-time-Remove-bogus-comments.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0016-time-Remove-bogus-comments.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 8d745218c6e06b472bdec5e3e9a5c9465f780dae Mon Sep 17 00:00:00 2001
+From 3c033bdfe750cfc8a3c7f94820a97b16233276bc Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 28 Feb 2012 19:06:50 +0100
-Subject: [PATCH 016/290] time: Remove bogus comments
+Subject: [PATCH 016/304] time: Remove bogus comments
There is no global irq lock which makes a syscall magically SMP
safe. Remove the outdated comment concerning do_settimeofday() as
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0017-x86-vdso-Remove-bogus-locking-in-update_vsyscall_tz.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0017-x86-vdso-Remove-bogus-locking-in-update_vsyscall_tz.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0017-x86-vdso-Remove-bogus-locking-in-update_vsyscall_tz.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 1b84555bdb2ad642f64bed2630ae347f0c722931 Mon Sep 17 00:00:00 2001
+From 1f067852069d9d3b511a50d7df1602a298d2b936 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 28 Feb 2012 19:10:46 +0100
-Subject: [PATCH 017/290] x86: vdso: Remove bogus locking in
+Subject: [PATCH 017/304] x86: vdso: Remove bogus locking in
update_vsyscall_tz()
Changing the sequence count in update_vsyscall_tz() is completely
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0018-x86-vdso-Use-seqcount-instead-of-seqlock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0018-x86-vdso-Use-seqcount-instead-of-seqlock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0018-x86-vdso-Use-seqcount-instead-of-seqlock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 3761dc814666ff128f472e531bcb848486a88060 Mon Sep 17 00:00:00 2001
+From a58bf9f435b1f3232a9352c901d3fcec4ef9aaec Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 28 Feb 2012 18:24:07 +0100
-Subject: [PATCH 018/290] x86: vdso: Use seqcount instead of seqlock
+Subject: [PATCH 018/304] x86: vdso: Use seqcount instead of seqlock
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.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0019-ia64-vsyscall-Use-seqcount-instead-of-seqlock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0019-ia64-vsyscall-Use-seqcount-instead-of-seqlock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0019-ia64-vsyscall-Use-seqcount-instead-of-seqlock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 0b33db6008ee0ce9ed479a6bfb21a2b175c080ae Mon Sep 17 00:00:00 2001
+From fb7e566b34aeda0f8cccc09ab40f451384f7ccc6 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 28 Feb 2012 18:33:08 +0100
-Subject: [PATCH 019/290] ia64: vsyscall: Use seqcount instead of seqlock
+Subject: [PATCH 019/304] ia64: vsyscall: Use seqcount instead of seqlock
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.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0020-seqlock-Remove-unused-functions.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0020-seqlock-Remove-unused-functions.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0020-seqlock-Remove-unused-functions.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7ecd541e5a0296832308c31dcb6f99dade707d7f Mon Sep 17 00:00:00 2001
+From 30ae17158a129813c5dfed6301b61c5e744e6ed5 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 16 Jul 2011 18:38:22 +0200
-Subject: [PATCH 020/290] seqlock: Remove unused functions
+Subject: [PATCH 020/304] seqlock: Remove unused functions
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0021-seqlock-Use-seqcount.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0021-seqlock-Use-seqcount.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0021-seqlock-Use-seqcount.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From c276172f7c02cf97f795110da555df9af6ce3d51 Mon Sep 17 00:00:00 2001
+From dab1ad0a7d594d634d6253e08ba30e12c3f1b0dd Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 16 Jul 2011 18:40:26 +0200
-Subject: [PATCH 021/290] seqlock: Use seqcount
+Subject: [PATCH 021/304] seqlock: Use seqcount
No point in having different implementations for the same thing.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0022-vfs-fs_struct-Move-code-out-of-seqcount-write-sectio.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0022-vfs-fs_struct-Move-code-out-of-seqcount-write-sectio.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0022-vfs-fs_struct-Move-code-out-of-seqcount-write-sectio.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 82d0bcb55fccb359d5d614ce3ae324a0e7400716 Mon Sep 17 00:00:00 2001
+From 47a3a34ec251a566d97646774193e1789eb20220 Mon Sep 17 00:00:00 2001
From: Al Viro <viro at ZenIV.linux.org.uk>
Date: Thu, 15 Mar 2012 18:39:40 +0000
-Subject: [PATCH 022/290] vfs: fs_struct: Move code out of seqcount write
+Subject: [PATCH 022/304] vfs: fs_struct: Move code out of seqcount write
sections
RT cannot disable preemption in the seqcount write sections due to
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0023-timekeeping-Split-xtime_lock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0023-timekeeping-Split-xtime_lock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0023-timekeeping-Split-xtime_lock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 11b2de76eb35bf00d7ca580b4d416ab34e1b9fb9 Mon Sep 17 00:00:00 2001
+From 651c5b6726811ee25051054e0c3a240f93a4e79d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 1 Mar 2012 15:14:06 +0100
-Subject: [PATCH 023/290] timekeeping: Split xtime_lock
+Subject: [PATCH 023/304] timekeeping: Split xtime_lock
xtime_lock is going to be split apart in mainline, so we can shorten
the seqcount protected regions and avoid updating seqcount in some
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0024-intel_idle-Convert-i7300_idle_lock-to-raw-spinlock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0024-intel_idle-Convert-i7300_idle_lock-to-raw-spinlock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0024-intel_idle-Convert-i7300_idle_lock-to-raw-spinlock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e013f4a5f92aae2d72d4f3fba4701539dc410e06 Mon Sep 17 00:00:00 2001
+From 8808660b00a60ce093b5124280f23335745338af Mon Sep 17 00:00:00 2001
From: Mike Galbraith <efault at gmx.de>
Date: Wed, 7 Dec 2011 12:48:42 +0100
-Subject: [PATCH 024/290] intel_idle: Convert i7300_idle_lock to raw spinlock
+Subject: [PATCH 024/304] intel_idle: Convert i7300_idle_lock to raw spinlock
24 core Intel box's first exposure to 3.0.12-rt30-rc3 didn't go well.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0025-mm-memcg-shorten-preempt-disabled-section-around-eve.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0025-mm-memcg-shorten-preempt-disabled-section-around-eve.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0025-mm-memcg-shorten-preempt-disabled-section-around-eve.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a1d306ef17cf30e67787e51099ed6112bddb118f Mon Sep 17 00:00:00 2001
+From 251d1e06396395531e508ac1b27a8521f6fa5a87 Mon Sep 17 00:00:00 2001
From: Johannes Weiner <hannes at cmpxchg.org>
Date: Thu, 17 Nov 2011 07:49:25 +0100
-Subject: [PATCH 025/290] mm: memcg: shorten preempt-disabled section around
+Subject: [PATCH 025/304] mm: memcg: shorten preempt-disabled section around
event checks
Only the ratelimit checks themselves have to run with preemption
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0026-tracing-Account-for-preempt-off-in-preempt_schedule.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0026-tracing-Account-for-preempt-off-in-preempt_schedule.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0026-tracing-Account-for-preempt-off-in-preempt_schedule.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From bf092f7183122bd5bcd3f41cd32eb51c5a7ffebc Mon Sep 17 00:00:00 2001
+From d95e6628fd3943310c74412d5bfec78b29350c96 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Thu, 29 Sep 2011 12:24:30 -0500
-Subject: [PATCH 026/290] tracing: Account for preempt off in
+Subject: [PATCH 026/304] tracing: Account for preempt off in
preempt_schedule()
The preempt_schedule() uses the preempt_disable_notrace() version
@@ -28,10 +28,10 @@
1 file changed, 9 insertions(+)
diff --git a/kernel/sched.c b/kernel/sched.c
-index b14949d..3bcda08 100644
+index 561aa10..03004b0 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4712,7 +4712,16 @@ asmlinkage void __sched notrace preempt_schedule(void)
+@@ -4713,7 +4713,16 @@ asmlinkage void __sched notrace preempt_schedule(void)
do {
add_preempt_count_notrace(PREEMPT_ACTIVE);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0027-signal-revert-ptrace-preempt-magic.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0027-signal-revert-ptrace-preempt-magic.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0027-signal-revert-ptrace-preempt-magic.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7b54250678eb69d75e9d9c27feb66bc3ae0e2502 Mon Sep 17 00:00:00 2001
+From 400e756cce250e3d3fa5080873286dfe3828eebc Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 21 Sep 2011 19:57:12 +0200
-Subject: [PATCH 027/290] signal-revert-ptrace-preempt-magic.patch
+Subject: [PATCH 027/304] signal-revert-ptrace-preempt-magic.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,10 +9,10 @@
1 file changed, 8 deletions(-)
diff --git a/kernel/signal.c b/kernel/signal.c
-index 08e0b97..9b6bd34 100644
+index d2f55ea..6a6dd0a 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
-@@ -1866,15 +1866,7 @@ static void ptrace_stop(int exit_code, int why, int clear_code, siginfo_t *info)
+@@ -1864,15 +1864,7 @@ static void ptrace_stop(int exit_code, int why, int clear_code, siginfo_t *info)
if (gstop_done && ptrace_reparented(current))
do_notify_parent_cldstop(current, false, why);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0028-arm-Mark-pmu-interupt-IRQF_NO_THREAD.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0028-arm-Mark-pmu-interupt-IRQF_NO_THREAD.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0028-arm-Mark-pmu-interupt-IRQF_NO_THREAD.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From cb21c7446536f3bd70d0b854ef301a48e2577f2d Mon Sep 17 00:00:00 2001
+From 6d14c31a815a39dfcbdbea599e1267744ff8b639 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 16 Mar 2011 14:45:31 +0100
-Subject: [PATCH 028/290] arm: Mark pmu interupt IRQF_NO_THREAD
+Subject: [PATCH 028/304] arm: Mark pmu interupt IRQF_NO_THREAD
PMU interrupt must not be threaded. Remove IRQF_DISABLED while at it
as we run all handlers with interrupts disabled anyway.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0029-arm-Allow-forced-irq-threading.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0029-arm-Allow-forced-irq-threading.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0029-arm-Allow-forced-irq-threading.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From dbbfb34249d163dfd6d496c7efd9d210f8f77886 Mon Sep 17 00:00:00 2001
+From c2978053947a93982770e496b026f092b91414d9 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 16 Jul 2011 13:15:20 +0200
-Subject: [PATCH 029/290] arm: Allow forced irq threading
+Subject: [PATCH 029/304] arm: Allow forced irq threading
All timer interrupts and the perf interrupt are marked NO_THREAD, so
its safe to allow forced interrupt threading.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0030-preempt-rt-Convert-arm-boot_lock-to-raw.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0030-preempt-rt-Convert-arm-boot_lock-to-raw.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0030-preempt-rt-Convert-arm-boot_lock-to-raw.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 9683bce6c11e167cdb8d66ccec5f94ee9539ec80 Mon Sep 17 00:00:00 2001
+From 373b5a215176a58339eb28f0dfc054869081466e Mon Sep 17 00:00:00 2001
From: Frank Rowand <frank.rowand at am.sony.com>
Date: Mon, 19 Sep 2011 14:51:14 -0700
-Subject: [PATCH 030/290] preempt-rt: Convert arm boot_lock to raw
+Subject: [PATCH 030/304] preempt-rt: Convert arm boot_lock to raw
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.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0031-sched-Create-schedule_preempt_disabled.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0031-sched-Create-schedule_preempt_disabled.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0031-sched-Create-schedule_preempt_disabled.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From fd42c439e0c6c68c58408eed999f6e421da33554 Mon Sep 17 00:00:00 2001
+From 6b2821a7378751a201db2bb689e13ae561758854 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 21 Mar 2011 12:09:35 +0100
-Subject: [PATCH 031/290] sched: Create schedule_preempt_disabled()
+Subject: [PATCH 031/304] sched: Create schedule_preempt_disabled()
Get rid of the ever repeating:
@@ -16,7 +16,7 @@
2 files changed, 13 insertions(+)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 1e86bb4..f618dc8 100644
+index 8204898..f0f761f 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 @@
struct nsproxy;
diff --git a/kernel/sched.c b/kernel/sched.c
-index 3bcda08..eeebee9 100644
+index 03004b0..83f1c88 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4648,6 +4648,18 @@ asmlinkage void __sched schedule(void)
+@@ -4649,6 +4649,18 @@ asmlinkage void __sched schedule(void)
}
EXPORT_SYMBOL(schedule);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0032-sched-Use-schedule_preempt_disabled.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0032-sched-Use-schedule_preempt_disabled.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0032-sched-Use-schedule_preempt_disabled.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From afdfe6c148c59035a816f596d83449ff70e8440b Mon Sep 17 00:00:00 2001
+From e6b84f28260590a7645ee75fdf2510647f54ff5a Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 21 Mar 2011 12:33:18 +0100
-Subject: [PATCH 032/290] sched: Use schedule_preempt_disabled()
+Subject: [PATCH 032/304] sched: Use schedule_preempt_disabled()
Coccinelle based conversion.
@@ -203,10 +203,10 @@
}
}
diff --git a/arch/mips/kernel/process.c b/arch/mips/kernel/process.c
-index c47f96e..4dbf66d 100644
+index bf128d7..b476ace 100644
--- a/arch/mips/kernel/process.c
+++ b/arch/mips/kernel/process.c
-@@ -78,9 +78,7 @@ void __noreturn cpu_idle(void)
+@@ -76,9 +76,7 @@ void __noreturn cpu_idle(void)
play_dead();
#endif
tick_nohz_restart_sched_tick();
@@ -449,7 +449,7 @@
}
diff --git a/init/main.c b/init/main.c
-index cb08fea2..d30d42a 100644
+index 5d0eb1d..feda146 100644
--- a/init/main.c
+++ b/init/main.c
@@ -378,11 +378,8 @@ static noinline void __init_refok rest_init(void)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0033-signals-Do-not-wakeup-self.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0033-signals-Do-not-wakeup-self.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0033-signals-Do-not-wakeup-self.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,27 +1,28 @@
-From e6fc8965401f4efe4f9edde961b403417ab6b517 Mon Sep 17 00:00:00 2001
+From 030f38fae76c1766401fca464a1c8a240be9b3fe Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 3 Jul 2009 08:44:44 -0500
-Subject: [PATCH 033/290] signals: Do not wakeup self
+Subject: [PATCH 033/304] signals: Do not wakeup self
Signals which are delivered by current to current can do without
waking up current :)
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
- kernel/signal.c | 3 +++
- 1 file changed, 3 insertions(+)
+ kernel/signal.c | 4 ++++
+ 1 file changed, 4 insertions(+)
diff --git a/kernel/signal.c b/kernel/signal.c
-index 9b6bd34..fffb683 100644
+index 6a6dd0a..e57ae6b 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
-@@ -682,6 +682,9 @@ void signal_wake_up(struct task_struct *t, int resume)
-
+@@ -679,6 +679,10 @@ int dequeue_signal(struct task_struct *tsk, sigset_t *mask, siginfo_t *info)
+ void signal_wake_up_state(struct task_struct *t, unsigned int state)
+ {
set_tsk_thread_flag(t, TIF_SIGPENDING);
-
++
+ if (unlikely(t == current))
+ return;
+
/*
- * For SIGKILL, we want to wake it up in the stopped/traced/killable
+ * TASK_WAKEKILL also means wake it up in the stopped/traced/killable
* case. We don't check t->state here because there is a race with it
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0034-posix-timers-Prevent-broadcast-signals.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0034-posix-timers-Prevent-broadcast-signals.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0034-posix-timers-Prevent-broadcast-signals.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 45e801dc0173bcf86ab99349bb1d76f5d3d4056b Mon Sep 17 00:00:00 2001
+From 6ebb8f5810a30ce5b3088fde1b8ae7ab012ea536 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 3 Jul 2009 08:29:20 -0500
-Subject: [PATCH 034/290] posix-timers: Prevent broadcast signals
+Subject: [PATCH 034/304] posix-timers: Prevent broadcast signals
Posix timers should not send broadcast signals and kernel only
signals. Prevent it.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0035-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0035-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0035-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From c1797080a92a0d815cd8c75e4d49e546e68c6fcb Mon Sep 17 00:00:00 2001
+From ba43b4f4c87499a38d459f0cdc73922c5ffc266b Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 3 Jul 2009 08:44:56 -0500
-Subject: [PATCH 035/290] signals: Allow rt tasks to cache one sigqueue struct
+Subject: [PATCH 035/304] signals: Allow rt tasks to cache one sigqueue struct
To avoid allocation allow rt tasks to cache one sigqueue struct in
task struct.
@@ -16,7 +16,7 @@
5 files changed, 83 insertions(+), 5 deletions(-)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index f618dc8..814d47a 100644
+index f0f761f..67663c2 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1391,6 +1391,7 @@ struct task_struct {
@@ -53,10 +53,10 @@
spin_unlock(&sighand->siglock);
diff --git a/kernel/fork.c b/kernel/fork.c
-index 222457a..d1c6b43 100644
+index ce0c182..c1355fb 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
-@@ -1139,6 +1139,7 @@ static struct task_struct *copy_process(unsigned long clone_flags,
+@@ -1138,6 +1138,7 @@ static struct task_struct *copy_process(unsigned long clone_flags,
spin_lock_init(&p->alloc_lock);
init_sigpending(&p->pending);
@@ -65,7 +65,7 @@
p->utime = cputime_zero;
p->stime = cputime_zero;
diff --git a/kernel/signal.c b/kernel/signal.c
-index fffb683..92c5605 100644
+index e57ae6b..4a198ce 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -344,13 +344,45 @@ static bool task_participate_group_stop(struct task_struct *task)
@@ -203,7 +203,7 @@
/* We only dequeue private signals from ourselves, we don't let
* signalfd steal them
*/
-@@ -1518,7 +1592,8 @@ EXPORT_SYMBOL(kill_pid);
+@@ -1513,7 +1587,8 @@ EXPORT_SYMBOL(kill_pid);
*/
struct sigqueue *sigqueue_alloc(void)
{
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0036-signal-x86-Delay-calling-signals-in-atomic.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0036-signal-x86-Delay-calling-signals-in-atomic.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0036-signal-x86-Delay-calling-signals-in-atomic.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 2a2d15492729d0cfa6821439f1febc57ea6586dd Mon Sep 17 00:00:00 2001
+From 95e7299a51d9415ce8e4f7ffb7568c83ab9fbc65 Mon Sep 17 00:00:00 2001
From: Oleg Nesterov <oleg at redhat.com>
Date: Tue, 10 Apr 2012 14:33:53 -0400
-Subject: [PATCH 036/290] signal/x86: Delay calling signals in atomic
+Subject: [PATCH 036/304] signal/x86: Delay calling signals in atomic
On x86_64 we must disable preemption before we enable interrupts
for stack faults, int3 and debugging, because the current task is using
@@ -81,7 +81,7 @@
if (thread_info_flags & _TIF_SIGPENDING)
do_signal(regs);
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 814d47a..3795654 100644
+index 67663c2..8cb5ff4 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1396,6 +1396,10 @@ struct task_struct {
@@ -96,10 +96,10 @@
unsigned long sas_ss_sp;
size_t sas_ss_size;
diff --git a/kernel/signal.c b/kernel/signal.c
-index 92c5605..385d137 100644
+index 4a198ce..cb0eab2 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
-@@ -1273,8 +1273,8 @@ int do_send_sig_info(int sig, struct siginfo *info, struct task_struct *p,
+@@ -1268,8 +1268,8 @@ int do_send_sig_info(int sig, struct siginfo *info, struct task_struct *p,
* We don't want to have recursive SIGSEGV's etc, for example,
* that is why we also clear SIGNAL_UNKILLABLE.
*/
@@ -110,7 +110,7 @@
{
unsigned long int flags;
int ret, blocked, ignored;
-@@ -1299,6 +1299,39 @@ force_sig_info(int sig, struct siginfo *info, struct task_struct *t)
+@@ -1294,6 +1294,39 @@ force_sig_info(int sig, struct siginfo *info, struct task_struct *t)
return ret;
}
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0037-generic-Use-raw-local-irq-variant-for-generic-cmpxch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0037-generic-Use-raw-local-irq-variant-for-generic-cmpxch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0037-generic-Use-raw-local-irq-variant-for-generic-cmpxch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 8de69317e7b20195c21f6369b380913ee6e62285 Mon Sep 17 00:00:00 2001
+From b1445fb4d3e88a1ae0ce07a774810d67665f7f5c Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:30 -0500
-Subject: [PATCH 037/290] generic: Use raw local irq variant for generic
+Subject: [PATCH 037/304] generic: Use raw local irq variant for generic
cmpxchg
No point in tracing those.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0038-drivers-random-Reduce-preempt-disabled-region.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0038-drivers-random-Reduce-preempt-disabled-region.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0038-drivers-random-Reduce-preempt-disabled-region.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7f6991667918771ea7b7c4b595493e2c4e58ea6a Mon Sep 17 00:00:00 2001
+From 2ab3a7466cb200dd2b9f5429056897bfaaa0e926 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:30 -0500
-Subject: [PATCH 038/290] drivers: random: Reduce preempt disabled region
+Subject: [PATCH 038/304] drivers: random: Reduce preempt disabled region
No need to keep preemption disabled across the whole function.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0039-ARM-AT91-PIT-Remove-irq-handler-when-clock-event-is-.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0039-ARM-AT91-PIT-Remove-irq-handler-when-clock-event-is-.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0039-ARM-AT91-PIT-Remove-irq-handler-when-clock-event-is-.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6fb6480c2cb655d056bf84808dbdd38d6bc25158 Mon Sep 17 00:00:00 2001
+From 2e274c61568f55e2e864014e2212d46b50563477 Mon Sep 17 00:00:00 2001
From: Benedikt Spranger <b.spranger at linutronix.de>
Date: Sat, 6 Mar 2010 17:47:10 +0100
-Subject: [PATCH 039/290] ARM: AT91: PIT: Remove irq handler when clock event
+Subject: [PATCH 039/304] ARM: AT91: PIT: Remove irq handler when clock event
is unused
Setup and remove the interrupt handler in clock event mode selection.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0040-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0040-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0040-clocksource-TCLIB-Allow-higher-clock-rates-for-clock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 42145ac25ca2a5a029552a0e13e52f0b42994154 Mon Sep 17 00:00:00 2001
+From 182e525c72fbd5ff6736f5b8c469074386279bb9 Mon Sep 17 00:00:00 2001
From: Benedikt Spranger <b.spranger at linutronix.de>
Date: Mon, 8 Mar 2010 18:57:04 +0100
-Subject: [PATCH 040/290] clocksource: TCLIB: Allow higher clock rates for
+Subject: [PATCH 040/304] clocksource: TCLIB: Allow higher clock rates for
clock events
As default the TCLIB uses the 32KiHz base clock rate for clock events.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0041-drivers-net-tulip_remove_one-needs-to-call-pci_disab.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0041-drivers-net-tulip_remove_one-needs-to-call-pci_disab.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0041-drivers-net-tulip_remove_one-needs-to-call-pci_disab.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 011a96967f9c5e53adf1ac0932c53d7c40c20b62 Mon Sep 17 00:00:00 2001
+From e662343f9b2b9d59ac2c91c1ac189f57a1e52fd9 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:18 -0500
-Subject: [PATCH 041/290] drivers/net: tulip_remove_one needs to call
+Subject: [PATCH 041/304] drivers/net: tulip_remove_one needs to call
pci_disable_device()
Otherwise the device is not completely shut down.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0042-drivers-net-Use-disable_irq_nosync-in-8139too.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0042-drivers-net-Use-disable_irq_nosync-in-8139too.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0042-drivers-net-Use-disable_irq_nosync-in-8139too.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f918a1b81cb1fd0d3bb5270c84d4fa81e43589ce Mon Sep 17 00:00:00 2001
+From 6736ba7b4f70b60a50e27793d32929edf12b0f4c Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:24 -0500
-Subject: [PATCH 042/290] drivers/net: Use disable_irq_nosync() in 8139too
+Subject: [PATCH 042/304] drivers/net: Use disable_irq_nosync() in 8139too
Use disable_irq_nosync() instead of disable_irq() as this might be
called in atomic context with netpoll.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0043-drivers-net-ehea-Make-rx-irq-handler-non-threaded-IR.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0043-drivers-net-ehea-Make-rx-irq-handler-non-threaded-IR.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0043-drivers-net-ehea-Make-rx-irq-handler-non-threaded-IR.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From c90277ecf9108bdc41b01e901091895a8a35bfeb Mon Sep 17 00:00:00 2001
+From 833eb6940d94f7311fdffb6850b76af7a05c7895 Mon Sep 17 00:00:00 2001
From: Darren Hart <dvhltc at us.ibm.com>
Date: Tue, 18 May 2010 14:33:07 -0700
-Subject: [PATCH 043/290] drivers: net: ehea: Make rx irq handler non-threaded
+Subject: [PATCH 043/304] drivers: net: ehea: Make rx irq handler non-threaded
(IRQF_NO_THREAD)
The underlying hardware is edge triggered but presented by XICS as level
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0044-drivers-net-at91_ether-Make-mdio-protection-rt-safe.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0044-drivers-net-at91_ether-Make-mdio-protection-rt-safe.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0044-drivers-net-at91_ether-Make-mdio-protection-rt-safe.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b900c9e15fbed5f80dceb8d1b29a1a5ce6567b49 Mon Sep 17 00:00:00 2001
+From cc15ea4ee68cabbef9b5468b6f3b7df5400975b4 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 17 Nov 2009 12:02:43 +0100
-Subject: [PATCH 044/290] drivers: net: at91_ether: Make mdio protection -rt
+Subject: [PATCH 044/304] drivers: net: at91_ether: Make mdio protection -rt
safe
Neither the phy interrupt nor the timer callback which updates the
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0045-preempt-mark-legitimated-no-resched-sites.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0045-preempt-mark-legitimated-no-resched-sites.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0045-preempt-mark-legitimated-no-resched-sites.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 403ff935660a6832a0e97a613943153e4910e981 Mon Sep 17 00:00:00 2001
+From 266d052b682d69726b52c256f41b3cf9d5daa7b9 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 21 Mar 2011 13:32:17 +0100
-Subject: [PATCH 045/290] preempt-mark-legitimated-no-resched-sites.patch
+Subject: [PATCH 045/304] preempt-mark-legitimated-no-resched-sites.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -67,10 +67,10 @@
#define preempt_enable() do { } while (0)
diff --git a/kernel/sched.c b/kernel/sched.c
-index eeebee9..1e0a583 100644
+index 83f1c88..dbc3927 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4607,7 +4607,7 @@ need_resched:
+@@ -4608,7 +4608,7 @@ need_resched:
post_schedule(rq);
@@ -79,7 +79,7 @@
if (need_resched())
goto need_resched;
}
-@@ -4655,7 +4655,7 @@ EXPORT_SYMBOL(schedule);
+@@ -4656,7 +4656,7 @@ EXPORT_SYMBOL(schedule);
*/
void __sched schedule_preempt_disabled(void)
{
@@ -88,7 +88,7 @@
schedule();
preempt_disable();
}
-@@ -5897,7 +5897,7 @@ SYSCALL_DEFINE0(sched_yield)
+@@ -5898,7 +5898,7 @@ SYSCALL_DEFINE0(sched_yield)
__release(rq->lock);
spin_release(&rq->lock.dep_map, 1, _THIS_IP_);
do_raw_spin_unlock(&rq->lock);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0046-mm-Prepare-decoupling-the-page-fault-disabling-logic.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0046-mm-Prepare-decoupling-the-page-fault-disabling-logic.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0046-mm-Prepare-decoupling-the-page-fault-disabling-logic.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 31558753380d746ec0ecaeeac7fc4f729857be83 Mon Sep 17 00:00:00 2001
+From fcfd59b2378ad30a96503e0c6ed42b6c2344ad66 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:37 -0500
-Subject: [PATCH 046/290] mm: Prepare decoupling the page fault disabling
+Subject: [PATCH 046/304] mm: Prepare decoupling the page fault disabling
logic
Add a pagefault_disabled variable to task_struct to allow decoupling
@@ -17,7 +17,7 @@
4 files changed, 34 insertions(+), 30 deletions(-)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 3795654..4ccb25e 100644
+index 8cb5ff4..5520922 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1439,6 +1439,7 @@ struct task_struct {
@@ -74,10 +74,10 @@
#ifndef ARCH_HAS_NOCACHE_UACCESS
diff --git a/kernel/fork.c b/kernel/fork.c
-index d1c6b43..a49f324 100644
+index c1355fb..8ea3257 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
-@@ -1201,6 +1201,7 @@ static struct task_struct *copy_process(unsigned long clone_flags,
+@@ -1200,6 +1200,7 @@ static struct task_struct *copy_process(unsigned long clone_flags,
p->hardirq_context = 0;
p->softirq_context = 0;
#endif
@@ -86,10 +86,10 @@
p->lockdep_depth = 0; /* no locks held yet */
p->curr_chain_key = 0;
diff --git a/mm/memory.c b/mm/memory.c
-index 70f5daf..b50e579 100644
+index 4f2add1..75419ba 100644
--- a/mm/memory.c
+++ b/mm/memory.c
-@@ -3447,6 +3447,35 @@ unlock:
+@@ -3452,6 +3452,35 @@ unlock:
return 0;
}
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0047-mm-Fixup-all-fault-handlers-to-check-current-pagefau.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0047-mm-Fixup-all-fault-handlers-to-check-current-pagefau.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0047-mm-Fixup-all-fault-handlers-to-check-current-pagefau.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 04b4b53bf7b301c5fbaf4730ba8e2d47860b4499 Mon Sep 17 00:00:00 2001
+From f4f1fd8c52d8ec8137a13bc69cf25241c2fea7bd Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 17 Mar 2011 11:32:28 +0100
-Subject: [PATCH 047/290] mm: Fixup all fault handlers to check
+Subject: [PATCH 047/304] mm: Fixup all fault handlers to check
current->pagefault_disable
Necessary for decoupling pagefault disable from preempt count.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0048-mm-pagefault_disabled.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0048-mm-pagefault_disabled.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0048-mm-pagefault_disabled.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a750b44e05d8a5f84b0de3bd265ebccc71288706 Mon Sep 17 00:00:00 2001
+From 6bff7bda0c7e888fb60ea84d7a7d95131c3f624c Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Thu, 11 Aug 2011 15:31:31 +0200
-Subject: [PATCH 048/290] mm: pagefault_disabled()
+Subject: [PATCH 048/304] mm: pagefault_disabled()
Wrap the test for pagefault_disabled() into a helper, this allows us
to remove the need for current->pagefault_disabled on !-rt kernels.
@@ -336,7 +336,7 @@
return;
}
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 4ccb25e..2dc6c48 100644
+index 5520922..dde0825 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -91,6 +91,7 @@ struct sched_param {
@@ -376,10 +376,10 @@
* 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 a49f324..78335bb 100644
+index 8ea3257..5bc7283 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
-@@ -1201,7 +1201,9 @@ static struct task_struct *copy_process(unsigned long clone_flags,
+@@ -1200,7 +1200,9 @@ static struct task_struct *copy_process(unsigned long clone_flags,
p->hardirq_context = 0;
p->softirq_context = 0;
#endif
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0049-mm-raw_pagefault_disable.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0049-mm-raw_pagefault_disable.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0049-mm-raw_pagefault_disable.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a08a21b88b1257c31bbe16556774190fa58aa6c6 Mon Sep 17 00:00:00 2001
+From 07ad583dc129c7e19f046dff7bc9bfb5f8a22ab2 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Fri, 5 Aug 2011 17:16:58 +0200
-Subject: [PATCH 049/290] mm: raw_pagefault_disable
+Subject: [PATCH 049/304] mm: raw_pagefault_disable
Adding migrate_disable() to pagefault_disable() to preserve the
per-cpu thing for kmap_atomic might not have been the best of choices.
@@ -130,10 +130,10 @@
ret; \
})
diff --git a/mm/memory.c b/mm/memory.c
-index b50e579..cbbba51 100644
+index 75419ba..c497561 100644
--- a/mm/memory.c
+++ b/mm/memory.c
-@@ -3447,6 +3447,7 @@ unlock:
+@@ -3452,6 +3452,7 @@ unlock:
return 0;
}
@@ -141,7 +141,7 @@
void pagefault_disable(void)
{
inc_preempt_count();
-@@ -3475,6 +3476,7 @@ void pagefault_enable(void)
+@@ -3480,6 +3481,7 @@ void pagefault_enable(void)
preempt_check_resched();
}
EXPORT_SYMBOL_GPL(pagefault_enable);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0050-filemap-fix-up.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0050-filemap-fix-up.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0050-filemap-fix-up.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 8012a4cbe59ecf28b6397c358c7836d2b85af69a Mon Sep 17 00:00:00 2001
+From 297bcc9ab84b792a784f6533a5d121b6e403b8a8 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 17 Jun 2011 18:56:24 +0200
-Subject: [PATCH 050/290] filemap-fix-up.patch
+Subject: [PATCH 050/304] filemap-fix-up.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Wrecked-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0051-mm-Remove-preempt-count-from-pagefault-disable-enabl.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0051-mm-Remove-preempt-count-from-pagefault-disable-enabl.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0051-mm-Remove-preempt-count-from-pagefault-disable-enabl.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 94ae5f94c475c32b73e2499cba49077e90478d4f Mon Sep 17 00:00:00 2001
+From c6dbea047b2897ae9ef6fcc7ef6c59c890b8d2f3 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 25 Jul 2009 22:06:27 +0200
-Subject: [PATCH 051/290] mm: Remove preempt count from pagefault
+Subject: [PATCH 051/304] mm: Remove preempt count from pagefault
disable/enable
Now that all users are cleaned up, we can remove the preemption count.
@@ -12,10 +12,10 @@
1 file changed, 7 deletions(-)
diff --git a/mm/memory.c b/mm/memory.c
-index cbbba51..c2575a6 100644
+index c497561..f4d9bde 100644
--- a/mm/memory.c
+++ b/mm/memory.c
-@@ -3450,7 +3450,6 @@ unlock:
+@@ -3455,7 +3455,6 @@ unlock:
#ifdef CONFIG_PREEMPT_RT_FULL
void pagefault_disable(void)
{
@@ -23,7 +23,7 @@
current->pagefault_disabled++;
/*
* make sure to have issued the store before a pagefault
-@@ -3468,12 +3467,6 @@ void pagefault_enable(void)
+@@ -3473,12 +3472,6 @@ void pagefault_enable(void)
*/
barrier();
current->pagefault_disabled--;
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0052-x86-highmem-Replace-BUG_ON-by-WARN_ON.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0052-x86-highmem-Replace-BUG_ON-by-WARN_ON.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0052-x86-highmem-Replace-BUG_ON-by-WARN_ON.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 8e042c931496c932f956f0e29a00b41c936afbe1 Mon Sep 17 00:00:00 2001
+From 94957597220fea9ba8c4ecb73bc3c361f2fab722 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:25 -0500
-Subject: [PATCH 052/290] x86: highmem: Replace BUG_ON by WARN_ON
+Subject: [PATCH 052/304] x86: highmem: Replace BUG_ON by WARN_ON
The machine might survive that problem and be at least in a state
which allows us to get more information about the problem.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0053-suspend-Prevent-might-sleep-splats.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0053-suspend-Prevent-might-sleep-splats.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0053-suspend-Prevent-might-sleep-splats.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b471df1b9c71d366ba505f25964074b2a4c6fb2d Mon Sep 17 00:00:00 2001
+From 202426659e5d56754924cf56a4f5dbe919aa335a Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 15 Jul 2010 10:29:00 +0200
-Subject: [PATCH 053/290] suspend: Prevent might sleep splats
+Subject: [PATCH 053/304] suspend: Prevent might sleep splats
timekeeping suspend/resume calls read_persistant_clock() which takes
rtc_lock. That results in might sleep warnings because at that point
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0054-OF-Fixup-resursive-locking-code-paths.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0054-OF-Fixup-resursive-locking-code-paths.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0054-OF-Fixup-resursive-locking-code-paths.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From c340d72453fa3d6e5a2b1fb872d50f572888ebf9 Mon Sep 17 00:00:00 2001
+From 845bfe99270374b1b86095514db2facd733bc8f7 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 13 Aug 2009 09:04:10 +0200
-Subject: [PATCH 054/290] OF: Fixup resursive locking code paths
+Subject: [PATCH 054/304] OF: Fixup resursive locking code paths
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
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0055-of-convert-devtree-lock.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0055-of-convert-devtree-lock.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0055-of-convert-devtree-lock.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a89d40a920349689f24863b2e245406b0b3b5bcc Mon Sep 17 00:00:00 2001
+From 372c31da91bca92021b6172271d4d2d745c94c9d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 21 Mar 2011 14:35:34 +0100
-Subject: [PATCH 055/290] of-convert-devtree-lock.patch
+Subject: [PATCH 055/304] of-convert-devtree-lock.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0056-list-add-list-last-entry.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0056-list-add-list-last-entry.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0056-list-add-list-last-entry.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 4e5b4b97ac3cfa2f588a59c00d132b32656ee9ea Mon Sep 17 00:00:00 2001
+From bd81fc28e6f279914af97142b0e28747a20406a6 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <peterz at infradead.org>
Date: Tue, 21 Jun 2011 11:22:36 +0200
-Subject: [PATCH 056/290] list-add-list-last-entry.patch
+Subject: [PATCH 056/304] list-add-list-last-entry.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0057-mm-page-alloc-use-list-last-entry.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0057-mm-page-alloc-use-list-last-entry.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0057-mm-page-alloc-use-list-last-entry.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e9012a8f176fecf50be195be65c6c27be3af9440 Mon Sep 17 00:00:00 2001
+From e29e54d40aabab8f37171b5b20dd837937146421 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <peterz at infradead.org>
Date: Tue, 21 Jun 2011 11:24:35 +0200
-Subject: [PATCH 057/290] mm-page-alloc-use-list-last-entry.patch
+Subject: [PATCH 057/304] mm-page-alloc-use-list-last-entry.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index a88dded..2536d02 100644
+index 4d3a697..8bba0c4 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,
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0058-mm-slab-move-debug-out.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0058-mm-slab-move-debug-out.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0058-mm-slab-move-debug-out.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e72f50bdce00ae7b5b7341784dc3019396c0203a Mon Sep 17 00:00:00 2001
+From 53b76885dcc890e69111080ca8d518b589997e28 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 20 Jun 2011 10:42:04 +0200
-Subject: [PATCH 058/290] mm-slab-move-debug-out.patch
+Subject: [PATCH 058/304] mm-slab-move-debug-out.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mm/slab.c b/mm/slab.c
-index 61dfda3..f807b35 100644
+index 61dfda3..f807b35f 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -3857,10 +3857,10 @@ void kmem_cache_free(struct kmem_cache *cachep, void *objp)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0059-rwsem-inlcude-fix.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0059-rwsem-inlcude-fix.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0059-rwsem-inlcude-fix.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 87495667bb63ff4739cbe9c19666d56cb5c8027b Mon Sep 17 00:00:00 2001
+From 7b01859415951296b8544bec297d123bc729b06d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 15 Jul 2011 21:24:27 +0200
-Subject: [PATCH 059/290] rwsem-inlcude-fix.patch
+Subject: [PATCH 059/304] rwsem-inlcude-fix.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0060-sysctl-include-fix.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0060-sysctl-include-fix.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0060-sysctl-include-fix.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e171d5f68903d875cecea55302aaf9acedbc6ef7 Mon Sep 17 00:00:00 2001
+From be476ef118242c22509fbff94daeac7bb89dcb7a Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 14 Nov 2011 10:52:34 +0100
-Subject: [PATCH 060/290] sysctl-include-fix.patch
+Subject: [PATCH 060/304] sysctl-include-fix.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0061-net-flip-lock-dep-thingy.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0061-net-flip-lock-dep-thingy.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0061-net-flip-lock-dep-thingy.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From cfca2ddc97e4d96a2688d7a28024ded18cd64bf5 Mon Sep 17 00:00:00 2001
+From e08f997ba36e0d2f64e1a1a385e5140334a61a08 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 28 Jun 2011 10:59:58 +0200
-Subject: [PATCH 061/290] net-flip-lock-dep-thingy.patch
+Subject: [PATCH 061/304] net-flip-lock-dep-thingy.patch
=======================================================
[ INFO: possible circular locking dependency detected ]
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0062-softirq-thread-do-softirq.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0062-softirq-thread-do-softirq.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0062-softirq-thread-do-softirq.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f5faf0785252b9ad89500afbbe1b2ac28fc029c9 Mon Sep 17 00:00:00 2001
+From 9cc11141e83d799b5b6b25423f80f8310e1c9227 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 28 Jun 2011 15:44:15 +0200
-Subject: [PATCH 062/290] softirq-thread-do-softirq.patch
+Subject: [PATCH 062/304] softirq-thread-do-softirq.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0063-softirq-split-out-code.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0063-softirq-split-out-code.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0063-softirq-split-out-code.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5d648412a940a1c63df4dc4e05bbde3151503cfc Mon Sep 17 00:00:00 2001
+From f053bf7d7baab5ffae7f0a8a1c12f669829fe3a5 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 28 Jun 2011 15:46:49 +0200
-Subject: [PATCH 063/290] softirq-split-out-code.patch
+Subject: [PATCH 063/304] softirq-split-out-code.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0064-x86-Do-not-unmask-io_apic-when-interrupt-is-in-progr.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0064-x86-Do-not-unmask-io_apic-when-interrupt-is-in-progr.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0064-x86-Do-not-unmask-io_apic-when-interrupt-is-in-progr.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 54d124935321707ae2d781aa5a49489a324cc558 Mon Sep 17 00:00:00 2001
+From d403eeae9b01308ec5be39d10c63d2c1420f1335 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:27 -0500
-Subject: [PATCH 064/290] x86: Do not unmask io_apic when interrupt is in
+Subject: [PATCH 064/304] x86: Do not unmask io_apic when interrupt is in
progress
With threaded interrupts we might see an interrupt in progress on
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0065-x86-32-fix-signal-crap.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0065-x86-32-fix-signal-crap.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0065-x86-32-fix-signal-crap.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 244304403de5c4188a9cbedbed6197c145833a80 Mon Sep 17 00:00:00 2001
+From 1f97ca7e31f94bda2bd3ed67aa50a1f2760ee44d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 18 Jul 2011 15:59:38 +0200
-Subject: [PATCH 065/290] x86-32-fix-signal-crap.patch
+Subject: [PATCH 065/304] x86-32-fix-signal-crap.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 8 insertions(+)
diff --git a/arch/x86/kernel/entry_32.S b/arch/x86/kernel/entry_32.S
-index 4893d58..43b96e9 100644
+index d2d488b8..6e390c7 100644
--- a/arch/x86/kernel/entry_32.S
+++ b/arch/x86/kernel/entry_32.S
@@ -629,7 +629,11 @@ work_notifysig: # deal with pending signals and
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0066-x86-Do-not-disable-preemption-in-int3-on-32bit.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0066-x86-Do-not-disable-preemption-in-int3-on-32bit.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0066-x86-Do-not-disable-preemption-in-int3-on-32bit.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 589b89e514d9ee18a2f5a38c5320be5b63d8352d Mon Sep 17 00:00:00 2001
+From c7a7fa22f991f4eb1ffac46a226354929f13ecdc Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Tue, 10 Apr 2012 14:33:57 -0400
-Subject: [PATCH 066/290] x86: Do not disable preemption in int3 on 32bit
+Subject: [PATCH 066/304] x86: Do not disable preemption in int3 on 32bit
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 @@
1 file changed, 23 insertions(+), 9 deletions(-)
diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
-index 31d9d0f..cc88aec 100644
+index e6fbb94..50ca842e8 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)
@@ -65,31 +65,31 @@
}
static void __kprobes
-@@ -222,9 +236,9 @@ dotraplinkage void do_stack_segment(struct pt_regs *regs, long error_code)
+@@ -226,9 +240,9 @@ dotraplinkage void do_stack_segment(struct pt_regs *regs, long error_code)
if (notify_die(DIE_TRAP, "stack segment", regs, error_code,
- 12, SIGBUS) == NOTIFY_STOP)
+ X86_TRAP_SS, SIGBUS) == NOTIFY_STOP)
return;
- preempt_conditional_sti(regs);
+ conditional_sti_ist(regs);
- do_trap(12, SIGBUS, "stack segment", regs, error_code, NULL);
+ do_trap(X86_TRAP_SS, SIGBUS, "stack segment", regs, error_code, NULL);
- preempt_conditional_cli(regs);
+ conditional_cli_ist(regs);
}
dotraplinkage void do_double_fault(struct pt_regs *regs, long error_code)
-@@ -316,9 +330,9 @@ dotraplinkage void __kprobes do_int3(struct pt_regs *regs, long error_code)
+@@ -321,9 +335,9 @@ dotraplinkage void __kprobes do_int3(struct pt_regs *regs, long error_code)
return;
#endif
- preempt_conditional_sti(regs);
+ conditional_sti_ist(regs);
- do_trap(3, SIGTRAP, "int3", regs, error_code, NULL);
+ do_trap(X86_TRAP_BP, SIGTRAP, "int3", regs, error_code, NULL);
- preempt_conditional_cli(regs);
+ conditional_cli_ist(regs);
}
#ifdef CONFIG_X86_64
-@@ -412,12 +426,12 @@ dotraplinkage void __kprobes do_debug(struct pt_regs *regs, long error_code)
+@@ -417,12 +431,12 @@ dotraplinkage void __kprobes do_debug(struct pt_regs *regs, long error_code)
return;
/* It's safe to allow irq's after DR6 has been saved */
@@ -97,14 +97,14 @@
+ conditional_sti_ist(regs);
if (regs->flags & X86_VM_MASK) {
- handle_vm86_trap((struct kernel_vm86_regs *) regs,
- error_code, 1);
+ handle_vm86_trap((struct kernel_vm86_regs *) regs, error_code,
+ X86_TRAP_DB);
- preempt_conditional_cli(regs);
+ conditional_cli_ist(regs);
return;
}
-@@ -436,7 +450,7 @@ dotraplinkage void __kprobes do_debug(struct pt_regs *regs, long error_code)
+@@ -441,7 +455,7 @@ dotraplinkage void __kprobes do_debug(struct pt_regs *regs, long error_code)
si_code = get_si_code(tsk->thread.debugreg6);
if (tsk->thread.debugreg6 & (DR_STEP | DR_TRAP_BITS) || user_icebp)
send_sigtrap(tsk, regs, error_code, si_code);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0067-rcu-Reduce-lock-section.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0067-rcu-Reduce-lock-section.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0067-rcu-Reduce-lock-section.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 55370b4fa14213af19c2484f7d3a2321e9fc9141 Mon Sep 17 00:00:00 2001
+From 4fc322e833f252d29c293fdd3685b79b7092d9c1 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 24 Jun 2011 22:23:02 +0200
-Subject: [PATCH 067/290] rcu: Reduce lock section
+Subject: [PATCH 067/304] rcu: Reduce lock section
So the waitqueue wakeup is outside the raw locked section.
@@ -13,7 +13,7 @@
3 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/kernel/rcutree.c b/kernel/rcutree.c
-index a122196..d5eb74a 100644
+index 1aa52af..d0e5491 100644
--- a/kernel/rcutree.c
+++ b/kernel/rcutree.c
@@ -1223,7 +1223,7 @@ static void __rcu_offline_cpu(int cpu, struct rcu_state *rsp)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0068-locking-various-init-fixes.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0068-locking-various-init-fixes.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0068-locking-various-init-fixes.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ab28fb8f9721b4c8a6a275291cd6b71927de41d7 Mon Sep 17 00:00:00 2001
+From 724a2ae6e20011b4bf1e2739b842e2052d3314d9 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 21:25:03 +0200
-Subject: [PATCH 068/290] locking-various-init-fixes.patch
+Subject: [PATCH 068/304] locking-various-init-fixes.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0069-wait-Provide-__wake_up_all_locked.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0069-wait-Provide-__wake_up_all_locked.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0069-wait-Provide-__wake_up_all_locked.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 35b6f9c51b01ebcd08362a3af559be23093d8263 Mon Sep 17 00:00:00 2001
+From 468c961556aa22e44a74a0d741fcd7a70a748abe Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 1 Dec 2011 00:04:00 +0100
-Subject: [PATCH 069/290] wait: Provide __wake_up_all_locked
+Subject: [PATCH 069/304] wait: Provide __wake_up_all_locked
For code which protects the waitqueue itself with another lock it
makes no sense to acquire the waitqueue lock for wakeup all. Provide
@@ -38,10 +38,10 @@
#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 1e0a583..d24f681 100644
+index dbc3927..6c05b86 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4829,9 +4829,9 @@ EXPORT_SYMBOL(__wake_up);
+@@ -4830,9 +4830,9 @@ EXPORT_SYMBOL(__wake_up);
/*
* Same as __wake_up but called with the spinlock in wait_queue_head_t held.
*/
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0070-pci-Use-__wake_up_all_locked-pci_unblock_user_cfg_ac.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0070-pci-Use-__wake_up_all_locked-pci_unblock_user_cfg_ac.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0070-pci-Use-__wake_up_all_locked-pci_unblock_user_cfg_ac.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 1244ee13500827d2b53e524b814b241938a57909 Mon Sep 17 00:00:00 2001
+From 8d90e23f8cd2a5b3f7bfa3b357e0eb9224e2e0e3 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 1 Dec 2011 00:07:16 +0100
-Subject: [PATCH 070/290] pci: Use __wake_up_all_locked
+Subject: [PATCH 070/304] pci: Use __wake_up_all_locked
pci_unblock_user_cfg_access()
The waitqueue is protected by the pci_lock, so we can just avoid to
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0071-latency-hist.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0071-latency-hist.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0071-latency-hist.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a3ea7010088dc420c59d1703ea3dde6e8a8531dc Mon Sep 17 00:00:00 2001
+From ebc864b47368c454552e3b4e11327cd51fd33a2d Mon Sep 17 00:00:00 2001
From: Carsten Emde <C.Emde at osadl.org>
Date: Tue, 19 Jul 2011 14:03:41 +0100
-Subject: [PATCH 071/290] latency-hist.patch
+Subject: [PATCH 071/304] latency-hist.patch
This patch provides a recording mechanism to store data of potential
sources of system latencies. The recordings separately determine the
@@ -221,7 +221,7 @@
+
+These data are also reset when the wakeup histogram is reset.
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 2dc6c48..c533510 100644
+index dde0825..a7b7888 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1574,6 +1574,12 @@ struct task_struct {
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0072-hwlatdetect.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0072-hwlatdetect.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0072-hwlatdetect.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d9697f203be51692052ab18cc1653c3605de8aa5 Mon Sep 17 00:00:00 2001
+From 2f9c2c62b122ae922168c6cc07889dc255e97888 Mon Sep 17 00:00:00 2001
From: Carsten Emde <C.Emde at osadl.org>
Date: Tue, 19 Jul 2011 13:53:12 +0100
-Subject: [PATCH 072/290] hwlatdetect.patch
+Subject: [PATCH 072/304] hwlatdetect.patch
Jon Masters developed this wonderful SMI detector. For details please
consult Documentation/hwlat_detector.txt. It could be ported to Linux
@@ -89,7 +89,7 @@
+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 82d7fa6..92a9df2 100644
+index 83f156e..909bd7e 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3008,6 +3008,15 @@ L: linuxppc-dev at lists.ozlabs.org
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0073-localversion.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0073-localversion.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0073-localversion.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e6b061c5a2495c5698efc1302fbb58f297287bdc Mon Sep 17 00:00:00 2001
+From 03dbaa1f746a07353688a71bfe59ff72f5bab48c Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 8 Jul 2011 20:25:16 +0200
-Subject: [PATCH 073/290] localversion.patch
+Subject: [PATCH 073/304] localversion.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0074-early-printk-consolidate.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0074-early-printk-consolidate.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0074-early-printk-consolidate.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a72b14a129ed5eb683df50144212d753bce72dd4 Mon Sep 17 00:00:00 2001
+From d9ac8aa2deb235c5185e34bca1c3f822edd7a21b Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 23 Jul 2011 11:04:08 +0200
-Subject: [PATCH 074/290] early-printk-consolidate.patch
+Subject: [PATCH 074/304] early-printk-consolidate.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -450,7 +450,7 @@
extern int printk_needs_cpu(int cpu);
extern void printk_tick(void);
diff --git a/kernel/printk.c b/kernel/printk.c
-index 7982a0a..b7aa50e 100644
+index c0d12ea..1cc5f96 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -44,13 +44,6 @@
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0075-printk-kill.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0075-printk-kill.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0075-printk-kill.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 434533719cd9015a7f47f55cea370270a0705751 Mon Sep 17 00:00:00 2001
+From cb2335f8f3dd17f4e21c3213cd2344a61c4799f4 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 22 Jul 2011 17:58:40 +0200
-Subject: [PATCH 075/290] printk-kill.patch
+Subject: [PATCH 075/304] printk-kill.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -35,7 +35,7 @@
extern int dmesg_restrict;
extern int kptr_restrict;
diff --git a/kernel/printk.c b/kernel/printk.c
-index b7aa50e..96ee3cd 100644
+index 1cc5f96..030f55b 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -532,6 +532,32 @@ asmlinkage void early_printk(const char *fmt, ...)
@@ -71,7 +71,7 @@
#endif
static int __read_mostly ignore_loglevel;
-@@ -850,6 +876,13 @@ asmlinkage int vprintk(const char *fmt, va_list args)
+@@ -861,6 +887,13 @@ asmlinkage int vprintk(const char *fmt, va_list args)
size_t plen;
char special;
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0076-printk-force_early_printk-boot-param-to-help-with-de.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0076-printk-force_early_printk-boot-param-to-help-with-de.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0076-printk-force_early_printk-boot-param-to-help-with-de.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a2723c867367d7391dbdf538d23ddd3be8228b1b Mon Sep 17 00:00:00 2001
+From d599e3727f16bb30b4d1d90bebcf63ad4f894680 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Fri, 2 Sep 2011 14:29:33 +0200
-Subject: [PATCH 076/290] printk: 'force_early_printk' boot param to help with
+Subject: [PATCH 076/304] printk: 'force_early_printk' boot param to help with
debugging
Gives me an option to screw printk and actually see what the machine
@@ -16,7 +16,7 @@
1 file changed, 7 insertions(+)
diff --git a/kernel/printk.c b/kernel/printk.c
-index 96ee3cd..1f06626 100644
+index 030f55b..4068f6d 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -541,6 +541,13 @@ asmlinkage void early_printk(const char *fmt, ...)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0077-rt-preempt-base-config.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0077-rt-preempt-base-config.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0077-rt-preempt-base-config.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From be35240b019e68955628afd52859d6daab28323d Mon Sep 17 00:00:00 2001
+From af76eb7ed94a35a5a55a740bbc448fc152525a78 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 17 Jun 2011 12:39:57 +0200
-Subject: [PATCH 077/290] rt-preempt-base-config.patch
+Subject: [PATCH 077/304] rt-preempt-base-config.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0078-bug-BUG_ON-WARN_ON-variants-dependend-on-RT-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0078-bug-BUG_ON-WARN_ON-variants-dependend-on-RT-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0078-bug-BUG_ON-WARN_ON-variants-dependend-on-RT-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 919c4dd8a6ac0eebdd455a7bd732af42f296c9a8 Mon Sep 17 00:00:00 2001
+From be6f0ef17eab2987d46a167f0a4ac81d027d4cf1 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:58 -0500
-Subject: [PATCH 078/290] bug: BUG_ON/WARN_ON variants dependend on RT/!RT
+Subject: [PATCH 078/304] bug: BUG_ON/WARN_ON variants dependend on RT/!RT
Signed-off-by: Ingo Molnar <mingo at elte.hu>
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0079-rt-local_irq_-variants-depending-on-RT-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0079-rt-local_irq_-variants-depending-on-RT-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0079-rt-local_irq_-variants-depending-on-RT-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7b935e6fbdd5eea3dc889fdc90a3bd12e6602c0e Mon Sep 17 00:00:00 2001
+From 0a67aca4ee90f40faa9131ad266d3a33e2a2f211 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 21 Jul 2009 22:34:14 +0200
-Subject: [PATCH 079/290] rt: local_irq_* variants depending on RT/!RT
+Subject: [PATCH 079/304] rt: local_irq_* variants depending on RT/!RT
Add local_irq_*_(no)rt variant which are mainly used to break
interrupt disabled sections on PREEMPT_RT or to explicitely disable
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0080-preempt-Provide-preempt_-_-no-rt-variants.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0080-preempt-Provide-preempt_-_-no-rt-variants.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0080-preempt-Provide-preempt_-_-no-rt-variants.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 95b570c1af53c3ea86ed2580d3a7e8c1ffb77a29 Mon Sep 17 00:00:00 2001
+From 80e6c37e14dc1d47f031eb180a30ee8faaf08da1 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 24 Jul 2009 12:38:56 +0200
-Subject: [PATCH 080/290] preempt: Provide preempt_*_(no)rt variants
+Subject: [PATCH 080/304] preempt: Provide preempt_*_(no)rt variants
RT needs a few preempt_disable/enable points which are not necessary
otherwise. Implement variants to avoid #ifdeffery.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0081-ata-Do-not-disable-interrupts-in-ide-code-for-preemp.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0081-ata-Do-not-disable-interrupts-in-ide-code-for-preemp.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0081-ata-Do-not-disable-interrupts-in-ide-code-for-preemp.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 332d026b2187ddfca4578751d41f7af90742304c Mon Sep 17 00:00:00 2001
+From 4a39ec6245923771db7402a39725d7768bc73e13 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <srostedt at redhat.com>
Date: Fri, 3 Jul 2009 08:44:29 -0500
-Subject: [PATCH 081/290] ata: Do not disable interrupts in ide code for
+Subject: [PATCH 081/304] ata: Do not disable interrupts in ide code for
preempt-rt
Use the local_irq_*_nort variants.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0082-ide-Do-not-disable-interrupts-for-PREEMPT-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0082-ide-Do-not-disable-interrupts-for-PREEMPT-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0082-ide-Do-not-disable-interrupts-for-PREEMPT-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e86299ff70d0c4919c9184f41c1a89b8215e4733 Mon Sep 17 00:00:00 2001
+From 392e72c0d7bc6ee052c18fecfeb64a2073b80922 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:16 -0500
-Subject: [PATCH 082/290] ide: Do not disable interrupts for PREEMPT-RT
+Subject: [PATCH 082/304] ide: Do not disable interrupts for PREEMPT-RT
Use the local_irq_*_nort variants.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0083-infiniband-Mellanox-IB-driver-patch-use-_nort-primit.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0083-infiniband-Mellanox-IB-driver-patch-use-_nort-primit.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0083-infiniband-Mellanox-IB-driver-patch-use-_nort-primit.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 15d49d392061d0081a9c2e20a2fca707529474f8 Mon Sep 17 00:00:00 2001
+From 9703a10e1e7db795109b9816fb079a96f77d30f1 Mon Sep 17 00:00:00 2001
From: Sven-Thorsten Dietrich <sdietrich at novell.com>
Date: Fri, 3 Jul 2009 08:30:35 -0500
-Subject: [PATCH 083/290] infiniband: Mellanox IB driver patch use _nort()
+Subject: [PATCH 083/304] infiniband: Mellanox IB driver patch use _nort()
primitives
Fixes in_atomic stack-dump, when Mellanox module is loaded into the RT
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0084-input-gameport-Do-not-disable-interrupts-on-PREEMPT_.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0084-input-gameport-Do-not-disable-interrupts-on-PREEMPT_.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0084-input-gameport-Do-not-disable-interrupts-on-PREEMPT_.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e729adc7d27c17c4077940a48fab0b34ef708350 Mon Sep 17 00:00:00 2001
+From 7d6ae080fe95d4cb1c997b55b881f9c384239f04 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:16 -0500
-Subject: [PATCH 084/290] input: gameport: Do not disable interrupts on
+Subject: [PATCH 084/304] input: gameport: Do not disable interrupts on
PREEMPT_RT
Use the _nort() primitives.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0085-acpi-Do-not-disable-interrupts-on-PREEMPT_RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0085-acpi-Do-not-disable-interrupts-on-PREEMPT_RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0085-acpi-Do-not-disable-interrupts-on-PREEMPT_RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6d9ab6507ab6ee38309af9a24f149c3af79723c8 Mon Sep 17 00:00:00 2001
+From c37ed7c4130022ae9305796f3cba5798f4c6197d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 21 Jul 2009 22:54:51 +0200
-Subject: [PATCH 085/290] acpi: Do not disable interrupts on PREEMPT_RT
+Subject: [PATCH 085/304] acpi: Do not disable interrupts on PREEMPT_RT
Use the local_irq_*_nort() variants.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0086-core-Do-not-disable-interrupts-on-RT-in-kernel-users.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0086-core-Do-not-disable-interrupts-on-RT-in-kernel-users.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0086-core-Do-not-disable-interrupts-on-RT-in-kernel-users.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5ea15559bd4fda709d0330e716e6d3f2fe6d98ee Mon Sep 17 00:00:00 2001
+From 2d8925db60d4fc513681926749b704d652de40e0 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 21 Jul 2009 23:06:05 +0200
-Subject: [PATCH 086/290] core: Do not disable interrupts on RT in
+Subject: [PATCH 086/304] core: Do not disable interrupts on RT in
kernel/users.c
Use the local_irq_*_nort variants to reduce latencies in RT. The code
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0087-core-Do-not-disable-interrupts-on-RT-in-res_counter..patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0087-core-Do-not-disable-interrupts-on-RT-in-res_counter..patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0087-core-Do-not-disable-interrupts-on-RT-in-res_counter..patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e511c606953741f07658e410d87bd46f70374ed6 Mon Sep 17 00:00:00 2001
+From f8d9d67993bcf25317e56fc4a716b4fab0cf05c5 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:44:33 -0500
-Subject: [PATCH 087/290] core: Do not disable interrupts on RT in
+Subject: [PATCH 087/304] core: Do not disable interrupts on RT in
res_counter.c
Frederic Weisbecker reported this warning:
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0088-usb-Use-local_irq_-_nort-variants.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0088-usb-Use-local_irq_-_nort-variants.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0088-usb-Use-local_irq_-_nort-variants.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 88965c87c60f6b5dd6bcd60e5d62b6f31af2ff5c Mon Sep 17 00:00:00 2001
+From e22d2fce54fd4af7784b7adc19f427c759374e56 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <srostedt at redhat.com>
Date: Fri, 3 Jul 2009 08:44:26 -0500
-Subject: [PATCH 088/290] usb: Use local_irq_*_nort() variants
+Subject: [PATCH 088/304] usb: Use local_irq_*_nort() variants
[ tglx: Now that irqf_disabled is dead we should kill that ]
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0089-tty-Do-not-disable-interrupts-in-put_ldisc-on-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0089-tty-Do-not-disable-interrupts-in-put_ldisc-on-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0089-tty-Do-not-disable-interrupts-in-put_ldisc-on-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 31ace266a2c38075c259c269dc8b4136ec8a7665 Mon Sep 17 00:00:00 2001
+From 33faab2f1d8977f79fea7ffa54934b04870d2d23 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 17 Aug 2009 19:49:19 +0200
-Subject: [PATCH 089/290] tty: Do not disable interrupts in put_ldisc on -rt
+Subject: [PATCH 089/304] tty: Do not disable interrupts in put_ldisc on -rt
Fixes the following on PREEMPT_RT:
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0090-mm-scatterlist-dont-disable-irqs-on-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0090-mm-scatterlist-dont-disable-irqs-on-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0090-mm-scatterlist-dont-disable-irqs-on-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 253e4ebb0d151b54814b450721326e2e03781e74 Mon Sep 17 00:00:00 2001
+From 8a3fe8786194700aea791c3d4d2dd9c1f8aa371c Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 3 Jul 2009 08:44:34 -0500
-Subject: [PATCH 090/290] mm: scatterlist dont disable irqs on RT
+Subject: [PATCH 090/304] mm: scatterlist dont disable irqs on RT
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0091-signal-fix-up-rcu-wreckage.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0091-signal-fix-up-rcu-wreckage.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0091-signal-fix-up-rcu-wreckage.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From dc88c146239dce4b2995e16ba9c9144bf86e3cb4 Mon Sep 17 00:00:00 2001
+From f2862ba8f2f66faf0511aa849a6e40101532afb9 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 22 Jul 2011 08:07:08 +0200
-Subject: [PATCH 091/290] signal-fix-up-rcu-wreckage.patch
+Subject: [PATCH 091/304] signal-fix-up-rcu-wreckage.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,10 +9,10 @@
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/kernel/signal.c b/kernel/signal.c
-index 385d137..6b744cb 100644
+index cb0eab2..b16901a 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
-@@ -1362,12 +1362,12 @@ struct sighand_struct *__lock_task_sighand(struct task_struct *tsk,
+@@ -1357,12 +1357,12 @@ struct sighand_struct *__lock_task_sighand(struct task_struct *tsk,
struct sighand_struct *sighand;
for (;;) {
@@ -27,7 +27,7 @@
break;
}
-@@ -1378,7 +1378,7 @@ struct sighand_struct *__lock_task_sighand(struct task_struct *tsk,
+@@ -1373,7 +1373,7 @@ struct sighand_struct *__lock_task_sighand(struct task_struct *tsk,
}
spin_unlock(&sighand->siglock);
rcu_read_unlock();
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0092-net-wireless-warn-nort.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0092-net-wireless-warn-nort.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0092-net-wireless-warn-nort.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 54d18b6bd207eb5387adca9e5a4bb7bcd1839e7f Mon Sep 17 00:00:00 2001
+From 1bd9a8ede7e6f79e82cb86f504b63395c11f5e4c Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 21 Jul 2011 21:05:33 +0200
-Subject: [PATCH 092/290] net-wireless-warn-nort.patch
+Subject: [PATCH 092/304] net-wireless-warn-nort.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0093-mm-Replace-cgroup_page-bit-spinlock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0093-mm-Replace-cgroup_page-bit-spinlock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0093-mm-Replace-cgroup_page-bit-spinlock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 36ed2b26431f9da4c61dbbddcfaff91e97f20ec5 Mon Sep 17 00:00:00 2001
+From 3e5e033c633a7a592d36a5a0fc1eaa286b0206ff Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 19 Aug 2009 09:56:42 +0200
-Subject: [PATCH 093/290] mm: Replace cgroup_page bit spinlock
+Subject: [PATCH 093/304] mm: Replace cgroup_page bit spinlock
Bit spinlocks are not working on RT. Replace them.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0094-buffer_head-Replace-bh_uptodate_lock-for-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0094-buffer_head-Replace-bh_uptodate_lock-for-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0094-buffer_head-Replace-bh_uptodate_lock-for-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e5a669b4424dff64b75231914810b753d4ef28af Mon Sep 17 00:00:00 2001
+From 72822535e8bd5cb4a48f0072f39b55239f3ecd1f Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 18 Mar 2011 09:18:52 +0100
-Subject: [PATCH 094/290] buffer_head: Replace bh_uptodate_lock for -rt
+Subject: [PATCH 094/304] buffer_head: Replace bh_uptodate_lock for -rt
Wrap the bit_spin_lock calls into a separate inline and add the RT
replacements with a real spinlock.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0095-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0095-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0095-fs-jbd-jbd2-Make-state-lock-and-journal-head-lock-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 8e46b4efec800153c6d77c39d66fdf66f71dd92f Mon Sep 17 00:00:00 2001
+From 72820bad31dede5eefb81ae6549b3efc3e709109 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 18 Mar 2011 10:11:25 +0100
-Subject: [PATCH 095/290] fs: jbd/jbd2: Make state lock and journal head lock
+Subject: [PATCH 095/304] fs: jbd/jbd2: Make state lock and journal head lock
rt safe
bit_spin_locks break under RT.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0096-genirq-Disable-DEBUG_SHIRQ-for-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0096-genirq-Disable-DEBUG_SHIRQ-for-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0096-genirq-Disable-DEBUG_SHIRQ-for-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d2484ead13ca5f0f911c7fd663918df8e866f65d Mon Sep 17 00:00:00 2001
+From 77e4a14cd313dcc3d61918e9537d66d0429d5f7a Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 18 Mar 2011 10:22:04 +0100
-Subject: [PATCH 096/290] genirq: Disable DEBUG_SHIRQ for rt
+Subject: [PATCH 096/304] genirq: Disable DEBUG_SHIRQ for rt
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0097-genirq-Disable-random-call-on-preempt-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0097-genirq-Disable-random-call-on-preempt-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0097-genirq-Disable-random-call-on-preempt-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From aa6e5328a7a01576fcb7bdaf61b39b4eb7d4a5ba Mon Sep 17 00:00:00 2001
+From b6f3c7f9e7ec80a9172a39cc9bed6571a4d36253 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 21 Jul 2009 16:07:37 +0200
-Subject: [PATCH 097/290] genirq: Disable random call on preempt-rt
+Subject: [PATCH 097/304] genirq: Disable random call on preempt-rt
The random call introduces high latencies and is almost
unused. Disable it for -rt.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0098-genirq-disable-irqpoll-on-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0098-genirq-disable-irqpoll-on-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0098-genirq-disable-irqpoll-on-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b1c424e2d6b877003230c02ddfddb917773a6033 Mon Sep 17 00:00:00 2001
+From 20890e1f59e28342c70d63e1b860990376e74f79 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:57 -0500
-Subject: [PATCH 098/290] genirq: disable irqpoll on -rt
+Subject: [PATCH 098/304] genirq: disable irqpoll on -rt
Creates long latencies for no value
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0099-genirq-force-threading.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0099-genirq-force-threading.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0099-genirq-force-threading.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6bd3baf07e6afee274dd9df6a445bb2a7ad2671b Mon Sep 17 00:00:00 2001
+From 8a71391192108cc3a795b905bf342045a74a9f54 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 3 Apr 2011 11:57:29 +0200
-Subject: [PATCH 099/290] genirq-force-threading.patch
+Subject: [PATCH 099/304] genirq-force-threading.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -30,7 +30,7 @@
#ifndef __ARCH_SET_SOFTIRQ_PENDING
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index 7600092..b3e6228 100644
+index 382a6bd..35d5ac4 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -18,6 +18,7 @@
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0100-drivers-net-fix-livelock-issues.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0100-drivers-net-fix-livelock-issues.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0100-drivers-net-fix-livelock-issues.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5971da20cc1a7baf642877b56d2634dacfefc24a Mon Sep 17 00:00:00 2001
+From 9b3393581a748b4d1c01e63476542705947594c4 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 20 Jun 2009 11:36:54 +0200
-Subject: [PATCH 100/290] drivers/net: fix livelock issues
+Subject: [PATCH 100/304] drivers/net: fix livelock issues
Preempt-RT runs into a live lock issue with the NETDEV_TX_LOCKED micro
optimization. The reason is that the softirq thread is rescheduling
@@ -53,7 +53,7 @@
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 f9b60230..6d7412a 100644
+index f9b6023..6d7412a 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,
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0101-drivers-net-vortex-fix-locking-issues.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0101-drivers-net-vortex-fix-locking-issues.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0101-drivers-net-vortex-fix-locking-issues.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ecf35f772b4ac8341bdd6fd7740bb097e0d3e974 Mon Sep 17 00:00:00 2001
+From 0d4a0c910ace8d9f922830f192e9eed9c59000b3 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Fri, 3 Jul 2009 08:30:00 -0500
-Subject: [PATCH 101/290] drivers/net: vortex fix locking issues
+Subject: [PATCH 101/304] drivers/net: vortex fix locking issues
Argh, cut and paste wasn't enough...
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0102-drivers-net-gianfar-Make-RT-aware.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0102-drivers-net-gianfar-Make-RT-aware.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0102-drivers-net-gianfar-Make-RT-aware.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 3890083129cab07ab5eca1e6fbe3a84d096b8112 Mon Sep 17 00:00:00 2001
+From e2fe18c9fc444163324e349bb135babe2d587a77 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 1 Apr 2010 20:20:57 +0200
-Subject: [PATCH 102/290] drivers: net: gianfar: Make RT aware
+Subject: [PATCH 102/304] drivers: net: gianfar: Make RT aware
The adjust_link() disables interrupts before taking the queue
locks. On RT those locks are converted to "sleeping" locks and
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0103-USB-Fix-the-mouse-problem-when-copying-large-amounts.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0103-USB-Fix-the-mouse-problem-when-copying-large-amounts.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0103-USB-Fix-the-mouse-problem-when-copying-large-amounts.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From aa7f8aef3146a2a9ffa62436cff84f9e5d469f67 Mon Sep 17 00:00:00 2001
+From d33649e480f04cc16bb9605a10247eb08c9ef3f7 Mon Sep 17 00:00:00 2001
From: Wu Zhangjin <wuzj at lemote.com>
Date: Mon, 4 Jan 2010 11:33:02 +0800
-Subject: [PATCH 103/290] USB: Fix the mouse problem when copying large
+Subject: [PATCH 103/304] USB: Fix the mouse problem when copying large
amounts of data
When copying large amounts of data between the USB storage devices and
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0104-local-var.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0104-local-var.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0104-local-var.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 4e932aca1a2b3f20a3f7574675ec8cc8a9755aaf Mon Sep 17 00:00:00 2001
+From c6f8725fddfe180682afe8c9be6ef29059fea1b8 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 24 Jun 2011 18:40:37 +0200
-Subject: [PATCH 104/290] local-var.patch
+Subject: [PATCH 104/304] local-var.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0105-rt-local-irq-lock.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0105-rt-local-irq-lock.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0105-rt-local-irq-lock.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 9f1710216fe90659a9917029b5bcfeeb25498f0d Mon Sep 17 00:00:00 2001
+From 0c8e8ec930651b02c09eddbf94975136ecb220ac Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 20 Jun 2011 09:03:47 +0200
-Subject: [PATCH 105/290] rt-local-irq-lock.patch
+Subject: [PATCH 105/304] rt-local-irq-lock.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0106-cpu-rt-variants.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0106-cpu-rt-variants.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0106-cpu-rt-variants.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 22e57baa90e89208896147494224a30b51bd7d88 Mon Sep 17 00:00:00 2001
+From b3f0502c14b5d001a6a3f92a10137c9ce89553d8 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 17 Jun 2011 15:42:38 +0200
-Subject: [PATCH 106/290] cpu-rt-variants.patch
+Subject: [PATCH 106/304] cpu-rt-variants.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0107-mm-slab-wrap-functions.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0107-mm-slab-wrap-functions.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0107-mm-slab-wrap-functions.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d4c6d25465a2c2c7770705e9e6a6f84b3d014d87 Mon Sep 17 00:00:00 2001
+From e29c240dc3262b080dfdce48092193e03f7a129e Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 18 Jun 2011 19:44:43 +0200
-Subject: [PATCH 107/290] mm-slab-wrap-functions.patch
+Subject: [PATCH 107/304] mm-slab-wrap-functions.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 104 insertions(+), 48 deletions(-)
diff --git a/mm/slab.c b/mm/slab.c
-index f807b35..89b7b18 100644
+index f807b35f..89b7b18 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -116,6 +116,7 @@
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0108-slab-Fix-__do_drain-to-use-the-right-array-cache.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0108-slab-Fix-__do_drain-to-use-the-right-array-cache.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0108-slab-Fix-__do_drain-to-use-the-right-array-cache.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 827473fcc4153a2b05720c12dbfd5745f6dfd38f Mon Sep 17 00:00:00 2001
+From 111925c08bed273b15d3230931dc1c5bcb5ff5f6 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Tue, 11 Oct 2011 23:56:23 -0400
-Subject: [PATCH 108/290] slab: Fix __do_drain to use the right array cache
+Subject: [PATCH 108/304] slab: Fix __do_drain to use the right array cache
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
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0109-mm-More-lock-breaks-in-slab.c.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0109-mm-More-lock-breaks-in-slab.c.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0109-mm-More-lock-breaks-in-slab.c.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 3a23c81e594c3f1f966d9e2bdb8d1472bb67ddca Mon Sep 17 00:00:00 2001
+From 8ce69e22d0518a7bf2c27d6862e259b6795a01dd Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Fri, 3 Jul 2009 08:44:43 -0500
-Subject: [PATCH 109/290] mm: More lock breaks in slab.c
+Subject: [PATCH 109/304] mm: More lock breaks in slab.c
Handle __free_pages outside of the locked regions. This reduces the
lock contention on the percpu slab locks in -rt significantly.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0110-mm-page_alloc-rt-friendly-per-cpu-pages.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0110-mm-page_alloc-rt-friendly-per-cpu-pages.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0110-mm-page_alloc-rt-friendly-per-cpu-pages.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 747b25b58b7e42459a69590b46ab281e32cc9042 Mon Sep 17 00:00:00 2001
+From 9d03ed6f859390ea37231b72819d6d499ed27dab Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:37 -0500
-Subject: [PATCH 110/290] mm: page_alloc: rt-friendly per-cpu pages
+Subject: [PATCH 110/304] mm: page_alloc: rt-friendly per-cpu pages
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 @@
1 file changed, 39 insertions(+), 16 deletions(-)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 2536d02..4490f58 100644
+index 8bba0c4..3b70f1e 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -57,6 +57,7 @@
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0111-mm-page_alloc-reduce-lock-sections-further.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0111-mm-page_alloc-reduce-lock-sections-further.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0111-mm-page_alloc-reduce-lock-sections-further.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 2cc27720e6f09663df1e97015cde87c0f5409bb3 Mon Sep 17 00:00:00 2001
+From 86d0172ab4150c6276e12b4682609b0c4f42a13f Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Fri, 3 Jul 2009 08:44:37 -0500
-Subject: [PATCH 111/290] mm: page_alloc reduce lock sections further
+Subject: [PATCH 111/304] mm: page_alloc reduce lock sections further
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 @@
1 file changed, 58 insertions(+), 19 deletions(-)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 4490f58..01354f7 100644
+index 3b70f1e..e54fa76 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -594,7 +594,7 @@ static inline int free_pages_check(struct page *page)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0112-mm-page-alloc-fix.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0112-mm-page-alloc-fix.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0112-mm-page-alloc-fix.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From cc077c5a4af90634d781a7924398d362686b6bc6 Mon Sep 17 00:00:00 2001
+From 03d0cbe0303d2bec52554c85539e8eb2dabe5ca7 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 21 Jul 2011 16:47:49 +0200
-Subject: [PATCH 112/290] mm-page-alloc-fix.patch
+Subject: [PATCH 112/304] mm-page-alloc-fix.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 01354f7..67202bc 100644
+index e54fa76..dce6a03 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -1966,8 +1966,8 @@ __alloc_pages_direct_compact(gfp_t gfp_mask, unsigned int order,
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0113-mm-convert-swap-to-percpu-locked.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0113-mm-convert-swap-to-percpu-locked.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0113-mm-convert-swap-to-percpu-locked.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 40ea5065111a89bff9e49ccc8177fa127ebbe19b Mon Sep 17 00:00:00 2001
+From 2b63db3ff70fd56681147012305227e46ca8983d Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:51 -0500
-Subject: [PATCH 113/290] mm: convert swap to percpu locked
+Subject: [PATCH 113/304] mm: convert swap to percpu locked
Signed-off-by: Ingo Molnar <mingo at elte.hu>
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0114-mm-vmstat-fix-the-irq-lock-asymetry.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0114-mm-vmstat-fix-the-irq-lock-asymetry.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0114-mm-vmstat-fix-the-irq-lock-asymetry.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From cdd283b7922e89fbd22fa1087d94fcc6c79befd1 Mon Sep 17 00:00:00 2001
+From e85aa5adf7e1d57407fb684d093af41d52b6ea3a Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 22 Jun 2011 20:47:08 +0200
-Subject: [PATCH 114/290] mm-vmstat-fix-the-irq-lock-asymetry.patch
+Subject: [PATCH 114/304] mm-vmstat-fix-the-irq-lock-asymetry.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/mm/vmscan.c b/mm/vmscan.c
-index 1e4ee1a..00daa2e 100644
+index 313381c..328cf31 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -1381,8 +1381,8 @@ static int too_many_isolated(struct zone *zone, int file,
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0115-mm-make-vmstat-rt-aware.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0115-mm-make-vmstat-rt-aware.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0115-mm-make-vmstat-rt-aware.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 4d4da1c822de6cc64adea19bb2604132499e6e8a Mon Sep 17 00:00:00 2001
+From 3adde7584f3b1162e3ebc1fe1de37905664838c9 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:13 -0500
-Subject: [PATCH 115/290] mm: make vmstat -rt aware
+Subject: [PATCH 115/304] mm: make vmstat -rt aware
Signed-off-by: Ingo Molnar <mingo at elte.hu>
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0116-mm-shrink-the-page-frame-to-rt-size.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0116-mm-shrink-the-page-frame-to-rt-size.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0116-mm-shrink-the-page-frame-to-rt-size.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 9b6ab99b540a201aff3d3e0b9cc3919b2259551e Mon Sep 17 00:00:00 2001
+From e5f793963b064395f81cd9d6eddc0dbe7cea806f Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <peterz at infradead.org>
Date: Fri, 3 Jul 2009 08:44:54 -0500
-Subject: [PATCH 116/290] mm: shrink the page frame to !-rt size
+Subject: [PATCH 116/304] mm: shrink the page frame to !-rt size
He below is a boot-tested hack to shrink the page frame size back to
normal.
@@ -106,10 +106,10 @@
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 c2575a6..b4e9834 100644
+index f4d9bde..77288df 100644
--- a/mm/memory.c
+++ b/mm/memory.c
-@@ -4019,3 +4019,35 @@ void copy_user_huge_page(struct page *dst, struct page *src,
+@@ -4036,3 +4036,35 @@ void copy_user_huge_page(struct page *dst, struct page *src,
}
}
#endif /* CONFIG_TRANSPARENT_HUGEPAGE || CONFIG_HUGETLBFS */
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0117-ARM-Initialize-ptl-lock-for-vector-page.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0117-ARM-Initialize-ptl-lock-for-vector-page.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0117-ARM-Initialize-ptl-lock-for-vector-page.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 81fdc54b41a6cbd06f8ecefbb838720b0b043049 Mon Sep 17 00:00:00 2001
+From 69b2ff338338dcba2f4594f2dc7ed68bfe630b65 Mon Sep 17 00:00:00 2001
From: Frank Rowand <frank.rowand at am.sony.com>
Date: Sat, 1 Oct 2011 18:58:13 -0700
-Subject: [PATCH 117/290] ARM: Initialize ptl->lock for vector page
+Subject: [PATCH 117/304] ARM: Initialize ptl->lock for vector page
Without this patch, ARM can not use SPLIT_PTLOCK_CPUS if
PREEMPT_RT_FULL=y because vectors_user_mapping() creates a
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0118-mm-Allow-only-slab-on-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0118-mm-Allow-only-slab-on-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0118-mm-Allow-only-slab-on-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7829006d03689b48df4fdce99d450377697ac358 Mon Sep 17 00:00:00 2001
+From 867056af0eacb11f69399aef9cc0484cb68d2b03 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:44:03 -0500
-Subject: [PATCH 118/290] mm: Allow only slab on RT
+Subject: [PATCH 118/304] mm: Allow only slab on RT
Signed-off-by: Ingo Molnar <mingo at elte.hu>
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0119-radix-tree-rt-aware.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0119-radix-tree-rt-aware.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0119-radix-tree-rt-aware.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From c5827ffe8b67db3adab0a8f8b418db04c9c8e6aa Mon Sep 17 00:00:00 2001
+From f5d9e84095c6fcf5d9f75aaa84602d15cf1dfd59 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 21:33:18 +0200
-Subject: [PATCH 119/290] radix-tree-rt-aware.patch
+Subject: [PATCH 119/304] radix-tree-rt-aware.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0120-panic-disable-random-on-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0120-panic-disable-random-on-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0120-panic-disable-random-on-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 96ce43501a4713584b1f8e7ff8a6b52c00691f68 Mon Sep 17 00:00:00 2001
+From 5e47429ca888f4ffaf050931fd90007e738f11b1 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 10 Apr 2012 14:34:04 -0400
-Subject: [PATCH 120/290] panic-disable-random-on-rt
+Subject: [PATCH 120/304] panic-disable-random-on-rt
---
kernel/panic.c | 2 ++
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0121-ipc-Make-the-ipc-code-rt-aware.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0121-ipc-Make-the-ipc-code-rt-aware.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0121-ipc-Make-the-ipc-code-rt-aware.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 0c1a64007d58bbb15eff5ed67f21f16efc682eab Mon Sep 17 00:00:00 2001
+From ba76c613f5b71d749b072c4da8f08f86d690016a Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:12 -0500
-Subject: [PATCH 121/290] ipc: Make the ipc code -rt aware
+Subject: [PATCH 121/304] ipc: Make the ipc code -rt aware
RT serializes the code with the (rt)spinlock but keeps preemption
enabled. Some parts of the code need to be atomic nevertheless.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0122-ipc-mqueue-Add-a-critical-section-to-avoid-a-deadloc.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0122-ipc-mqueue-Add-a-critical-section-to-avoid-a-deadloc.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0122-ipc-mqueue-Add-a-critical-section-to-avoid-a-deadloc.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 4c3edf706eea198c9c1d03d2d3ef445f485dc867 Mon Sep 17 00:00:00 2001
+From 44c107fb9ce047fb1f5407fa53766b9d729b02f5 Mon Sep 17 00:00:00 2001
From: KOBAYASHI Yoshitake <yoshitake.kobayashi at toshiba.co.jp>
Date: Sat, 23 Jul 2011 11:57:36 +0900
-Subject: [PATCH 122/290] ipc/mqueue: Add a critical section to avoid a
+Subject: [PATCH 122/304] ipc/mqueue: Add a critical section to avoid a
deadlock
(Repost for v3.0-rt1 and changed the distination addreses)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0123-relay-fix-timer-madness.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0123-relay-fix-timer-madness.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0123-relay-fix-timer-madness.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b8e11a65ef4deb11a5a816811dadf5d630d841c2 Mon Sep 17 00:00:00 2001
+From 9b5f4832e5d82952421d8e9024367a425d254564 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:44:07 -0500
-Subject: [PATCH 123/290] relay: fix timer madness
+Subject: [PATCH 123/304] relay: fix timer madness
remove timer calls (!!!) from deep within the tracing infrastructure.
This was totally bogus code that can cause lockups and worse. Poll
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0124-net-ipv4-route-use-locks-on-up-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0124-net-ipv4-route-use-locks-on-up-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0124-net-ipv4-route-use-locks-on-up-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From cb41bf90e3c9f0abff36ba383db52d806c6578d1 Mon Sep 17 00:00:00 2001
+From e82c6437cdee6d6743140cddff83788258742f31 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 15 Jul 2011 16:24:45 +0200
-Subject: [PATCH 124/290] net-ipv4-route-use-locks-on-up-rt.patch
+Subject: [PATCH 124/304] net-ipv4-route-use-locks-on-up-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0125-workqueue-avoid-the-lock-in-cpu-dying.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0125-workqueue-avoid-the-lock-in-cpu-dying.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0125-workqueue-avoid-the-lock-in-cpu-dying.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5f9af4d406da066132c06b795feade87acdbeaa8 Mon Sep 17 00:00:00 2001
+From a1c0e31ccbfd39a8e298350d7803ee000cd2588c Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 24 Jun 2011 20:39:24 +0200
-Subject: [PATCH 125/290] workqueue-avoid-the-lock-in-cpu-dying.patch
+Subject: [PATCH 125/304] workqueue-avoid-the-lock-in-cpu-dying.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 20 insertions(+), 10 deletions(-)
diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index edf509e..79dc1eb 100644
+index 1c16faf..f46cc04 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -3535,6 +3535,25 @@ static int __devinit workqueue_cpu_callback(struct notifier_block *nfb,
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0126-timers-prepare-for-full-preemption.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0126-timers-prepare-for-full-preemption.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0126-timers-prepare-for-full-preemption.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b6282800606fe8098725d7f6637ef2bd11d167de Mon Sep 17 00:00:00 2001
+From 04f56cc10ab67d3528a58d662c2f20f9f45ba296 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:34 -0500
-Subject: [PATCH 126/290] timers: prepare for full preemption
+Subject: [PATCH 126/304] timers: prepare for full preemption
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
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0127-timers-preempt-rt-support.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0127-timers-preempt-rt-support.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0127-timers-preempt-rt-support.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d78174bdfcbf0352f982743922ce1e4ac0d2a27d Mon Sep 17 00:00:00 2001
+From 9cba86fbc4acd2f01050677f7f9ed3aed72ce535 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:20 -0500
-Subject: [PATCH 127/290] timers: preempt-rt support
+Subject: [PATCH 127/304] timers: preempt-rt support
Signed-off-by: Ingo Molnar <mingo at elte.hu>
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0128-timers-fix-timer-hotplug-on-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0128-timers-fix-timer-hotplug-on-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0128-timers-fix-timer-hotplug-on-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 61c830ae913f03f0d6127828dbb645c47aba5df5 Mon Sep 17 00:00:00 2001
+From 8cc2531c4976d14a548ad20cb3c392b539fcd5e2 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:32 -0500
-Subject: [PATCH 128/290] timers: fix timer hotplug on -rt
+Subject: [PATCH 128/304] timers: fix timer hotplug on -rt
Here we are in the CPU_DEAD notifier, and we must not sleep nor
enable interrupts.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0129-timers-mov-printk_tick-to-soft-interrupt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0129-timers-mov-printk_tick-to-soft-interrupt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0129-timers-mov-printk_tick-to-soft-interrupt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 638da109355f5cb2888ae904e66be153abf56d35 Mon Sep 17 00:00:00 2001
+From ba8483b66ffca3da620a044cefa62c04b13d4ae2 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 3 Jul 2009 08:44:30 -0500
-Subject: [PATCH 129/290] timers: mov printk_tick to soft interrupt
+Subject: [PATCH 129/304] timers: mov printk_tick to soft interrupt
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Signed-off-by: Ingo Molnar <mingo at elte.hu>
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0130-timer-delay-waking-softirqs-from-the-jiffy-tick.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0130-timer-delay-waking-softirqs-from-the-jiffy-tick.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0130-timer-delay-waking-softirqs-from-the-jiffy-tick.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 56a06a26851140191a6f07c7d27989299724e318 Mon Sep 17 00:00:00 2001
+From dea575de6551da78f939c0b42815f60af606ac8d Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <peterz at infradead.org>
Date: Fri, 21 Aug 2009 11:56:45 +0200
-Subject: [PATCH 130/290] timer: delay waking softirqs from the jiffy tick
+Subject: [PATCH 130/304] timer: delay waking softirqs from the jiffy tick
People were complaining about broken balancing with the recent -rt
series.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0131-timers-Avoid-the-switch-timers-base-set-to-NULL-tric.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0131-timers-Avoid-the-switch-timers-base-set-to-NULL-tric.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0131-timers-Avoid-the-switch-timers-base-set-to-NULL-tric.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 29ec640cef4d9f5aa1b1d7457a36ccddcdd82ea8 Mon Sep 17 00:00:00 2001
+From ab2bd9a29df8bf32a5589d74b9734033a1481b93 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 21 Jul 2011 15:23:39 +0200
-Subject: [PATCH 131/290] timers: Avoid the switch timers base set to NULL
+Subject: [PATCH 131/304] timers: Avoid the switch timers base set to NULL
trick on RT
On RT that code is preemptible, so we cannot assign NULL to timers
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0132-printk-Don-t-call-printk_tick-in-printk_needs_cpu-on.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0132-printk-Don-t-call-printk_tick-in-printk_needs_cpu-on.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0132-printk-Don-t-call-printk_tick-in-printk_needs_cpu-on.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7b04876f04dea063ea2de2090dfc7cea978b832a Mon Sep 17 00:00:00 2001
+From 53e2f2d86ce87a2b8520341285353a8c427e49ce Mon Sep 17 00:00:00 2001
From: Yong Zhang <yong.zhang0 at gmail.com>
Date: Sun, 16 Oct 2011 18:56:45 +0800
-Subject: [PATCH 132/290] printk: Don't call printk_tick in printk_needs_cpu()
+Subject: [PATCH 132/304] printk: Don't call printk_tick in printk_needs_cpu()
on RT
printk_tick() can't be called in atomic context when RT is enabled,
@@ -33,10 +33,10 @@
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/printk.c b/kernel/printk.c
-index 1f06626..2b95bc0 100644
+index 4068f6d..c07a0e2 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
-@@ -1274,8 +1274,8 @@ void printk_tick(void)
+@@ -1285,8 +1285,8 @@ void printk_tick(void)
int printk_needs_cpu(int cpu)
{
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0133-hrtimers-prepare-full-preemption.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0133-hrtimers-prepare-full-preemption.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0133-hrtimers-prepare-full-preemption.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From fc2c4688f575be5fcc17cafe002350a777b11ea4 Mon Sep 17 00:00:00 2001
+From 36bac70a3511ae455cba4d470100aeba8315da9b Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:29:34 -0500
-Subject: [PATCH 133/290] hrtimers: prepare full preemption
+Subject: [PATCH 133/304] hrtimers: prepare full preemption
Make cancellation of a running callback in softirq context safe
against preemption.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0134-hrtimer-fixup-hrtimer-callback-changes-for-preempt-r.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0134-hrtimer-fixup-hrtimer-callback-changes-for-preempt-r.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0134-hrtimer-fixup-hrtimer-callback-changes-for-preempt-r.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From c8adfa3090d7d15567ece69cef2d5f724ade0d4d Mon Sep 17 00:00:00 2001
+From c495d005449523772e27a22fb74814dc3cebff8e Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 3 Jul 2009 08:44:31 -0500
-Subject: [PATCH 134/290] hrtimer: fixup hrtimer callback changes for
+Subject: [PATCH 134/304] hrtimer: fixup hrtimer callback changes for
preempt-rt
In preempt-rt we can not call the callbacks which take sleeping locks
@@ -377,7 +377,7 @@
/**
diff --git a/kernel/sched.c b/kernel/sched.c
-index d24f681..297fc34 100644
+index 6c05b86..a877974 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)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0135-hrtimer-Don-t-call-the-timer-handler-from-hrtimer_st.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0135-hrtimer-Don-t-call-the-timer-handler-from-hrtimer_st.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0135-hrtimer-Don-t-call-the-timer-handler-from-hrtimer_st.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 88b473276ccaf8d1f5a236a71c58421474a5c969 Mon Sep 17 00:00:00 2001
+From 80cc960e628509c72f63a7327a4dc22707a02b81 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Fri, 12 Aug 2011 17:39:54 +0200
-Subject: [PATCH 135/290] hrtimer: Don't call the timer handler from
+Subject: [PATCH 135/304] hrtimer: Don't call the timer handler from
hrtimer_start
[<ffffffff812de4a9>] __delay+0xf/0x11
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0136-hrtimer-Add-missing-debug_activate-aid-Was-Re-ANNOUN.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0136-hrtimer-Add-missing-debug_activate-aid-Was-Re-ANNOUN.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0136-hrtimer-Add-missing-debug_activate-aid-Was-Re-ANNOUN.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b1b7baf88ee36d1dc06f9e24b935f4f04e1c51a5 Mon Sep 17 00:00:00 2001
+From fcb726bafb57becc09cc99388c4fb4d5bcefaa06 Mon Sep 17 00:00:00 2001
From: Yong Zhang <yong.zhang0 at gmail.com>
Date: Thu, 13 Oct 2011 15:52:30 +0800
-Subject: [PATCH 136/290] hrtimer: Add missing debug_activate() aid [Was: Re:
+Subject: [PATCH 136/304] hrtimer: Add missing debug_activate() aid [Was: Re:
[ANNOUNCE] 3.0.6-rt17]
On Fri, Oct 07, 2011 at 10:25:25AM -0700, Fernando Lopez-Lezcano wrote:
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0137-hrtimer-fix-reprogram-madness.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0137-hrtimer-fix-reprogram-madness.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0137-hrtimer-fix-reprogram-madness.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 9517a5513e1688b5df89e1db59c8ca37c2e3278f Mon Sep 17 00:00:00 2001
+From 259c005008b39c1fac836af67bf651f0a431999f Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 14 Sep 2011 14:48:43 +0200
-Subject: [PATCH 137/290] hrtimer-fix-reprogram-madness.patch
+Subject: [PATCH 137/304] hrtimer-fix-reprogram-madness.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0138-timer-fd-Prevent-live-lock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0138-timer-fd-Prevent-live-lock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0138-timer-fd-Prevent-live-lock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 2170bc5b3240c85b076711c07295b6e4324b8e93 Mon Sep 17 00:00:00 2001
+From dfabc4810806a74eb211576823ab4a92454532ba Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 25 Jan 2012 11:08:40 +0100
-Subject: [PATCH 138/290] timer-fd: Prevent live lock
+Subject: [PATCH 138/304] timer-fd: Prevent live lock
If hrtimer_try_to_cancel() requires a retry, then depending on the
priority setting te retry loop might prevent timer callback completion
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0139-posix-timers-thread-posix-cpu-timers-on-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0139-posix-timers-thread-posix-cpu-timers-on-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0139-posix-timers-thread-posix-cpu-timers-on-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f4b03e8e79b47f6e220de26c4e0fd97834d17a05 Mon Sep 17 00:00:00 2001
+From 520d1632aa94a5c4a2a9bcb4bdb6337c0dde9d49 Mon Sep 17 00:00:00 2001
From: John Stultz <johnstul at us.ibm.com>
Date: Fri, 3 Jul 2009 08:29:58 -0500
-Subject: [PATCH 139/290] posix-timers: thread posix-cpu-timers on -rt
+Subject: [PATCH 139/304] posix-timers: thread posix-cpu-timers on -rt
posix-cpu-timer code takes non -rt safe locks in hard irq
context. Move it to a thread.
@@ -44,7 +44,7 @@
[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 c533510..5c3fa60 100644
+index a7b7888..0e301c9 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1359,6 +1359,9 @@ struct task_struct {
@@ -58,7 +58,7 @@
/* process credentials */
const struct cred __rcu *real_cred; /* objective and real subjective task
diff --git a/init/main.c b/init/main.c
-index d30d42a..6569987 100644
+index feda146..f2936db 100644
--- a/init/main.c
+++ b/init/main.c
@@ -68,6 +68,7 @@
@@ -70,7 +70,7 @@
#include <asm/io.h>
#include <asm/bugs.h>
diff --git a/kernel/fork.c b/kernel/fork.c
-index 78335bb..ab30847 100644
+index 5bc7283..f56f289 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)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0140-posix-timers-Shorten-posix_cpu_timers-CPU-kernel-thr.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0140-posix-timers-Shorten-posix_cpu_timers-CPU-kernel-thr.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0140-posix-timers-Shorten-posix_cpu_timers-CPU-kernel-thr.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6ff4251bfa27c9de827ba3b434713c66c07e21dd Mon Sep 17 00:00:00 2001
+From 3af1c60b1c7f8d6476e1f7d80532ac012c06f99c Mon Sep 17 00:00:00 2001
From: Arnaldo Carvalho de Melo <acme at redhat.com>
Date: Fri, 3 Jul 2009 08:30:00 -0500
-Subject: [PATCH 140/290] posix-timers: Shorten posix_cpu_timers/<CPU> kernel
+Subject: [PATCH 140/304] posix-timers: Shorten posix_cpu_timers/<CPU> kernel
thread names
Shorten the softirq kernel thread names because they always overflow the
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0141-posix-timers-Avoid-wakeups-when-no-timers-are-active.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0141-posix-timers-Avoid-wakeups-when-no-timers-are-active.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0141-posix-timers-Avoid-wakeups-when-no-timers-are-active.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 23c6ae2a1f7a12000c6245fc5be2cf035afdf463 Mon Sep 17 00:00:00 2001
+From f9f50318c7074a34758a9957e49675157e0c0dd1 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 3 Jul 2009 08:44:44 -0500
-Subject: [PATCH 141/290] posix-timers: Avoid wakeups when no timers are
+Subject: [PATCH 141/304] posix-timers: Avoid wakeups when no timers are
active
Waking the thread even when no timers are scheduled is useless.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0142-sched-delay-put-task.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0142-sched-delay-put-task.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0142-sched-delay-put-task.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e425c25dfad7a3a340eabca8b6aa7a878f3ac1ac Mon Sep 17 00:00:00 2001
+From 294783e46b9eafa0a3142be026d004645e469ff4 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 31 May 2011 16:59:16 +0200
-Subject: [PATCH 142/290] sched-delay-put-task.patch
+Subject: [PATCH 142/304] sched-delay-put-task.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -10,7 +10,7 @@
2 files changed, 24 insertions(+)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 5c3fa60..3134428 100644
+index 0e301c9..678cdef 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1595,6 +1595,9 @@ struct task_struct {
@@ -48,7 +48,7 @@
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 ab30847..9bb21df 100644
+index f56f289..2b985c7 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -198,7 +198,18 @@ void __put_task_struct(struct task_struct *tsk)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0143-sched-limit-nr-migrate.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0143-sched-limit-nr-migrate.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0143-sched-limit-nr-migrate.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 88542f86d8612f0c39a0ffe623e2be36a6bea8fe Mon Sep 17 00:00:00 2001
+From b8085b59934379e66f5c53eda457600a6d807300 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 6 Jun 2011 12:12:51 +0200
-Subject: [PATCH 143/290] sched-limit-nr-migrate.patch
+Subject: [PATCH 143/304] sched-limit-nr-migrate.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 4 insertions(+)
diff --git a/kernel/sched.c b/kernel/sched.c
-index 297fc34..f0eb8d2 100644
+index a877974..2fd0f7c 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -939,7 +939,11 @@ late_initcall(sched_init_debug);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0144-sched-mmdrop-delayed.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0144-sched-mmdrop-delayed.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0144-sched-mmdrop-delayed.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d54ca1ad1c99aa7aae0cbfc32a29aaa031e4189b Mon Sep 17 00:00:00 2001
+From d1dd3f0f604181868dc280db425705e75842d2ce Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 6 Jun 2011 12:20:33 +0200
-Subject: [PATCH 144/290] sched-mmdrop-delayed.patch
+Subject: [PATCH 144/304] sched-mmdrop-delayed.patch
Needs thread context (pgd_lock) -> ifdeffed. workqueues wont work with
RT
@@ -37,7 +37,7 @@
static inline void mm_init_cpumask(struct mm_struct *mm)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 3134428..3f36640 100644
+index 678cdef..cb87a0c 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -2280,12 +2280,24 @@ extern struct mm_struct * mm_alloc(void);
@@ -66,7 +66,7 @@
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 9bb21df..2a4a32b 100644
+index 2b985c7..e2d8055 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -203,7 +203,7 @@ EXPORT_SYMBOL_GPL(__put_task_struct);
@@ -99,10 +99,10 @@
* Decrement the use count and release all resources for an mm.
*/
diff --git a/kernel/sched.c b/kernel/sched.c
-index f0eb8d2..8af4f7f 100644
+index 2fd0f7c..188c3b6bf 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -3170,8 +3170,12 @@ static void finish_task_switch(struct rq *rq, struct task_struct *prev)
+@@ -3171,8 +3171,12 @@ static void finish_task_switch(struct rq *rq, struct task_struct *prev)
finish_lock_switch(rq, prev);
fire_sched_in_preempt_notifiers(current);
@@ -116,7 +116,7 @@
if (unlikely(prev_state == TASK_DEAD)) {
/*
* Remove function-return probe instances associated with this
-@@ -6495,6 +6499,8 @@ static int migration_cpu_stop(void *data)
+@@ -6496,6 +6500,8 @@ static int migration_cpu_stop(void *data)
#ifdef CONFIG_HOTPLUG_CPU
@@ -125,7 +125,7 @@
/*
* Ensures that the idle task is using init_mm right before its cpu goes
* offline.
-@@ -6507,7 +6513,12 @@ void idle_task_exit(void)
+@@ -6508,7 +6514,12 @@ void idle_task_exit(void)
if (mm != &init_mm)
switch_mm(mm, &init_mm, current);
@@ -139,7 +139,7 @@
}
/*
-@@ -6852,6 +6863,12 @@ migration_call(struct notifier_block *nfb, unsigned long action, void *hcpu)
+@@ -6853,6 +6864,12 @@ migration_call(struct notifier_block *nfb, unsigned long action, void *hcpu)
migrate_nr_uninterruptible(rq);
calc_global_load_remove(rq);
break;
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0145-sched-rt-mutex-wakeup.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0145-sched-rt-mutex-wakeup.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0145-sched-rt-mutex-wakeup.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5b806c00aacae2ae74726e6adec729bb2b328bcb Mon Sep 17 00:00:00 2001
+From 7c1160eb24b48219cb9fa1269538ba08606715e3 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 25 Jun 2011 09:21:04 +0200
-Subject: [PATCH 145/290] sched-rt-mutex-wakeup.patch
+Subject: [PATCH 145/304] sched-rt-mutex-wakeup.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -10,7 +10,7 @@
2 files changed, 33 insertions(+), 1 deletion(-)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 3f36640..57d5b54 100644
+index cb87a0c..5dc840b 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1073,6 +1073,7 @@ struct sched_domain;
@@ -38,7 +38,7 @@
#ifdef CONFIG_SMP
extern void kick_process(struct task_struct *tsk);
diff --git a/kernel/sched.c b/kernel/sched.c
-index 8af4f7f..d3e327d 100644
+index 188c3b6bf..3bfd00a 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -2823,8 +2823,25 @@ try_to_wake_up(struct task_struct *p, unsigned int state, int wake_flags)
@@ -68,7 +68,7 @@
success = 1; /* we're going to change ->state */
cpu = task_cpu(p);
-@@ -2896,6 +2913,18 @@ int wake_up_process(struct task_struct *p)
+@@ -2897,6 +2914,18 @@ int wake_up_process(struct task_struct *p)
}
EXPORT_SYMBOL(wake_up_process);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0146-sched-prevent-idle-boost.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0146-sched-prevent-idle-boost.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0146-sched-prevent-idle-boost.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ddd984597472622dfb6a17ed1c38c173aac80ec2 Mon Sep 17 00:00:00 2001
+From 28d830333bea1f07d22a4ef7e9865b5f53281631 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 6 Jun 2011 20:07:38 +0200
-Subject: [PATCH 146/290] sched-prevent-idle-boost.patch
+Subject: [PATCH 146/304] sched-prevent-idle-boost.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,10 +9,10 @@
1 file changed, 19 insertions(+), 2 deletions(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index d3e327d..b16b7e4 100644
+index 3bfd00a..0a2a1b2a 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -5229,6 +5229,24 @@ void rt_mutex_setprio(struct task_struct *p, int prio)
+@@ -5230,6 +5230,24 @@ void rt_mutex_setprio(struct task_struct *p, int prio)
rq = __task_rq_lock(p);
@@ -37,7 +37,7 @@
trace_sched_pi_setprio(p, prio);
oldprio = p->prio;
prev_class = p->sched_class;
-@@ -5252,11 +5270,10 @@ void rt_mutex_setprio(struct task_struct *p, int prio)
+@@ -5253,11 +5271,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);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0147-sched-might-sleep-do-not-account-rcu-depth.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0147-sched-might-sleep-do-not-account-rcu-depth.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0147-sched-might-sleep-do-not-account-rcu-depth.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d7e3d27f8edc5ecbf818a9138de61a1ff26cb508 Mon Sep 17 00:00:00 2001
+From 4aa79c5f415b8cbcfae5ed0028424fce37f14f04 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 7 Jun 2011 09:19:06 +0200
-Subject: [PATCH 147/290] sched-might-sleep-do-not-account-rcu-depth.patch
+Subject: [PATCH 147/304] sched-might-sleep-do-not-account-rcu-depth.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -35,10 +35,10 @@
/* Internal to kernel */
diff --git a/kernel/sched.c b/kernel/sched.c
-index b16b7e4..afc9d85 100644
+index 0a2a1b2a..0b54ef6 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -8660,7 +8660,8 @@ void __init sched_init(void)
+@@ -8661,7 +8661,8 @@ void __init sched_init(void)
#ifdef CONFIG_DEBUG_ATOMIC_SLEEP
static inline int preempt_count_equals(int preempt_offset)
{
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0148-sched-Break-out-from-load_balancing-on-rq_lock-conte.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0148-sched-Break-out-from-load_balancing-on-rq_lock-conte.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0148-sched-Break-out-from-load_balancing-on-rq_lock-conte.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a6fc7a3e68febc9363f303cc3a5945893d8051de Mon Sep 17 00:00:00 2001
+From 3fb29dcca75263114e79aafeaed4313f4df7808b Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <peterz at infradead.org>
Date: Tue, 16 Mar 2010 14:31:44 -0700
-Subject: [PATCH 148/290] sched: Break out from load_balancing on rq_lock
+Subject: [PATCH 148/304] sched: Break out from load_balancing on rq_lock
contention
Also limit NEW_IDLE pull
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0149-sched-cond-resched.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0149-sched-cond-resched.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0149-sched-cond-resched.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From dddd928d9cf46a871272555aa8e31d29da24deff Mon Sep 17 00:00:00 2001
+From 0b7204df6f1f3a3a937a6c1faf67ea98d1d2efc2 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 7 Jun 2011 11:25:03 +0200
-Subject: [PATCH 149/290] sched-cond-resched.patch
+Subject: [PATCH 149/304] sched-cond-resched.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,10 +9,10 @@
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index afc9d85..eb84999 100644
+index 0b54ef6..12a38a8 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -5967,9 +5967,17 @@ static inline int should_resched(void)
+@@ -5968,9 +5968,17 @@ static inline int should_resched(void)
static void __cond_resched(void)
{
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0150-cond-resched-softirq-fix.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0150-cond-resched-softirq-fix.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0150-cond-resched-softirq-fix.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 18e9d8dd0307cf71e24164abb1697de1668c613d Mon Sep 17 00:00:00 2001
+From 60ee2ad48cc2651bdfb4a56a3f191a0af445a1d8 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 14 Jul 2011 09:56:44 +0200
-Subject: [PATCH 150/290] cond-resched-softirq-fix.patch
+Subject: [PATCH 150/304] cond-resched-softirq-fix.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -10,7 +10,7 @@
2 files changed, 6 insertions(+)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 57d5b54..08f5c5b 100644
+index 5dc840b..72bfb2d 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -2614,12 +2614,16 @@ extern int __cond_resched_lock(spinlock_t *lock);
@@ -31,10 +31,10 @@
/*
* Does a critical section need to be broken due to another
diff --git a/kernel/sched.c b/kernel/sched.c
-index eb84999..bdb2d80 100644
+index 12a38a8..1a9ff1a2 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -6018,6 +6018,7 @@ int __cond_resched_lock(spinlock_t *lock)
+@@ -6019,6 +6019,7 @@ int __cond_resched_lock(spinlock_t *lock)
}
EXPORT_SYMBOL(__cond_resched_lock);
@@ -42,7 +42,7 @@
int __sched __cond_resched_softirq(void)
{
BUG_ON(!in_softirq());
-@@ -6031,6 +6032,7 @@ int __sched __cond_resched_softirq(void)
+@@ -6032,6 +6033,7 @@ int __sched __cond_resched_softirq(void)
return 0;
}
EXPORT_SYMBOL(__cond_resched_softirq);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0151-sched-no-work-when-pi-blocked.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0151-sched-no-work-when-pi-blocked.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0151-sched-no-work-when-pi-blocked.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 176e5a2ceedfc3169fee74b6c9ac665276c5a1d8 Mon Sep 17 00:00:00 2001
+From 214450e3bfcd2e6ebe7959166e168384ae539b5a Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 20:46:52 +0200
-Subject: [PATCH 151/290] sched-no-work-when-pi-blocked.patch
+Subject: [PATCH 151/304] sched-no-work-when-pi-blocked.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -10,7 +10,7 @@
2 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 08f5c5b..96bfec9 100644
+index 72bfb2d..367e219 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -2107,12 +2107,20 @@ extern unsigned int sysctl_sched_cfs_bandwidth_slice;
@@ -35,10 +35,10 @@
extern bool yield_to(struct task_struct *p, bool preempt);
diff --git a/kernel/sched.c b/kernel/sched.c
-index bdb2d80..5add350 100644
+index 1a9ff1a2..c63fd07 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4653,7 +4653,7 @@ need_resched:
+@@ -4654,7 +4654,7 @@ need_resched:
static inline void sched_submit_work(struct task_struct *tsk)
{
@@ -47,7 +47,7 @@
return;
/*
-@@ -4673,6 +4673,9 @@ static inline void sched_submit_work(struct task_struct *tsk)
+@@ -4674,6 +4674,9 @@ static inline void sched_submit_work(struct task_struct *tsk)
static inline void sched_update_worker(struct task_struct *tsk)
{
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0152-cond-resched-lock-rt-tweak.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0152-cond-resched-lock-rt-tweak.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0152-cond-resched-lock-rt-tweak.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f6fcc9f51633094dbea10cfc5461f3182686cd7b Mon Sep 17 00:00:00 2001
+From 709cc9516ae93ef90c426068dbc6242214de62a0 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 22:51:33 +0200
-Subject: [PATCH 152/290] cond-resched-lock-rt-tweak.patch
+Subject: [PATCH 152/304] cond-resched-lock-rt-tweak.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 96bfec9..7a1df91 100644
+index 367e219..e946538 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -2611,7 +2611,7 @@ extern int _cond_resched(void);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0153-sched-disable-ttwu-queue.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0153-sched-disable-ttwu-queue.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0153-sched-disable-ttwu-queue.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ff969f01bf4daf334006689748ac77290cf2af62 Mon Sep 17 00:00:00 2001
+From cb4af5893b65db6c82564889a904d738dbe7bb44 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 13 Sep 2011 16:42:35 +0200
-Subject: [PATCH 153/290] sched-disable-ttwu-queue.patch
+Subject: [PATCH 153/304] sched-disable-ttwu-queue.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0154-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0154-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0154-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ad6d9b43921dbcb7c18059d9230da274f0c9da77 Mon Sep 17 00:00:00 2001
+From 6b09b1f60dea7f3d4ef20985a01a10abf567e06d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 18 Jul 2011 17:03:52 +0200
-Subject: [PATCH 154/290] sched: Disable CONFIG_RT_GROUP_SCHED on RT
+Subject: [PATCH 154/304] sched: Disable CONFIG_RT_GROUP_SCHED on RT
Carsten reported problems when running:
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0155-sched-ttwu-Return-success-when-only-changing-the-sav.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0155-sched-ttwu-Return-success-when-only-changing-the-sav.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0155-sched-ttwu-Return-success-when-only-changing-the-sav.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6d9d86a7aae82c3d57806b70a0fc07313c3eef5f Mon Sep 17 00:00:00 2001
+From 563fe54372827467643e41c3ef1b8b54e69671eb Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 13 Dec 2011 21:42:19 +0100
-Subject: [PATCH 155/290] sched: ttwu: Return success when only changing the
+Subject: [PATCH 155/304] sched: ttwu: Return success when only changing the
saved_state value
When a task blocks on a rt lock, it saves the current state in
@@ -21,7 +21,7 @@
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index 5add350..92b84a7 100644
+index c63fd07..49b0d1d 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -2830,8 +2830,10 @@ try_to_wake_up(struct task_struct *p, unsigned int state, int wake_flags)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0156-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0156-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0156-stop_machine-convert-stop_machine_run-to-PREEMPT_RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From c4d3bd79f72c27776026f2d94d617cfde1b67e67 Mon Sep 17 00:00:00 2001
+From fa15c2f6adf5a2ccc231048fe73355675e2b2a8f Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:27 -0500
-Subject: [PATCH 156/290] stop_machine: convert stop_machine_run() to
+Subject: [PATCH 156/304] stop_machine: convert stop_machine_run() to
PREEMPT_RT
Instead of playing with non-preemption, introduce explicit
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0157-stomp-machine-mark-stomper-thread.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0157-stomp-machine-mark-stomper-thread.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0157-stomp-machine-mark-stomper-thread.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7f4ff6acc0026c34a0ac5efbc56a2b3868385f48 Mon Sep 17 00:00:00 2001
+From 21749c7729a89c83b5733388206cab1f15a6a7f3 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 19:53:19 +0200
-Subject: [PATCH 157/290] stomp-machine-mark-stomper-thread.patch
+Subject: [PATCH 157/304] stomp-machine-mark-stomper-thread.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -10,7 +10,7 @@
2 files changed, 2 insertions(+)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 7a1df91..34ebf9e 100644
+index e946538..be35c44 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1826,6 +1826,7 @@ extern void thread_group_times(struct task_struct *p, cputime_t *ut, cputime_t *
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0158-stomp-machine-raw-lock.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0158-stomp-machine-raw-lock.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0158-stomp-machine-raw-lock.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 06accc353bb0799c87466dcf04b1d056efbbaf2a Mon Sep 17 00:00:00 2001
+From 188df0b3dd9ff95a1c907ae1112178a117420350 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 29 Jun 2011 11:01:51 +0200
-Subject: [PATCH 158/290] stomp-machine-raw-lock.patch
+Subject: [PATCH 158/304] stomp-machine-raw-lock.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0159-hotplug-Lightweight-get-online-cpus.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0159-hotplug-Lightweight-get-online-cpus.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0159-hotplug-Lightweight-get-online-cpus.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e7b4fbfc51ef3c3ed9040c445fba7d0208308da1 Mon Sep 17 00:00:00 2001
+From 47dbbdd179913a2b1a1e4a293e73d0257dce8315 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 15 Jun 2011 12:36:06 +0200
-Subject: [PATCH 159/290] hotplug: Lightweight get online cpus
+Subject: [PATCH 159/304] hotplug: Lightweight get online cpus
get_online_cpus() is a heavy weight function which involves a global
mutex. migrate_disable() wants a simpler construct which prevents only
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0160-hotplug-sync_unplug-No.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0160-hotplug-sync_unplug-No.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0160-hotplug-sync_unplug-No.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d4abd13b2575efdcb95fe9fe4efe680c847fcf73 Mon Sep 17 00:00:00 2001
+From 9bcaef23673feff23469506fe8ff7070e353b641 Mon Sep 17 00:00:00 2001
From: Yong Zhang <yong.zhang0 at gmail.com>
Date: Sun, 16 Oct 2011 18:56:43 +0800
-Subject: [PATCH 160/290] hotplug: sync_unplug: No " " in task name
+Subject: [PATCH 160/304] hotplug: sync_unplug: No " " in task name
Otherwise the output will look a little odd.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0161-hotplug-Reread-hotplug_pcp-on-pin_current_cpu-retry.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0161-hotplug-Reread-hotplug_pcp-on-pin_current_cpu-retry.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0161-hotplug-Reread-hotplug_pcp-on-pin_current_cpu-retry.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From baf6467fc88c40285465cf18dcf0122ce9629e0b Mon Sep 17 00:00:00 2001
+From 922d1b248869e8599205b24eb2db45d7c90ab10c Mon Sep 17 00:00:00 2001
From: Yong Zhang <yong.zhang0 at gmail.com>
Date: Thu, 28 Jul 2011 11:16:00 +0800
-Subject: [PATCH 161/290] hotplug: Reread hotplug_pcp on pin_current_cpu()
+Subject: [PATCH 161/304] hotplug: Reread hotplug_pcp on pin_current_cpu()
retry
When retry happens, it's likely that the task has been migrated to
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0162-sched-migrate-disable.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0162-sched-migrate-disable.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0162-sched-migrate-disable.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 3e5569daf9ed4d9954a1948f4e542cceca3108f1 Mon Sep 17 00:00:00 2001
+From 56129a4521d00ca24e6fd5ac1bf230c79615e928 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 16 Jun 2011 13:26:08 +0200
-Subject: [PATCH 162/290] sched-migrate-disable.patch
+Subject: [PATCH 162/304] sched-migrate-disable.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -32,7 +32,7 @@
# 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 34ebf9e..3e8b05e 100644
+index be35c44..1750a3c 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1263,6 +1263,7 @@ struct task_struct {
@@ -53,7 +53,7 @@
#ifdef CONFIG_PREEMPT_RT_FULL
static inline bool cur_pf_disabled(void) { return current->pagefault_disabled; }
#else
-@@ -2695,6 +2693,15 @@ static inline void set_task_cpu(struct task_struct *p, unsigned int cpu)
+@@ -2704,6 +2702,15 @@ static inline void set_task_cpu(struct task_struct *p, unsigned int cpu)
#endif /* CONFIG_SMP */
@@ -82,10 +82,10 @@
* Generic and arch helpers
*/
diff --git a/kernel/sched.c b/kernel/sched.c
-index 92b84a7..71b1015 100644
+index 49b0d1d..026cde6 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -6416,11 +6416,12 @@ static inline void sched_init_granularity(void)
+@@ -6417,11 +6417,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 @@
}
/*
-@@ -6471,7 +6472,7 @@ int set_cpus_allowed_ptr(struct task_struct *p, const struct cpumask *new_mask)
+@@ -6472,7 +6473,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 @@
goto out;
dest_cpu = cpumask_any_and(cpu_active_mask, new_mask);
-@@ -6490,6 +6491,83 @@ out:
+@@ -6491,6 +6492,83 @@ out:
}
EXPORT_SYMBOL_GPL(set_cpus_allowed_ptr);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0163-hotplug-use-migrate-disable.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0163-hotplug-use-migrate-disable.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0163-hotplug-use-migrate-disable.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7c1abaa29be60c9f9e18ddb6e690e8a8bf5e4dee Mon Sep 17 00:00:00 2001
+From 0fa4a5e8546db76436593a7089a90071cb282d31 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 19:35:29 +0200
-Subject: [PATCH 163/290] hotplug-use-migrate-disable.patch
+Subject: [PATCH 163/304] hotplug-use-migrate-disable.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0164-hotplug-Call-cpu_unplug_begin-before-DOWN_PREPARE.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0164-hotplug-Call-cpu_unplug_begin-before-DOWN_PREPARE.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0164-hotplug-Call-cpu_unplug_begin-before-DOWN_PREPARE.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f6148c8aaf6835fb2e3a105427acfb2e51f80b57 Mon Sep 17 00:00:00 2001
+From 4b68382c52e425c0d32bff441767e748488b5803 Mon Sep 17 00:00:00 2001
From: Yong Zhang <yong.zhang0 at gmail.com>
Date: Sun, 16 Oct 2011 18:56:44 +0800
-Subject: [PATCH 164/290] hotplug: Call cpu_unplug_begin() before DOWN_PREPARE
+Subject: [PATCH 164/304] hotplug: Call cpu_unplug_begin() before DOWN_PREPARE
cpu_unplug_begin() should be called before CPU_DOWN_PREPARE, because
at CPU_DOWN_PREPARE cpu_active is cleared and sched_domain is
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0165-ftrace-migrate-disable-tracing.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0165-ftrace-migrate-disable-tracing.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0165-ftrace-migrate-disable-tracing.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From c0dc79bae8bcfdaa70c50b72ce1ff5d4149e6548 Mon Sep 17 00:00:00 2001
+From 76285120bb9eb25fca2f7a7e891066f96492cd85 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 21:56:42 +0200
-Subject: [PATCH 165/290] ftrace-migrate-disable-tracing.patch
+Subject: [PATCH 165/304] ftrace-migrate-disable-tracing.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0166-tracing-Show-padding-as-unsigned-short.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0166-tracing-Show-padding-as-unsigned-short.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0166-tracing-Show-padding-as-unsigned-short.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b6b177bf165ec64767bb8d5de3750ebda1df5851 Mon Sep 17 00:00:00 2001
+From ddf8f0e7a7eb4cd7926e9b65f12f5e2c3a5b79fc Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Wed, 16 Nov 2011 13:19:35 -0500
-Subject: [PATCH 166/290] tracing: Show padding as unsigned short
+Subject: [PATCH 166/304] tracing: Show padding as unsigned short
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
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0167-migrate-disable-rt-variant.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0167-migrate-disable-rt-variant.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0167-migrate-disable-rt-variant.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 06389225368720c1ed7a0f95bd0f355ef47cad9b Mon Sep 17 00:00:00 2001
+From a07824556a7abd09e88a222c2aa05badde6a725c Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 19:48:20 +0200
-Subject: [PATCH 167/290] migrate-disable-rt-variant.patch
+Subject: [PATCH 167/304] migrate-disable-rt-variant.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0168-sched-Optimize-migrate_disable.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0168-sched-Optimize-migrate_disable.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0168-sched-Optimize-migrate_disable.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 16f40373006c30fc2fc82fd34a1e46f36f7c4baf Mon Sep 17 00:00:00 2001
+From 871522488cd5cd5d8d1d1101280ee6b8883f8125 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Thu, 11 Aug 2011 15:03:35 +0200
-Subject: [PATCH 168/290] sched: Optimize migrate_disable
+Subject: [PATCH 168/304] sched: Optimize migrate_disable
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 @@
1 file changed, 20 insertions(+), 4 deletions(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index 71b1015..a100bf4 100644
+index 026cde6..0c6556d 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -6511,7 +6511,19 @@ void migrate_disable(void)
+@@ -6512,7 +6512,19 @@ void migrate_disable(void)
preempt_enable();
return;
}
@@ -37,7 +37,7 @@
p->migrate_disable = 1;
mask = tsk_cpus_allowed(p);
-@@ -6522,7 +6534,7 @@ void migrate_disable(void)
+@@ -6523,7 +6535,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 @@
preempt_enable();
}
EXPORT_SYMBOL_GPL(migrate_disable);
-@@ -6550,7 +6562,11 @@ void migrate_enable(void)
+@@ -6551,7 +6563,11 @@ void migrate_enable(void)
return;
}
@@ -59,7 +59,7 @@
p->migrate_disable = 0;
mask = tsk_cpus_allowed(p);
-@@ -6562,7 +6578,7 @@ void migrate_enable(void)
+@@ -6563,7 +6579,7 @@ void migrate_enable(void)
p->rt.nr_cpus_allowed = cpumask_weight(mask);
}
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0169-sched-Generic-migrate_disable.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0169-sched-Generic-migrate_disable.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0169-sched-Generic-migrate_disable.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 2bc3981d6812a3be35a3a15daf3504ff9330e247 Mon Sep 17 00:00:00 2001
+From 76228df2036ad8b8e7f3ac0415a36c3182ba698b Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Thu, 11 Aug 2011 15:14:58 +0200
-Subject: [PATCH 169/290] sched: Generic migrate_disable
+Subject: [PATCH 169/304] sched: Generic migrate_disable
Make migrate_disable() be a preempt_disable() for !rt kernels. This
allows generic code to use it but still enforces that these code
@@ -65,7 +65,7 @@
#ifdef CONFIG_PREEMPT_NOTIFIERS
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 3e8b05e..b409b94 100644
+index 1750a3c..6cf7ed9 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1263,7 +1263,9 @@ struct task_struct {
@@ -78,7 +78,7 @@
cpumask_t cpus_allowed;
#ifdef CONFIG_PREEMPT_RCU
-@@ -2693,11 +2695,22 @@ static inline void set_task_cpu(struct task_struct *p, unsigned int cpu)
+@@ -2702,11 +2704,22 @@ static inline void set_task_cpu(struct task_struct *p, unsigned int cpu)
#endif /* CONFIG_SMP */
@@ -122,10 +122,10 @@
/*
* Callback to arch code if there's nosmp or maxcpus=0 on the
diff --git a/kernel/sched.c b/kernel/sched.c
-index a100bf4..8371ca2 100644
+index 0c6556d..d0f0f9f 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -6416,7 +6416,7 @@ static inline void sched_init_granularity(void)
+@@ -6417,7 +6417,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 @@
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);
-@@ -6472,7 +6472,7 @@ int set_cpus_allowed_ptr(struct task_struct *p, const struct cpumask *new_mask)
+@@ -6473,7 +6473,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 @@
goto out;
dest_cpu = cpumask_any_and(cpu_active_mask, new_mask);
-@@ -6491,6 +6491,7 @@ out:
+@@ -6492,6 +6492,7 @@ out:
}
EXPORT_SYMBOL_GPL(set_cpus_allowed_ptr);
@@ -151,7 +151,7 @@
void migrate_disable(void)
{
struct task_struct *p = current;
-@@ -6583,6 +6584,7 @@ void migrate_enable(void)
+@@ -6584,6 +6585,7 @@ void migrate_enable(void)
preempt_enable();
}
EXPORT_SYMBOL_GPL(migrate_enable);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0170-sched-rt-Fix-migrate_enable-thinko.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0170-sched-rt-Fix-migrate_enable-thinko.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0170-sched-rt-Fix-migrate_enable-thinko.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 225e1c222186816d4535450ec5e906b1faa1f185 Mon Sep 17 00:00:00 2001
+From a04ef0df12cb2ff85eb7d430c3dace25f68cf10d Mon Sep 17 00:00:00 2001
From: Mike Galbraith <efault at gmx.de>
Date: Tue, 23 Aug 2011 16:12:43 +0200
-Subject: [PATCH 170/290] sched, rt: Fix migrate_enable() thinko
+Subject: [PATCH 170/304] sched, rt: Fix migrate_enable() thinko
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 @@
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index 8371ca2..ffca20a 100644
+index d0f0f9f..ea3b7ce 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -6568,12 +6568,14 @@ void migrate_enable(void)
+@@ -6569,12 +6569,14 @@ void migrate_enable(void)
*/
rq = this_rq();
raw_spin_lock_irqsave(&rq->lock, flags);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0171-sched-teach-migrate_disable-about-atomic-contexts.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0171-sched-teach-migrate_disable-about-atomic-contexts.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0171-sched-teach-migrate_disable-about-atomic-contexts.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 1c5a1d5e2fe21ff6452f17aa9a2f5851d452e810 Mon Sep 17 00:00:00 2001
+From 2f26b41d2b06970f46cad9215944ee042b8c20c2 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Fri, 2 Sep 2011 14:29:27 +0200
-Subject: [PATCH 171/290] sched: teach migrate_disable about atomic contexts
+Subject: [PATCH 171/304] sched: teach migrate_disable about atomic contexts
<NMI> [<ffffffff812dafd8>] spin_bug+0x94/0xa8
[<ffffffff812db07f>] do_raw_spin_lock+0x43/0xea
@@ -35,7 +35,7 @@
2 files changed, 24 insertions(+)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index b409b94..43cdbef 100644
+index 6cf7ed9..c60cfde 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1265,6 +1265,9 @@ struct task_struct {
@@ -49,10 +49,10 @@
cpumask_t cpus_allowed;
diff --git a/kernel/sched.c b/kernel/sched.c
-index ffca20a..0589959 100644
+index ea3b7ce..c6429a5 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -6499,6 +6499,17 @@ void migrate_disable(void)
+@@ -6500,6 +6500,17 @@ void migrate_disable(void)
unsigned long flags;
struct rq *rq;
@@ -70,7 +70,7 @@
preempt_disable();
if (p->migrate_disable) {
p->migrate_disable++;
-@@ -6547,6 +6558,16 @@ void migrate_enable(void)
+@@ -6548,6 +6559,16 @@ void migrate_enable(void)
unsigned long flags;
struct rq *rq;
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0172-sched-Postpone-actual-migration-disalbe-to-schedule.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0172-sched-Postpone-actual-migration-disalbe-to-schedule.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0172-sched-Postpone-actual-migration-disalbe-to-schedule.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 0e07d6780dbf0d50c78f340eaae8e1d301604df6 Mon Sep 17 00:00:00 2001
+From 74220e6deb725404619c145008bfde44cb23cadc Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Tue, 27 Sep 2011 08:40:23 -0400
-Subject: [PATCH 172/290] sched: Postpone actual migration disalbe to schedule
+Subject: [PATCH 172/304] sched: Postpone actual migration disalbe to schedule
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 @@
1 file changed, 132 insertions(+), 119 deletions(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index 0589959..27d114a 100644
+index c6429a5..ae75aa5 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4549,6 +4549,135 @@ static inline void schedule_debug(struct task_struct *prev)
+@@ -4550,6 +4550,135 @@ static inline void schedule_debug(struct task_struct *prev)
schedstat_inc(this_rq(), sched_count);
}
@@ -162,7 +162,7 @@
static void put_prev_task(struct rq *rq, struct task_struct *prev)
{
if (prev->on_rq || rq->skip_clock_update < 0)
-@@ -4608,6 +4737,8 @@ need_resched:
+@@ -4609,6 +4738,8 @@ need_resched:
raw_spin_lock_irq(&rq->lock);
@@ -171,7 +171,7 @@
switch_count = &prev->nivcsw;
if (prev->state && !(preempt_count() & PREEMPT_ACTIVE)) {
if (unlikely(signal_pending_state(prev->state, prev))) {
-@@ -6416,7 +6547,7 @@ static inline void sched_init_granularity(void)
+@@ -6417,7 +6548,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 @@
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);
-@@ -6491,124 +6622,6 @@ out:
+@@ -6492,124 +6623,6 @@ out:
}
EXPORT_SYMBOL_GPL(set_cpus_allowed_ptr);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0173-sched-Do-not-compare-cpu-masks-in-scheduler.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0173-sched-Do-not-compare-cpu-masks-in-scheduler.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0173-sched-Do-not-compare-cpu-masks-in-scheduler.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From cbc1594d471422c996eaa3ff211ba235fed9ab31 Mon Sep 17 00:00:00 2001
+From 70b9fc3c26a8c9a9f87e51bf72504313bf81e962 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Tue, 27 Sep 2011 08:40:24 -0400
-Subject: [PATCH 173/290] sched: Do not compare cpu masks in scheduler
+Subject: [PATCH 173/304] sched: Do not compare cpu masks in scheduler
Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
Cc: Peter Zijlstra <peterz at infradead.org>
@@ -13,10 +13,10 @@
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index 27d114a..08189cd 100644
+index ae75aa5..e0f9c6a 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4577,16 +4577,12 @@ static inline void update_migrate_disable(struct task_struct *p)
+@@ -4578,16 +4578,12 @@ static inline void update_migrate_disable(struct task_struct *p)
*/
mask = tsk_cpus_allowed(p);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0174-sched-Have-migrate_disable-ignore-bounded-threads.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0174-sched-Have-migrate_disable-ignore-bounded-threads.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0174-sched-Have-migrate_disable-ignore-bounded-threads.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 57560efcffd482d6ce36341b6edc23be9fc72274 Mon Sep 17 00:00:00 2001
+From 73f8cd14679fa97e206d060e8d86df2f4489f24e Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Tue, 27 Sep 2011 08:40:25 -0400
-Subject: [PATCH 174/290] sched: Have migrate_disable ignore bounded threads
+Subject: [PATCH 174/304] sched: Have migrate_disable ignore bounded threads
Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
Cc: Peter Zijlstra <peterz at infradead.org>
@@ -13,10 +13,10 @@
1 file changed, 9 insertions(+), 14 deletions(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index 08189cd..24ebc15 100644
+index e0f9c6a..65b9691 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4589,7 +4589,7 @@ void migrate_disable(void)
+@@ -4590,7 +4590,7 @@ void migrate_disable(void)
{
struct task_struct *p = current;
@@ -25,7 +25,7 @@
#ifdef CONFIG_SCHED_DEBUG
p->migrate_disable_atomic++;
#endif
-@@ -4620,7 +4620,7 @@ void migrate_enable(void)
+@@ -4621,7 +4621,7 @@ void migrate_enable(void)
unsigned long flags;
struct rq *rq;
@@ -34,7 +34,7 @@
#ifdef CONFIG_SCHED_DEBUG
p->migrate_disable_atomic--;
#endif
-@@ -4641,26 +4641,21 @@ void migrate_enable(void)
+@@ -4642,26 +4642,21 @@ void migrate_enable(void)
if (unlikely(migrate_disabled_updated(p))) {
/*
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0175-sched-clear-pf-thread-bound-on-fallback-rq.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0175-sched-clear-pf-thread-bound-on-fallback-rq.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0175-sched-clear-pf-thread-bound-on-fallback-rq.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 41be12eb080afe653314cba0264bb429a0b1ea64 Mon Sep 17 00:00:00 2001
+From 72c7cceb45d7265f8ba1f4cc8e27c91e54f41226 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 4 Nov 2011 20:48:36 +0100
-Subject: [PATCH 175/290] sched-clear-pf-thread-bound-on-fallback-rq.patch
+Subject: [PATCH 175/304] sched-clear-pf-thread-bound-on-fallback-rq.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index 24ebc15..ba3ddde 100644
+index 65b9691..364a863 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -2566,7 +2566,12 @@ static int select_fallback_rq(int cpu, struct task_struct *p)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0176-ftrace-crap.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0176-ftrace-crap.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0176-ftrace-crap.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 497eb721f2f293d0c0d51581a4cb68c5a3981f71 Mon Sep 17 00:00:00 2001
+From d72ea913a6aab3d03080454d67346a029a52fe8a Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 9 Sep 2011 16:55:53 +0200
-Subject: [PATCH 176/290] ftrace-crap.patch
+Subject: [PATCH 176/304] ftrace-crap.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0177-ring-buffer-Convert-reader_lock-from-raw_spin_lock-i.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0177-ring-buffer-Convert-reader_lock-from-raw_spin_lock-i.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0177-ring-buffer-Convert-reader_lock-from-raw_spin_lock-i.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a0a3e292e7d033b8557199c1037115ded89aeec6 Mon Sep 17 00:00:00 2001
+From 86f2d8b8c3700f0672b762360e500a3fa925beb7 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Tue, 27 Sep 2011 13:56:50 -0400
-Subject: [PATCH 177/290] ring-buffer: Convert reader_lock from raw_spin_lock
+Subject: [PATCH 177/304] ring-buffer: Convert reader_lock from raw_spin_lock
into spin_lock
The reader_lock is mostly taken in normal context with interrupts enabled.
@@ -44,7 +44,7 @@
1 file changed, 81 insertions(+), 70 deletions(-)
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
-index f5b7b5c..354017f 100644
+index 6fdc629..70112f3 100644
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -478,7 +478,7 @@ struct ring_buffer_per_cpu {
@@ -163,16 +163,16 @@
/*
* if the tail is on reader_page, oldest time stamp is on the reader
* page
-@@ -2699,7 +2741,7 @@ unsigned long ring_buffer_oldest_event_ts(struct ring_buffer *buffer, int cpu)
- else
+@@ -2700,7 +2742,7 @@ unsigned long ring_buffer_oldest_event_ts(struct ring_buffer *buffer, int cpu)
bpage = rb_set_head_page(cpu_buffer);
- ret = bpage->page->time_stamp;
+ if (bpage)
+ ret = bpage->page->time_stamp;
- raw_spin_unlock_irqrestore(&cpu_buffer->reader_lock, flags);
+ spin_unlock_irqrestore(&cpu_buffer->reader_lock, flags);
return ret;
}
-@@ -2863,15 +2905,16 @@ void ring_buffer_iter_reset(struct ring_buffer_iter *iter)
+@@ -2864,15 +2906,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 @@
}
EXPORT_SYMBOL_GPL(ring_buffer_iter_reset);
-@@ -3289,21 +3332,6 @@ rb_iter_peek(struct ring_buffer_iter *iter, u64 *ts)
+@@ -3292,21 +3335,6 @@ rb_iter_peek(struct ring_buffer_iter *iter, u64 *ts)
}
EXPORT_SYMBOL_GPL(ring_buffer_iter_peek);
@@ -213,7 +213,7 @@
/**
* ring_buffer_peek - peek at the next event to be read
* @buffer: The ring buffer to read
-@@ -3321,22 +3349,17 @@ ring_buffer_peek(struct ring_buffer *buffer, int cpu, u64 *ts,
+@@ -3324,22 +3352,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 @@
if (event && event->type_len == RINGBUF_TYPE_PADDING)
goto again;
-@@ -3358,11 +3381,12 @@ ring_buffer_iter_peek(struct ring_buffer_iter *iter, u64 *ts)
+@@ -3361,11 +3384,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 @@
if (event && event->type_len == RINGBUF_TYPE_PADDING)
goto again;
-@@ -3388,9 +3412,7 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
+@@ -3391,9 +3415,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 @@
again:
/* might be called in atomic */
-@@ -3400,9 +3422,7 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
+@@ -3403,9 +3425,7 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
goto out;
cpu_buffer = buffer->buffers[cpu];
@@ -276,7 +276,7 @@
event = rb_buffer_peek(cpu_buffer, ts, lost_events);
if (event) {
-@@ -3410,9 +3430,8 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
+@@ -3413,9 +3433,8 @@ ring_buffer_consume(struct ring_buffer *buffer, int cpu, u64 *ts,
rb_advance_reader(cpu_buffer);
}
@@ -288,7 +288,7 @@
out:
preempt_enable();
-@@ -3497,17 +3516,18 @@ ring_buffer_read_start(struct ring_buffer_iter *iter)
+@@ -3500,17 +3519,18 @@ ring_buffer_read_start(struct ring_buffer_iter *iter)
{
struct ring_buffer_per_cpu *cpu_buffer;
unsigned long flags;
@@ -309,7 +309,7 @@
}
EXPORT_SYMBOL_GPL(ring_buffer_read_start);
-@@ -3541,8 +3561,9 @@ ring_buffer_read(struct ring_buffer_iter *iter, u64 *ts)
+@@ -3544,8 +3564,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 @@
again:
event = rb_iter_peek(iter, ts);
if (!event)
-@@ -3553,7 +3574,7 @@ ring_buffer_read(struct ring_buffer_iter *iter, u64 *ts)
+@@ -3556,7 +3577,7 @@ ring_buffer_read(struct ring_buffer_iter *iter, u64 *ts)
rb_advance_iter(iter);
out:
@@ -329,7 +329,7 @@
return event;
}
-@@ -3618,13 +3639,14 @@ void ring_buffer_reset_cpu(struct ring_buffer *buffer, int cpu)
+@@ -3621,13 +3642,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 @@
if (RB_WARN_ON(cpu_buffer, local_read(&cpu_buffer->committing)))
goto out;
-@@ -3636,7 +3658,7 @@ void ring_buffer_reset_cpu(struct ring_buffer *buffer, int cpu)
+@@ -3639,7 +3661,7 @@ void ring_buffer_reset_cpu(struct ring_buffer *buffer, int cpu)
arch_spin_unlock(&cpu_buffer->lock);
out:
@@ -354,7 +354,7 @@
atomic_dec(&cpu_buffer->record_disabled);
}
-@@ -3663,22 +3685,16 @@ int ring_buffer_empty(struct ring_buffer *buffer)
+@@ -3666,22 +3688,16 @@ int ring_buffer_empty(struct ring_buffer *buffer)
{
struct ring_buffer_per_cpu *cpu_buffer;
unsigned long flags;
@@ -380,7 +380,7 @@
if (!ret)
return 0;
-@@ -3697,22 +3713,16 @@ int ring_buffer_empty_cpu(struct ring_buffer *buffer, int cpu)
+@@ -3700,22 +3716,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 @@
return ret;
}
-@@ -3887,6 +3897,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
+@@ -3890,6 +3900,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
unsigned int commit;
unsigned int read;
u64 save_timestamp;
@@ -414,7 +414,7 @@
int ret = -1;
if (!cpumask_test_cpu(cpu, buffer->cpumask))
-@@ -3908,7 +3919,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
+@@ -3911,7 +3922,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
if (!bpage)
goto out;
@@ -423,7 +423,7 @@
reader = rb_get_reader_page(cpu_buffer);
if (!reader)
-@@ -4032,7 +4043,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
+@@ -4035,7 +4046,7 @@ int ring_buffer_read_page(struct ring_buffer *buffer,
memset(&bpage->data[commit], 0, BUF_PAGE_SIZE - commit);
out_unlock:
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0178-net-netif_rx_ni-migrate-disable.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0178-net-netif_rx_ni-migrate-disable.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0178-net-netif_rx_ni-migrate-disable.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From dfb41dbe78ed4de179eb8f6bb6fa7b128579c7a8 Mon Sep 17 00:00:00 2001
+From 3be9b12224d3e650627ea14bf347346c844fbb40 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 16:29:27 +0200
-Subject: [PATCH 178/290] net-netif_rx_ni-migrate-disable.patch
+Subject: [PATCH 178/304] net-netif_rx_ni-migrate-disable.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0179-softirq-Sanitize-softirq-pending-for-NOHZ-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0179-softirq-Sanitize-softirq-pending-for-NOHZ-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0179-softirq-Sanitize-softirq-pending-for-NOHZ-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5d3504f66feb1643ad750f103d76c0862ead8cf9 Mon Sep 17 00:00:00 2001
+From a786db1efaa471800fa2c83027891f3f60d2aa6e Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 3 Jul 2009 13:16:38 -0500
-Subject: [PATCH 179/290] softirq: Sanitize softirq pending for NOHZ/RT
+Subject: [PATCH 179/304] softirq: Sanitize softirq pending for NOHZ/RT
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0180-lockdep-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0180-lockdep-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0180-lockdep-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d23180dff4526181aefcfef4e512320d7155450d Mon Sep 17 00:00:00 2001
+From 3bc8268188671ff46d19dabec53ee7de05411f05 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 18:51:23 +0200
-Subject: [PATCH 180/290] lockdep-rt.patch
+Subject: [PATCH 180/304] lockdep-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0181-mutex-no-spin-on-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0181-mutex-no-spin-on-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0181-mutex-no-spin-on-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 9d91409d9dad1d03ab6d745042d5439566d13077 Mon Sep 17 00:00:00 2001
+From f090ec1cf9771c94cef88626b3c1d3236d615d48 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 21:51:45 +0200
-Subject: [PATCH 181/290] mutex-no-spin-on-rt.patch
+Subject: [PATCH 181/304] mutex-no-spin-on-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0182-softirq-local-lock.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0182-softirq-local-lock.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0182-softirq-local-lock.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From efe27e60c4e5df1bc32ac62a0f5cc15f5a583602 Mon Sep 17 00:00:00 2001
+From e99ada6718f1066d3eb1b7b747522ee350630f72 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 28 Jun 2011 15:57:18 +0200
-Subject: [PATCH 182/290] softirq-local-lock.patch
+Subject: [PATCH 182/304] softirq-local-lock.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -87,7 +87,7 @@
* Autoprobing for irqs:
*
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 43cdbef..a867df1 100644
+index c60cfde..6d920a0 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1605,6 +1605,7 @@ struct task_struct {
@@ -99,7 +99,7 @@
};
diff --git a/init/main.c b/init/main.c
-index 6569987..d432bea 100644
+index f2936db..b00c71b 100644
--- a/init/main.c
+++ b/init/main.c
@@ -490,6 +490,7 @@ asmlinkage void __init start_kernel(void)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0183-softirq-Export-in_serving_softirq.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0183-softirq-Export-in_serving_softirq.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0183-softirq-Export-in_serving_softirq.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f37f3021dfbc8dceb5c6a1476aea8fe82a784a3a Mon Sep 17 00:00:00 2001
+From 9482fb102551ef5bd4b40aa1c3813d04cb06b658 Mon Sep 17 00:00:00 2001
From: John Kacur <jkacur at redhat.com>
Date: Mon, 14 Nov 2011 02:44:43 +0100
-Subject: [PATCH 183/290] softirq: Export in_serving_softirq()
+Subject: [PATCH 183/304] softirq: Export in_serving_softirq()
ERROR: "in_serving_softirq" [net/sched/cls_cgroup.ko] undefined!
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0184-hardirq.h-Define-softirq_count-as-OUL-to-kill-build-.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0184-hardirq.h-Define-softirq_count-as-OUL-to-kill-build-.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0184-hardirq.h-Define-softirq_count-as-OUL-to-kill-build-.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 69c4245de6414b6a24843bcf940d8514e386ff92 Mon Sep 17 00:00:00 2001
+From 48bf3891eae764b4df88b2af688b6b63f7631371 Mon Sep 17 00:00:00 2001
From: Yong Zhang <yong.zhang0 at gmail.com>
Date: Thu, 13 Oct 2011 17:19:09 +0800
-Subject: [PATCH 184/290] hardirq.h: Define softirq_count() as OUL to kill
+Subject: [PATCH 184/304] hardirq.h: Define softirq_count() as OUL to kill
build warning
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0185-softirq-Fix-unplug-deadlock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0185-softirq-Fix-unplug-deadlock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0185-softirq-Fix-unplug-deadlock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 11d0010c98e1b1d22f6ae6093ca80820d42b4358 Mon Sep 17 00:00:00 2001
+From ba5480a22669f4c3c86b443e467917ac40e433a7 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Fri, 30 Sep 2011 15:52:14 +0200
-Subject: [PATCH 185/290] softirq: Fix unplug deadlock
+Subject: [PATCH 185/304] softirq: Fix unplug deadlock
If ksoftirqd gets woken during hot-unplug, __thread_do_softirq() will
call pin_current_cpu() which will block on the held cpu_hotplug.lock.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0186-softirq-disable-softirq-stacks-for-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0186-softirq-disable-softirq-stacks-for-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0186-softirq-disable-softirq-stacks-for-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From bf5afa34f405c197ecf220daa7da250b0787aebb Mon Sep 17 00:00:00 2001
+From 64e1e7f2117b1fc9f3bbd91f6fec1e8cb3d6e641 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 18 Jul 2011 13:59:17 +0200
-Subject: [PATCH 186/290] softirq-disable-softirq-stacks-for-rt.patch
+Subject: [PATCH 186/304] softirq-disable-softirq-stacks-for-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0187-softirq-make-fifo.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0187-softirq-make-fifo.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0187-softirq-make-fifo.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 4431daf6f65e7dd3531588355dafd4e5f91680fb Mon Sep 17 00:00:00 2001
+From 570d4d6caca0d07e36cd3182dfdad5557a4204af Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 21 Jul 2011 21:06:43 +0200
-Subject: [PATCH 187/290] softirq-make-fifo.patch
+Subject: [PATCH 187/304] softirq-make-fifo.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0188-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0188-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0188-tasklet-Prevent-tasklets-from-going-into-infinite-sp.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 061f85ea479c807905a18cda0631166f04467ac4 Mon Sep 17 00:00:00 2001
+From afad92cadf060e7ed48826c4f52ec0c3ef971d60 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Tue, 29 Nov 2011 20:18:22 -0500
-Subject: [PATCH 188/290] tasklet: Prevent tasklets from going into infinite
+Subject: [PATCH 188/304] tasklet: Prevent tasklets from going into infinite
spin in RT
When CONFIG_PREEMPT_RT_FULL is enabled, tasklets run as threads,
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0189-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0189-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0189-genirq-Allow-disabling-of-softirq-processing-in-irq-.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e9f96880db5a18df75a53bc89a78fef222b4903c Mon Sep 17 00:00:00 2001
+From 422b646f4b784b958f6caaf77b89f63efc3e334a Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 31 Jan 2012 13:01:27 +0100
-Subject: [PATCH 189/290] genirq: Allow disabling of softirq processing in irq
+Subject: [PATCH 189/304] genirq: Allow disabling of softirq processing in irq
thread context
The processing of softirqs in irq thread context is a performance gain
@@ -69,10 +69,10 @@
#define IRQ_NO_BALANCING_MASK (IRQ_PER_CPU | IRQ_NO_BALANCING)
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index b3e6228..87dc053 100644
+index 35d5ac4..f52263a 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
-@@ -742,7 +742,15 @@ irq_forced_thread_fn(struct irq_desc *desc, struct irqaction *action)
+@@ -751,7 +751,15 @@ irq_forced_thread_fn(struct irq_desc *desc, struct irqaction *action)
local_bh_disable();
ret = action->thread_fn(action->irq, action->dev_id);
irq_finalize_oneshot(desc, action, false);
@@ -89,7 +89,7 @@
return ret;
}
-@@ -1072,6 +1080,9 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new)
+@@ -1091,6 +1099,9 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new)
irqd_set(&desc->irq_data, IRQD_NO_BALANCING);
}
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0190-local-vars-migrate-disable.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0190-local-vars-migrate-disable.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0190-local-vars-migrate-disable.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a73434f8bef345b2f203c59279c8593ad2ae5862 Mon Sep 17 00:00:00 2001
+From b62561cc31b92ee5d21dd31e0bc8587cb7d9d334 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 28 Jun 2011 20:42:16 +0200
-Subject: [PATCH 190/290] local-vars-migrate-disable.patch
+Subject: [PATCH 190/304] local-vars-migrate-disable.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0191-md-raid5-Make-raid5_percpu-handling-RT-aware.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0191-md-raid5-Make-raid5_percpu-handling-RT-aware.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0191-md-raid5-Make-raid5_percpu-handling-RT-aware.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 4c2d818fb2f5af8338fadb25222260d7376c9eed Mon Sep 17 00:00:00 2001
+From 0714a95995570cac47ac2f40137f0016b7982ae4 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 6 Apr 2010 16:51:31 +0200
-Subject: [PATCH 191/290] md: raid5: Make raid5_percpu handling RT aware
+Subject: [PATCH 191/304] md: raid5: Make raid5_percpu handling RT aware
__raid_run_ops() disables preemption with get_cpu() around the access
to the raid5_percpu variables. That causes scheduling while atomic
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0192-rtmutex-lock-killable.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0192-rtmutex-lock-killable.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0192-rtmutex-lock-killable.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From dfc5217bd6955b73d123bb1ec96bdc515c950265 Mon Sep 17 00:00:00 2001
+From ef175f091698419aa1cf80d9a8b210d1311124e7 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 9 Jun 2011 11:43:52 +0200
-Subject: [PATCH 192/290] rtmutex-lock-killable.patch
+Subject: [PATCH 192/304] rtmutex-lock-killable.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0193-rtmutex-futex-prepare-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0193-rtmutex-futex-prepare-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0193-rtmutex-futex-prepare-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 471fea2143c6417dd47083a4a5abaa31ddf4456e Mon Sep 17 00:00:00 2001
+From fd7bf8f0b53bf1b0c8c828f207b2f7128a5269fb Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 10 Jun 2011 11:04:15 +0200
-Subject: [PATCH 193/290] rtmutex-futex-prepare-rt.patch
+Subject: [PATCH 193/304] rtmutex-futex-prepare-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0194-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0194-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0194-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b661b71b4c053d6f8003599589bfe50ba981550f Mon Sep 17 00:00:00 2001
+From e48f2ba848b843ef1c4327c0c75e72cfd12bffb0 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Tue, 10 Apr 2012 14:34:13 -0400
-Subject: [PATCH 194/290] futex: Fix bug on when a requeued RT task times out
+Subject: [PATCH 194/304] futex: Fix bug on when a requeued RT task times out
Requeue with timeout causes a bug with PREEMPT_RT_FULL.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0195-rt-mutex-add-sleeping-spinlocks-support.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0195-rt-mutex-add-sleeping-spinlocks-support.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0195-rt-mutex-add-sleeping-spinlocks-support.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 046af49d55778b4eae4d1cc81ef45ce3b393eeb5 Mon Sep 17 00:00:00 2001
+From 63c64e8c8490494214f3f03374ce349013064c22 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 10 Jun 2011 11:21:25 +0200
-Subject: [PATCH 195/290] rt-mutex-add-sleeping-spinlocks-support.patch
+Subject: [PATCH 195/304] rt-mutex-add-sleeping-spinlocks-support.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0196-spinlock-types-separate-raw.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0196-spinlock-types-separate-raw.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0196-spinlock-types-separate-raw.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From fd6e87afbd6ac137611bf2dc0df203e8d3840d98 Mon Sep 17 00:00:00 2001
+From c50771ee61582b24a2021718f1ffc787933da393 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 29 Jun 2011 19:34:01 +0200
-Subject: [PATCH 196/290] spinlock-types-separate-raw.patch
+Subject: [PATCH 196/304] spinlock-types-separate-raw.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0197-rtmutex-avoid-include-hell.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0197-rtmutex-avoid-include-hell.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0197-rtmutex-avoid-include-hell.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 13661ad154835d93761fa81f330614afc94c4a39 Mon Sep 17 00:00:00 2001
+From d2842cbc9c3a81c7860c9cd887a8a17a419d0e8b Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 29 Jun 2011 20:06:39 +0200
-Subject: [PATCH 197/290] rtmutex-avoid-include-hell.patch
+Subject: [PATCH 197/304] rtmutex-avoid-include-hell.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0198-rt-add-rt-spinlocks.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0198-rt-add-rt-spinlocks.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0198-rt-add-rt-spinlocks.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d4be3a6284e89be1756052c197d867d1c7805048 Mon Sep 17 00:00:00 2001
+From 0f855387ffefd928494406750c15bbafb187b5d2 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 29 Jun 2011 19:43:35 +0200
-Subject: [PATCH 198/290] rt-add-rt-spinlocks.patch
+Subject: [PATCH 198/304] rt-add-rt-spinlocks.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0199-rt-add-rt-to-mutex-headers.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0199-rt-add-rt-to-mutex-headers.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0199-rt-add-rt-to-mutex-headers.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f11c7c119fd494d7daf04e1340f04b7e1e427150 Mon Sep 17 00:00:00 2001
+From 845c5d6c7c36fd6c9d8bac1a151cb5952f0e7d9c Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 29 Jun 2011 20:56:22 +0200
-Subject: [PATCH 199/290] rt-add-rt-to-mutex-headers.patch
+Subject: [PATCH 199/304] rt-add-rt-to-mutex-headers.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0200-rwsem-add-rt-variant.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0200-rwsem-add-rt-variant.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0200-rwsem-add-rt-variant.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 4748d08549af1faa1f9c608d071a40c01149ae8a Mon Sep 17 00:00:00 2001
+From 4e0095da56ae6d1aca2a926b039d6f1f8b09cc70 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 29 Jun 2011 21:02:53 +0200
-Subject: [PATCH 200/290] rwsem-add-rt-variant.patch
+Subject: [PATCH 200/304] rwsem-add-rt-variant.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0201-rt-Add-the-preempt-rt-lock-replacement-APIs.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0201-rt-Add-the-preempt-rt-lock-replacement-APIs.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0201-rt-Add-the-preempt-rt-lock-replacement-APIs.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7ae2cf213175ece4eeb09219b3a0e0fa0ae3e90a Mon Sep 17 00:00:00 2001
+From ab2675856e8b7ccd80dab8b5ad4360259f7fe3ff Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 26 Jul 2009 19:39:56 +0200
-Subject: [PATCH 201/290] rt: Add the preempt-rt lock replacement APIs
+Subject: [PATCH 201/304] rt: Add the preempt-rt lock replacement APIs
Map spinlocks, rwlocks, rw_semaphores and semaphores to the rt_mutex
based locking functions for preempt-rt.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0202-rwlocks-Fix-section-mismatch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0202-rwlocks-Fix-section-mismatch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0202-rwlocks-Fix-section-mismatch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From a1d77ec819bb0db3f2ce34b291991f7087bfc7e8 Mon Sep 17 00:00:00 2001
+From c079a218231542fa79ca290156e8b68ff8d5b378 Mon Sep 17 00:00:00 2001
From: John Kacur <jkacur at redhat.com>
Date: Mon, 19 Sep 2011 11:09:27 +0200
-Subject: [PATCH 202/290] rwlocks: Fix section mismatch
+Subject: [PATCH 202/304] rwlocks: Fix section mismatch
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -51,7 +51,7 @@
#endif /* __LINUX_RWLOCK_TYPES_H */
diff --git a/kernel/fork.c b/kernel/fork.c
-index 2a4a32b..99302f7 100644
+index e2d8055..acc6477 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -88,7 +88,7 @@ int max_threads; /* tunable limit on nr_threads */
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0203-timer-handle-idle-trylock-in-get-next-timer-irq.patc.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0203-timer-handle-idle-trylock-in-get-next-timer-irq.patc.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0203-timer-handle-idle-trylock-in-get-next-timer-irq.patc.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From be06c6937b1067c9fc0c3029a8f69bc0b91029f8 Mon Sep 17 00:00:00 2001
+From 37b6958ae54b40980e2d9ba8193b48dd1c5fab24 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 22:08:38 +0200
-Subject: [PATCH 203/290] timer-handle-idle-trylock-in-get-next-timer-irq.patch
+Subject: [PATCH 203/304] timer-handle-idle-trylock-in-get-next-timer-irq.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0204-RCU-Force-PREEMPT_RCU-for-PREEMPT-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0204-RCU-Force-PREEMPT_RCU-for-PREEMPT-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0204-RCU-Force-PREEMPT_RCU-for-PREEMPT-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f82a251ca4d8c44531193a1387af86134f830220 Mon Sep 17 00:00:00 2001
+From 42ae0f60da9ba98d9dc5b4bc2bfd8043ed718d76 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:30 -0500
-Subject: [PATCH 204/290] RCU: Force PREEMPT_RCU for PREEMPT-RT
+Subject: [PATCH 204/304] RCU: Force PREEMPT_RCU for PREEMPT-RT
PREEMPT_RT relies on PREEMPT_RCU - only allow RCU to be configured
interactively in the !PREEMPT_RT case.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0205-rcu-Frob-softirq-test.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0205-rcu-Frob-softirq-test.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0205-rcu-Frob-softirq-test.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5277b23f8108d6891315fbe26707c79274ce51a5 Mon Sep 17 00:00:00 2001
+From a23cbb2ceaf5e0aad448b625c274aa4cd7d220ae Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Sat, 13 Aug 2011 00:23:17 +0200
-Subject: [PATCH 205/290] rcu: Frob softirq test
+Subject: [PATCH 205/304] rcu: Frob softirq test
With RT_FULL we get the below wreckage:
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0206-rcu-Merge-RCU-bh-into-RCU-preempt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0206-rcu-Merge-RCU-bh-into-RCU-preempt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0206-rcu-Merge-RCU-bh-into-RCU-preempt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 3bea3679eafe39c0b82cecfa49cbc3f92f12d7fb Mon Sep 17 00:00:00 2001
+From 08c62a511fc912a29a7687f89d67fd20d4e5f93a Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 5 Oct 2011 11:59:38 -0700
-Subject: [PATCH 206/290] rcu: Merge RCU-bh into RCU-preempt
+Subject: [PATCH 206/304] rcu: Merge RCU-bh into RCU-preempt
The Linux kernel has long RCU-bh read-side critical sections that
intolerably increase scheduling latency under mainline's RCU-bh rules,
@@ -176,7 +176,7 @@
#endif /* #ifdef CONFIG_DEBUG_LOCK_ALLOC */
diff --git a/kernel/rcutree.c b/kernel/rcutree.c
-index d5eb74a..0b59c81 100644
+index d0e5491..f794cdf 100644
--- a/kernel/rcutree.c
+++ b/kernel/rcutree.c
@@ -170,6 +170,7 @@ void rcu_sched_qs(int cpu)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0207-rcu-Fix-macro-substitution-for-synchronize_rcu_bh-on.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0207-rcu-Fix-macro-substitution-for-synchronize_rcu_bh-on.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0207-rcu-Fix-macro-substitution-for-synchronize_rcu_bh-on.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6505dff9d796d9111530cf8797f58f179df0e22f Mon Sep 17 00:00:00 2001
+From e2bf9703045e8fb0ebbb465c3a097cf1e56fd9d7 Mon Sep 17 00:00:00 2001
From: John Kacur <jkacur at redhat.com>
Date: Mon, 14 Nov 2011 02:44:42 +0100
-Subject: [PATCH 207/290] rcu: Fix macro substitution for synchronize_rcu_bh()
+Subject: [PATCH 207/304] rcu: Fix macro substitution for synchronize_rcu_bh()
on RT
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0208-rcu-more-fallout.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0208-rcu-more-fallout.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0208-rcu-more-fallout.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 013066c4022e05e90dc7d03f2f3274cd3fc33d0c Mon Sep 17 00:00:00 2001
+From 427a72827899e75e3282e7e5bf8959c99607f6e7 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 14 Nov 2011 10:57:54 +0100
-Subject: [PATCH 208/290] rcu-more-fallout.patch
+Subject: [PATCH 208/304] rcu-more-fallout.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0209-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0209-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0209-rcu-Make-ksoftirqd-do-RCU-quiescent-states.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ccceb4f75c20c0f30a010414c639b4b5d981dfdb Mon Sep 17 00:00:00 2001
+From c26d02454af5ab17e824425c94d68170fcf269f7 Mon Sep 17 00:00:00 2001
From: "Paul E. McKenney" <paulmck at linux.vnet.ibm.com>
Date: Wed, 5 Oct 2011 11:45:18 -0700
-Subject: [PATCH 209/290] rcu: Make ksoftirqd do RCU quiescent states
+Subject: [PATCH 209/304] rcu: Make ksoftirqd do RCU quiescent states
Implementing RCU-bh in terms of RCU-preempt makes the system vulnerable
to network-based denial-of-service attacks. This patch therefore
@@ -49,7 +49,7 @@
struct notifier_block;
diff --git a/kernel/rcutree.c b/kernel/rcutree.c
-index 0b59c81..c1485ce 100644
+index f794cdf..5ebbd13 100644
--- a/kernel/rcutree.c
+++ b/kernel/rcutree.c
@@ -170,7 +170,12 @@ void rcu_sched_qs(int cpu)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0210-rt-rcutree-Move-misplaced-prototype.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0210-rt-rcutree-Move-misplaced-prototype.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0210-rt-rcutree-Move-misplaced-prototype.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5796e2d89127507fc9327886175a616665fafdef Mon Sep 17 00:00:00 2001
+From 73d8ca4d3a01ea926a212839b537bbfc5e640221 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Wed, 14 Dec 2011 12:51:28 +0100
-Subject: [PATCH 210/290] rt/rcutree: Move misplaced prototype
+Subject: [PATCH 210/304] rt/rcutree: Move misplaced prototype
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -21,7 +21,7 @@
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/kernel/rcutree.c b/kernel/rcutree.c
-index c1485ce..e3ace01 100644
+index 5ebbd13..82c2224 100644
--- a/kernel/rcutree.c
+++ b/kernel/rcutree.c
@@ -171,6 +171,8 @@ void rcu_sched_qs(int cpu)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0211-lglocks-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0211-lglocks-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0211-lglocks-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f1151de5e82a0ee4057f239ccc3e9fda81e7702f Mon Sep 17 00:00:00 2001
+From 66fc5bf14e63f3fa92142cf09662b221943d7324 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 15 Jun 2011 11:02:21 +0200
-Subject: [PATCH 211/290] lglocks-rt.patch
+Subject: [PATCH 211/304] lglocks-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0212-serial-8250-Clean-up-the-locking-for-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0212-serial-8250-Clean-up-the-locking-for-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0212-serial-8250-Clean-up-the-locking-for-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 0f95b62308b4accaa194751fe2f96b70b80615ef Mon Sep 17 00:00:00 2001
+From d98df1789fbf550ae0275fcf2f174a994ded6da5 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:01 -0500
-Subject: [PATCH 212/290] serial: 8250: Clean up the locking for -rt
+Subject: [PATCH 212/304] serial: 8250: Clean up the locking for -rt
Signed-off-by: Ingo Molnar <mingo at elte.hu>
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
@@ -10,10 +10,10 @@
1 file changed, 5 insertions(+), 10 deletions(-)
diff --git a/drivers/tty/serial/8250.c b/drivers/tty/serial/8250.c
-index 70585b6..e6d9dc1 100644
+index 90dad17..c723245 100644
--- a/drivers/tty/serial/8250.c
+++ b/drivers/tty/serial/8250.c
-@@ -2847,14 +2847,10 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count)
+@@ -2858,14 +2858,10 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count)
touch_nmi_watchdog();
@@ -32,7 +32,7 @@
/*
* First save the IER then disable the interrupts
-@@ -2886,8 +2882,7 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count)
+@@ -2897,8 +2893,7 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count)
check_modem_status(up);
if (locked)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0213-serial-8250-Call-flush_to_ldisc-when-the-irq-is-thre.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0213-serial-8250-Call-flush_to_ldisc-when-the-irq-is-thre.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0213-serial-8250-Call-flush_to_ldisc-when-the-irq-is-thre.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 92f01c83fc3422b399765bd354d18b06b526c12a Mon Sep 17 00:00:00 2001
+From 5b0ea762ee688c55c5869cc87425c6c3243fc02a Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Fri, 3 Jul 2009 08:30:01 -0500
-Subject: [PATCH 213/290] serial: 8250: Call flush_to_ldisc when the irq is
+Subject: [PATCH 213/304] serial: 8250: Call flush_to_ldisc when the irq is
threaded
Signed-off-by: Ingo Molnar <mingo at elte.hu>
@@ -11,10 +11,10 @@
2 files changed, 6 insertions(+)
diff --git a/drivers/tty/serial/8250.c b/drivers/tty/serial/8250.c
-index e6d9dc1..b245819 100644
+index c723245..315e8ef 100644
--- a/drivers/tty/serial/8250.c
+++ b/drivers/tty/serial/8250.c
-@@ -1631,12 +1631,14 @@ static irqreturn_t serial8250_interrupt(int irq, void *dev_id)
+@@ -1642,12 +1642,14 @@ static irqreturn_t serial8250_interrupt(int irq, void *dev_id)
l = l->next;
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0214-drivers-tty-fix-omap-lock-crap.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0214-drivers-tty-fix-omap-lock-crap.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0214-drivers-tty-fix-omap-lock-crap.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5fc91df072b80ce2c7475af3ccf5a96b3fb1ee7a Mon Sep 17 00:00:00 2001
+From f068033dcbb68fc762bbc508a16de52ed98a740b Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 28 Jul 2011 13:32:57 +0200
-Subject: [PATCH 214/290] drivers-tty-fix-omap-lock-crap.patch
+Subject: [PATCH 214/304] drivers-tty-fix-omap-lock-crap.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0215-rt-Improve-the-serial-console-PASS_LIMIT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0215-rt-Improve-the-serial-console-PASS_LIMIT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0215-rt-Improve-the-serial-console-PASS_LIMIT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 10d591d8943cf04b3481689f49c02f9dc1454855 Mon Sep 17 00:00:00 2001
+From fe9a38949b1d4a78120e33541e7e1fd28b164eb3 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo at elte.hu>
Date: Wed, 14 Dec 2011 13:05:54 +0100
-Subject: [PATCH 215/290] rt: Improve the serial console PASS_LIMIT
+Subject: [PATCH 215/304] rt: Improve the serial console PASS_LIMIT
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -20,7 +20,7 @@
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/drivers/tty/serial/8250.c b/drivers/tty/serial/8250.c
-index b245819..a3d3404 100644
+index 315e8ef..c664f9c 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 */
@@ -41,7 +41,7 @@
#define BOTH_EMPTY (UART_LSR_TEMT | UART_LSR_THRE)
-@@ -1631,14 +1640,12 @@ static irqreturn_t serial8250_interrupt(int irq, void *dev_id)
+@@ -1642,14 +1651,12 @@ static irqreturn_t serial8250_interrupt(int irq, void *dev_id)
l = l->next;
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0216-fs-namespace-preemption-fix.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0216-fs-namespace-preemption-fix.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0216-fs-namespace-preemption-fix.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d64a87d43d7f985d6a83340ad0e845779d413ecc Mon Sep 17 00:00:00 2001
+From fa03ac0460f1f2d2abc26e8c84b683f644ff839b Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 19 Jul 2009 08:44:27 -0500
-Subject: [PATCH 216/290] fs: namespace preemption fix
+Subject: [PATCH 216/304] fs: namespace preemption fix
On RT we cannot loop with preemption disabled here as
mnt_make_readonly() might have been preempted. We can safely enable
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0217-mm-protect-activate-switch-mm.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0217-mm-protect-activate-switch-mm.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0217-mm-protect-activate-switch-mm.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 15ce1324e1a12f50c7683eee85d3a93648021ff1 Mon Sep 17 00:00:00 2001
+From c2c951c2e10c88815205a07000136b41283c97ba Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 4 Jul 2011 09:48:40 +0200
-Subject: [PATCH 217/290] mm-protect-activate-switch-mm.patch
+Subject: [PATCH 217/304] mm-protect-activate-switch-mm.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -10,7 +10,7 @@
2 files changed, 4 insertions(+)
diff --git a/fs/exec.c b/fs/exec.c
-index 121ccae..6f906dd 100644
+index c27fa0d..ccb8904 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -837,10 +837,12 @@ static int exec_mmap(struct mm_struct *mm)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0218-fs-block-rt-support.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0218-fs-block-rt-support.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0218-fs-block-rt-support.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 0e549ea06b88de293267a94e3368afeba9f1b3e4 Mon Sep 17 00:00:00 2001
+From 8a00340870c90e08e45ea1ba86a893432be70d0d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 14 Jun 2011 17:05:09 +0200
-Subject: [PATCH 218/290] fs-block-rt-support.patch
+Subject: [PATCH 218/304] fs-block-rt-support.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0219-fs-ntfs-disable-interrupt-only-on-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0219-fs-ntfs-disable-interrupt-only-on-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0219-fs-ntfs-disable-interrupt-only-on-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6a11434c1d74faad3ac2ed9e3e61cff78ab3aee1 Mon Sep 17 00:00:00 2001
+From 3d5ce61900afa981146bc0e9cbc0cf2a08cb2e74 Mon Sep 17 00:00:00 2001
From: Mike Galbraith <efault at gmx.de>
Date: Fri, 3 Jul 2009 08:44:12 -0500
-Subject: [PATCH 219/290] fs: ntfs: disable interrupt only on !RT
+Subject: [PATCH 219/304] fs: ntfs: disable interrupt only on !RT
On Sat, 2007-10-27 at 11:44 +0200, Ingo Molnar wrote:
> * Nick Piggin <nickpiggin at yahoo.com.au> wrote:
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0220-x86-Convert-mce-timer-to-hrtimer.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0220-x86-Convert-mce-timer-to-hrtimer.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0220-x86-Convert-mce-timer-to-hrtimer.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From bc570d8011c917b21d56f05a0b90e634e5716fba Mon Sep 17 00:00:00 2001
+From 43da05f843fae1309d924547113838b02812b35a Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 13 Dec 2010 16:33:39 +0100
-Subject: [PATCH 220/290] x86: Convert mce timer to hrtimer
+Subject: [PATCH 220/304] x86: Convert mce timer to hrtimer
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
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0221-x86-stackprotector-Avoid-random-pool-on-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0221-x86-stackprotector-Avoid-random-pool-on-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0221-x86-stackprotector-Avoid-random-pool-on-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 05c8d613d23cb348e8daeacbbf3e3b9906cc4608 Mon Sep 17 00:00:00 2001
+From 52892693d189c7da839dbfc805efde9cfd52df39 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 16 Dec 2010 14:25:18 +0100
-Subject: [PATCH 221/290] x86: stackprotector: Avoid random pool on rt
+Subject: [PATCH 221/304] x86: stackprotector: Avoid random pool on rt
CPU bringup calls into the random pool to initialize the stack
canary. During boot that works nicely even on RT as the might sleep
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0222-x86-Use-generic-rwsem_spinlocks-on-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0222-x86-Use-generic-rwsem_spinlocks-on-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0222-x86-Use-generic-rwsem_spinlocks-on-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ea0e53bb43ce8d44c0c7f031094248c0204f6f4d Mon Sep 17 00:00:00 2001
+From 870ec90cce7efe1feba289fda724fc070d4f055c Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 26 Jul 2009 02:21:32 +0200
-Subject: [PATCH 222/290] x86: Use generic rwsem_spinlocks on -rt
+Subject: [PATCH 222/304] x86: Use generic rwsem_spinlocks on -rt
Simplifies the separation of anon_rw_semaphores and rw_semaphores for
-rt.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0223-x86-Disable-IST-stacks-for-debug-int-3-stack-fault-f.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0223-x86-Disable-IST-stacks-for-debug-int-3-stack-fault-f.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0223-x86-Disable-IST-stacks-for-debug-int-3-stack-fault-f.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 1fec2be7146905239aea2276b6e1fc58349a9984 Mon Sep 17 00:00:00 2001
+From 9988f4deba3b4efc41485857855061ddbf6dcde2 Mon Sep 17 00:00:00 2001
From: Andi Kleen <ak at suse.de>
Date: Fri, 3 Jul 2009 08:44:10 -0500
-Subject: [PATCH 223/290] x86: Disable IST stacks for debug/int 3/stack fault
+Subject: [PATCH 223/304] x86: Disable IST stacks for debug/int 3/stack fault
for PREEMPT_RT
Normally the x86-64 trap handlers for debug/int 3/stack fault run
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0224-workqueue-use-get-cpu-light.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0224-workqueue-use-get-cpu-light.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0224-workqueue-use-get-cpu-light.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 25325e0de8a28d92ca7353a560ea9f222eba34fb Mon Sep 17 00:00:00 2001
+From 3ca1605af7b1f34eff48e8ccbf5ece49472415e6 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 21:42:26 +0200
-Subject: [PATCH 224/290] workqueue-use-get-cpu-light.patch
+Subject: [PATCH 224/304] workqueue-use-get-cpu-light.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index 79dc1eb..78fe4b7 100644
+index f46cc04..c96d25f 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -1063,8 +1063,8 @@ int queue_work(struct workqueue_struct *wq, struct work_struct *work)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0225-epoll.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0225-epoll.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0225-epoll.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b4eb6a92cf7b0dc01bf2159d406c963fce2806de Mon Sep 17 00:00:00 2001
+From 928b701dcf90a55589b8310715ba35f899ece376 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 8 Jul 2011 16:35:35 +0200
-Subject: [PATCH 225/290] epoll.patch
+Subject: [PATCH 225/304] epoll.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/eventpoll.c b/fs/eventpoll.c
-index a6f3763..61c4de6 100644
+index 451b9b8..3ed4aca 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)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0226-mm-vmalloc.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0226-mm-vmalloc.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0226-mm-vmalloc.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f0f6eaa4a79645364b71d2bacacb9740b6ce8f1e Mon Sep 17 00:00:00 2001
+From 029f3507b18982166c6825c82055b88438ce5797 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 12 Jul 2011 11:39:36 +0200
-Subject: [PATCH 226/290] mm-vmalloc.patch
+Subject: [PATCH 226/304] mm-vmalloc.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0227-debugobjects-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0227-debugobjects-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0227-debugobjects-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 3dea5c63ffe6c681dff68112fe87fb322e722266 Mon Sep 17 00:00:00 2001
+From b7ce12c46c3511b0752206fd6194ee982ab778b1 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 21:41:35 +0200
-Subject: [PATCH 227/290] debugobjects-rt.patch
+Subject: [PATCH 227/304] debugobjects-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0228-jump-label-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0228-jump-label-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0228-jump-label-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 13f013ed9e17e770e016e617d65c12332e6086f2 Mon Sep 17 00:00:00 2001
+From e2fc24bbd29c7180417a507caf141845a1e93f79 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 13 Jul 2011 11:03:16 +0200
-Subject: [PATCH 228/290] jump-label-rt.patch
+Subject: [PATCH 228/304] jump-label-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0229-skbufhead-raw-lock.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0229-skbufhead-raw-lock.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0229-skbufhead-raw-lock.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 287f188ba039fbcba2ae345176e5b510159818c5 Mon Sep 17 00:00:00 2001
+From 0e23659b34d601730b19615ad92f5943f3b6bd37 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 12 Jul 2011 15:38:34 +0200
-Subject: [PATCH 229/290] skbufhead-raw-lock.patch
+Subject: [PATCH 229/304] skbufhead-raw-lock.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0230-x86-no-perf-irq-work-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0230-x86-no-perf-irq-work-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0230-x86-no-perf-irq-work-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 10e3e6536ddc75084dd2c87b795ee87ba0b29890 Mon Sep 17 00:00:00 2001
+From d004976c05e5f730e0458b280e889408d07e5080 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 13 Jul 2011 14:05:05 +0200
-Subject: [PATCH 230/290] x86-no-perf-irq-work-rt.patch
+Subject: [PATCH 230/304] x86-no-perf-irq-work-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0231-console-make-rt-friendly.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0231-console-make-rt-friendly.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0231-console-make-rt-friendly.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 10a4e0d644c0a091ec7a6078fade882a61d31152 Mon Sep 17 00:00:00 2001
+From 7c3dd8fdb4e2f242f6dc44cf89e22429219decfc Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 17 Jul 2011 22:43:07 +0200
-Subject: [PATCH 231/290] console-make-rt-friendly.patch
+Subject: [PATCH 231/304] console-make-rt-friendly.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,7 +9,7 @@
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/kernel/printk.c b/kernel/printk.c
-index 2b95bc0..fad23c8 100644
+index c07a0e2..23b4eb5 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -504,6 +504,7 @@ static void __call_console_drivers(unsigned start, unsigned end)
@@ -28,7 +28,7 @@
}
#ifdef CONFIG_EARLY_PRINTK
-@@ -827,12 +829,18 @@ static inline int can_use_console(unsigned int cpu)
+@@ -838,12 +840,18 @@ static inline int can_use_console(unsigned int cpu)
* interrupts disabled. It should return with 'lockbuf_lock'
* released but interrupts still disabled.
*/
@@ -49,7 +49,7 @@
retval = 1;
/*
-@@ -1010,8 +1018,15 @@ asmlinkage int vprintk(const char *fmt, va_list args)
+@@ -1021,8 +1029,15 @@ asmlinkage int vprintk(const char *fmt, va_list args)
* will release 'logbuf_lock' regardless of whether it
* actually gets the semaphore or not.
*/
@@ -66,7 +66,7 @@
lockdep_on();
out_restore_irqs:
-@@ -1321,11 +1336,16 @@ again:
+@@ -1332,11 +1347,16 @@ again:
_con_start = con_start;
_log_end = log_end;
con_start = log_end; /* Flush */
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0232-printk-Disable-migration-instead-of-preemption.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0232-printk-Disable-migration-instead-of-preemption.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0232-printk-Disable-migration-instead-of-preemption.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 021323c53bf3efb2eeefea1b85c3fadb4ae3ba5b Mon Sep 17 00:00:00 2001
+From 72d8f0ca84ffbae97dfa2510bdf0fb412cc79d2c Mon Sep 17 00:00:00 2001
From: Richard Weinberger <rw at linutronix.de>
Date: Mon, 12 Dec 2011 14:35:56 +0100
-Subject: [PATCH 232/290] printk: Disable migration instead of preemption
+Subject: [PATCH 232/304] printk: Disable migration instead of preemption
There is no need do disable preemption in vprintk(), disable_migrate()
is sufficient. This fixes the following bug in -rt:
@@ -38,10 +38,10 @@
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/printk.c b/kernel/printk.c
-index fad23c8..13ea6a9 100644
+index 23b4eb5..8f677b4 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
-@@ -901,7 +901,7 @@ asmlinkage int vprintk(const char *fmt, va_list args)
+@@ -912,7 +912,7 @@ asmlinkage int vprintk(const char *fmt, va_list args)
boot_delay_msec();
printk_delay();
@@ -50,7 +50,7 @@
/* This stops the holder of console_sem just where we want him */
raw_local_irq_save(flags);
this_cpu = smp_processor_id();
-@@ -1032,7 +1032,7 @@ asmlinkage int vprintk(const char *fmt, va_list args)
+@@ -1043,7 +1043,7 @@ asmlinkage int vprintk(const char *fmt, va_list args)
out_restore_irqs:
raw_local_irq_restore(flags);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0233-power-use-generic-rwsem-on-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0233-power-use-generic-rwsem-on-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0233-power-use-generic-rwsem-on-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 72009ca5d37b62bbdfac84ec3494e1e254a00dd2 Mon Sep 17 00:00:00 2001
+From 1267bcf57d7ab7db8e20dc7e8441dc57ccaba7c9 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 10 Apr 2012 14:34:18 -0400
-Subject: [PATCH 233/290] power-use-generic-rwsem-on-rt
+Subject: [PATCH 233/304] power-use-generic-rwsem-on-rt
---
arch/powerpc/Kconfig | 3 ++-
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0234-power-disable-highmem-on-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0234-power-disable-highmem-on-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0234-power-disable-highmem-on-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5d8d87e82a5d8bbbf59252eb13324bba85efbdfa Mon Sep 17 00:00:00 2001
+From 01a40c5fd4ba4d2d651f3e87ead1a227a632afcb Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 18 Jul 2011 17:08:34 +0200
-Subject: [PATCH 234/290] power-disable-highmem-on-rt.patch
+Subject: [PATCH 234/304] power-disable-highmem-on-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0235-arm-disable-highmem-on-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0235-arm-disable-highmem-on-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0235-arm-disable-highmem-on-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 523212679b523f99072ebdc4fee25d6277f53da9 Mon Sep 17 00:00:00 2001
+From 2328b2c0f470c13880bfc6f993ae4ef5b4c25576 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 18 Jul 2011 17:09:28 +0200
-Subject: [PATCH 235/290] arm-disable-highmem-on-rt.patch
+Subject: [PATCH 235/304] arm-disable-highmem-on-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0236-ARM-at91-tclib-Default-to-tclib-timer-for-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0236-ARM-at91-tclib-Default-to-tclib-timer-for-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0236-ARM-at91-tclib-Default-to-tclib-timer-for-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 0f151050d55817c71582e254058a6c254cdf8e5a Mon Sep 17 00:00:00 2001
+From 93e239a8b594c1e5dd660a4bfd35f775c8c005f0 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 1 May 2010 18:29:35 +0200
-Subject: [PATCH 236/290] ARM: at91: tclib: Default to tclib timer for RT
+Subject: [PATCH 236/304] ARM: at91: tclib: Default to tclib timer for RT
RT is not too happy about the shared timer interrupt in AT91
devices. Default to tclib timer for RT.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0237-mips-disable-highmem-on-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0237-mips-disable-highmem-on-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0237-mips-disable-highmem-on-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e25bc58dd0b36fa095041e0629616b8fe619a01a Mon Sep 17 00:00:00 2001
+From 7a60ba5735aff3cf7ec5d993b5b873abfd51774b Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 18 Jul 2011 17:10:12 +0200
-Subject: [PATCH 237/290] mips-disable-highmem-on-rt.patch
+Subject: [PATCH 237/304] mips-disable-highmem-on-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0238-net-Avoid-livelock-in-net_tx_action-on-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0238-net-Avoid-livelock-in-net_tx_action-on-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0238-net-Avoid-livelock-in-net_tx_action-on-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 9c3365a10a05dd7acc1551016b2576878ee97316 Mon Sep 17 00:00:00 2001
+From d25f7b5c223a5aebccf3ec8f7eff73abb4d93659 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <srostedt at redhat.com>
Date: Thu, 6 Oct 2011 10:48:39 -0400
-Subject: [PATCH 238/290] net: Avoid livelock in net_tx_action() on RT
+Subject: [PATCH 238/304] net: Avoid livelock in net_tx_action() on RT
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
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0239-ping-sysrq.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0239-ping-sysrq.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0239-ping-sysrq.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 9582b7fae89ecb247cdf07d1e3106acf6bcb1f4d Mon Sep 17 00:00:00 2001
+From 9eed9a0b1e68a5454c6a549543418b6dd9107975 Mon Sep 17 00:00:00 2001
From: Carsten Emde <C.Emde at osadl.org>
Date: Tue, 19 Jul 2011 13:51:17 +0100
-Subject: [PATCH 239/290] ping-sysrq.patch
+Subject: [PATCH 239/304] ping-sysrq.patch
There are (probably rare) situations when a system crashed and the system
console becomes unresponsive but the network icmp layer still is alive.
@@ -110,10 +110,10 @@
}
diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c
-index 69fd720..0ecdb72 100644
+index 5485077..969c6ef 100644
--- a/net/ipv4/sysctl_net_ipv4.c
+++ b/net/ipv4/sysctl_net_ipv4.c
-@@ -680,6 +680,13 @@ static struct ctl_table ipv4_net_table[] = {
+@@ -687,6 +687,13 @@ static struct ctl_table ipv4_net_table[] = {
.proc_handler = proc_dointvec
},
{
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0240-kgdb-serial-Short-term-workaround.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0240-kgdb-serial-Short-term-workaround.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0240-kgdb-serial-Short-term-workaround.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6aa1e5610b51bbd950897842467959ae72792a83 Mon Sep 17 00:00:00 2001
+From bd53e28674cdf389afb59a0957e1c9670a5d41aa Mon Sep 17 00:00:00 2001
From: Jason Wessel <jason.wessel at windriver.com>
Date: Thu, 28 Jul 2011 12:42:23 -0500
-Subject: [PATCH 240/290] kgdb/serial: Short term workaround
+Subject: [PATCH 240/304] kgdb/serial: Short term workaround
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 @@
3 files changed, 13 insertions(+), 8 deletions(-)
diff --git a/drivers/tty/serial/8250.c b/drivers/tty/serial/8250.c
-index a3d3404..f15a1df 100644
+index c664f9c..70c2d7b 100644
--- a/drivers/tty/serial/8250.c
+++ b/drivers/tty/serial/8250.c
@@ -38,6 +38,7 @@
@@ -35,7 +35,7 @@
#include <asm/io.h>
#include <asm/irq.h>
-@@ -2856,10 +2857,14 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count)
+@@ -2867,10 +2868,14 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count)
touch_nmi_watchdog();
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0241-add-sys-kernel-realtime-entry.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0241-add-sys-kernel-realtime-entry.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0241-add-sys-kernel-realtime-entry.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 401a3ea8f5a3ae9abf52ccc879393d478d41a55f Mon Sep 17 00:00:00 2001
+From 7cc7f89c15fa9995af0549bd2e53b479f6e0e240 Mon Sep 17 00:00:00 2001
From: Clark Williams <williams at redhat.com>
Date: Sat, 30 Jul 2011 21:55:53 -0500
-Subject: [PATCH 241/290] add /sys/kernel/realtime entry
+Subject: [PATCH 241/304] add /sys/kernel/realtime entry
Add a /sys/kernel entry to indicate that the kernel is a
realtime kernel.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0242-mm-rt-kmap_atomic-scheduling.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0242-mm-rt-kmap_atomic-scheduling.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0242-mm-rt-kmap_atomic-scheduling.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From fc9fba1732c50ea070af08619521494acf3785e1 Mon Sep 17 00:00:00 2001
+From 4d29cb3fcddbe73a1d16764ec971cf7f9e0cbcb3 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <peterz at infradead.org>
Date: Thu, 28 Jul 2011 10:43:51 +0200
-Subject: [PATCH 242/290] mm, rt: kmap_atomic scheduling
+Subject: [PATCH 242/304] mm, rt: kmap_atomic scheduling
In fact, with migrate_disable() existing one could play games with
kmap_atomic. You could save/restore the kmap_atomic slots on context
@@ -76,7 +76,7 @@
* 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 a867df1..945d230 100644
+index 6d920a0..1d9c8a1 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -63,6 +63,7 @@ struct sched_param {
@@ -99,10 +99,10 @@
#ifdef CONFIG_PREEMPT_RT_FULL
diff --git a/mm/memory.c b/mm/memory.c
-index b4e9834..10d95e0 100644
+index 77288df..21304ee 100644
--- a/mm/memory.c
+++ b/mm/memory.c
-@@ -3450,6 +3450,7 @@ unlock:
+@@ -3455,6 +3455,7 @@ unlock:
#ifdef CONFIG_PREEMPT_RT_FULL
void pagefault_disable(void)
{
@@ -110,7 +110,7 @@
current->pagefault_disabled++;
/*
* make sure to have issued the store before a pagefault
-@@ -3467,6 +3468,7 @@ void pagefault_enable(void)
+@@ -3472,6 +3473,7 @@ void pagefault_enable(void)
*/
barrier();
current->pagefault_disabled--;
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0243-ipc-sem-Rework-semaphore-wakeups.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0243-ipc-sem-Rework-semaphore-wakeups.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0243-ipc-sem-Rework-semaphore-wakeups.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 361778e1c657ef78919557bb73fc7828f57ce6f5 Mon Sep 17 00:00:00 2001
+From 1d30a4c2372b197e77d9d2225ddec43c84d65471 Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date: Tue, 13 Sep 2011 15:09:40 +0200
-Subject: [PATCH 243/290] ipc/sem: Rework semaphore wakeups
+Subject: [PATCH 243/304] ipc/sem: Rework semaphore wakeups
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
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0244-sysrq-Allow-immediate-Magic-SysRq-output-for-PREEMPT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0244-sysrq-Allow-immediate-Magic-SysRq-output-for-PREEMPT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0244-sysrq-Allow-immediate-Magic-SysRq-output-for-PREEMPT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6d0c02c256c02391c6008e47538d1a6788645dee Mon Sep 17 00:00:00 2001
+From 0c3a7f27059adbeb1714b75d1c4feeef75de7b5c Mon Sep 17 00:00:00 2001
From: Frank Rowand <frank.rowand at am.sony.com>
Date: Fri, 23 Sep 2011 13:43:12 -0700
-Subject: [PATCH 244/290] sysrq: Allow immediate Magic SysRq output for
+Subject: [PATCH 244/304] sysrq: Allow immediate Magic SysRq output for
PREEMPT_RT_FULL
Add a CONFIG option to allow the output from Magic SysRq to be output
@@ -109,7 +109,7 @@
/* Generic SysRq interface -- you may call it from any device driver, supplying
diff --git a/kernel/printk.c b/kernel/printk.c
-index 13ea6a9..9eabbbb 100644
+index 8f677b4..b5e609e 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -21,6 +21,7 @@
@@ -120,7 +120,7 @@
#include <linux/init.h>
#include <linux/jiffies.h>
#include <linux/nmi.h>
-@@ -834,8 +835,8 @@ static int console_trylock_for_printk(unsigned int cpu, unsigned long flags)
+@@ -845,8 +846,8 @@ static int console_trylock_for_printk(unsigned int cpu, unsigned long flags)
{
int retval = 0, wake = 0;
#ifdef CONFIG_PREEMPT_RT_FULL
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0245-x86-kvm-require-const-tsc-for-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0245-x86-kvm-require-const-tsc-for-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0245-x86-kvm-require-const-tsc-for-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ac2304a6d5fc989bb859b7886ca4fb68b899aafc Mon Sep 17 00:00:00 2001
+From af3fa233bdfedac3f38e69e2334ef29cb9afeb01 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 6 Nov 2011 12:26:18 +0100
-Subject: [PATCH 245/290] x86-kvm-require-const-tsc-for-rt.patch
+Subject: [PATCH 245/304] x86-kvm-require-const-tsc-for-rt.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
@@ -9,10 +9,10 @@
1 file changed, 7 insertions(+)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
-index 4fc5323..18fc878 100644
+index f4063fd..97f1819 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
-@@ -5210,6 +5210,13 @@ int kvm_arch_init(void *opaque)
+@@ -5213,6 +5213,13 @@ int kvm_arch_init(void *opaque)
goto out;
}
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0246-scsi-fcoe-rt-aware.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0246-scsi-fcoe-rt-aware.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0246-scsi-fcoe-rt-aware.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From ef3e6425134b91a422ec54cd792e68927d077172 Mon Sep 17 00:00:00 2001
+From bbc2ac26b968a2c55bfd59c243898b2f062abf80 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sat, 12 Nov 2011 14:00:48 +0100
-Subject: [PATCH 246/290] scsi-fcoe-rt-aware.patch
+Subject: [PATCH 246/304] scsi-fcoe-rt-aware.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0247-x86-crypto-Reduce-preempt-disabled-regions.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0247-x86-crypto-Reduce-preempt-disabled-regions.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0247-x86-crypto-Reduce-preempt-disabled-regions.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 17252e9430d653fd5496614df815123214db2a44 Mon Sep 17 00:00:00 2001
+From d5381a56692618b9947ff43f0de76f619bde95fc Mon Sep 17 00:00:00 2001
From: Peter Zijlstra <peterz at infradead.org>
Date: Mon, 14 Nov 2011 18:19:27 +0100
-Subject: [PATCH 247/290] x86: crypto: Reduce preempt disabled regions
+Subject: [PATCH 247/304] x86: crypto: Reduce preempt disabled regions
Restrict the preempt disabled regions to the actual floating point
operations and enable preemption for the administrative actions.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0248-dm-Make-rt-aware.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0248-dm-Make-rt-aware.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0248-dm-Make-rt-aware.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 44b990f6394e255204aad05e15b05afaa8cc14ce Mon Sep 17 00:00:00 2001
+From 196ca63d197c8c89c7fab8fa441bc6716bf7afd4 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Mon, 14 Nov 2011 23:06:09 +0100
-Subject: [PATCH 248/290] dm: Make rt aware
+Subject: [PATCH 248/304] dm: Make rt aware
Use the BUG_ON_NORT variant for the irq_disabled() checks. RT has
interrupts legitimately enabled here as we cant deadlock against the
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0249-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0249-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0249-cpumask-Disable-CONFIG_CPUMASK_OFFSTACK-for-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6c76d33a808ef00f62d5009678428719d0d661a6 Mon Sep 17 00:00:00 2001
+From 88710be5b6081567129ee16c0ca76c849af0a923 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 14 Dec 2011 01:03:49 +0100
-Subject: [PATCH 249/290] cpumask: Disable CONFIG_CPUMASK_OFFSTACK for RT
+Subject: [PATCH 249/304] cpumask: Disable CONFIG_CPUMASK_OFFSTACK for RT
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.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0250-seqlock-Prevent-rt-starvation.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0250-seqlock-Prevent-rt-starvation.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0250-seqlock-Prevent-rt-starvation.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From dbe4d1afdf28a98737a25595cad4837b8b328047 Mon Sep 17 00:00:00 2001
+From 87f3793f1f65c44ad72b726f0cef9f6cad7c539d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 22 Feb 2012 12:03:30 +0100
-Subject: [PATCH 250/290] seqlock: Prevent rt starvation
+Subject: [PATCH 250/304] seqlock: Prevent rt starvation
If a low prio writer gets preempted while holding the seqlock write
locked, a high prio reader spins forever on RT.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0251-timer-Fix-hotplug-for-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0251-timer-Fix-hotplug-for-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0251-timer-Fix-hotplug-for-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6425b0b5c1c9baaf8a064aaa5f35b25615d0be43 Mon Sep 17 00:00:00 2001
+From 6d58e1c8eadd1f6fcfa646ab508ae8e74b8277c6 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Thu, 1 Mar 2012 13:55:28 -0500
-Subject: [PATCH 251/290] timer: Fix hotplug for -rt
+Subject: [PATCH 251/304] timer: Fix hotplug for -rt
Revert the RT patch:
Author: Ingo Molnar <mingo at elte.hu>
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0252-futex-rt-Fix-possible-lockup-when-taking-pi_lock-in-.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0252-futex-rt-Fix-possible-lockup-when-taking-pi_lock-in-.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0252-futex-rt-Fix-possible-lockup-when-taking-pi_lock-in-.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b139baf913ae71e65d44125e0d1e8a3a2344bd06 Mon Sep 17 00:00:00 2001
+From 64de53bdd536348f1f5314e693c0066e9b295b32 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Thu, 1 Mar 2012 13:55:29 -0500
-Subject: [PATCH 252/290] futex/rt: Fix possible lockup when taking pi_lock in
+Subject: [PATCH 252/304] futex/rt: Fix possible lockup when taking pi_lock in
proxy handler
When taking the pi_lock, we must disable interrupts because the
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0253-ring-buffer-rt-Check-for-irqs-disabled-before-grabbi.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0253-ring-buffer-rt-Check-for-irqs-disabled-before-grabbi.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0253-ring-buffer-rt-Check-for-irqs-disabled-before-grabbi.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From bfc533a9c7eeacbc884f2ce3c84bc711237dfd6a Mon Sep 17 00:00:00 2001
+From a4df3d67b04b2b7faa1ad8b64ffd41b4ed541088 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Thu, 1 Mar 2012 13:55:32 -0500
-Subject: [PATCH 253/290] ring-buffer/rt: Check for irqs disabled before
+Subject: [PATCH 253/304] ring-buffer/rt: Check for irqs disabled before
grabbing reader lock
In RT the reader lock is a mutex and we can not grab it when preemption is
@@ -21,7 +21,7 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
-index 354017f..c060f04 100644
+index 70112f3..aa89695 100644
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -1054,7 +1054,7 @@ static inline int ok_to_lock(void)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0254-sched-rt-Fix-wait_task_interactive-to-test-rt_spin_l.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0254-sched-rt-Fix-wait_task_interactive-to-test-rt_spin_l.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0254-sched-rt-Fix-wait_task_interactive-to-test-rt_spin_l.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 36c35c30eed5b887f82f225316ab791845f0bda5 Mon Sep 17 00:00:00 2001
+From 1592f3a5438d08531270ca45d82a1e4a59fd02a8 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Thu, 1 Mar 2012 13:55:33 -0500
-Subject: [PATCH 254/290] sched/rt: Fix wait_task_interactive() to test
+Subject: [PATCH 254/304] sched/rt: Fix wait_task_interactive() to test
rt_spin_lock state
The wait_task_interactive() will have a task sleep waiting for another
@@ -25,7 +25,7 @@
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/kernel/sched.c b/kernel/sched.c
-index ba3ddde..0b263dd 100644
+index 364a863..bba3c83 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -2446,7 +2446,8 @@ unsigned long wait_task_inactive(struct task_struct *p, long match_state)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0255-lglock-rt-Use-non-rt-for_each_cpu-in-rt-code.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0255-lglock-rt-Use-non-rt-for_each_cpu-in-rt-code.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0255-lglock-rt-Use-non-rt-for_each_cpu-in-rt-code.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 52e08edcd4ee2cbf04979c98da63d5c079c06878 Mon Sep 17 00:00:00 2001
+From 548516d041712d2a2553e56f7bf8b1f6fb1b765b Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Thu, 1 Mar 2012 13:55:30 -0500
-Subject: [PATCH 255/290] lglock/rt: Use non-rt for_each_cpu() in -rt code
+Subject: [PATCH 255/304] lglock/rt: Use non-rt for_each_cpu() in -rt code
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
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0256-cpu-Make-hotplug.lock-a-sleeping-spinlock-on-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0256-cpu-Make-hotplug.lock-a-sleeping-spinlock-on-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0256-cpu-Make-hotplug.lock-a-sleeping-spinlock-on-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 9c42e618c8bde61f239fa54e845a2a82bf74b26c Mon Sep 17 00:00:00 2001
+From c98c8f14aaaf1e4c8a67189be82e5f6627e321d4 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Fri, 2 Mar 2012 10:36:57 -0500
-Subject: [PATCH 256/290] cpu: Make hotplug.lock a "sleeping" spinlock on RT
+Subject: [PATCH 256/304] cpu: Make hotplug.lock a "sleeping" spinlock on RT
Tasks can block on hotplug.lock in pin_current_cpu(), but their state
might be != RUNNING. So the mutex wakeup will set the state
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0257-softirq-Check-preemption-after-reenabling-interrupts.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0257-softirq-Check-preemption-after-reenabling-interrupts.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0257-softirq-Check-preemption-after-reenabling-interrupts.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 8d7b7ba9bc35959dd59287505a730da9b40222c5 Mon Sep 17 00:00:00 2001
+From 26c082dcd6ccc39a97437576e4c6102af36f7681 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 13 Nov 2011 17:17:09 +0100
-Subject: [PATCH 257/290] softirq: Check preemption after reenabling
+Subject: [PATCH 257/304] softirq: Check preemption after reenabling
interrupts
raise_softirq_irqoff() disables interrupts and wakes the softirq
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0258-rt-Introduce-cpu_chill.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0258-rt-Introduce-cpu_chill.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0258-rt-Introduce-cpu_chill.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5d27bfe09f34e3c7a7c722cc9746b408d69b9542 Mon Sep 17 00:00:00 2001
+From 44aaebdb3b563d6bfd344d21099d0bd0842f5aa1 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 7 Mar 2012 20:51:03 +0100
-Subject: [PATCH 258/290] rt: Introduce cpu_chill()
+Subject: [PATCH 258/304] rt: Introduce cpu_chill()
Retry loops on RT might loop forever when the modifying side was
preempted. Add cpu_chill() to replace cpu_relax(). cpu_chill()
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0259-fs-dcache-Use-cpu_chill-in-trylock-loops.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0259-fs-dcache-Use-cpu_chill-in-trylock-loops.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0259-fs-dcache-Use-cpu_chill-in-trylock-loops.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d39668f051f7e84544a47125e7459ee3afac604a Mon Sep 17 00:00:00 2001
+From 97905d47d7fb1a42624b9af3040c5a3de0820546 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 7 Mar 2012 21:00:34 +0100
-Subject: [PATCH 259/290] fs: dcache: Use cpu_chill() in trylock loops
+Subject: [PATCH 259/304] fs: dcache: Use cpu_chill() in trylock loops
Retry loops on RT might loop forever when the modifying side was
preempted. Use cpu_chill() instead of cpu_relax() to let the system
@@ -42,7 +42,7 @@
}
spin_unlock(&p->d_lock);
diff --git a/fs/dcache.c b/fs/dcache.c
-index 63c0c6b..152184c 100644
+index bb7f4cc..0840534 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -37,6 +37,7 @@
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0260-net-Use-cpu_chill-instead-of-cpu_relax.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0260-net-Use-cpu_chill-instead-of-cpu_relax.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0260-net-Use-cpu_chill-instead-of-cpu_relax.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 23edd4e4d785a9325de268b17d5b92342746fa32 Mon Sep 17 00:00:00 2001
+From 81335e3993992796046fda80f4c751af3ad5da37 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 7 Mar 2012 21:10:04 +0100
-Subject: [PATCH 260/290] net: Use cpu_chill() instead of cpu_relax()
+Subject: [PATCH 260/304] net: Use cpu_chill() instead of cpu_relax()
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 @@
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
-index 85afc13..684f510 100644
+index 835fcea..0b3c649 100644
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
@@ -89,6 +89,7 @@
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0261-kconfig-disable-a-few-options-rt.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0261-kconfig-disable-a-few-options-rt.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0261-kconfig-disable-a-few-options-rt.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From eb0c8059e6fe415d5a7f20095328735d69107e71 Mon Sep 17 00:00:00 2001
+From 671905468353513e164a84dd6c71955da8bfaab3 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 24 Jul 2011 12:11:43 +0200
-Subject: [PATCH 261/290] kconfig-disable-a-few-options-rt.patch
+Subject: [PATCH 261/304] kconfig-disable-a-few-options-rt.patch
Disable stuff which is known to have issues on RT
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0262-kconfig-preempt-rt-full.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0262-kconfig-preempt-rt-full.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0262-kconfig-preempt-rt-full.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e8051f4f1f9f74e80470aaed6c30a428299489b0 Mon Sep 17 00:00:00 2001
+From e9c54fcac4917a7cfc0a840831ba43ab746f85f8 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 29 Jun 2011 14:58:57 +0200
-Subject: [PATCH 262/290] kconfig-preempt-rt-full.patch
+Subject: [PATCH 262/304] kconfig-preempt-rt-full.patch
Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
---
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0263-rt-Make-migrate_disable-enable-and-__rt_mutex_init-n.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0263-rt-Make-migrate_disable-enable-and-__rt_mutex_init-n.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0263-rt-Make-migrate_disable-enable-and-__rt_mutex_init-n.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 442728b9a5c9f6dcbe8f62061f1a899e788acc09 Mon Sep 17 00:00:00 2001
+From b19f688bbe0c85d4a2c69529c81b18c0132224e8 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <srostedt at redhat.com>
Date: Mon, 16 Apr 2012 21:51:54 -0400
-Subject: [PATCH 263/290] rt: Make migrate_disable/enable() and
+Subject: [PATCH 263/304] rt: Make migrate_disable/enable() and
__rt_mutex_init non-GPL only
Modules that load on the normal vanilla kernel should also load on
@@ -28,10 +28,10 @@
/**
* 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 0b263dd..91ddbd8 100644
+index bba3c83..1dfdae9 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4618,7 +4618,7 @@ void migrate_disable(void)
+@@ -4619,7 +4619,7 @@ void migrate_disable(void)
p->migrate_disable = 1;
preempt_enable();
}
@@ -40,7 +40,7 @@
void migrate_enable(void)
{
-@@ -4670,7 +4670,7 @@ void migrate_enable(void)
+@@ -4671,7 +4671,7 @@ void migrate_enable(void)
unpin_current_cpu();
preempt_enable();
}
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0264-scsi-qla2xxx-Use-local_irq_save_nort-in-qla2x00_poll.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0264-scsi-qla2xxx-Use-local_irq_save_nort-in-qla2x00_poll.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0264-scsi-qla2xxx-Use-local_irq_save_nort-in-qla2x00_poll.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 3ca04c8fee3535da8cf3164746e3150e8ee776f0 Mon Sep 17 00:00:00 2001
+From 8247b56159266fc24cd7c51ba57543f437b12529 Mon Sep 17 00:00:00 2001
From: John Kacur <jkacur at redhat.com>
Date: Fri, 27 Apr 2012 12:48:46 +0200
-Subject: [PATCH 264/290] scsi: qla2xxx: Use local_irq_save_nort() in
+Subject: [PATCH 264/304] scsi: qla2xxx: Use local_irq_save_nort() in
qla2x00_poll
RT triggers the following:
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0265-net-RT-REmove-preemption-disabling-in-netif_rx.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0265-net-RT-REmove-preemption-disabling-in-netif_rx.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0265-net-RT-REmove-preemption-disabling-in-netif_rx.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f2493386000a22986ab1e6faaa77c1679dac4264 Mon Sep 17 00:00:00 2001
+From f2144f19fc4741ccdd74ec778b2e904ba3b41d5b Mon Sep 17 00:00:00 2001
From: Priyanka Jain <Priyanka.Jain at freescale.com>
Date: Thu, 17 May 2012 09:35:11 +0530
-Subject: [PATCH 265/290] net,RT:REmove preemption disabling in netif_rx()
+Subject: [PATCH 265/304] net,RT:REmove preemption disabling in netif_rx()
1)enqueue_to_backlog() (called from netif_rx) should be
bind to a particluar CPU. This can be achieved by
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0266-mips-remove-smp-reserve-lock.patch.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0266-mips-remove-smp-reserve-lock.patch.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0266-mips-remove-smp-reserve-lock.patch.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5c3b91642cee353e29afd846bf94a44b9c79ff43 Mon Sep 17 00:00:00 2001
+From d6199c8436b7edcb4dfb4e06b93d65d5c3dfed0d Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 22 May 2012 21:15:10 +0200
-Subject: [PATCH 266/290] mips-remove-smp-reserve-lock.patch
+Subject: [PATCH 266/304] mips-remove-smp-reserve-lock.patch
Instead of making the lock raw, remove it as it protects nothing.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0267-Latency-histogramms-Cope-with-backwards-running-loca.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0267-Latency-histogramms-Cope-with-backwards-running-loca.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0267-Latency-histogramms-Cope-with-backwards-running-loca.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 04689337f4339344bf547accbf2e3676b085808c Mon Sep 17 00:00:00 2001
+From d352e46ccc0c123611b40f1783acc19cf72c43ce Mon Sep 17 00:00:00 2001
From: Carsten Emde <C.Emde at osadl.org>
Date: Wed, 11 Jul 2012 22:05:17 +0000
-Subject: [PATCH 267/290] Latency histogramms: Cope with backwards running
+Subject: [PATCH 267/304] Latency histogramms: Cope with backwards running
local trace clock
Thanks to the wonders of modern technology, the local trace clock can
@@ -29,7 +29,7 @@
2 files changed, 38 insertions(+), 35 deletions(-)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 945d230..bcd4597 100644
+index 1d9c8a1..5be568f 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1589,7 +1589,7 @@ struct task_struct {
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0268-Latency-histograms-Adjust-timer-if-already-elapsed-w.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0268-Latency-histograms-Adjust-timer-if-already-elapsed-w.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0268-Latency-histograms-Adjust-timer-if-already-elapsed-w.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 2fa1f81ae019d3bba73c265cf51c53575131880f Mon Sep 17 00:00:00 2001
+From 83a705c58e9c68a8e92212c204c5620795f95ec9 Mon Sep 17 00:00:00 2001
From: Carsten Emde <C.Emde at osadl.org>
Date: Wed, 11 Jul 2012 22:05:18 +0000
-Subject: [PATCH 268/290] Latency histograms: Adjust timer, if already elapsed
+Subject: [PATCH 268/304] Latency histograms: Adjust timer, if already elapsed
when programmed
Nothing prevents a programmer from calling clock_nanosleep() with an
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0269-Disable-RT_GROUP_SCHED-in-PREEMPT_RT_FULL.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0269-Disable-RT_GROUP_SCHED-in-PREEMPT_RT_FULL.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0269-Disable-RT_GROUP_SCHED-in-PREEMPT_RT_FULL.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7a8e06b0d9259dc9236dcced0e5cd4dada0577bc Mon Sep 17 00:00:00 2001
+From a0ad116d5798f0cd3dbb5c7e418bf2de51e29948 Mon Sep 17 00:00:00 2001
From: Carsten Emde <C.Emde at osadl.org>
Date: Wed, 11 Jul 2012 22:05:18 +0000
-Subject: [PATCH 269/290] Disable RT_GROUP_SCHED in PREEMPT_RT_FULL
+Subject: [PATCH 269/304] Disable RT_GROUP_SCHED in PREEMPT_RT_FULL
Strange CPU stalls have been observed in RT when RT_GROUP_SCHED
was configured.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0270-Latency-histograms-Detect-another-yet-overlooked-sha.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0270-Latency-histograms-Detect-another-yet-overlooked-sha.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0270-Latency-histograms-Detect-another-yet-overlooked-sha.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 7e8cf28b7b2c6c980151e4edb110499ce072bde1 Mon Sep 17 00:00:00 2001
+From bc89dd60f62863096d726d48f739369c8c886441 Mon Sep 17 00:00:00 2001
From: Carsten Emde <C.Emde at osadl.org>
Date: Wed, 11 Jul 2012 22:05:19 +0000
-Subject: [PATCH 270/290] Latency histograms: Detect another yet overlooked
+Subject: [PATCH 270/304] Latency histograms: Detect another yet overlooked
sharedprio condition
While waiting for an RT process to be woken up, the previous process may
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0271-slab-Prevent-local-lock-deadlock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0271-slab-Prevent-local-lock-deadlock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0271-slab-Prevent-local-lock-deadlock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 64c19eca4ea2167c1c3c94c04219986172f86af2 Mon Sep 17 00:00:00 2001
+From f7592322c116c981674e8b60487912fe56e586b8 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 11 Jul 2012 22:05:19 +0000
-Subject: [PATCH 271/290] slab: Prevent local lock deadlock
+Subject: [PATCH 271/304] slab: Prevent local lock deadlock
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
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0272-fs-jbd-pull-your-plug-when-waiting-for-space.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0272-fs-jbd-pull-your-plug-when-waiting-for-space.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0272-fs-jbd-pull-your-plug-when-waiting-for-space.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 49a0c651849df33a27909fd855f47ca1380de810 Mon Sep 17 00:00:00 2001
+From d55e748b6d4caf97a5673851210c8d012fa7982c Mon Sep 17 00:00:00 2001
From: Mike Galbraith <mgalbraith at suse.de>
Date: Wed, 11 Jul 2012 22:05:20 +0000
-Subject: [PATCH 272/290] fs, jbd: pull your plug when waiting for space
+Subject: [PATCH 272/304] fs, jbd: pull your plug when waiting for space
With an -rt kernel, and a heavy sync IO load, tasks can jam
up on journal locks without unplugging, which can lead to
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0273-perf-Make-swevent-hrtimer-run-in-irq-instead-of-soft.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0273-perf-Make-swevent-hrtimer-run-in-irq-instead-of-soft.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0273-perf-Make-swevent-hrtimer-run-in-irq-instead-of-soft.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e751c40609c8b99b2c2d6fb9a70d9d88545c4f4a Mon Sep 17 00:00:00 2001
+From 5de1b1988d6ece5107831eae7e6dcaace5eca0c2 Mon Sep 17 00:00:00 2001
From: Yong Zhang <yong.zhang at windriver.com>
Date: Wed, 11 Jul 2012 22:05:21 +0000
-Subject: [PATCH 273/290] perf: Make swevent hrtimer run in irq instead of
+Subject: [PATCH 273/304] perf: Make swevent hrtimer run in irq instead of
softirq
Otherwise we get a deadlock like below:
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0274-cpu-rt-Rework-cpu-down-for-PREEMPT_RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0274-cpu-rt-Rework-cpu-down-for-PREEMPT_RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0274-cpu-rt-Rework-cpu-down-for-PREEMPT_RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 05fc165422f2ddfe71827120cc7e9d10eeedf498 Mon Sep 17 00:00:00 2001
+From 5049abd638357ceb8ac5c0e68c1207c916fe8e2b Mon Sep 17 00:00:00 2001
From: Steven Rostedt <srostedt at redhat.com>
Date: Mon, 16 Jul 2012 08:07:43 +0000
-Subject: [PATCH 274/290] cpu/rt: Rework cpu down for PREEMPT_RT
+Subject: [PATCH 274/304] cpu/rt: Rework cpu down for PREEMPT_RT
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 @@
3 files changed, 285 insertions(+), 40 deletions(-)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index bcd4597..03498cc 100644
+index 5be568f..fa24643 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1937,6 +1937,10 @@ extern void do_set_cpus_allowed(struct task_struct *p,
@@ -434,10 +434,10 @@
if (err) {
/* CPU didn't die: tell everyone. Can't complain. */
diff --git a/kernel/sched.c b/kernel/sched.c
-index 91ddbd8..87654e6 100644
+index 1dfdae9..af7b82b 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4596,7 +4596,7 @@ void migrate_disable(void)
+@@ -4597,7 +4597,7 @@ void migrate_disable(void)
{
struct task_struct *p = current;
@@ -446,7 +446,7 @@
#ifdef CONFIG_SCHED_DEBUG
p->migrate_disable_atomic++;
#endif
-@@ -4627,7 +4627,7 @@ void migrate_enable(void)
+@@ -4628,7 +4628,7 @@ void migrate_enable(void)
unsigned long flags;
struct rq *rq;
@@ -455,7 +455,7 @@
#ifdef CONFIG_SCHED_DEBUG
p->migrate_disable_atomic--;
#endif
-@@ -6553,6 +6553,84 @@ void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
+@@ -6554,6 +6554,84 @@ void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
cpumask_copy(&p->cpus_allowed, new_mask);
}
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0275-cpu-rt-Fix-cpu_hotplug-variable-initialization.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0275-cpu-rt-Fix-cpu_hotplug-variable-initialization.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0275-cpu-rt-Fix-cpu_hotplug-variable-initialization.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From fec70569a3e15aea34a4b22500ff2ba3830d789f Mon Sep 17 00:00:00 2001
+From e099dc645709163c8afa56c21bfea891dbaa7aaf Mon Sep 17 00:00:00 2001
From: Steven Rostedt <srostedt at redhat.com>
Date: Tue, 17 Jul 2012 10:45:59 -0400
-Subject: [PATCH 275/290] cpu/rt: Fix cpu_hotplug variable initialization
+Subject: [PATCH 275/304] cpu/rt: Fix cpu_hotplug variable initialization
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
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0276-time-rt-Fix-up-leap-second-backport-for-RT-changes.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0276-time-rt-Fix-up-leap-second-backport-for-RT-changes.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0276-time-rt-Fix-up-leap-second-backport-for-RT-changes.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 75929c047205b661008b30d95841a139097840b8 Mon Sep 17 00:00:00 2001
+From e19da53b62031b96094c92049f839ede9f7b56ab Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Thu, 2 Aug 2012 18:56:52 -0400
-Subject: [PATCH 276/290] time/rt: Fix up leap-second backport for RT changes
+Subject: [PATCH 276/304] time/rt: Fix up leap-second backport for RT changes
The leap-second backport broke RT, and a few changes had to be done.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0277-fix-printk-flush-of-messages.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0277-fix-printk-flush-of-messages.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0277-fix-printk-flush-of-messages.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 3fbb44532ce16ee6c0e7a45e89952e5f7d339045 Mon Sep 17 00:00:00 2001
+From d13a3a64952ae11e1609262eb713cabf07f7f8d5 Mon Sep 17 00:00:00 2001
From: Frank Rowand <frank.rowand at am.sony.com>
Date: Wed, 16 May 2012 18:09:36 -0700
-Subject: [PATCH 277/290] fix printk flush of messages
+Subject: [PATCH 277/304] fix printk flush of messages
Updates console-make-rt-friendly.patch
@@ -41,10 +41,10 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/printk.c b/kernel/printk.c
-index 9eabbbb..66e83e5 100644
+index b5e609e..4d2cb7d 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
-@@ -836,7 +836,7 @@ static int console_trylock_for_printk(unsigned int cpu, unsigned long flags)
+@@ -847,7 +847,7 @@ static int console_trylock_for_printk(unsigned int cpu, unsigned long flags)
int retval = 0, wake = 0;
#ifdef CONFIG_PREEMPT_RT_FULL
int lock = (!early_boot_irqs_disabled && !irqs_disabled_flags(flags) &&
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0278-fix-printk-flush-of-messages.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0278-fix-printk-flush-of-messages.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0278-fix-printk-flush-of-messages.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 102d36948427fa4f9b48d4bb224dd40cf7397daa Mon Sep 17 00:00:00 2001
+From 414c2a5fa1f738712e3e4a735a34439309a55cf6 Mon Sep 17 00:00:00 2001
From: Frank Rowand <frank.rowand at am.sony.com>
Date: Wed, 16 May 2012 18:05:53 -0700
-Subject: [PATCH 278/290] fix printk flush of messages
+Subject: [PATCH 278/304] fix printk flush of messages
Reverse preempt-rt-allow-immediate-magic-sysrq-output-for-preempt_rt_full.patch
@@ -101,7 +101,7 @@
#include <linux/init.h>
#include <linux/jiffies.h>
#include <linux/nmi.h>
-@@ -835,8 +834,8 @@ static int console_trylock_for_printk(unsigned int cpu, unsigned long flags)
+@@ -846,8 +845,8 @@ static int console_trylock_for_printk(unsigned int cpu, unsigned long flags)
{
int retval = 0, wake = 0;
#ifdef CONFIG_PREEMPT_RT_FULL
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0279-random-Make-it-work-on-rt.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0279-random-Make-it-work-on-rt.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0279-random-Make-it-work-on-rt.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From b6637ed4ad952527c1c2016ef071c3fe79d90467 Mon Sep 17 00:00:00 2001
+From 475f71f97e148f27f3159c79465e598a47c56457 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Tue, 21 Aug 2012 20:38:50 +0200
-Subject: [PATCH 279/290] random: Make it work on rt
+Subject: [PATCH 279/304] random: Make it work on rt
Delegate the random insertion to the forced threaded interrupt
handler. Store the return IP of the hard interrupt handler in the irq
@@ -107,10 +107,10 @@
if (!noirqdebug)
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index 87dc053..2204340 100644
+index f52263a..ff7bb89 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
-@@ -816,6 +816,12 @@ static int irq_thread(void *data)
+@@ -825,6 +825,12 @@ static int irq_thread(void *data)
action_ret = handler_fn(desc, action);
if (!noirqdebug)
note_interrupt(action->irq, desc, action_ret);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0280-softirq-Init-softirq-local-lock-after-per-cpu-sectio.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0280-softirq-Init-softirq-local-lock-after-per-cpu-sectio.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0280-softirq-Init-softirq-local-lock-after-per-cpu-sectio.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 053d184ccc34d552ccd529770dd2fcfbcf5399bd Mon Sep 17 00:00:00 2001
+From f52af834a1520bf454e3682df5f73513ec844921 Mon Sep 17 00:00:00 2001
From: Steven Rostedt <rostedt at goodmis.org>
Date: Thu, 4 Oct 2012 11:02:04 -0400
-Subject: [PATCH 280/290] softirq: Init softirq local lock after per cpu
+Subject: [PATCH 280/304] softirq: Init softirq local lock after per cpu
section is set up
I discovered this bug when booting 3.4-rt on my powerpc box. It crashed
@@ -116,7 +116,7 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/init/main.c b/init/main.c
-index d432bea..6f96224 100644
+index b00c71b..c1f0c45 100644
--- a/init/main.c
+++ b/init/main.c
@@ -490,7 +490,6 @@ asmlinkage void __init start_kernel(void)
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0281-mm-slab-Fix-potential-deadlock.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0281-mm-slab-Fix-potential-deadlock.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0281-mm-slab-Fix-potential-deadlock.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d67e5531caa9e4f4efc89b6a12b189df026331db Mon Sep 17 00:00:00 2001
+From e41e5d1eea11b58b93e3c53d1cdd6fe0e9d273ef Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 26 Sep 2012 16:20:00 +0200
-Subject: [PATCH 281/290] mm: slab: Fix potential deadlock
+Subject: [PATCH 281/304] mm: slab: Fix potential deadlock
=============================================
[ INFO: possible recursive locking detected ]
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0282-mm-page_alloc-Use-local_lock_on-instead-of-plain-spi.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0282-mm-page_alloc-Use-local_lock_on-instead-of-plain-spi.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0282-mm-page_alloc-Use-local_lock_on-instead-of-plain-spi.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From f3e01f0115a2a92966560fe82bbbf8857b442b17 Mon Sep 17 00:00:00 2001
+From 7cc89fb940cf95ed876cc4029e4e9619bf29979e Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Thu, 27 Sep 2012 11:11:46 +0200
-Subject: [PATCH 282/290] mm: page_alloc: Use local_lock_on() instead of plain
+Subject: [PATCH 282/304] mm: page_alloc: Use local_lock_on() instead of plain
spinlock
The plain spinlock while sufficient does not update the local_lock
@@ -45,7 +45,7 @@
({ \
int __locked; \
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 67202bc..8678a7f 100644
+index dce6a03..ed09d11 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -227,9 +227,9 @@ static DEFINE_LOCAL_IRQ_LOCK(pa_lock);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0283-rt-rwsem-rwlock-lockdep-annotations.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0283-rt-rwsem-rwlock-lockdep-annotations.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0283-rt-rwsem-rwlock-lockdep-annotations.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 93c97753a31ef8a00d088e930f8839e0106e1b28 Mon Sep 17 00:00:00 2001
+From ec1c7f6082f90c530e18938dc249c85d86d33818 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 28 Sep 2012 10:49:42 +0100
-Subject: [PATCH 283/290] rt: rwsem/rwlock: lockdep annotations
+Subject: [PATCH 283/304] rt: rwsem/rwlock: lockdep annotations
rwlocks and rwsems on RT do not allow multiple readers. Annotate the
lockdep acquire functions accordingly.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0284-sched-Better-debug-output-for-might-sleep.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0284-sched-Better-debug-output-for-might-sleep.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0284-sched-Better-debug-output-for-might-sleep.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From e30e64f60b466d52be57bfd243efe9bd1feb7df5 Mon Sep 17 00:00:00 2001
+From bf49c813c637b339b70264dbb8d84f0ccceeaff1 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Fri, 5 Oct 2012 08:56:15 +0100
-Subject: [PATCH 284/290] sched: Better debug output for might sleep
+Subject: [PATCH 284/304] sched: Better debug output for might sleep
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 @@
2 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index 03498cc..12317b6 100644
+index fa24643..e9854c5 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1612,6 +1612,10 @@ struct task_struct {
@@ -30,10 +30,10 @@
#ifdef CONFIG_PREEMPT_RT_FULL
diff --git a/kernel/sched.c b/kernel/sched.c
-index 87654e6..cdf9484 100644
+index af7b82b..db46cd4 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4487,8 +4487,13 @@ void __kprobes add_preempt_count(int val)
+@@ -4488,8 +4488,13 @@ void __kprobes add_preempt_count(int val)
DEBUG_LOCKS_WARN_ON((preempt_count() & PREEMPT_MASK) >=
PREEMPT_MASK - 10);
#endif
@@ -49,7 +49,7 @@
}
EXPORT_SYMBOL(add_preempt_count);
-@@ -4530,6 +4535,13 @@ static noinline void __schedule_bug(struct task_struct *prev)
+@@ -4531,6 +4536,13 @@ static noinline void __schedule_bug(struct task_struct *prev)
print_modules();
if (irqs_disabled())
print_irqtrace_events(prev);
@@ -63,7 +63,7 @@
if (regs)
show_regs(regs);
-@@ -8912,6 +8924,13 @@ void __might_sleep(const char *file, int line, int preempt_offset)
+@@ -8913,6 +8925,13 @@ void __might_sleep(const char *file, int line, int preempt_offset)
debug_show_held_locks(current);
if (irqs_disabled())
print_irqtrace_events(current);
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0285-stomp_machine-Use-mutex_trylock-when-called-from-ina.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0285-stomp_machine-Use-mutex_trylock-when-called-from-ina.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0285-stomp_machine-Use-mutex_trylock-when-called-from-ina.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 2ac74517b86f5946657dc09e1b108e92256358e0 Mon Sep 17 00:00:00 2001
+From c1d8e6e0af29f5ee1e9fe403bed2b35a04608354 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Wed, 3 Oct 2012 17:21:53 +0100
-Subject: [PATCH 285/290] stomp_machine: Use mutex_trylock when called from
+Subject: [PATCH 285/304] stomp_machine: Use mutex_trylock when called from
inactive cpu
If the stop machinery is called from inactive CPU we cannot use
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0286-slab-Fix-up-stable-merge-of-slab-init_lock_keys.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0286-slab-Fix-up-stable-merge-of-slab-init_lock_keys.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0286-slab-Fix-up-stable-merge-of-slab-init_lock_keys.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 6bbf73020d80baa3eab10628b6556de96dcc6274 Mon Sep 17 00:00:00 2001
+From 6586dcbef57074addba7b23f1624cd27048f771f Mon Sep 17 00:00:00 2001
From: Steven Rostedt <srostedt at redhat.com>
Date: Tue, 16 Oct 2012 17:00:19 -0400
-Subject: [PATCH 286/290] slab: Fix up stable merge of slab init_lock_keys()
+Subject: [PATCH 286/304] slab: Fix up stable merge of slab init_lock_keys()
There was a stable fix that moved the init_lock_keys() to after
the enable_cpucache(). But -rt changed this function to
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0287-hrtimer-Raise-softirq-if-hrtimer-irq-stalled.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0287-hrtimer-Raise-softirq-if-hrtimer-irq-stalled.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0287-hrtimer-Raise-softirq-if-hrtimer-irq-stalled.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 8fdb1853317b9557bbcd32db8bd67df1116e2adb Mon Sep 17 00:00:00 2001
+From 941791a67a803401d826193d9d6b9f89873a28ea Mon Sep 17 00:00:00 2001
From: Watanabe <shunsuke.watanabe at tel.com>
Date: Sun, 28 Oct 2012 11:13:44 +0100
-Subject: [PATCH 287/290] hrtimer: Raise softirq if hrtimer irq stalled
+Subject: [PATCH 287/304] hrtimer: Raise softirq if hrtimer irq stalled
When the hrtimer stall detection hits the softirq is not raised.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0288-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0288-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0288-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From 5751250ea1b4e0502ed2ede5eab3d00097d9cd83 Mon Sep 17 00:00:00 2001
+From 2be36c915360ef9fc6dd398ca4bda36c8055cc2f Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 28 Oct 2012 13:26:09 +0000
-Subject: [PATCH 288/290] rcu: Disable RCU_FAST_NO_HZ on RT
+Subject: [PATCH 288/304] rcu: Disable RCU_FAST_NO_HZ on RT
This uses a timer_list timer from the irq disabled guts of the idle
code. Disable it for now to prevent wreckage.
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/0289-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/0289-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0289-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -1,7 +1,7 @@
-From d995a7a42fa918ffe13688c86f1af8e49d9b3130 Mon Sep 17 00:00:00 2001
+From 9d480f5703e87aa6038bbdf5a5acd586ea54e859 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx at linutronix.de>
Date: Sun, 28 Oct 2012 11:18:08 +0100
-Subject: [PATCH 289/290] net: netfilter: Serialize xt_write_recseq sections
+Subject: [PATCH 289/304] net: netfilter: Serialize xt_write_recseq sections
on RT
The netfilter code relies only on the implicit semantics of
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0290-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0290-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0290-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0290-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch)
@@ -0,0 +1,36 @@
+From f2c534a60526cbe053f6be0e4036376c47e88171 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Thu, 20 Dec 2012 14:58:00 +0100
+Subject: [PATCH 290/304] sched: Adjust sched_reset_on_fork when nothing else
+ changes
+
+If the policy and priority remain unchanged a possible modification of
+sched_reset_on_fork gets lost in the early exit path.
+
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Cc: stable at vger.kernel.org
+Cc: stable-rt at vger.kernel.org
+---
+ kernel/sched.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/sched.c b/kernel/sched.c
+index db46cd4..1101ef2 100644
+--- a/kernel/sched.c
++++ b/kernel/sched.c
+@@ -5720,11 +5720,13 @@ recheck:
+ }
+
+ /*
+- * If not changing anything there's no need to proceed further:
++ * If not changing anything there's no need to proceed
++ * further, but store a possible modification of
++ * reset_on_fork.
+ */
+ if (unlikely(policy == p->policy && (!rt_policy(policy) ||
+ param->sched_priority == p->rt_priority))) {
+-
++ p->sched_reset_on_fork = reset_on_fork;
+ __task_rq_unlock(rq);
+ raw_spin_unlock_irqrestore(&p->pi_lock, flags);
+ return 0;
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0291-sched-Queue-RT-tasks-to-head-when-prio-drops.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0291-sched-Queue-RT-tasks-to-head-when-prio-drops.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0291-sched-Queue-RT-tasks-to-head-when-prio-drops.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0291-sched-Queue-RT-tasks-to-head-when-prio-drops.patch)
@@ -0,0 +1,71 @@
+From 2cbf094ea6f2638c16a71547bc83d7e8af21c090 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Tue, 4 Dec 2012 08:56:41 +0100
+Subject: [PATCH 291/304] sched: Queue RT tasks to head when prio drops
+
+The following scenario does not work correctly:
+
+Runqueue of CPUx contains two runnable and pinned tasks:
+ T1: SCHED_FIFO, prio 80
+ T2: SCHED_FIFO, prio 80
+
+T1 is on the cpu and executes the following syscalls (classic priority
+ceiling scenario):
+
+ sys_sched_setscheduler(pid(T1), SCHED_FIFO, .prio = 90);
+ ...
+ sys_sched_setscheduler(pid(T1), SCHED_FIFO, .prio = 80);
+ ...
+
+Now T1 gets preempted by T3 (SCHED_FIFO, prio 95). After T3 goes back
+to sleep the scheduler picks T2. Surprise!
+
+The same happens w/o actual preemption when T1 is forced into the
+scheduler due to a sporadic NEED_RESCHED event. The scheduler invokes
+pick_next_task() which returns T2. So T1 gets preempted and scheduled
+out.
+
+This happens because sched_setscheduler() dequeues T1 from the prio 90
+list and then enqueues it on the tail of the prio 80 list behind T2.
+This violates the POSIX spec and surprises user space which relies on
+the guarantee that SCHED_FIFO tasks are not scheduled out unless they
+give the CPU up voluntarily or are preempted by a higher priority
+task. In the latter case the preempted task must get back on the CPU
+after the preempting task schedules out again.
+
+We fixed a similar issue already in commit 60db48c (sched: Queue a
+deboosted task to the head of the RT prio queue). The same treatment
+is necessary for sched_setscheduler(). So enqueue to head of the prio
+bucket list if the priority of the task is lowered.
+
+It might be possible that existing user space relies on the current
+behaviour, but it can be considered highly unlikely due to the corner
+case nature of the application scenario.
+
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Cc: stable at vger.kernel.org
+Cc: stable-rt at vger.kernel.org
+---
+ kernel/sched.c | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/sched.c b/kernel/sched.c
+index 1101ef2..f97f894 100644
+--- a/kernel/sched.c
++++ b/kernel/sched.c
+@@ -5768,8 +5768,13 @@ recheck:
+
+ if (running)
+ p->sched_class->set_curr_task(rq);
+- if (on_rq)
+- activate_task(rq, p, 0);
++ if (on_rq) {
++ /*
++ * We enqueue to tail when the priority of a task is
++ * increased (user space view).
++ */
++ activate_task(rq, p, oldprio <= p->prio ? ENQUEUE_HEAD : 0);
++ }
+
+ check_class_changed(rq, p, prev_class, oldprio);
+ task_rq_unlock(rq, p, &flags);
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0292-sched-Consider-pi-boosting-in-setscheduler.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0292-sched-Consider-pi-boosting-in-setscheduler.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0292-sched-Consider-pi-boosting-in-setscheduler.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0292-sched-Consider-pi-boosting-in-setscheduler.patch)
@@ -0,0 +1,160 @@
+From 2132ce4192c7b3be0857d75dcb0d224738881158 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Thu, 20 Dec 2012 15:13:49 +0100
+Subject: [PATCH 292/304] sched: Consider pi boosting in setscheduler
+
+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
+runqueue even if the new priority is lower than the current effective
+boosted priority. This can result in undesired reordering of the
+priority bucket list.
+
+If the new priority is less or equal than the current effective we
+just store the new parameters in the task struct and leave the
+scheduler class and the runqueue untouched. This is handled when the
+task deboosts itself. Only if the new priority is higher than the
+effective boosted priority we apply the change immediately.
+
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Cc: stable at vger.kernel.org
+Cc: stable-rt at vger.kernel.org
+---
+ include/linux/sched.h | 5 +++++
+ kernel/rtmutex.c | 12 ++++++++++++
+ kernel/sched.c | 39 +++++++++++++++++++++++++++++++--------
+ 3 files changed, 48 insertions(+), 8 deletions(-)
+
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index e9854c5..380e503 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -2127,6 +2127,7 @@ extern unsigned int sysctl_sched_cfs_bandwidth_slice;
+ #ifdef CONFIG_RT_MUTEXES
+ extern int rt_mutex_getprio(struct task_struct *p);
+ extern void rt_mutex_setprio(struct task_struct *p, int prio);
++extern int rt_mutex_check_prio(struct task_struct *task, int newprio);
+ extern void rt_mutex_adjust_pi(struct task_struct *p);
+ static inline bool tsk_is_pi_blocked(struct task_struct *tsk)
+ {
+@@ -2137,6 +2138,10 @@ static inline int rt_mutex_getprio(struct task_struct *p)
+ {
+ return p->normal_prio;
+ }
++static inline int rt_mutex_check_prio(struct task_struct *task, int newprio)
++{
++ return 0;
++}
+ # define rt_mutex_adjust_pi(p) do { } while (0)
+ static inline bool tsk_is_pi_blocked(struct task_struct *tsk)
+ {
+diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c
+index 9c4f6e5..6075f176e 100644
+--- a/kernel/rtmutex.c
++++ b/kernel/rtmutex.c
+@@ -124,6 +124,18 @@ int rt_mutex_getprio(struct task_struct *task)
+ }
+
+ /*
++ * Called by sched_setscheduler() to check whether the priority change
++ * is overruled by a possible priority boosting.
++ */
++int rt_mutex_check_prio(struct task_struct *task, int newprio)
++{
++ if (!task_has_pi_waiters(task))
++ return 0;
++
++ return task_top_pi_waiter(task)->pi_list_entry.prio <= newprio;
++}
++
++/*
+ * Adjust the priority of a task, after its pi_waiters got modified.
+ *
+ * This can be both boosting and unboosting. task->pi_lock must be held.
+diff --git a/kernel/sched.c b/kernel/sched.c
+index f97f894..c6ff5be 100644
+--- a/kernel/sched.c
++++ b/kernel/sched.c
+@@ -5364,7 +5364,8 @@ EXPORT_SYMBOL(sleep_on_timeout);
+ * This function changes the 'effective' priority of a task. It does
+ * not touch ->normal_prio like __setscheduler().
+ *
+- * Used by the rt_mutex code to implement priority inheritance logic.
++ * Used by the rt_mutex code to implement priority inheritance
++ * logic. Call site only calls if the priority of the task changed.
+ */
+ void rt_mutex_setprio(struct task_struct *p, int prio)
+ {
+@@ -5587,20 +5588,25 @@ static struct task_struct *find_process_by_pid(pid_t pid)
+ return pid ? find_task_by_vpid(pid) : current;
+ }
+
+-/* Actually do priority change: must hold rq lock. */
+-static void
+-__setscheduler(struct rq *rq, struct task_struct *p, int policy, int prio)
++static void __setscheduler_params(struct task_struct *p, int policy, int prio)
+ {
+ p->policy = policy;
+ p->rt_priority = prio;
+ p->normal_prio = normal_prio(p);
++ set_load_weight(p);
++}
++
++/* Actually do priority change: must hold rq lock. */
++static void
++__setscheduler(struct rq *rq, struct task_struct *p, int policy, int prio)
++{
++ __setscheduler_params(p, policy, prio);
+ /* we are holding p->pi_lock already */
+ p->prio = rt_mutex_getprio(p);
+ if (rt_prio(p->prio))
+ p->sched_class = &rt_sched_class;
+ else
+ p->sched_class = &fair_sched_class;
+- set_load_weight(p);
+ }
+
+ /*
+@@ -5625,6 +5631,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)
+ {
++ int newprio = MAX_RT_PRIO - 1 - param->sched_priority;
+ int retval, oldprio, oldpolicy = -1, on_rq, running;
+ unsigned long flags;
+ const struct sched_class *prev_class;
+@@ -5753,6 +5760,25 @@ recheck:
+ task_rq_unlock(rq, p, &flags);
+ goto recheck;
+ }
++
++ p->sched_reset_on_fork = reset_on_fork;
++ oldprio = p->prio;
++
++ /*
++ * Special case for priority boosted tasks.
++ *
++ * If the new priority is lower or equal (user space view)
++ * than the current (boosted) priority, we just store the new
++ * normal parameters and do not touch the scheduler class and
++ * the runqueue. This will be done when the task deboost
++ * itself.
++ */
++ if (rt_mutex_check_prio(p, newprio)) {
++ __setscheduler_params(p, policy, param->sched_priority);
++ task_rq_unlock(rq, p, &flags);
++ return 0;
++ }
++
+ on_rq = p->on_rq;
+ running = task_current(rq, p);
+ if (on_rq)
+@@ -5760,9 +5786,6 @@ recheck:
+ if (running)
+ p->sched_class->put_prev_task(rq, p);
+
+- p->sched_reset_on_fork = reset_on_fork;
+-
+- oldprio = p->prio;
+ prev_class = p->sched_class;
+ __setscheduler(rq, p, policy, param->sched_priority);
+
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0293-drivers-tty-pl011-irq-disable-madness.patch.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0293-drivers-tty-pl011-irq-disable-madness.patch.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0293-drivers-tty-pl011-irq-disable-madness.patch.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0293-drivers-tty-pl011-irq-disable-madness.patch.patch)
@@ -0,0 +1,49 @@
+From 502800f3cf50c15699200481814774a763db92d5 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Tue, 8 Jan 2013 21:36:51 +0100
+Subject: [PATCH 293/304] drivers-tty-pl011-irq-disable-madness.patch
+
+Cc: stable-rt at vger.kernel.org
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ drivers/tty/serial/amba-pl011.c | 15 ++++++++++-----
+ 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
+--- 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)
+
+ clk_enable(uap->clk);
+
+- local_irq_save(flags);
++ /*
++ * local_irq_save(flags);
++ *
++ * This local_irq_save() is nonsense. If we come in via sysrq
++ * handling then interrupts are already disabled. Aside of
++ * that the port.sysrq check is racy on SMP regardless.
++ */
+ if (uap->port.sysrq)
+ locked = 0;
+ else if (oops_in_progress)
+- locked = spin_trylock(&uap->port.lock);
++ locked = spin_trylock_irqsave(&uap->port.lock, flags);
+ else
+- spin_lock(&uap->port.lock);
++ spin_lock_irqsave(&uap->port.lock, flags);
+
+ /*
+ * First save the CR then disable the interrupts
+@@ -1789,8 +1795,7 @@ pl011_console_write(struct console *co, const char *s, unsigned int count)
+ writew(old_cr, uap->port.membase + UART011_CR);
+
+ if (locked)
+- spin_unlock(&uap->port.lock);
+- local_irq_restore(flags);
++ spin_unlock_irqrestore(&uap->port.lock, flags);
+
+ clk_disable(uap->clk);
+ }
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0294-mmci-Remove-bogus-local_irq_save.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0294-mmci-Remove-bogus-local_irq_save.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0294-mmci-Remove-bogus-local_irq_save.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0294-mmci-Remove-bogus-local_irq_save.patch)
@@ -0,0 +1,44 @@
+From bb9f94d3bc462dd37564132c5d6053c345abcdba Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Wed, 9 Jan 2013 12:11:12 +0100
+Subject: [PATCH 294/304] mmci: Remove bogus local_irq_save()
+
+On !RT interrupt runs with interrupts disabled. On RT it's in a
+thread, so no need to disable interrupts at all.
+
+Cc: stable-rt at vger.kernel.org
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ drivers/mmc/host/mmci.c | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c
+index 0726e59..5d7bf83 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)
+ struct sg_mapping_iter *sg_miter = &host->sg_miter;
+ struct variant_data *variant = host->variant;
+ void __iomem *base = host->base;
+- unsigned long flags;
+ u32 status;
+
+ status = readl(base + MMCISTATUS);
+
+ dev_dbg(mmc_dev(host->mmc), "irq1 (pio) %08x\n", status);
+
+- local_irq_save(flags);
+-
+ do {
+ unsigned int remain, len;
+ char *buffer;
+@@ -907,8 +904,6 @@ static irqreturn_t mmci_pio_irq(int irq, void *dev_id)
+
+ sg_miter_stop(sg_miter);
+
+- local_irq_restore(flags);
+-
+ /*
+ * If we have less than the fifo 'half-full' threshold to transfer,
+ * trigger a PIO interrupt as soon as any data is available.
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0295-sched-Init-idle-on_rq-in-init_idle.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0295-sched-Init-idle-on_rq-in-init_idle.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0295-sched-Init-idle-on_rq-in-init_idle.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0295-sched-Init-idle-on_rq-in-init_idle.patch)
@@ -0,0 +1,24 @@
+From 128efb676fd082af49e2f1076928966e21ece1ee Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Wed, 9 Jan 2013 23:03:29 +0100
+Subject: [PATCH 295/304] sched: Init idle->on_rq in init_idle()
+
+Cc: stable-rt at vger.kernel.org
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ kernel/sched.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/kernel/sched.c b/kernel/sched.c
+index c6ff5be..ef5fe63 100644
+--- a/kernel/sched.c
++++ b/kernel/sched.c
+@@ -6520,6 +6520,7 @@ void __cpuinit init_idle(struct task_struct *idle, int cpu)
+ rcu_read_unlock();
+
+ rq->curr = rq->idle = idle;
++ idle->on_rq = 1;
+ #if defined(CONFIG_SMP)
+ idle->on_cpu = 1;
+ #endif
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0296-sched-Check-for-idle-task-in-might_sleep.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0296-sched-Check-for-idle-task-in-might_sleep.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0296-sched-Check-for-idle-task-in-might_sleep.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0296-sched-Check-for-idle-task-in-might_sleep.patch)
@@ -0,0 +1,28 @@
+From cf298ea6ce5299e69385288ac1f8cc92bfdf7872 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Wed, 9 Jan 2013 23:34:08 +0100
+Subject: [PATCH 296/304] sched: Check for idle task in might_sleep()
+
+Idle is not allowed to call sleeping functions ever!
+
+Cc: stable-rt at vger.kernel.org
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ kernel/sched.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/kernel/sched.c b/kernel/sched.c
+index ef5fe63..03015b2 100644
+--- a/kernel/sched.c
++++ b/kernel/sched.c
+@@ -8938,7 +8938,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. */
+- if ((preempt_count_equals(preempt_offset) && !irqs_disabled()) ||
++ if ((preempt_count_equals(preempt_offset) && !irqs_disabled() &&
++ !is_idle_task(current)) ||
+ system_state != SYSTEM_RUNNING || oops_in_progress)
+ return;
+ if (time_before(jiffies, prev_jiffy + HZ) && prev_jiffy)
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0297-mm-swap-Initialize-local-locks-early.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0297-mm-swap-Initialize-local-locks-early.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0297-mm-swap-Initialize-local-locks-early.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0297-mm-swap-Initialize-local-locks-early.patch)
@@ -0,0 +1,42 @@
+From 3b38c68173f163d2837b0f84685e8f005d45af81 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Thu, 10 Jan 2013 09:50:51 +0100
+Subject: [PATCH 297/304] mm: swap: Initialize local locks early
+
+Cc: stable-rt at vger.kernel.org
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ mm/swap.c | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/mm/swap.c b/mm/swap.c
+index e3f7d6f..c428897 100644
+--- a/mm/swap.c
++++ b/mm/swap.c
+@@ -772,6 +772,15 @@ unsigned pagevec_lookup(struct pagevec *pvec, struct address_space *mapping,
+
+ EXPORT_SYMBOL(pagevec_lookup);
+
++/* Early setup for the local locks */
++static int __init swap_init_locks(void)
++{
++ local_irq_lock_init(rotate_lock);
++ local_irq_lock_init(swap_lock);
++ return 1;
++}
++early_initcall(swap_init_locks);
++
+ unsigned pagevec_lookup_tag(struct pagevec *pvec, struct address_space *mapping,
+ pgoff_t *index, int tag, unsigned nr_pages)
+ {
+@@ -789,9 +798,6 @@ void __init swap_setup(void)
+ {
+ unsigned long megs = totalram_pages >> (20 - PAGE_SHIFT);
+
+- local_irq_lock_init(rotate_lock);
+- local_irq_lock_init(swap_lock);
+-
+ #ifdef CONFIG_SWAP
+ bdi_init(swapper_space.backing_dev_info);
+ #endif
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0298-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0298-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0298-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0298-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch)
@@ -0,0 +1,46 @@
+From 4c4462ad609943ebc9a1dccb7107e24014f8d182 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Wed, 13 Feb 2013 10:59:53 +0100
+Subject: [PATCH 298/304] x86/32: Use kmap switch for non highmem as well
+
+Even with CONFIG_HIGHMEM=n we need to take care of the "atomic"
+mappings which are installed via iomap_atomic.
+
+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>
+---
+ arch/x86/kernel/process_32.c | 2 +-
+ include/linux/sched.h | 4 +++-
+ 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
+--- 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)
+ task_thread_info(next_p)->flags & _TIF_WORK_CTXSW_NEXT))
+ __switch_to_xtra(prev_p, next_p, tss);
+
+-#if defined CONFIG_PREEMPT_RT_FULL && defined CONFIG_HIGHMEM
++#ifdef CONFIG_PREEMPT_RT_FULL
+ /*
+ * Save @prev's kmap_atomic stack
+ */
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index 380e503..41c0979 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -1608,9 +1608,11 @@ struct task_struct {
+ struct rcu_head put_rcu;
+ int softirq_nestcnt;
+ #endif
+-#if defined CONFIG_PREEMPT_RT_FULL && defined CONFIG_HIGHMEM
++#ifdef CONFIG_PREEMPT_RT_FULL
++# if defined CONFIG_HIGHMEM || defined CONFIG_X86_32
+ int kmap_idx;
+ pte_t kmap_pte[KM_TYPE_NR];
++# endif
+ #endif
+
+ #ifdef CONFIG_DEBUG_PREEMPT
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0299-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0299-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0299-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0299-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch)
@@ -0,0 +1,183 @@
+From 7a38f1a9fd6fe0afdfb629af94de777048dbe8f2 Mon Sep 17 00:00:00 2001
+From: Steven Rostedt <rostedt at goodmis.org>
+Date: Wed, 13 Feb 2013 09:26:05 -0500
+Subject: [PATCH 299/304] acpi/rt: Convert acpi_gbl_hardware lock back to a
+ raw_spinlock_t
+
+We hit the following bug with 3.6-rt:
+
+[ 5.898990] BUG: scheduling while atomic: swapper/3/0/0x00000002
+[ 5.898991] no locks held by swapper/3/0.
+[ 5.898993] Modules linked in:
+[ 5.898996] Pid: 0, comm: swapper/3 Not tainted 3.6.11-rt28.19.el6rt.x86_64.debug #1
+[ 5.898997] Call Trace:
+[ 5.899011] [<ffffffff810804e7>] __schedule_bug+0x67/0x90
+[ 5.899028] [<ffffffff81577923>] __schedule+0x793/0x7a0
+[ 5.899032] [<ffffffff810b4e40>] ? debug_rt_mutex_print_deadlock+0x50/0x200
+[ 5.899034] [<ffffffff81577b89>] schedule+0x29/0x70
+[ 5.899036] BUG: scheduling while atomic: swapper/7/0/0x00000002
+[ 5.899037] no locks held by swapper/7/0.
+[ 5.899039] [<ffffffff81578525>] rt_spin_lock_slowlock+0xe5/0x2f0
+[ 5.899040] Modules linked in:
+[ 5.899041]
+[ 5.899045] [<ffffffff81579a58>] ? _raw_spin_unlock_irqrestore+0x38/0x90
+[ 5.899046] Pid: 0, comm: swapper/7 Not tainted 3.6.11-rt28.19.el6rt.x86_64.debug #1
+[ 5.899047] Call Trace:
+[ 5.899049] [<ffffffff81578bc6>] rt_spin_lock+0x16/0x40
+[ 5.899052] [<ffffffff810804e7>] __schedule_bug+0x67/0x90
+[ 5.899054] [<ffffffff8157d3f0>] ? notifier_call_chain+0x80/0x80
+[ 5.899056] [<ffffffff81577923>] __schedule+0x793/0x7a0
+[ 5.899059] [<ffffffff812f2034>] acpi_os_acquire_lock+0x1f/0x23
+[ 5.899062] [<ffffffff810b4e40>] ? debug_rt_mutex_print_deadlock+0x50/0x200
+[ 5.899068] [<ffffffff8130be64>] acpi_write_bit_register+0x33/0xb0
+[ 5.899071] [<ffffffff81577b89>] schedule+0x29/0x70
+[ 5.899072] [<ffffffff8130be13>] ? acpi_read_bit_register+0x33/0x51
+[ 5.899074] [<ffffffff81578525>] rt_spin_lock_slowlock+0xe5/0x2f0
+[ 5.899077] [<ffffffff8131d1fc>] acpi_idle_enter_bm+0x8a/0x28e
+[ 5.899079] [<ffffffff81579a58>] ? _raw_spin_unlock_irqrestore+0x38/0x90
+[ 5.899081] [<ffffffff8107e5da>] ? this_cpu_load+0x1a/0x30
+[ 5.899083] [<ffffffff81578bc6>] rt_spin_lock+0x16/0x40
+[ 5.899087] [<ffffffff8144c759>] cpuidle_enter+0x19/0x20
+[ 5.899088] [<ffffffff8157d3f0>] ? notifier_call_chain+0x80/0x80
+[ 5.899090] [<ffffffff8144c777>] cpuidle_enter_state+0x17/0x50
+[ 5.899092] [<ffffffff812f2034>] acpi_os_acquire_lock+0x1f/0x23
+[ 5.899094] [<ffffffff8144d1a1>] cpuidle899101] [<ffffffff8130be13>] ?
+
+As the acpi code disables interrupts in acpi_idle_enter_bm, and calls
+code that grabs the acpi lock, it causes issues as the lock is currently
+in RT a sleeping lock.
+
+The lock was converted from a raw to a sleeping lock due to some
+previous issues, and tests that showed it didn't seem to matter.
+Unfortunately, it did matter for one of our boxes.
+
+This patch converts the lock back to a raw lock. I've run this code on a
+few of my own machines, one being my laptop that uses the acpi quite
+extensively. I've been able to suspend and resume without issues.
+
+[ tglx: Made the change exclusive for acpi_gbl_hardware_lock ]
+
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+Cc: John Kacur <jkacur at gmail.com>
+Cc: Clark Williams <clark at redhat.com>
+Link: http://lkml.kernel.org/r/1360765565.23152.5.camel@gandalf.local.home
+Cc: stable-rt at vger.kernel.org
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+---
+ drivers/acpi/acpica/acglobal.h | 2 +-
+ drivers/acpi/acpica/hwregs.c | 4 ++--
+ drivers/acpi/acpica/hwxface.c | 4 ++--
+ drivers/acpi/acpica/utmutex.c | 4 ++--
+ include/acpi/platform/aclinux.h | 14 ++++++++++++++
+ 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
+--- a/drivers/acpi/acpica/acglobal.h
++++ b/drivers/acpi/acpica/acglobal.h
+@@ -236,7 +236,7 @@ ACPI_EXTERN u8 acpi_gbl_global_lock_pending;
+ * interrupt level
+ */
+ ACPI_EXTERN acpi_spinlock acpi_gbl_gpe_lock; /* For GPE data structs and registers */
+-ACPI_EXTERN acpi_spinlock acpi_gbl_hardware_lock; /* For ACPI H/W except GPE registers */
++ACPI_EXTERN acpi_raw_spinlock acpi_gbl_hardware_lock; /* For ACPI H/W except GPE registers */
+
+ /*****************************************************************************
+ *
+diff --git a/drivers/acpi/acpica/hwregs.c b/drivers/acpi/acpica/hwregs.c
+index cc70f3f..1df2ce6 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)
+ ACPI_BITMASK_ALL_FIXED_STATUS,
+ ACPI_FORMAT_UINT64(acpi_gbl_xpm1a_status.address)));
+
+- lock_flags = acpi_os_acquire_lock(acpi_gbl_hardware_lock);
++ raw_spin_lock_irqsave(acpi_gbl_hardware_lock, lock_flags);
+
+ /* Clear the fixed events in PM1 A/B */
+
+ status = acpi_hw_register_write(ACPI_REGISTER_PM1_STATUS,
+ ACPI_BITMASK_ALL_FIXED_STATUS);
+
+- acpi_os_release_lock(acpi_gbl_hardware_lock, lock_flags);
++ raw_spin_unlock_irqrestore(acpi_gbl_hardware_lock, lock_flags);
+
+ if (ACPI_FAILURE(status))
+ goto exit;
+diff --git a/drivers/acpi/acpica/hwxface.c b/drivers/acpi/acpica/hwxface.c
+index c2793a8..5b28769 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)
+ return_ACPI_STATUS(AE_BAD_PARAMETER);
+ }
+
+- lock_flags = acpi_os_acquire_lock(acpi_gbl_hardware_lock);
++ raw_spin_lock_irqsave(acpi_gbl_hardware_lock, lock_flags);
+
+ /*
+ * At this point, we know that the parent register is one of the
+@@ -448,7 +448,7 @@ acpi_status acpi_write_bit_register(u32 register_id, u32 value)
+
+ unlock_and_exit:
+
+- acpi_os_release_lock(acpi_gbl_hardware_lock, lock_flags);
++ raw_spin_unlock_irqrestore(acpi_gbl_hardware_lock, lock_flags);
+ return_ACPI_STATUS(status);
+ }
+
+diff --git a/drivers/acpi/acpica/utmutex.c b/drivers/acpi/acpica/utmutex.c
+index 7d797e2..b611bf3 100644
+--- a/drivers/acpi/acpica/utmutex.c
++++ b/drivers/acpi/acpica/utmutex.c
+@@ -88,7 +88,7 @@ acpi_status acpi_ut_mutex_initialize(void)
+ return_ACPI_STATUS (status);
+ }
+
+- status = acpi_os_create_lock (&acpi_gbl_hardware_lock);
++ status = acpi_os_create_raw_lock (&acpi_gbl_hardware_lock);
+ if (ACPI_FAILURE (status)) {
+ return_ACPI_STATUS (status);
+ }
+@@ -135,7 +135,7 @@ void acpi_ut_mutex_terminate(void)
+ /* Delete the spinlocks */
+
+ acpi_os_delete_lock(acpi_gbl_gpe_lock);
+- acpi_os_delete_lock(acpi_gbl_hardware_lock);
++ acpi_os_delete_raw_lock(acpi_gbl_hardware_lock);
+
+ /* Delete the reader/writer lock */
+
+diff --git a/include/acpi/platform/aclinux.h b/include/acpi/platform/aclinux.h
+index f4b2eff..0e70789 100644
+--- a/include/acpi/platform/aclinux.h
++++ b/include/acpi/platform/aclinux.h
+@@ -73,6 +73,7 @@
+
+ #define acpi_cache_t struct kmem_cache
+ #define acpi_spinlock spinlock_t *
++#define acpi_raw_spinlock raw_spinlock_t *
+ #define acpi_cpu_flags unsigned long
+
+ #else /* !__KERNEL__ */
+@@ -176,6 +177,19 @@ static inline void *acpi_os_acquire_object(acpi_cache_t * cache)
+ lock ? AE_OK : AE_NO_MEMORY; \
+ })
+
++#define acpi_os_create_raw_lock(__handle) \
++({ \
++ raw_spinlock_t *lock = ACPI_ALLOCATE(sizeof(*lock)); \
++ \
++ if (lock) { \
++ *(__handle) = lock; \
++ raw_spin_lock_init(*(__handle)); \
++ } \
++ lock ? AE_OK : AE_NO_MEMORY; \
++})
++
++#define acpi_os_delete_raw_lock(__handle) kfree(__handle)
++
+ #endif /* __KERNEL__ */
+
+ #endif /* __ACLINUX_H__ */
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0300-printk-Fix-rq-lock-vs-logbuf_lock-unlock-lock-invers.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0300-printk-Fix-rq-lock-vs-logbuf_lock-unlock-lock-invers.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0300-printk-Fix-rq-lock-vs-logbuf_lock-unlock-lock-invers.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0300-printk-Fix-rq-lock-vs-logbuf_lock-unlock-lock-invers.patch)
@@ -0,0 +1,40 @@
+From 84984770b17ac3e3f9aa999e2191b8ba1f4e3230 Mon Sep 17 00:00:00 2001
+From: "Bu, Yitian" <ybu at qti.qualcomm.com>
+Date: Mon, 18 Feb 2013 12:53:37 +0000
+Subject: [PATCH 300/304] printk: Fix rq->lock vs logbuf_lock unlock lock
+ inversion
+
+commit 07354eb1a74d1 ("locking printk: Annotate logbuf_lock as raw")
+reintroduced a lock inversion problem which was fixed in commit
+0b5e1c5255 ("printk: Release console_sem after logbuf_lock"). This
+happened probably when fixing up patch rejects.
+
+Restore the ordering and unlock logbuf_lock before releasing
+console_sem.
+
+Signed-off-by: ybu <ybu at qti.qualcomm.com>
+Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
+Cc: stable at vger.kernel.org
+Cc: stable-rt at vger.kernel.org
+Link: http://lkml.kernel.org/r/E807E903FE6CBE4D95E420FBFCC273B827413C@nasanexd01h.na.qualcomm.com
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ kernel/printk.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kernel/printk.c b/kernel/printk.c
+index 972cc56..37b9b99 100644
+--- a/kernel/printk.c
++++ b/kernel/printk.c
+@@ -867,9 +867,9 @@ static int console_trylock_for_printk(unsigned int cpu, unsigned long flags)
+ }
+ }
+ printk_cpu = UINT_MAX;
++ raw_spin_unlock(&logbuf_lock);
+ if (wake)
+ up(&console_sem);
+- raw_spin_unlock(&logbuf_lock);
+ return retval;
+ }
+ static const char recursion_bug_msg [] =
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0301-serial-Imx-Fix-recursive-locking-bug.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0301-serial-Imx-Fix-recursive-locking-bug.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0301-serial-Imx-Fix-recursive-locking-bug.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0301-serial-Imx-Fix-recursive-locking-bug.patch)
@@ -0,0 +1,125 @@
+From ddeda4331671ad66956eb72af9ed114c238696af Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Thu, 14 Feb 2013 21:01:06 +0100
+Subject: [PATCH 301/304] serial: Imx: Fix recursive locking bug
+
+commit 9ec1882df2 (tty: serial: imx: console write routing is unsafe
+on SMP) introduced a recursive locking bug in imx_console_write().
+
+The callchain is:
+
+imx_rxint()
+ spin_lock_irqsave(&sport->port.lock,flags);
+ ...
+ uart_handle_sysrq_char();
+ sysrq_function();
+ printk();
+ imx_console_write();
+ spin_lock_irqsave(&sport->port.lock,flags); <--- DEAD
+
+The bad news is that the kernel debugging facilities can dectect the
+problem, but the printks never surface on the serial console for
+obvious reasons.
+
+There is a similar issue with oops_in_progress. If the kernel crashes
+we really don't want to be stuck on the lock and unable to tell what
+happened.
+
+In general most UP originated drivers miss these checks and nobody
+ever notices because CONFIG_PROVE_LOCKING seems to be still ignored by
+a large number of developers.
+
+The solution is to avoid locking in the sysrq case and trylock in the
+oops_in_progress case.
+
+This scheme is used in other drivers as well and it would be nice if
+we could move this to a common place, so the usual copy/paste/modify
+bugs can be avoided.
+
+Now there is another issue with this scheme:
+
+CPU0 CPU1
+printk()
+ rxint()
+ sysrq_detection() -> sets port->sysrq
+ return from interrupt
+ console_write()
+ if (port->sysrq)
+ avoid locking
+
+port->sysrq is reset with the next receive character. So as long as
+the port->sysrq is not reset and this can take an endless amount of
+time if after the break no futher receive character follows, all
+console writes happen unlocked.
+
+While the current writer is protected against other console writers by
+the console sem, it's unprotected against open/close or other
+operations which fiddle with the port. That's what the above mentioned
+commit tried to solve.
+
+That's an issue in all drivers which use that scheme and unfortunately
+there is no easy workaround. The only solution is to have a separate
+indicator port->sysrq_cpu. uart_handle_sysrq_char() then sets it to
+smp_processor_id() before calling into handle_sysrq() and resets it to
+-1 after that. Then change the locking check to:
+
+ if (port->sysrq_cpu == smp_processor_id())
+ locked = 0;
+ else if (oops_in_progress)
+ locked = spin_trylock_irqsave(port->lock, flags);
+ else
+ spin_lock_irqsave(port->lock, flags);
+
+That would force all other cpus into the spin_lock path. Problem
+solved, but that's way beyond the scope of this fix and really wants
+to be implemented in a common function which calls the uart specific
+write function to avoid another gazillion of hard to debug
+copy/paste/modify bugs.
+
+Reported-and-tested-by: Tim Sander <tim at krieglstein.org>
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Cc: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+Cc: Jiri Slaby <jslaby at suse.cz>
+Cc: Xinyu Chen <xinyu.chen at freescale.com>
+Cc: Dirk Behme <dirk.behme at de.bosch.com>
+Cc: Shawn Guo <shawn.guo at linaro.org>
+Cc: Tim Sander <tim at krieglstein.org>
+Cc: Sascha Hauer <s.hauer at pengutronix.de>
+Cc: stable-rt at vger.kernel.org
+Link: http://lkml.kernel.org/r/alpine.LFD.2.02.1302142006050.22263@ionos
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ drivers/tty/serial/imx.c | 11 +++++++++--
+ 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
+--- 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)
+ struct imx_port *sport = imx_ports[co->index];
+ unsigned int old_ucr1, old_ucr2, ucr1;
+ unsigned long flags;
++ int locked = 1;
+
+- spin_lock_irqsave(&sport->port.lock, flags);
++ if (sport->port.sysrq)
++ locked = 0;
++ else if (oops_in_progress)
++ locked = spin_trylock_irqsave(&sport->port.lock, flags);
++ else
++ spin_lock_irqsave(&sport->port.lock, flags);
+
+ /*
+ * First, save UCR1/2 and then disable interrupts
+@@ -1144,7 +1150,8 @@ imx_console_write(struct console *co, const char *s, unsigned int count)
+ writel(old_ucr1, sport->port.membase + UCR1);
+ writel(old_ucr2, sport->port.membase + UCR2);
+
+- spin_unlock_irqrestore(&sport->port.lock, flags);
++ if (locked)
++ spin_unlock_irqrestore(&sport->port.lock, flags);
+ }
+
+ /*
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0302-wait-simple-Simple-waitqueue-implementation.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0302-wait-simple-Simple-waitqueue-implementation.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0302-wait-simple-Simple-waitqueue-implementation.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0302-wait-simple-Simple-waitqueue-implementation.patch)
@@ -0,0 +1,341 @@
+From ec309d2f196c8f98e20e3a1fb1c4f37baa6a7601 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Mon, 12 Dec 2011 12:29:04 +0100
+Subject: [PATCH 302/304] wait-simple: Simple waitqueue implementation
+
+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
+trouble as we can't convert the head lock to a raw spinlock due to
+fancy and long lasting callbacks.
+
+Provide a slim version, which allows RT to replace wait queues. This
+should go mainline as well, as it lowers memory consumption and
+runtime overhead.
+
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+[backport by: Tim Sander <tim.sander at hbm.com> ]
+---
+ include/linux/wait-simple.h | 172 +++++++++++++++++++++++++++++++++++++++++++
+ kernel/Makefile | 2 +-
+ kernel/wait-simple.c | 119 ++++++++++++++++++++++++++++++
+ 3 files changed, 292 insertions(+), 1 deletion(-)
+ create mode 100644 include/linux/wait-simple.h
+ create mode 100644 kernel/wait-simple.c
+
+diff --git a/include/linux/wait-simple.h b/include/linux/wait-simple.h
+new file mode 100644
+index 0000000..44fee60
+--- /dev/null
++++ b/include/linux/wait-simple.h
+@@ -0,0 +1,172 @@
++#ifndef _LINUX_WAIT_SIMPLE_H
++#define _LINUX_WAIT_SIMPLE_H
++
++#include <linux/spinlock.h>
++#include <linux/list.h>
++
++#include <asm/current.h>
++
++struct swaiter {
++ struct task_struct *task;
++ struct list_head node;
++};
++
++#define DEFINE_SWAITER(name) \
++ struct swaiter name = { \
++ .task = current, \
++ .node = LIST_HEAD_INIT((name).node), \
++ }
++
++struct swait_head {
++ raw_spinlock_t lock;
++ struct list_head list;
++};
++
++#define SWAIT_HEAD_INITIALIZER(name) { \
++ .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
++ .list = LIST_HEAD_INIT((name).list), \
++ }
++
++#define DEFINE_SWAIT_HEAD(name) \
++ struct swait_head name = SWAIT_HEAD_INITIALIZER(name)
++
++extern void __init_swait_head(struct swait_head *h, struct lock_class_key *key);
++
++#define init_swait_head(swh) \
++ do { \
++ static struct lock_class_key __key; \
++ \
++ __init_swait_head((swh), &__key); \
++ } while (0)
++
++/*
++ * Waiter functions
++ */
++extern void swait_prepare_locked(struct swait_head *head, struct swaiter *w);
++extern void swait_prepare(struct swait_head *head, struct swaiter *w, int state);
++extern void swait_finish_locked(struct swait_head *head, struct swaiter *w);
++extern void swait_finish(struct swait_head *head, struct swaiter *w);
++
++/*
++ * Wakeup functions
++ */
++extern unsigned int __swait_wake(struct swait_head *head, unsigned int state, unsigned int num);
++extern unsigned int __swait_wake_locked(struct swait_head *head, unsigned int state, unsigned int num);
++
++#define swait_wake(head) __swait_wake(head, TASK_NORMAL, 1)
++#define swait_wake_interruptible(head) __swait_wake(head, TASK_INTERRUPTIBLE, 1)
++#define swait_wake_all(head) __swait_wake(head, TASK_NORMAL, 0)
++#define swait_wake_all_interruptible(head) __swait_wake(head, TASK_INTERRUPTIBLE, 0)
++
++/*
++ * Event API
++ */
++#define __swait_event(wq, condition) \
++do { \
++ DEFINE_SWAITER(__wait); \
++ \
++ for (;;) { \
++ swait_prepare(&wq, &__wait, TASK_UNINTERRUPTIBLE); \
++ if (condition) \
++ break; \
++ schedule(); \
++ } \
++ swait_finish(&wq, &__wait); \
++} while (0)
++
++/**
++ * swait_event - sleep until a condition gets true
++ * @wq: the waitqueue to wait on
++ * @condition: a C expression for the event to wait for
++ *
++ * The process is put to sleep (TASK_UNINTERRUPTIBLE) until the
++ * @condition evaluates to true. The @condition is checked each time
++ * the waitqueue @wq is woken up.
++ *
++ * wake_up() has to be called after changing any variable that could
++ * change the result of the wait condition.
++ */
++#define swait_event(wq, condition) \
++do { \
++ if (condition) \
++ break; \
++ __swait_event(wq, condition); \
++} while (0)
++
++#define __swait_event_interruptible(wq, condition, ret) \
++do { \
++ DEFINE_SWAITER(__wait); \
++ \
++ for (;;) { \
++ swait_prepare(&wq, &__wait, TASK_INTERRUPTIBLE); \
++ if (condition) \
++ break; \
++ if (signal_pending(current)) { \
++ ret = -ERESTARTSYS; \
++ break; \
++ } \
++ schedule(); \
++ } \
++ swait_finish(&wq, &__wait); \
++} while (0)
++
++/**
++ * swait_event_interruptible - sleep until a condition gets true
++ * @wq: the waitqueue to wait on
++ * @condition: a C expression for the event to wait for
++ *
++ * The process is put to sleep (TASK_INTERRUPTIBLE) until the
++ * @condition evaluates to true. The @condition is checked each time
++ * the waitqueue @wq is woken up.
++ *
++ * wake_up() has to be called after changing any variable that could
++ * change the result of the wait condition.
++ */
++#define swait_event_interruptible(wq, condition) \
++({ \
++ int __ret = 0; \
++ if (!(condition)) \
++ __swait_event_interruptible(wq, condition, __ret); \
++ __ret; \
++})
++
++#define __swait_event_timeout(wq, condition, ret) \
++do { \
++ DEFINE_SWAITER(__wait); \
++ \
++ for (;;) { \
++ swait_prepare(&wq, &__wait, TASK_UNINTERRUPTIBLE); \
++ if (condition) \
++ break; \
++ ret = schedule_timeout(ret); \
++ if (!ret) \
++ break; \
++ } \
++ swait_finish(&wq, &__wait); \
++} while (0)
++
++/**
++ * swait_event_timeout - sleep until a condition gets true or a timeout elapses
++ * @wq: the waitqueue to wait on
++ * @condition: a C expression for the event to wait for
++ * @timeout: timeout, in jiffies
++ *
++ * The process is put to sleep (TASK_UNINTERRUPTIBLE) until the
++ * @condition evaluates to true. The @condition is checked each time
++ * the waitqueue @wq is woken up.
++ *
++ * wake_up() has to be called after changing any variable that could
++ * change the result of the wait condition.
++ *
++ * The function returns 0 if the @timeout elapsed, and the remaining
++ * jiffies if the condition evaluated to true before the timeout elapsed.
++ */
++#define swait_event_timeout(wq, condition, timeout) \
++({ \
++ long __ret = timeout; \
++ if (!(condition)) \
++ __swait_event_timeout(wq, condition, __ret); \
++ __ret; \
++})
++
++#endif
+diff --git a/kernel/Makefile b/kernel/Makefile
+index c961d3a..0b0ed50 100644
+--- a/kernel/Makefile
++++ b/kernel/Makefile
+@@ -11,7 +11,7 @@ obj-y = sched.o fork.o exec_domain.o panic.o printk.o \
+ hrtimer.o nsproxy.o srcu.o semaphore.o \
+ notifier.o ksysfs.o sched_clock.o cred.o \
+ async.o range.o
+-obj-y += groups.o
++obj-y += groups.o wait-simple.o
+
+ ifdef CONFIG_FUNCTION_TRACER
+ # 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
+--- /dev/null
++++ b/kernel/wait-simple.c
+@@ -0,0 +1,119 @@
++/*
++ * Simple waitqueues without fancy flags and callbacks
++ *
++ * (C) 2011 Thomas Gleixner <tglx at linutronix.de>
++ *
++ * Based on kernel/wait.c
++ *
++ * For licencing details see kernel-base/COPYING
++ */
++#include <linux/init.h>
++#include <linux/export.h>
++#include <linux/sched.h>
++#include <linux/wait-simple.h>
++
++/* Adds w to head->list. Must be called with head->lock locked. */
++static inline void __swait_enqueue(struct swait_head *head, struct swaiter *w)
++{
++ list_add(&w->node, &head->list);
++}
++
++/* Removes w from head->list. Must be called with head->lock locked. */
++static inline void __swait_dequeue(struct swaiter *w)
++{
++ list_del_init(&w->node);
++}
++
++/* Check whether a head has waiters enqueued */
++static inline bool swait_head_has_waiters(struct swait_head *h)
++{
++ return !list_empty(&h->list);
++}
++
++void __init_swait_head(struct swait_head *head, struct lock_class_key *key)
++{
++ raw_spin_lock_init(&head->lock);
++ lockdep_set_class(&head->lock, key);
++ INIT_LIST_HEAD(&head->list);
++}
++EXPORT_SYMBOL_GPL(__init_swait_head);
++
++void swait_prepare_locked(struct swait_head *head, struct swaiter *w)
++{
++ w->task = current;
++ if (list_empty(&w->node))
++ __swait_enqueue(head, w);
++}
++
++void swait_prepare(struct swait_head *head, struct swaiter *w, int state)
++{
++ unsigned long flags;
++
++ raw_spin_lock_irqsave(&head->lock, flags);
++ swait_prepare_locked(head, w);
++ __set_current_state(state);
++ raw_spin_unlock_irqrestore(&head->lock, flags);
++}
++EXPORT_SYMBOL_GPL(swait_prepare);
++
++void swait_finish_locked(struct swait_head *head, struct swaiter *w)
++{
++ __set_current_state(TASK_RUNNING);
++ if (w->task)
++ __swait_dequeue(w);
++}
++
++void swait_finish(struct swait_head *head, struct swaiter *w)
++{
++ unsigned long flags;
++
++ __set_current_state(TASK_RUNNING);
++ if (w->task) {
++ raw_spin_lock_irqsave(&head->lock, flags);
++ __swait_dequeue(w);
++ raw_spin_unlock_irqrestore(&head->lock, flags);
++ }
++}
++EXPORT_SYMBOL_GPL(swait_finish);
++
++unsigned int
++__swait_wake_locked(struct swait_head *head, unsigned int state, unsigned int num)
++{
++ struct swaiter *curr, *next;
++ int woken = 0;
++
++ list_for_each_entry_safe(curr, next, &head->list, node) {
++ if (wake_up_state(curr->task, state)) {
++ __swait_dequeue(curr);
++ /*
++ * The waiting task can free the waiter as
++ * soon as curr->task = NULL is written,
++ * without taking any locks. A memory barrier
++ * is required here to prevent the following
++ * store to curr->task from getting ahead of
++ * the dequeue operation.
++ */
++ smp_wmb();
++ curr->task = NULL;
++ if (++woken == num)
++ break;
++ }
++ }
++ return woken;
++}
++
++unsigned int
++__swait_wake(struct swait_head *head, unsigned int state, unsigned int num)
++{
++ unsigned long flags;
++ int woken;
++
++ if (!swait_head_has_waiters(head))
++ return 0;
++
++ raw_spin_lock_irqsave(&head->lock, flags);
++ woken = __swait_wake_locked(head, state, num);
++ raw_spin_unlock_irqrestore(&head->lock, flags);
++ return woken;
++}
++EXPORT_SYMBOL_GPL(__swait_wake);
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0303-rcutiny-Use-simple-waitqueue.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0303-rcutiny-Use-simple-waitqueue.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0303-rcutiny-Use-simple-waitqueue.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0303-rcutiny-Use-simple-waitqueue.patch)
@@ -0,0 +1,83 @@
+From c06d505cd814473656a5070009905e06ea12f5f6 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx at linutronix.de>
+Date: Mon, 3 Dec 2012 16:25:21 +0100
+Subject: [PATCH 303/304] rcutiny: Use simple waitqueue
+
+Simple waitqueues can be handled from interrupt disabled contexts.
+
+Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt at goodmis.org>
+---
+ kernel/rcutiny_plugin.h | 17 +++++++++--------
+ 1 file changed, 9 insertions(+), 8 deletions(-)
+
+diff --git a/kernel/rcutiny_plugin.h b/kernel/rcutiny_plugin.h
+index 2b0484a..f0a6606 100644
+--- a/kernel/rcutiny_plugin.h
++++ b/kernel/rcutiny_plugin.h
+@@ -26,6 +26,7 @@
+ #include <linux/module.h>
+ #include <linux/debugfs.h>
+ #include <linux/seq_file.h>
++#include <linux/wait-simple.h>
+
+ /* Global control variables for rcupdate callback mechanism. */
+ struct rcu_ctrlblk {
+@@ -250,7 +251,7 @@ static void show_tiny_preempt_stats(struct seq_file *m)
+
+ /* Controls for rcu_kthread() kthread. */
+ static struct task_struct *rcu_kthread_task;
+-static DECLARE_WAIT_QUEUE_HEAD(rcu_kthread_wq);
++static DEFINE_SWAIT_HEAD(rcu_kthread_wq);
+ static unsigned long have_rcu_kthread_work;
+
+ /*
+@@ -720,7 +721,7 @@ void synchronize_rcu(void)
+ }
+ EXPORT_SYMBOL_GPL(synchronize_rcu);
+
+-static DECLARE_WAIT_QUEUE_HEAD(sync_rcu_preempt_exp_wq);
++static DEFINE_SWAIT_HEAD(sync_rcu_preempt_exp_wq);
+ static unsigned long sync_rcu_preempt_exp_count;
+ static DEFINE_MUTEX(sync_rcu_preempt_exp_mutex);
+
+@@ -742,7 +743,7 @@ static int rcu_preempted_readers_exp(void)
+ */
+ static void rcu_report_exp_done(void)
+ {
+- wake_up(&sync_rcu_preempt_exp_wq);
++ swait_wake(&sync_rcu_preempt_exp_wq);
+ }
+
+ /*
+@@ -794,8 +795,8 @@ void synchronize_rcu_expedited(void)
+ else {
+ rcu_initiate_boost();
+ local_irq_restore(flags);
+- wait_event(sync_rcu_preempt_exp_wq,
+- !rcu_preempted_readers_exp());
++ swait_event(sync_rcu_preempt_exp_wq,
++ !rcu_preempted_readers_exp());
+ }
+
+ /* Clean up and exit. */
+@@ -882,7 +883,7 @@ static void rcu_preempt_process_callbacks(void)
+ static void invoke_rcu_callbacks(void)
+ {
+ have_rcu_kthread_work = 1;
+- wake_up(&rcu_kthread_wq);
++ swake_up(&rcu_kthread_wq);
+ }
+
+ /*
+@@ -899,8 +900,8 @@ static int rcu_kthread(void *arg)
+ unsigned long flags;
+
+ for (;;) {
+- wait_event_interruptible(rcu_kthread_wq,
+- have_rcu_kthread_work != 0);
++ swait_event_interruptible(rcu_kthread_wq,
++ have_rcu_kthread_work != 0);
+ morework = rcu_boost();
+ local_irq_save(flags);
+ work = have_rcu_kthread_work;
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt/0304-Linux-3.2.39-rt59-REBASE.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt/0304-Linux-3.2.39-rt59-REBASE.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/0304-Linux-3.2.39-rt59-REBASE.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt/0304-Linux-3.2.39-rt59-REBASE.patch)
@@ -0,0 +1,16 @@
+From 94798ac3f9c0475940f35b09e8ff676b1282b241 Mon Sep 17 00:00:00 2001
+From: Steven Rostedt <srostedt at redhat.com>
+Date: Fri, 22 Feb 2013 12:08:15 -0500
+Subject: [PATCH 304/304] Linux 3.2.39-rt59 REBASE
+
+---
+ localversion-rt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/localversion-rt b/localversion-rt
+index b2111a2..8cdeb45 100644
+--- a/localversion-rt
++++ b/localversion-rt
+@@ -1 +1 @@
+--rt24
++-rt59
Modified: dists/squeeze-backports/linux/debian/patches/features/all/rt/series
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/all/rt/series Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt/series Wed Feb 27 05:58:28 2013 (r19869)
@@ -287,4 +287,18 @@
0287-hrtimer-Raise-softirq-if-hrtimer-irq-stalled.patch
0288-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch
0289-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch
-0290-Linux-3.2.35-rt52-REBASE.patch
+0290-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch
+0291-sched-Queue-RT-tasks-to-head-when-prio-drops.patch
+0292-sched-Consider-pi-boosting-in-setscheduler.patch
+0293-drivers-tty-pl011-irq-disable-madness.patch.patch
+0294-mmci-Remove-bogus-local_irq_save.patch
+0295-sched-Init-idle-on_rq-in-init_idle.patch
+0296-sched-Check-for-idle-task-in-might_sleep.patch
+0297-mm-swap-Initialize-local-locks-early.patch
+0298-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch
+0299-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch
+0300-printk-Fix-rq-lock-vs-logbuf_lock-unlock-lock-invers.patch
+0301-serial-Imx-Fix-recursive-locking-bug.patch
+0302-wait-simple-Simple-waitqueue-implementation.patch
+0303-rcutiny-Use-simple-waitqueue.patch
+0304-Linux-3.2.39-rt59-REBASE.patch
Copied: dists/squeeze-backports/linux/debian/patches/features/all/rt2800-add-chipset-revision-RT5390R-support.patch (from r19868, dists/sid/linux/debian/patches/features/all/rt2800-add-chipset-revision-RT5390R-support.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/rt2800-add-chipset-revision-RT5390R-support.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/rt2800-add-chipset-revision-RT5390R-support.patch)
@@ -0,0 +1,69 @@
+From: Anisse Astier <anisse at astier.eu>
+Date: Mon, 23 Apr 2012 12:33:11 +0200
+Subject: rt2800: add chipset revision RT5390R support
+
+commit 0586a11b5cc51413240e6688936e2edac9c2918e upstream.
+
+About 70% of the chips with revision RT5390R initialize incorrectly, using
+the auxiliary antenna instead of the main one. The net result is that
+signal reception is very poor (no AP further than 1M).
+
+This chipset differs from RT5390 and RT5390F by its support of hardware
+antenna diversity. Therefore antenna selection should be done
+differently, by disabling software features and previously selected
+antenna.
+
+This changeset does just that, and makes all RT5390R work properly.
+
+This is based on Ralink's 2012_03_22_RT5572_Linux_STA_v2.6.0.0_DPO
+driver.
+
+Signed-off-by: Anisse Astier <anisse at astier.eu>
+Signed-off-by: John W. Linville <linville at tuxdriver.com>
+---
+ drivers/net/wireless/rt2x00/rt2800.h | 1 +
+ drivers/net/wireless/rt2x00/rt2800lib.c | 12 ++++++++++++
+ 2 files changed, 13 insertions(+)
+
+diff --git a/drivers/net/wireless/rt2x00/rt2800.h b/drivers/net/wireless/rt2x00/rt2800.h
+index 1c4d750..d91f4f6 100644
+--- a/drivers/net/wireless/rt2x00/rt2800.h
++++ b/drivers/net/wireless/rt2x00/rt2800.h
+@@ -83,6 +83,7 @@
+ #define REV_RT3090E 0x0211
+ #define REV_RT3390E 0x0211
+ #define REV_RT5390F 0x0502
++#define REV_RT5390R 0x1502
+
+ /*
+ * Signal information.
+diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
+index bd19802..1cd16b4 100644
+--- a/drivers/net/wireless/rt2x00/rt2800lib.c
++++ b/drivers/net/wireless/rt2x00/rt2800lib.c
+@@ -3356,6 +3356,13 @@ static int rt2800_init_bbp(struct rt2x00_dev *rt2x00dev)
+ rt2800_register_write(rt2x00dev, GPIO_CTRL_CFG, reg);
+ }
+
++ /* This chip has hardware antenna diversity*/
++ if (rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5390R)) {
++ rt2800_bbp_write(rt2x00dev, 150, 0); /* Disable Antenna Software OFDM */
++ rt2800_bbp_write(rt2x00dev, 151, 0); /* Disable Antenna Software CCK */
++ rt2800_bbp_write(rt2x00dev, 154, 0); /* Clear previously selected antenna */
++ }
++
+ rt2800_bbp_read(rt2x00dev, 152, &value);
+ if (ant == 0)
+ rt2x00_set_field8(&value, BBP152_RX_DEFAULT_ANT, 1);
+@@ -4291,6 +4298,11 @@ int rt2800_init_eeprom(struct rt2x00_dev *rt2x00dev)
+ rt2x00dev->default_ant.rx = ANTENNA_A;
+ }
+
++ if (rt2x00_rt_rev_gte(rt2x00dev, RT5390, REV_RT5390R)) {
++ rt2x00dev->default_ant.tx = ANTENNA_HW_DIVERSITY; /* Unused */
++ rt2x00dev->default_ant.rx = ANTENNA_HW_DIVERSITY; /* Unused */
++ }
++
+ /*
+ * Determine external LNA informations.
+ */
Copied: dists/squeeze-backports/linux/debian/patches/features/all/wacom/0031-input-wacom-fix-touch-support-for-bamboo-fun-cth-461.patch (from r19868, dists/sid/linux/debian/patches/features/all/wacom/0031-input-wacom-fix-touch-support-for-bamboo-fun-cth-461.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/all/wacom/0031-input-wacom-fix-touch-support-for-bamboo-fun-cth-461.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/all/wacom/0031-input-wacom-fix-touch-support-for-bamboo-fun-cth-461.patch)
@@ -0,0 +1,35 @@
+From: Diego Calleja <diegocg at gmail.com>
+Date: Mon, 3 Dec 2012 21:16:11 -0800
+Subject: Input: wacom - fix touch support for Bamboo Fun CTH-461
+
+commit e12b3cecf221644ccab64d7c30a6df58b7630cb0 upstream.
+
+Commit f393ee2b814e3291c12565000210b3cf10aa5c1d forgot to add the
+touch_max property for Wacom Bamboo Fun CTH-461/S, ID 056a:00d2.
+
+This broke the touch functionality for that device. This patch,
+(done with help of Ping Cheng), adds the correct value and makes
+touch work again.
+
+Signed-off-by: Diego Calleja <diegocg at gmail.com>
+Reviewed-by: Ping Cheng <pinglinux at gmail.com>
+Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
+Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
+---
+ drivers/input/tablet/wacom_wac.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/input/tablet/wacom_wac.c b/drivers/input/tablet/wacom_wac.c
+index 0a67031..c2bfe92 100644
+--- a/drivers/input/tablet/wacom_wac.c
++++ b/drivers/input/tablet/wacom_wac.c
+@@ -2034,7 +2034,8 @@ static const struct wacom_features wacom_features_0xD1 =
+ .touch_max = 2 };
+ static const struct wacom_features wacom_features_0xD2 =
+ { "Wacom Bamboo Craft", WACOM_PKGLEN_BBFUN, 14720, 9200, 1023,
+- 31, BAMBOO_PT, WACOM_INTUOS_RES, WACOM_INTUOS_RES };
++ 31, BAMBOO_PT, WACOM_INTUOS_RES, WACOM_INTUOS_RES,
++ .touch_max = 2 };
+ static const struct wacom_features wacom_features_0xD3 =
+ { "Wacom Bamboo 2FG 6x8", WACOM_PKGLEN_BBFUN, 21648, 13700, 1023,
+ 31, BAMBOO_PT, WACOM_INTUOS_RES, WACOM_INTUOS_RES,
Copied: dists/squeeze-backports/linux/debian/patches/features/arm/rtc-s35390a-wakealarm.patch (from r19868, dists/sid/linux/debian/patches/features/arm/rtc-s35390a-wakealarm.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/squeeze-backports/linux/debian/patches/features/arm/rtc-s35390a-wakealarm.patch Wed Feb 27 05:58:28 2013 (r19869, copy of r19868, dists/sid/linux/debian/patches/features/arm/rtc-s35390a-wakealarm.patch)
@@ -0,0 +1,178 @@
+From: Michael Langer <michael.brainbug.langer at googlemail.com>
+Date: Thu, 4 Oct 2012 17:14:37 -0700
+Subject: drivers/rtc/rtc-s35390a.c: add wakealarm support for rtc-s35390A rtc
+ chip
+
+commit 542dd33a4925757c93b2c811b19434822a6c1a73 upstream.
+
+Add basic get/set alarm support for the Seiko Instruments S-35390A. The
+chip is used on the QNAP TS-219P+ NAS device.
+
+Signed-off-by: Michael Langer <michael.brainbug.langer at googlemail.com>
+Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
+---
+ drivers/rtc/rtc-s35390a.c | 116 +++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 116 insertions(+)
+
+diff --git a/drivers/rtc/rtc-s35390a.c b/drivers/rtc/rtc-s35390a.c
+index cc5c516..8a09232 100644
+--- a/drivers/rtc/rtc-s35390a.c
++++ b/drivers/rtc/rtc-s35390a.c
+@@ -19,6 +19,8 @@
+ #define S35390A_CMD_STATUS1 0
+ #define S35390A_CMD_STATUS2 1
+ #define S35390A_CMD_TIME1 2
++#define S35390A_CMD_TIME2 3
++#define S35390A_CMD_INT2_REG1 5
+
+ #define S35390A_BYTE_YEAR 0
+ #define S35390A_BYTE_MONTH 1
+@@ -28,12 +30,23 @@
+ #define S35390A_BYTE_MINS 5
+ #define S35390A_BYTE_SECS 6
+
++#define S35390A_ALRM_BYTE_WDAY 0
++#define S35390A_ALRM_BYTE_HOURS 1
++#define S35390A_ALRM_BYTE_MINS 2
++
+ #define S35390A_FLAG_POC 0x01
+ #define S35390A_FLAG_BLD 0x02
+ #define S35390A_FLAG_24H 0x40
+ #define S35390A_FLAG_RESET 0x80
+ #define S35390A_FLAG_TEST 0x01
+
++#define S35390A_INT2_MODE_MASK 0xF0
++
++#define S35390A_INT2_MODE_NOINTR 0x00
++#define S35390A_INT2_MODE_FREQ 0x10
++#define S35390A_INT2_MODE_ALARM 0x40
++#define S35390A_INT2_MODE_PMIN_EDG 0x20
++
+ static const struct i2c_device_id s35390a_id[] = {
+ { "s35390a", 0 },
+ { }
+@@ -193,6 +206,104 @@ static int s35390a_get_datetime(struct i2c_client *client, struct rtc_time *tm)
+ return rtc_valid_tm(tm);
+ }
+
++static int s35390a_set_alarm(struct i2c_client *client, struct rtc_wkalrm *alm)
++{
++ struct s35390a *s35390a = i2c_get_clientdata(client);
++ char buf[3], sts = 0;
++ int err, i;
++
++ dev_dbg(&client->dev, "%s: alm is secs=%d, mins=%d, hours=%d mday=%d, "\
++ "mon=%d, year=%d, wday=%d\n", __func__, alm->time.tm_sec,
++ alm->time.tm_min, alm->time.tm_hour, alm->time.tm_mday,
++ alm->time.tm_mon, alm->time.tm_year, alm->time.tm_wday);
++
++ /* disable interrupt */
++ err = s35390a_set_reg(s35390a, S35390A_CMD_STATUS2, &sts, sizeof(sts));
++ if (err < 0)
++ return err;
++
++ /* clear pending interrupt, if any */
++ err = s35390a_get_reg(s35390a, S35390A_CMD_STATUS1, &sts, sizeof(sts));
++ if (err < 0)
++ return err;
++
++ if (alm->enabled)
++ sts = S35390A_INT2_MODE_ALARM;
++ else
++ sts = S35390A_INT2_MODE_NOINTR;
++
++ /* This chip expects the bits of each byte to be in reverse order */
++ sts = bitrev8(sts);
++
++ /* set interupt mode*/
++ err = s35390a_set_reg(s35390a, S35390A_CMD_STATUS2, &sts, sizeof(sts));
++ if (err < 0)
++ return err;
++
++ if (alm->time.tm_wday != -1)
++ buf[S35390A_ALRM_BYTE_WDAY] = bin2bcd(alm->time.tm_wday) | 0x80;
++
++ buf[S35390A_ALRM_BYTE_HOURS] = s35390a_hr2reg(s35390a,
++ alm->time.tm_hour) | 0x80;
++ buf[S35390A_ALRM_BYTE_MINS] = bin2bcd(alm->time.tm_min) | 0x80;
++
++ if (alm->time.tm_hour >= 12)
++ buf[S35390A_ALRM_BYTE_HOURS] |= 0x40;
++
++ for (i = 0; i < 3; ++i)
++ buf[i] = bitrev8(buf[i]);
++
++ err = s35390a_set_reg(s35390a, S35390A_CMD_INT2_REG1, buf,
++ sizeof(buf));
++
++ return err;
++}
++
++static int s35390a_read_alarm(struct i2c_client *client, struct rtc_wkalrm *alm)
++{
++ struct s35390a *s35390a = i2c_get_clientdata(client);
++ char buf[3], sts;
++ int i, err;
++
++ err = s35390a_get_reg(s35390a, S35390A_CMD_STATUS2, &sts, sizeof(sts));
++ if (err < 0)
++ return err;
++
++ if (bitrev8(sts) != S35390A_INT2_MODE_ALARM)
++ return -EINVAL;
++
++ err = s35390a_get_reg(s35390a, S35390A_CMD_INT2_REG1, buf, sizeof(buf));
++ if (err < 0)
++ return err;
++
++ /* This chip returns the bits of each byte in reverse order */
++ for (i = 0; i < 3; ++i) {
++ buf[i] = bitrev8(buf[i]);
++ buf[i] &= ~0x80;
++ }
++
++ alm->time.tm_wday = bcd2bin(buf[S35390A_ALRM_BYTE_WDAY]);
++ alm->time.tm_hour = s35390a_reg2hr(s35390a,
++ buf[S35390A_ALRM_BYTE_HOURS]);
++ alm->time.tm_min = bcd2bin(buf[S35390A_ALRM_BYTE_MINS]);
++
++ dev_dbg(&client->dev, "%s: alm is mins=%d, hours=%d, wday=%d\n",
++ __func__, alm->time.tm_min, alm->time.tm_hour,
++ alm->time.tm_wday);
++
++ return 0;
++}
++
++static int s35390a_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alm)
++{
++ return s35390a_read_alarm(to_i2c_client(dev), alm);
++}
++
++static int s35390a_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alm)
++{
++ return s35390a_set_alarm(to_i2c_client(dev), alm);
++}
++
+ static int s35390a_rtc_read_time(struct device *dev, struct rtc_time *tm)
+ {
+ return s35390a_get_datetime(to_i2c_client(dev), tm);
+@@ -206,6 +317,9 @@ static int s35390a_rtc_set_time(struct device *dev, struct rtc_time *tm)
+ static const struct rtc_class_ops s35390a_rtc_ops = {
+ .read_time = s35390a_rtc_read_time,
+ .set_time = s35390a_rtc_set_time,
++ .set_alarm = s35390a_rtc_set_alarm,
++ .read_alarm = s35390a_rtc_read_alarm,
++
+ };
+
+ static struct i2c_driver s35390a_driver;
+@@ -270,6 +384,8 @@ static int s35390a_probe(struct i2c_client *client,
+ if (s35390a_get_datetime(client, &tm) < 0)
+ dev_warn(&client->dev, "clock needs to be set\n");
+
++ device_set_wakeup_capable(&client->dev, 1);
++
+ s35390a->rtc = rtc_device_register(s35390a_driver.driver.name,
+ &client->dev, &s35390a_rtc_ops, THIS_MODULE);
+
Modified: dists/squeeze-backports/linux/debian/patches/features/x86/efi-stub/0002-x86-Don-t-use-magic-strings-for-EFI-loader-signature.patch
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/features/x86/efi-stub/0002-x86-Don-t-use-magic-strings-for-EFI-loader-signature.patch Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/features/x86/efi-stub/0002-x86-Don-t-use-magic-strings-for-EFI-loader-signature.patch Wed Feb 27 05:58:28 2013 (r19869)
@@ -11,13 +11,13 @@
Signed-off-by: Matt Fleming <matt.fleming at intel.com>
Link: http://lkml.kernel.org/r/1318848017-12301-1-git-send-email-matt@console-pimps.org
Signed-off-by: H. Peter Anvin <hpa at linux.intel.com>
+[bwh: Drop the hunk in arch/x86/kernel/setup.c which is unnecessary and
+ conflicts with a fix in 3.2.38]
---
arch/x86/include/asm/efi.h | 4 ++++
arch/x86/kernel/setup.c | 7 +------
2 files changed, 5 insertions(+), 6 deletions(-)
-diff --git a/arch/x86/include/asm/efi.h b/arch/x86/include/asm/efi.h
-index b8d8bfc..26d8c18 100644
--- a/arch/x86/include/asm/efi.h
+++ b/arch/x86/include/asm/efi.h
@@ -3,6 +3,8 @@
@@ -29,7 +29,7 @@
extern unsigned long asmlinkage efi_call_phys(void *, ...);
#define efi_call_phys0(f) efi_call_phys(f)
-@@ -35,6 +37,8 @@ extern unsigned long asmlinkage efi_call_phys(void *, ...);
+@@ -37,6 +39,8 @@ extern unsigned long asmlinkage efi_call
#else /* !CONFIG_X86_32 */
@@ -38,24 +38,3 @@
extern u64 efi_call0(void *fp);
extern u64 efi_call1(void *fp, u64 arg1);
extern u64 efi_call2(void *fp, u64 arg1, u64 arg2);
-diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
-index 9a9e40f..4d5243c 100644
---- a/arch/x86/kernel/setup.c
-+++ b/arch/x86/kernel/setup.c
-@@ -752,12 +752,7 @@ void __init setup_arch(char **cmdline_p)
- #endif
- #ifdef CONFIG_EFI
- if (!strncmp((char *)&boot_params.efi_info.efi_loader_signature,
--#ifdef CONFIG_X86_32
-- "EL32",
--#else
-- "EL64",
--#endif
-- 4)) {
-+ EFI_LOADER_SIGNATURE, 4)) {
- efi_enabled = 1;
- efi_memblock_x86_reserve_range();
- }
---
-1.7.10
-
Modified: dists/squeeze-backports/linux/debian/patches/series
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/series Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/series Wed Feb 27 05:58:28 2013 (r19869)
@@ -36,7 +36,6 @@
debian/sched-autogroup-disabled.patch
features/all/cgroups-Allow-memory-cgroup-support-to-be-included-b.patch
debian/cgroups-Document-the-Debian-memory-resource-controll.patch
-bugfix/ia64/nouveau-ACPI-support-is-dependent-on-X86.patch
features/x86/x86-Add-amilo-rfkill-driver-for-some-Fujitsu-Siemens.patch
bugfix/arm/ixp4xx_iobe.patch
@@ -197,6 +196,7 @@
features/all/wacom/0028-wacom-leave-touch_max-as-is-if-predefined.patch
features/all/wacom/0029-wacom-do-not-request-tablet-data-on-MT-Tablet-PC-pen.patch
features/all/wacom/0030-wacom-ignore-new-style-Wacom-multi-touch-packets-on-.patch
+features/all/wacom/0031-input-wacom-fix-touch-support-for-bamboo-fun-cth-461.patch
# Add support for Ralink RT5392/RF5372 chipset
features/all/rt2x00-add-debug-message-for-new-chipset.patch
@@ -261,6 +261,19 @@
features/all/be2net/0056-be2net-Record-receive-queue-index-in-skb-to-aid-RPS.patch
features/all/be2net/0057-be2net-Fix-EEH-error-reset-before-a-flash-dump-compl.patch
features/all/be2net/0058-be2net-avoid-disabling-sriov-while-VFs-are-assigned.patch
+features/all/be2net/0059-be2net-do-not-modify-PCI-MaxReadReq-size.patch
+features/all/be2net/0060-be2net-fix-reporting-number-of-actual-rx-queues.patch
+features/all/be2net/0061-be2net-do-not-use-SCRATCHPAD-register.patch
+features/all/be2net/0062-be2net-reduce-gso_max_size-setting-to-account-for-et.patch
+features/all/be2net/0063-be2net-Increase-statistics-structure-size-for-skyhaw.patch
+features/all/be2net/0064-be2net-Explicitly-clear-the-reserved-field-in-the-Tx.patch
+features/all/be2net/0065-be2net-Regression-bug-wherein-VFs-creation-broken-fo.patch
+features/all/be2net/0066-be2net-Fix-to-trim-skb-for-padded-vlan-packets-to-wo.patch
+features/all/be2net/0067-be2net-Fix-Endian.patch
+features/all/be2net/0068-be2net-Enable-RSS-UDP-hashing-for-Lancer-and-Skyhawk.patch
+features/all/be2net/0069-be2net-dont-pull-too-much-data-in-skb-linear-part.patch
+features/all/be2net/0070-be2net-Fix-to-parse-RSS-hash-from-Receive-completion.patch
+features/all/be2net/0071-netpoll-revert-6bdb7fe3104-and-fix-be_poll-instead.patch
# Add CoDel from 3.5, and prerequisites
features/all/net-introduce-skb_flow_dissect.patch
@@ -341,17 +354,6 @@
features/arm/ARM-fix-Kconfig-warning-for-HAVE_BPF_JIT.patch
features/arm/net-drop-NET-dependency-from-HAVE_BPF_JIT.patch
-# nouveau update to support Fermi (NVC0+) acceleration
-features/all/fermi-accel/drm-nouveau-ttm-always-do-buffer-moves-on-kernel-cha.patch
-features/all/fermi-accel/drm-nouveau-remove-subchannel-names-from-places-wher.patch
-features/all/fermi-accel/drm-nouveau-move-fence-sequence-check-to-start-of-lo.patch
-features/all/fermi-accel/drm-nvc0-disp-reimplement-flip-completion-method-as-.patch
-features/all/fermi-accel/drm-nouveau-remove-m2mf-creation-on-userspace-channe.patch
-features/all/fermi-accel/drm-nouveau-inform-userspace-of-relaxed-kernel-subch.patch
-features/all/fermi-accel/drm-nouveau-oops-increase-channel-dispc_vma-to-4.patch
-features/all/fermi-accel/drm-nvd0-disp-ignore-clock-set-if-no-pclk.patch
-features/all/fermi-accel/drm-nouveau-bump-version-to-1.0.0.patch
-
bugfix/all/net-e100-ucode-is-optional-in-some-cases.patch
features/all/debugfs-add-mode-uid-and-gid-options.patch
@@ -395,20 +397,16 @@
bugfix/all/usb-Add-quirk-detection-based-on-interface-informati.patch
bugfix/all/usb-Add-USB_QUIRK_RESET_RESUME-for-all-Logitech-UVC-.patch
bugfix/alpha/alpha-use-large-data-model.diff
-bugfix/x86/drm-i915-i8xx-interrupt-handler.patch
features/arm/ahci-Add-JMicron-362-device-IDs.patch
bugfix/all/speakup-lower-default-software-speech-rate.patch
debian/perf-hide-abi-change-in-3.2.30.patch
debian/iwlwifi-do-not-request-unreleased-firmware.patch
debian/hid-avoid-ABI-change-in-3.2.31.patch
debian/xfrm-avoid-ABI-change-in-3.2.31.patch
-bugfix/all/use-clamp_t-in-UNAME26-fix.patch
debian/fs-writeback-avoid-ABI-change-in-3.2.32.patch
bugfix/x86/asus-laptop-Do-not-call-HWRS-on-init.patch
-bugfix/x86/drm-i915-Only-kick-out-vesafb-if-we-takeover-the-fbc.patch
features/all/xen/microcode.patch
-debian/radeon-no-modeset-without-firmware.patch
debian/ALSA-avoid-ABI-change-in-3.2.34.patch
debian/rtnetlink-avoid-ABI-change-in-3.2.34.patch
debian/mm-avoid-ABI-change-in-3.2.33.patch
@@ -421,15 +419,213 @@
bugfix/all/firmware_class-log-every-success-and-failure.patch
bugfix/all/firmware-remove-redundant-log-messages-from-drivers.patch
-bugfix/x86/ACPI-video-ignore-BIOS-initial-backlight-value-for-H.patch
-bugfix/x86/KVM-x86-invalid-opcode-oops-on-SET_SREGS-with-OSXSAV.patch
bugfix/all/usermodehelper-introduce-umh_complete.patch
bugfix/all/usermodehelper-implement-UMH_KILLABLE.patch
bugfix/all/usermodehelper-____call_usermodehelper-doesnt-need-do_exit.patch
bugfix/all/kmod-introduce-call_modprobe-helper.patch
bugfix/all/kmod-make-__request_module-killable.patch
-bugfix/all/exec-do-not-leave-bprm-interp-on-stack.patch
bugfix/all/exec-use-ELOOP-for-max-recursion-depth.patch
bugfix/all/megaraid_sas-fix-memory-leak-if-SGL-has-zero-length-entries.patch
debian/audit-increase-AUDIT_NAMES.patch
features/all/asix-Adds-support-for-Lenovo-10-100-USB-dongle.patch
+
+# Add macros to aid backporting drivers
+features/all/drivercore-Generalize-module_platform_driver.patch
+features/all/I2C-Add-helper-macro-for-i2c_driver-boilerplate.patch
+features/all/USB-Add-helper-macro-for-usb_driver-boilerplate.patch
+features/all/PCI-Add-helper-macro-for-pci_register_driver-boilerp.patch
+
+# iguanair driver from 3.7
+features/all/iguanair/0001-media-Add-support-for-the-IguanaWorks-USB-IR-Transce.patch
+features/all/iguanair/0002-media-iguanair-reuse-existing-urb-callback-for-comma.patch
+features/all/iguanair/0003-media-iguanair-ignore-unsupported-firmware-versions.patch
+features/all/iguanair/0004-media-iguanair-support-suspend-and-resume.patch
+features/all/iguanair/0005-media-iguanair-fix-return-value-for-transmit.patch
+features/all/iguanair/0006-media-iguanair-reset-the-IR-state-after-rx-overflow-.patch
+features/all/iguanair/0007-media-iguanair-advertise-the-resolution-and-timeout-.patch
+features/all/iguanair/0008-media-iguanair-fix-receiver-overflow.patch
+features/all/iguanair/0009-media-rc-do-not-wake-up-rc-thread-unless-there-is-so.patch
+features/all/iguanair/0010-media-iguanair-do-not-modify-transmit-buffer.patch
+features/all/iguanair/0011-media-iguanair-cannot-send-data-from-the-stack.patch
+features/all/rt2800-add-chipset-revision-RT5390R-support.patch
+bugfix/all/fs-cachefiles-add-support-for-large-files-in-filesys.patch
+bugfix/all/ext4-rewrite-punch-hole-to-use-ext4_ext_remove_space.patch
+bugfix/all/ext4-fix-hole-punch-failure-when-depth-is-greater-th.patch
+bugfix/all/ext4-fix-kernel-BUG-on-large-scale-rm-rf-commands.patch
+bugfix/all/md-protect-against-crash-upon-fsync-on-ro-array.patch
+debian/net-avoid-ABI-break-in-3.2.37.patch
+
+features/all/net-define-netdev_features_t.patch
+features/all/ethernet-define-eth_hw_addr_random.patch
+
+# alx *still* isn't upstream
+features/all/alx/alx-add-new-QCA-ethernet-driver-which-supercedes-atl.patch
+features/all/alx/remove-atl1c-devices-from-alx.patch
+features/all/alx/mark-as-staging.patch
+features/arm/rtc-s35390a-wakealarm.patch
+
+# drm backport from 3.4
+features/all/drm/i2c-export-bit-banging-algo-functions.patch
+features/all/drm/swiotlb-Expose-swiotlb_nr_tlb-function-to-modules.patch
+features/all/drm/slab-introduce-kmalloc_array.patch
+features/all/drm/drm-3.4.patch
+features/all/drm/drm-i915-revert-switch-to-simple_open.patch
+features/all/drm/Revert-VM-add-vm_mmap-helper-function.patch
+features/all/drm/drm-revert-part-of-2c9ede55ecec58099b72e4bb8eab719f3.patch
+features/all/drm/Remove-gma500-driver-from-staging.patch
+features/all/drm/Revert-drm-base-prime-dma-buf-support-v5.patch
+features/all/drm/revert-vm-add-vm_munmap-helper-function.patch
+
+bugfix/x86/drm-i915-kick-any-firmware-framebuffers-before-claim.patch
+bugfix/x86/drm-i915-Only-kick-out-vesafb-if-we-takeover-the-fbc.patch
+bugfix/ia64/nouveau-ACPI-support-is-dependent-on-X86.patch
+bugfix/x86/drm-i915-i8xx-interrupt-handler.patch
+debian/radeon-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
+bugfix/x86/drm-i915-panel-invert-brightness-via-parameter.patch
+bugfix/x86/drm-i915-panel-invert-brightness-via-quirk.patch
+bugfix/x86/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch
+bugfix/x86/drm-i915-add-quirk_invert_brightness-for-ncr-machine.patch
+bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch
+bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch
+bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch
+bugfix/all/drm-nouveau-fix-init-with-agpgart-uninorth.patch
+bugfix/x86/drm-i915-EBUSY-status-handling-added-to-i915_gem_fau.patch
+bugfix/x86/drm-i915-Close-race-between-processing-unpin-task-an.patch
+bugfix/all/drm-radeon-dce32-use-fractional-fb-dividers-for-high.patch
+bugfix/all/drm-radeon-fix-amd-afusion-gpu-setup-aka-sumo-v2.patch
+bugfix/all/i915-ensure-that-VGA-plane-is-disabled.patch
+bugfix/all/drm-radeon-add-connector-table-for-SAM440ep-embedded.patch
+bugfix/all/drm-radeon-add-connector-table-for-Mac-G4-Silver.patch
+bugfix/x86/drm-i915-Only-increment-the-user-pin-count-after-suc.patch
+bugfix/x86/drm-i915-Disable-AsyncFlip-performance-optimisations.patch
+bugfix/x86/drm-i915-GFX_MODE-Flush-TLB-Invalidate-Mode-must-be-.patch
+bugfix/x86/drm-i915-dump-UTS_RELEASE-into-the-error_state.patch
+
+# virtio-scsi from 3.7
+features/all/virtio_scsi/0001-SCSI-virtio-scsi-SCSI-driver-for-QEMU-based-virtual-.patch
+features/all/virtio_scsi/0002-SCSI-virtio_scsi-fix-TMF-use-after-free.patch
+features/all/virtio_scsi/virtio-support-unlocked-queue-kick.patch
+features/all/virtio_scsi/0003-SCSI-virtio-scsi-unlock-during-kick.patch
+features/all/virtio_scsi/0004-SCSI-virtio-scsi-split-locking-per-vq.patch
+features/all/virtio_scsi/0005-SCSI-virtio-scsi-release-sg_lock-after-add_buf.patch
+features/all/virtio_scsi/0006-SCSI-virtio-scsi-split-scatterlist-per-target.patch
+features/all/virtio_scsi/0007-SCSI-virtio-scsi-hotplug-support-for-virtio-scsi.patch
+features/all/virtio_scsi/0008-SCSI-virtio-scsi-Add-vdrv-scan-for-post-VIRTIO_CONFI.patch
+features/all/virtio_scsi/0009-SCSI-scsi-virtio-scsi-Fix-address-translation-failur.patch
+features/all/virtio_scsi/0010-SCSI-virtio-scsi-initialize-scatterlist-structure.patch
+features/all/virtio_scsi/0011-SCSI-virtio-scsi-fix-LUNs-greater-than-255.patch
+features/all/virtio_scsi/0012-SCSI-virtio-scsi-support-online-resizing-of-disks.patch
+
+# line6 from 3.8
+features/all/line6/0001-line6-fix-memory-leaks-in-line6_init_midi.patch
+features/all/line6/0002-staging-line6-add-Pod-HD300-support.patch
+features/all/line6/0003-staging-line6-add-missing-MIDI-postprocessing-case-f.patch
+features/all/line6/0004-staging-line6-use-smallest-iso-ep-packet-size.patch
+features/all/line6/0005-staging-line6-alloc-free-buffers-in-hw_params-hw_fre.patch
+features/all/line6/0006-Staging-line6-Use-kmemdup-rather-than-duplicating-it.patch
+features/all/line6/0007-Staging-line6-NULL-dereference-in-dev_err.patch
+features/all/line6/0008-Staging-line6-midi.c-Fixed-call-of-obsolete-function.patch
+features/all/line6/0009-Staging-line6-midi.c-Fixed-call-of-obsolete-function.patch
+features/all/line6/0010-staging-line6-Remove-obsolete-code.patch
+features/all/line6/0011-staging-line6-refactor-device-information-and-add-PO.patch
+features/all/line6/0012-staging-line6-fix-memory-leak-in-.hw_params.patch
+features/all/line6/0013-staging-line6-fix-playback-urb-transfer-buffer-calcu.patch
+features/all/line6/0014-staging-line6-eliminate-useless-index_out-variable.patch
+features/all/line6/0015-staging-line6-eliminate-useless-NULL-checks.patch
+features/all/line6/0016-staging-line6-wait-for-urbs-in-snd_line6_prepare.patch
+features/all/line6/0017-staging-line6-fixed-ALSA-PCM-interaction.patch
+features/all/line6/0018-staging-line6-removed-obsolete-code.patch
+features/all/line6/0019-staging-line6-use-source-select-control-for-UX2-devi.patch
+features/all/line6/0020-staging-line6-separate-handling-of-buffer-allocation.patch
+features/all/line6/0021-Staging-line6-remove-unneeded-initialization.patch
+features/all/line6/0022-Staging-line6-only-allocate-a-buffer-if-it-is-needed.patch
+features/all/line6/0023-Staging-line6-remove-teardown-code-from-module_exit-.patch
+features/all/line6/0024-Staging-line6-use-module_usb_driver.patch
+features/all/line6/0025-staging-line6-toneport.c-remove-err-usage.patch
+features/all/line6/0026-staging-line6-midibuf.c-changed-printk-KERN_DEBUG-.-.patch
+features/all/line6/0027-staging-line6-midi.c-Added-space-between-switch-and-.patch
+features/all/line6/0028-staging-line6-pcm.c-Removed-trailing-whitespace.patch
+features/all/line6/0029-staging-line6-config.h-Remove-CHECKPOINT-macro.patch
+features/all/line6/0030-staging-line6-config.h-Delete-unused-header.patch
+features/all/line6/0031-staging-line6-changed-interface-of-line6_transmit_pa.patch
+features/all/line6/0032-staging-line6-Changed-some-strict_strtouls-to-kstrto.patch
+features/all/line6/0033-staging-line6-changed-interface-of-line6_pod_transmi.patch
+features/all/line6/0034-staging-line6-adjusted-interface-of-line6_send_progr.patch
+features/all/line6/0035-staging-line6-changed-interface-of-pod_send_channel.patch
+features/all/line6/0036-staging-line6-control.c-eliminate-strict_strtoul-in-.patch
+features/all/line6/0037-staging-line6-Exchanged-strict_strtoul-with-kstrtou8.patch
+features/all/line6/0038-staging-line6-Changed-strict_strtoul-to-kstrtou8-in-.patch
+features/all/line6/0039-staging-line6-Changed-strict_strtoul-to-kstrtou8-in-.patch
+features/all/line6/0040-staging-line6-pcm.c-Changed-simple_strtoul-to-kstrto.patch
+features/all/line6/0041-staging-line6-variax.c-Eliminated-remaining-strict_s.patch
+features/all/line6/0042-staging-line6-drop-unused-line6_devices-array.patch
+features/all/line6/0043-staging-line6-drop-unused-line6_index-and-line6_id-a.patch
+features/all/line6/0044-staging-line6-wrap-80-char-lines-in-capture.c.patch
+features/all/line6/0045-staging-line6-fix-quoted-string-across-lines-in-midi.patch
+features/all/line6/0046-staging-line6-shorten-comment-below-80-chars-in-pcm..patch
+features/all/line6/0047-staging-line6-drop-trailing-whitespace-in-pcm.h.patch
+features/all/line6/0048-staging-line6-wrap-lines-to-80-chars-in-playback.c.patch
+features/all/line6/0049-staging-line6-replace-deprecated-strict_strtol-in-to.patch
+features/all/line6/0050-staging-line6-wrap-lines-to-80-chars-in-usbdefs.h.patch
+features/all/line6/0051-staging-line6-wrap-comment-to-80-chars-in-variax.c.patch
+features/all/line6/0052-staging-line6-replace-DEBUG_MESSAGES-with-dev_dbg.patch
+features/all/line6/0053-staging-line6-drop-unused-DEBUG_MESSAGES-macro.patch
+features/all/line6/0054-staging-line6-drop-unused-CONFIG_LINE6_USB_DEBUG.patch
+features/all/line6/0055-staging-line6-drop-control-URB-dumping-code.patch
+features/all/line6/0056-staging-line6-drop-CONTROL-from-CONFIG_LINE6_USB_DUM.patch
+features/all/line6/0057-staging-line6-drop-unused-CONFIG_LINE6_USB_DUMP_CTRL.patch
+features/all/line6/0058-staging-line6-drop-MIDI-dumping-code.patch
+features/all/line6/0059-staging-line6-drop-MIDI-from-CONFIG_LINE6_USB_DUMP_A.patch
+features/all/line6/0060-staging-line6-drop-unused-CONFIG_LINE6_USB_DUMP_MIDI.patch
+features/all/line6/0061-staging-line6-drop-channel-sysfs-attr.patch
+features/all/line6/0062-staging-line6-drop-clip-sysfs-attr.patch
+features/all/line6/0063-staging-line6-drop-unused-param_dirty-bitmap.patch
+features/all/line6/0064-staging-line6-drop-dirty-sysfs-attr.patch
+features/all/line6/0065-staging-line6-drop-dump-sysfs-attr.patch
+features/all/line6/0066-staging-line6-drop-dump_buf-sysfs-attr.patch
+features/all/line6/0067-staging-line6-drop-monitor_level-sysfs-attr.patch
+features/all/line6/0068-staging-line6-change-monitor_level-type-ValueWait-in.patch
+features/all/line6/0069-staging-line6-drop-name-sysfs-attr.patch
+features/all/line6/0070-staging-line6-drop-name_buf-sysfs-attr.patch
+features/all/line6/0071-staging-line6-drop-retrieve_amp_setup-sysfs-attr.patch
+features/all/line6/0072-staging-line6-drop-retrieve_channel-sysfs-attr.patch
+features/all/line6/0073-staging-line6-drop-retrieve_effects_setup-sysfs-attr.patch
+features/all/line6/0074-staging-line6-drop-store_amp_setup-sysfs-attr.patch
+features/all/line6/0075-staging-line6-drop-store_channel-sysfs-attr.patch
+features/all/line6/0076-staging-line6-drop-store_effects_setup-sysfs-attr.patch
+features/all/line6/0077-staging-line6-drop-routing-sysfs-attr.patch
+features/all/line6/0078-staging-line6-drop-tuner_freq-sysfs-attr.patch
+features/all/line6/0079-staging-line6-drop-tuner_note-sysfs-attr.patch
+features/all/line6/0080-staging-line6-drop-tuner_mute-sysfs-attr.patch
+features/all/line6/0081-staging-line6-drop-tuner_pitch-sysfs-attr.patch
+features/all/line6/0082-staging-line6-drop-finish-sysfs-attr.patch
+features/all/line6/0083-staging-line6-drop-midi_postprocess-sysfs-attr.patch
+features/all/line6/0084-staging-line6-drop-midi_mask_receive.patch
+features/all/line6/0085-staging-line6-drop-midi_mask_transmit.patch
+features/all/line6/0086-staging-line6-drop-midi_postprocess-flag.patch
+features/all/line6/0087-staging-line6-drop-pod.c-raw-sysfs-attr.patch
+features/all/line6/0088-staging-line6-drop-tuner-param-filtering.patch
+features/all/line6/0089-staging-line6-drop-variax-model-sysfs-attr.patch
+features/all/line6/0090-staging-line6-drop-variax-volume-sysfs-attr.patch
+features/all/line6/0091-staging-line6-drop-variax-tone-sysfs-attr.patch
+features/all/line6/0092-staging-line6-drop-variax-name-sysfs-attr.patch
+features/all/line6/0093-staging-line6-drop-variax-bank-sysfs-attr.patch
+features/all/line6/0094-staging-line6-drop-variax-dump-sysfs-attr.patch
+features/all/line6/0095-staging-line6-drop-variax-active-sysfs-attr.patch
+features/all/line6/0096-staging-line6-drop-variax-guitar-sysfs-attr.patch
+features/all/line6/0097-staging-line6-drop-variax-raw-sysfs-attrs.patch
+features/all/line6/0098-staging-line6-drop-CONFIG_LINE6_USB_RAW.patch
+features/all/line6/0099-staging-line6-drop-amp-effects-dump-request-triggers.patch
+features/all/line6/0100-staging-line6-drop-MIDI-parameter-sysfs-attrs.patch
+features/all/line6/0101-staging-line6-drop-pod-prog_data-buffers.patch
+features/all/line6/0102-staging-line6-drop-unused-pod-atomic_flags-field.patch
+features/all/line6/0103-staging-line6-drop-variax-model_data-field.patch
+features/all/line6/0104-staging-line6-drop-dump-requests-from-variax-startup.patch
+features/all/line6/0105-staging-line6-drop-dump-requests-from-pod-startup.patch
+features/all/line6/0106-staging-line6-drop-unused-dumprequest-code.patch
+bugfix/all/mm-Try-harder-to-allocate-vmemmap-blocks.patch
+bugfix/x86/efi-Clear-EFI_RUNTIME_SERVICES-rather-than-EFI_BOOT-.patch
+bugfix/x86/x86-efi-Make-noefi-really-disable-EFI-runtime-serivc.patch
+bugfix/all/mm-fix-pageblock-bitmap-allocation.patch
+bugfix/all/USB-usb-storage-unusual_devs-update-for-Super-TOP-SA.patch
+debian/x86-efi-avoid-abi-change-in-3.2.38.patch
Modified: dists/squeeze-backports/linux/debian/patches/series-rt
==============================================================================
--- dists/squeeze-backports/linux/debian/patches/series-rt Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/patches/series-rt Wed Feb 27 05:58:28 2013 (r19869)
@@ -287,4 +287,18 @@
features/all/rt/0287-hrtimer-Raise-softirq-if-hrtimer-irq-stalled.patch
features/all/rt/0288-rcu-Disable-RCU_FAST_NO_HZ-on-RT.patch
features/all/rt/0289-net-netfilter-Serialize-xt_write_recseq-sections-on-.patch
-features/all/rt/0290-Linux-3.2.35-rt52-REBASE.patch
+features/all/rt/0290-sched-Adjust-sched_reset_on_fork-when-nothing-else-c.patch
+features/all/rt/0291-sched-Queue-RT-tasks-to-head-when-prio-drops.patch
+features/all/rt/0292-sched-Consider-pi-boosting-in-setscheduler.patch
+features/all/rt/0293-drivers-tty-pl011-irq-disable-madness.patch.patch
+features/all/rt/0294-mmci-Remove-bogus-local_irq_save.patch
+features/all/rt/0295-sched-Init-idle-on_rq-in-init_idle.patch
+features/all/rt/0296-sched-Check-for-idle-task-in-might_sleep.patch
+features/all/rt/0297-mm-swap-Initialize-local-locks-early.patch
+features/all/rt/0298-x86-32-Use-kmap-switch-for-non-highmem-as-well.patch
+features/all/rt/0299-acpi-rt-Convert-acpi_gbl_hardware-lock-back-to-a-raw.patch
+features/all/rt/0300-printk-Fix-rq-lock-vs-logbuf_lock-unlock-lock-invers.patch
+features/all/rt/0301-serial-Imx-Fix-recursive-locking-bug.patch
+features/all/rt/0302-wait-simple-Simple-waitqueue-implementation.patch
+features/all/rt/0303-rcutiny-Use-simple-waitqueue.patch
+features/all/rt/0304-Linux-3.2.39-rt59-REBASE.patch
Modified: dists/squeeze-backports/linux/debian/rules.real
==============================================================================
--- dists/squeeze-backports/linux/debian/rules.real Wed Feb 27 05:44:29 2013 (r19868)
+++ dists/squeeze-backports/linux/debian/rules.real Wed Feb 27 05:58:28 2013 (r19869)
@@ -491,6 +491,11 @@
find $(DEBUG_DIR)/lib/modules/$(REAL_VERSION)/ -mindepth 1 -maxdepth 1 \! -name kernel -exec rm {} \+
rm $(DEBUG_DIR)/lib/firmware -rf
endif
+# Add symlinks to vmlinux from the locations expected by kdump-tools,
+# systemtap and others
+ ln -s boot/vmlinux-$(REAL_VERSION) $(DEBUG_DIR)/
+ mkdir -p $(DEBUG_DIR)/lib/modules/$(REAL_VERSION)
+ ln -s ../../../boot/vmlinux-$(REAL_VERSION) $(DEBUG_DIR)/lib/modules/$(REAL_VERSION)/vmlinux
+$(MAKE_SELF) install-base
install-udeb_$(ARCH): export KW_DEFCONFIG_DIR=debian/installer
More information about the Kernel-svn-changes
mailing list