aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Hutchings <benh@debian.org>2012-05-31 03:08:09 +0000
committerBen Hutchings <benh@debian.org>2012-05-31 03:08:09 +0000
commit681f694b3a9a1f44458444e767fd513c50e44867 (patch)
tree3cbb1f7d2a9fd0057b9eebd64b9fe01934ab3ffe
parentca018e7e1277d602e4303c8f75df1973865f9205 (diff)
downloadkernel_replicant_linux-681f694b3a9a1f44458444e767fd513c50e44867.tar.gz
kernel_replicant_linux-681f694b3a9a1f44458444e767fd513c50e44867.tar.bz2
kernel_replicant_linux-681f694b3a9a1f44458444e767fd513c50e44867.zip
Update to 3.2.19
Drop patches included in it. Defer an ABI change in mmc for now. For the PREEMPT_RT featureset, revert one conflicting change in 3.2.19. svn path=/dists/sid/linux-2.6/; revision=19047
-rw-r--r--debian/changelog20
-rw-r--r--debian/patches/bugfix/all/ethtool-null-terminate-filename-passed-to.patch53
-rw-r--r--debian/patches/bugfix/all/kvm-ensure-all-vcpus-are-consistent-with-in-kernel-irqchip.patch107
-rw-r--r--debian/patches/bugfix/all/kvm-lock-slots_lock-around-device-assignment.patch80
-rw-r--r--debian/patches/bugfix/all/kvm-mmu_notifier-flush-tlbs-before-releasing-mmu_lock.patch85
-rw-r--r--debian/patches/bugfix/s390/kvm-s390-do-store-status-after-handling-stop_on_stop-bit.patch71
-rw-r--r--debian/patches/bugfix/s390/kvm-s390-sanitize-fpc-registers-for-kvm_set_fpu.patch43
-rw-r--r--debian/patches/bugfix/x86/kvm-nvmx-fix-erroneous-exception-bitmap-check.patch43
-rw-r--r--debian/patches/bugfix/x86/kvm-vmx-vmx_set_cr0-expects-kvm-srcu-locked.patch40
-rw-r--r--debian/patches/debian/mmc-Avoid-ABI-change-in-3.2.19.patch34
-rw-r--r--debian/patches/features/all/rt/revert-workqueue-skip-nr_running-sanity-check-in-wor.patch35
-rw-r--r--debian/patches/features/all/wacom/0004-Input-wacom-relax-Bamboo-stylus-ID-check.patch41
-rw-r--r--debian/patches/series/base12
-rw-r--r--debian/patches/series/base-extra1
14 files changed, 90 insertions, 575 deletions
diff --git a/debian/changelog b/debian/changelog
index df5869d3be5e..f978aa3d8263 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,22 @@
-linux-2.6 (3.2.18-2) UNRELEASED; urgency=low
+linux-2.6 (3.2.19-1) UNRELEASED; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.19
+ - hpsa: Fix problem with MSA2xxx devices (Closes: #661057)
+ - IB/core: Fix mismatch between locked and pinned pages
+ - iommu: Fix off by one in dmar_get_fault_reason()
+ - vfs: make AIO use the proper rw_verify_area() area helpers
+ - HID: logitech: read all 32 bits of report type bitfield (Closes: #671292)
+ - USB: Remove races in devio.c
+ - ext{3,4}: Fix error handling on inode bitmap corruption
+ - uvcvideo: Fix ENUMINPUT handling
+ - dl2k: Clean up rio_ioctl (CVE-2012-2313)
+ - [x86] MCE: Fix vm86 handling for 32bit mce handler
+ - [x86] mce: Fix check for processor context when machine check was taken.
+ - ethtool: Null-terminate filename passed to ethtool_ops::flash_device
+ - NFSv4: Fix buffer overflows in ACL support (CVE-2012-2375)
+ + Avoid reading past buffer when calling GETACL
+ + Avoid beyond bounds copy while caching ACL
[ Ben Hutchings ]
* be2net: Backport most changes up to Linux 3.5-rc1, thanks to
diff --git a/debian/patches/bugfix/all/ethtool-null-terminate-filename-passed-to.patch b/debian/patches/bugfix/all/ethtool-null-terminate-filename-passed-to.patch
deleted file mode 100644
index 22b472be7988..000000000000
--- a/debian/patches/bugfix/all/ethtool-null-terminate-filename-passed-to.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From: Ben Hutchings <bhutchings@solarflare.com>
-Date: Wed, 1 Feb 2012 09:32:25 +0000
-Subject: [PATCH] ethtool: Null-terminate filename passed to
- ethtool_ops::flash_device
-
-commit 786f528119722f564a22ad953411374e06116333 upstream.
-
-The parameters for ETHTOOL_FLASHDEV include a filename, which ought to
-be null-terminated. Currently the only driver that implements
-ethtool_ops::flash_device attempts to add a null terminator if
-necessary, but does it wrongly. Do it in the ethtool core instead.
-
-Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- drivers/net/ethernet/emulex/benet/be_ethtool.c | 6 +-----
- net/core/ethtool.c | 2 ++
- 2 files changed, 3 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/net/ethernet/emulex/benet/be_ethtool.c b/drivers/net/ethernet/emulex/benet/be_ethtool.c
-index 6db6b6a..802e5dd 100644
---- a/drivers/net/ethernet/emulex/benet/be_ethtool.c
-+++ b/drivers/net/ethernet/emulex/benet/be_ethtool.c
-@@ -716,12 +716,8 @@ static int
- be_do_flash(struct net_device *netdev, struct ethtool_flash *efl)
- {
- struct be_adapter *adapter = netdev_priv(netdev);
-- char file_name[ETHTOOL_FLASH_MAX_FILENAME];
-
-- file_name[ETHTOOL_FLASH_MAX_FILENAME - 1] = 0;
-- strcpy(file_name, efl->data);
--
-- return be_load_fw(adapter, file_name);
-+ return be_load_fw(adapter, efl->data);
- }
-
- static int
-diff --git a/net/core/ethtool.c b/net/core/ethtool.c
-index 369b418..3f79db1 100644
---- a/net/core/ethtool.c
-+++ b/net/core/ethtool.c
-@@ -1190,6 +1190,8 @@ static noinline_for_stack int ethtool_flash_device(struct net_device *dev,
- if (!dev->ethtool_ops->flash_device)
- return -EOPNOTSUPP;
-
-+ efl.data[ETHTOOL_FLASH_MAX_FILENAME - 1] = 0;
-+
- return dev->ethtool_ops->flash_device(dev, &efl);
- }
-
---
-1.7.10
-
diff --git a/debian/patches/bugfix/all/kvm-ensure-all-vcpus-are-consistent-with-in-kernel-irqchip.patch b/debian/patches/bugfix/all/kvm-ensure-all-vcpus-are-consistent-with-in-kernel-irqchip.patch
deleted file mode 100644
index 3059ac98e625..000000000000
--- a/debian/patches/bugfix/all/kvm-ensure-all-vcpus-are-consistent-with-in-kernel-irqchip.patch
+++ /dev/null
@@ -1,107 +0,0 @@
-From: Avi Kivity <avi@redhat.com>
-Date: Mon, 5 Mar 2012 14:23:29 +0200
-Subject: [PATCH] KVM: Ensure all vcpus are consistent with in-kernel irqchip
- settings
-
-commit 3e515705a1f46beb1c942bb8043c16f8ac7b1e9e upstream.
-
-If some vcpus are created before KVM_CREATE_IRQCHIP, then
-irqchip_in_kernel() and vcpu->arch.apic will be inconsistent, leading
-to potential NULL pointer dereferences.
-
-Fix by:
-- ensuring that no vcpus are installed when KVM_CREATE_IRQCHIP is called
-- ensuring that a vcpu has an apic if it is installed after KVM_CREATE_IRQCHIP
-
-This is somewhat long winded because vcpu->arch.apic is created without
-kvm->lock held.
-
-Based on earlier patch by Michael Ellerman.
-
-Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
-Signed-off-by: Avi Kivity <avi@redhat.com>
----
- arch/ia64/kvm/kvm-ia64.c | 5 +++++
- arch/x86/kvm/x86.c | 8 ++++++++
- include/linux/kvm_host.h | 7 +++++++
- virt/kvm/kvm_main.c | 4 ++++
- 4 files changed, 24 insertions(+)
-
-diff --git a/arch/ia64/kvm/kvm-ia64.c b/arch/ia64/kvm/kvm-ia64.c
-index d8ddbba..f5104b7 100644
---- a/arch/ia64/kvm/kvm-ia64.c
-+++ b/arch/ia64/kvm/kvm-ia64.c
-@@ -1172,6 +1172,11 @@ out:
-
- #define PALE_RESET_ENTRY 0x80000000ffffffb0UL
-
-+bool kvm_vcpu_compatible(struct kvm_vcpu *vcpu)
-+{
-+ return irqchip_in_kernel(vcpu->kcm) == (vcpu->arch.apic != NULL);
-+}
-+
- int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
- {
- struct kvm_vcpu *v;
-diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
-index 03a1fd4..9477dc6 100644
---- a/arch/x86/kvm/x86.c
-+++ b/arch/x86/kvm/x86.c
-@@ -3199,6 +3199,9 @@ long kvm_arch_vm_ioctl(struct file *filp,
- r = -EEXIST;
- if (kvm->arch.vpic)
- goto create_irqchip_unlock;
-+ r = -EINVAL;
-+ if (atomic_read(&kvm->online_vcpus))
-+ goto create_irqchip_unlock;
- r = -ENOMEM;
- vpic = kvm_create_pic(kvm);
- if (vpic) {
-@@ -6107,6 +6110,11 @@ void kvm_arch_check_processor_compat(void *rtn)
- kvm_x86_ops->check_processor_compatibility(rtn);
- }
-
-+bool kvm_vcpu_compatible(struct kvm_vcpu *vcpu)
-+{
-+ return irqchip_in_kernel(vcpu->kvm) == (vcpu->arch.apic != NULL);
-+}
-+
- int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
- {
- struct page *page;
-diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
-index 355e445..e42d85a 100644
---- a/include/linux/kvm_host.h
-+++ b/include/linux/kvm_host.h
-@@ -805,6 +805,13 @@ static inline bool kvm_vcpu_is_bsp(struct kvm_vcpu *vcpu)
- {
- return vcpu->kvm->bsp_vcpu_id == vcpu->vcpu_id;
- }
-+
-+bool kvm_vcpu_compatible(struct kvm_vcpu *vcpu);
-+
-+#else
-+
-+static inline bool kvm_vcpu_compatible(struct kvm_vcpu *vcpu) { return true; }
-+
- #endif
-
- #ifdef __KVM_HAVE_DEVICE_ASSIGNMENT
-diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
-index e4431ad..94e148e 100644
---- a/virt/kvm/kvm_main.c
-+++ b/virt/kvm/kvm_main.c
-@@ -1651,6 +1651,10 @@ static int kvm_vm_ioctl_create_vcpu(struct kvm *kvm, u32 id)
- goto vcpu_destroy;
-
- mutex_lock(&kvm->lock);
-+ if (!kvm_vcpu_compatible(vcpu)) {
-+ r = -EINVAL;
-+ goto unlock_vcpu_destroy;
-+ }
- if (atomic_read(&kvm->online_vcpus) == KVM_MAX_VCPUS) {
- r = -EINVAL;
- goto unlock_vcpu_destroy;
---
-1.7.10
-
diff --git a/debian/patches/bugfix/all/kvm-lock-slots_lock-around-device-assignment.patch b/debian/patches/bugfix/all/kvm-lock-slots_lock-around-device-assignment.patch
deleted file mode 100644
index 8c23d61db595..000000000000
--- a/debian/patches/bugfix/all/kvm-lock-slots_lock-around-device-assignment.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From: Alex Williamson <alex.williamson@redhat.com>
-Date: Tue, 17 Apr 2012 21:46:44 -0600
-Subject: [PATCH] KVM: lock slots_lock around device assignment
-
-commit 21a1416a1c945c5aeaeaf791b63c64926018eb77 upstream.
-
-As pointed out by Jason Baron, when assigning a device to a guest
-we first set the iommu domain pointer, which enables mapping
-and unmapping of memory slots to the iommu. This leaves a window
-where this path is enabled, but we haven't synchronized the iommu
-mappings to the existing memory slots. Thus a slot being removed
-at that point could send us down unexpected code paths removing
-non-existent pinnings and iommu mappings. Take the slots_lock
-around creating the iommu domain and initial mappings as well as
-around iommu teardown to avoid this race.
-
-Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
-Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
----
- virt/kvm/iommu.c | 23 +++++++++++++++--------
- 1 file changed, 15 insertions(+), 8 deletions(-)
-
-diff --git a/virt/kvm/iommu.c b/virt/kvm/iommu.c
-index fec1723..e9fff98 100644
---- a/virt/kvm/iommu.c
-+++ b/virt/kvm/iommu.c
-@@ -240,9 +240,13 @@ int kvm_iommu_map_guest(struct kvm *kvm)
- return -ENODEV;
- }
-
-+ mutex_lock(&kvm->slots_lock);
-+
- kvm->arch.iommu_domain = iommu_domain_alloc(&pci_bus_type);
-- if (!kvm->arch.iommu_domain)
-- return -ENOMEM;
-+ if (!kvm->arch.iommu_domain) {
-+ r = -ENOMEM;
-+ goto out_unlock;
-+ }
-
- if (!allow_unsafe_assigned_interrupts &&
- !iommu_domain_has_cap(kvm->arch.iommu_domain,
-@@ -253,17 +257,16 @@ int kvm_iommu_map_guest(struct kvm *kvm)
- " module option.\n", __func__);
- iommu_domain_free(kvm->arch.iommu_domain);
- kvm->arch.iommu_domain = NULL;
-- return -EPERM;
-+ r = -EPERM;
-+ goto out_unlock;
- }
-
- r = kvm_iommu_map_memslots(kvm);
- if (r)
-- goto out_unmap;
--
-- return 0;
-+ kvm_iommu_unmap_memslots(kvm);
-
--out_unmap:
-- kvm_iommu_unmap_memslots(kvm);
-+out_unlock:
-+ mutex_unlock(&kvm->slots_lock);
- return r;
- }
-
-@@ -340,7 +343,11 @@ int kvm_iommu_unmap_guest(struct kvm *kvm)
- if (!domain)
- return 0;
-
-+ mutex_lock(&kvm->slots_lock);
- kvm_iommu_unmap_memslots(kvm);
-+ kvm->arch.iommu_domain = NULL;
-+ mutex_unlock(&kvm->slots_lock);
-+
- iommu_domain_free(domain);
- return 0;
- }
---
-1.7.10
-
diff --git a/debian/patches/bugfix/all/kvm-mmu_notifier-flush-tlbs-before-releasing-mmu_lock.patch b/debian/patches/bugfix/all/kvm-mmu_notifier-flush-tlbs-before-releasing-mmu_lock.patch
deleted file mode 100644
index 00c6c7b65d8c..000000000000
--- a/debian/patches/bugfix/all/kvm-mmu_notifier-flush-tlbs-before-releasing-mmu_lock.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From: Marcelo Tosatti <mtosatti@redhat.com>
-Date: Fri, 18 May 2012 17:58:45 -0300
-Subject: KVM: mmu_notifier: Flush TLBs before releasing mmu_lock
-
-From: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
-
-(cherry picked from commit 565f3be2174611f364405bbea2d86e153c2e7e78
-
-Other threads may process the same page in that small window and skip
-TLB flush and then return before these functions do flush.
-
-Signed-off-by: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
-Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
-Signed-off-by: Avi Kivity <avi@redhat.com>
-Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
----
- virt/kvm/kvm_main.c | 19 ++++++++++---------
- 1 files changed, 10 insertions(+), 9 deletions(-)
-
-diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
-index e401c1b..9ffac2e 100644
---- a/virt/kvm/kvm_main.c
-+++ b/virt/kvm/kvm_main.c
-@@ -289,15 +289,15 @@ static void kvm_mmu_notifier_invalidate_page(struct mmu_notifier *mn,
- */
- idx = srcu_read_lock(&kvm->srcu);
- spin_lock(&kvm->mmu_lock);
-+
- kvm->mmu_notifier_seq++;
- need_tlb_flush = kvm_unmap_hva(kvm, address) | kvm->tlbs_dirty;
-- spin_unlock(&kvm->mmu_lock);
-- srcu_read_unlock(&kvm->srcu, idx);
--
- /* we've to flush the tlb before the pages can be freed */
- if (need_tlb_flush)
- kvm_flush_remote_tlbs(kvm);
-
-+ spin_unlock(&kvm->mmu_lock);
-+ srcu_read_unlock(&kvm->srcu, idx);
- }
-
- static void kvm_mmu_notifier_change_pte(struct mmu_notifier *mn,
-@@ -335,12 +335,12 @@ static void kvm_mmu_notifier_invalidate_range_start(struct mmu_notifier *mn,
- for (; start < end; start += PAGE_SIZE)
- need_tlb_flush |= kvm_unmap_hva(kvm, start);
- need_tlb_flush |= kvm->tlbs_dirty;
-- spin_unlock(&kvm->mmu_lock);
-- srcu_read_unlock(&kvm->srcu, idx);
--
- /* we've to flush the tlb before the pages can be freed */
- if (need_tlb_flush)
- kvm_flush_remote_tlbs(kvm);
-+
-+ spin_unlock(&kvm->mmu_lock);
-+ srcu_read_unlock(&kvm->srcu, idx);
- }
-
- static void kvm_mmu_notifier_invalidate_range_end(struct mmu_notifier *mn,
-@@ -378,13 +378,14 @@ static int kvm_mmu_notifier_clear_flush_young(struct mmu_notifier *mn,
-
- idx = srcu_read_lock(&kvm->srcu);
- spin_lock(&kvm->mmu_lock);
-- young = kvm_age_hva(kvm, address);
-- spin_unlock(&kvm->mmu_lock);
-- srcu_read_unlock(&kvm->srcu, idx);
-
-+ young = kvm_age_hva(kvm, address);
- if (young)
- kvm_flush_remote_tlbs(kvm);
-
-+ spin_unlock(&kvm->mmu_lock);
-+ srcu_read_unlock(&kvm->srcu, idx);
-+
- return young;
- }
-
---
-1.7.6.4
-
---
-To unsubscribe from this list: send the line "unsubscribe stable" in
-the body of a message to majordomo@vger.kernel.org
-More majordomo info at http://vger.kernel.org/majordomo-info.html
-
-
diff --git a/debian/patches/bugfix/s390/kvm-s390-do-store-status-after-handling-stop_on_stop-bit.patch b/debian/patches/bugfix/s390/kvm-s390-do-store-status-after-handling-stop_on_stop-bit.patch
deleted file mode 100644
index 82c8a6bb222b..000000000000
--- a/debian/patches/bugfix/s390/kvm-s390-do-store-status-after-handling-stop_on_stop-bit.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From: Marcelo Tosatti <mtosatti@redhat.com>
-Date: Fri, 18 May 2012 17:58:50 -0300
-Subject: KVM: s390: do store status after handling STOP_ON_STOP bit
-
-From: Jens Freimann <jfrei@linux.vnet.ibm.com>
-
-(cherry picked from commit 9e0d5473e2f0ba2d2fe9dab9408edef3060b710e)
-
-In handle_stop() handle the stop bit before doing the store status as
-described for "Stop and Store Status" in the Principles of Operation.
-We have to give up the local_int.lock before calling kvm store status
-since it calls gmap_fault() which might sleep. Since local_int.lock
-only protects local_int.* and not guest memory we can give up the lock.
-
-Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com>
-Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
-Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
-Signed-off-by: Avi Kivity <avi@redhat.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
----
- arch/s390/kvm/intercept.c | 20 ++++++++++++--------
- 1 files changed, 12 insertions(+), 8 deletions(-)
-
-diff --git a/arch/s390/kvm/intercept.c b/arch/s390/kvm/intercept.c
-index 0243454..a5f6eff 100644
---- a/arch/s390/kvm/intercept.c
-+++ b/arch/s390/kvm/intercept.c
-@@ -133,13 +133,6 @@ static int handle_stop(struct kvm_vcpu *vcpu)
-
- vcpu->stat.exit_stop_request++;
- spin_lock_bh(&vcpu->arch.local_int.lock);
-- if (vcpu->arch.local_int.action_bits & ACTION_STORE_ON_STOP) {
-- vcpu->arch.local_int.action_bits &= ~ACTION_STORE_ON_STOP;
-- rc = kvm_s390_vcpu_store_status(vcpu,
-- KVM_S390_STORE_STATUS_NOADDR);
-- if (rc >= 0)
-- rc = -EOPNOTSUPP;
-- }
-
- if (vcpu->arch.local_int.action_bits & ACTION_RELOADVCPU_ON_STOP) {
- vcpu->arch.local_int.action_bits &= ~ACTION_RELOADVCPU_ON_STOP;
-@@ -155,7 +148,18 @@ static int handle_stop(struct kvm_vcpu *vcpu)
- rc = -EOPNOTSUPP;
- }
-
-- spin_unlock_bh(&vcpu->arch.local_int.lock);
-+ if (vcpu->arch.local_int.action_bits & ACTION_STORE_ON_STOP) {
-+ vcpu->arch.local_int.action_bits &= ~ACTION_STORE_ON_STOP;
-+ /* store status must be called unlocked. Since local_int.lock
-+ * only protects local_int.* and not guest memory we can give
-+ * up the lock here */
-+ spin_unlock_bh(&vcpu->arch.local_int.lock);
-+ rc = kvm_s390_vcpu_store_status(vcpu,
-+ KVM_S390_STORE_STATUS_NOADDR);
-+ if (rc >= 0)
-+ rc = -EOPNOTSUPP;
-+ } else
-+ spin_unlock_bh(&vcpu->arch.local_int.lock);
- return rc;
- }
-
---
-1.7.6.4
-
---
-To unsubscribe from this list: send the line "unsubscribe stable" in
-the body of a message to majordomo@vger.kernel.org
-More majordomo info at http://vger.kernel.org/majordomo-info.html
-
-
diff --git a/debian/patches/bugfix/s390/kvm-s390-sanitize-fpc-registers-for-kvm_set_fpu.patch b/debian/patches/bugfix/s390/kvm-s390-sanitize-fpc-registers-for-kvm_set_fpu.patch
deleted file mode 100644
index 9cab1c80ef9a..000000000000
--- a/debian/patches/bugfix/s390/kvm-s390-sanitize-fpc-registers-for-kvm_set_fpu.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From: Marcelo Tosatti <mtosatti@redhat.com>
-Date: Fri, 18 May 2012 17:58:51 -0300
-Subject: KVM: s390: Sanitize fpc registers for KVM_SET_FPU
-
-From: Christian Borntraeger <borntraeger@de.ibm.com>
-
-(cherry picked from commit 851755871c1f3184f4124c466e85881f17fa3226)
-
-commit 7eef87dc99e419b1cc051e4417c37e4744d7b661 (KVM: s390: fix
-register setting) added a load of the floating point control register
-to the KVM_SET_FPU path. Lets make sure that the fpc is valid.
-
-Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
-Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
-Signed-off-by: Avi Kivity <avi@redhat.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
----
- arch/s390/kvm/kvm-s390.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
-index d1c44573..d3cb86c 100644
---- a/arch/s390/kvm/kvm-s390.c
-+++ b/arch/s390/kvm/kvm-s390.c
-@@ -418,7 +418,7 @@ int kvm_arch_vcpu_ioctl_get_sregs(struct kvm_vcpu *vcpu,
- int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
- {
- memcpy(&vcpu->arch.guest_fpregs.fprs, &fpu->fprs, sizeof(fpu->fprs));
-- vcpu->arch.guest_fpregs.fpc = fpu->fpc;
-+ vcpu->arch.guest_fpregs.fpc = fpu->fpc & FPC_VALID_MASK;
- restore_fp_regs(&vcpu->arch.guest_fpregs);
- return 0;
- }
---
-1.7.6.4
-
---
-To unsubscribe from this list: send the line "unsubscribe stable" in
-the body of a message to majordomo@vger.kernel.org
-More majordomo info at http://vger.kernel.org/majordomo-info.html
-
-
diff --git a/debian/patches/bugfix/x86/kvm-nvmx-fix-erroneous-exception-bitmap-check.patch b/debian/patches/bugfix/x86/kvm-nvmx-fix-erroneous-exception-bitmap-check.patch
deleted file mode 100644
index fd839a0d6dd8..000000000000
--- a/debian/patches/bugfix/x86/kvm-nvmx-fix-erroneous-exception-bitmap-check.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From: Marcelo Tosatti <mtosatti@redhat.com>
-Date: Fri, 18 May 2012 17:58:48 -0300
-Subject: KVM: nVMX: Fix erroneous exception bitmap check
-
-From: Nadav Har'El <nyh@math.technion.ac.il>
-
-(cherry picked from commit 9587190107d0c0cbaccbf7bf6b0245d29095a9ae)
-
-The code which checks whether to inject a pagefault to L1 or L2 (in
-nested VMX) was wrong, incorrect in how it checked the PF_VECTOR bit.
-Thanks to Dan Carpenter for spotting this.
-
-Signed-off-by: Nadav Har'El <nyh@il.ibm.com>
-Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
-Signed-off-by: Avi Kivity <avi@redhat.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
----
- arch/x86/kvm/vmx.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
-index 4ea7678..7ac5993 100644
---- a/arch/x86/kvm/vmx.c
-+++ b/arch/x86/kvm/vmx.c
-@@ -1677,7 +1677,7 @@ static int nested_pf_handled(struct kvm_vcpu *vcpu)
- struct vmcs12 *vmcs12 = get_vmcs12(vcpu);
-
- /* TODO: also check PFEC_MATCH/MASK, not just EB.PF. */
-- if (!(vmcs12->exception_bitmap & PF_VECTOR))
-+ if (!(vmcs12->exception_bitmap & (1u << PF_VECTOR)))
- return 0;
-
- nested_vmx_vmexit(vcpu);
---
-1.7.6.4
-
---
-To unsubscribe from this list: send the line "unsubscribe stable" in
-the body of a message to majordomo@vger.kernel.org
-More majordomo info at http://vger.kernel.org/majordomo-info.html
-
-
diff --git a/debian/patches/bugfix/x86/kvm-vmx-vmx_set_cr0-expects-kvm-srcu-locked.patch b/debian/patches/bugfix/x86/kvm-vmx-vmx_set_cr0-expects-kvm-srcu-locked.patch
deleted file mode 100644
index e68e23368e6f..000000000000
--- a/debian/patches/bugfix/x86/kvm-vmx-vmx_set_cr0-expects-kvm-srcu-locked.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From: Marcelo Tosatti <mtosatti@redhat.com>
-Date: Fri, 18 May 2012 17:58:49 -0300
-Subject: KVM: VMX: vmx_set_cr0 expects kvm->srcu locked
-
-(cherry picked from commit 7a4f5ad051e02139a9f1c0f7f4b1acb88915852b)
-
-vmx_set_cr0 is called from vcpu run context, therefore it expects
-kvm->srcu to be held (for setting up the real-mode TSS).
-
-Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
-Signed-off-by: Avi Kivity <avi@redhat.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
----
- arch/x86/kvm/vmx.c | 2 ++
- 1 files changed, 2 insertions(+), 0 deletions(-)
-
-diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
-index 7ac5993..7315488 100644
---- a/arch/x86/kvm/vmx.c
-+++ b/arch/x86/kvm/vmx.c
-@@ -3915,7 +3915,9 @@ static int vmx_vcpu_reset(struct kvm_vcpu *vcpu)
- vmcs_write16(VIRTUAL_PROCESSOR_ID, vmx->vpid);
-
- vmx->vcpu.arch.cr0 = X86_CR0_NW | X86_CR0_CD | X86_CR0_ET;
-+ vcpu->srcu_idx = srcu_read_lock(&vcpu->kvm->srcu);
- vmx_set_cr0(&vmx->vcpu, kvm_read_cr0(vcpu)); /* enter rmode */
-+ srcu_read_unlock(&vcpu->kvm->srcu, vcpu->srcu_idx);
- vmx_set_cr4(&vmx->vcpu, 0);
- vmx_set_efer(&vmx->vcpu, 0);
- vmx_fpu_activate(&vmx->vcpu);
---
-1.7.6.4
-
---
-To unsubscribe from this list: send the line "unsubscribe stable" in
-the body of a message to majordomo@vger.kernel.org
-More majordomo info at http://vger.kernel.org/majordomo-info.html
-
-
diff --git a/debian/patches/debian/mmc-Avoid-ABI-change-in-3.2.19.patch b/debian/patches/debian/mmc-Avoid-ABI-change-in-3.2.19.patch
new file mode 100644
index 000000000000..b6654de89757
--- /dev/null
+++ b/debian/patches/debian/mmc-Avoid-ABI-change-in-3.2.19.patch
@@ -0,0 +1,34 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Thu, 31 May 2012 04:04:55 +0100
+Subject: [PATCH] mmc: Avoid ABI change in 3.2.19
+
+---
+ include/linux/mmc/host.h | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h
+index deb6282..20caeb0 100644
+--- a/include/linux/mmc/host.h
++++ b/include/linux/mmc/host.h
+@@ -303,7 +303,6 @@ struct mmc_host {
+
+ unsigned int sdio_irqs;
+ struct task_struct *sdio_irq_thread;
+- bool sdio_irq_pending;
+ atomic_t sdio_irq_thread_abort;
+
+ mmc_pm_flag_t pm_flags; /* requested pm features */
+@@ -315,6 +314,10 @@ struct mmc_host {
+ #ifdef CONFIG_REGULATOR
+ bool regulator_enabled; /* regulator state */
+ #endif
++#if !(defined(__GENKSYMS__) && defined(CONFIG_REGULATOR))
++ /* Use the hole after regulator_enabled to avoid an ABI change */
++ bool sdio_irq_pending;
++#endif
+
+ struct dentry *debugfs_root;
+
+--
+1.7.10
+
diff --git a/debian/patches/features/all/rt/revert-workqueue-skip-nr_running-sanity-check-in-wor.patch b/debian/patches/features/all/rt/revert-workqueue-skip-nr_running-sanity-check-in-wor.patch
new file mode 100644
index 000000000000..8dec2548c704
--- /dev/null
+++ b/debian/patches/features/all/rt/revert-workqueue-skip-nr_running-sanity-check-in-wor.patch
@@ -0,0 +1,35 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Thu, 31 May 2012 02:58:44 +0100
+Subject: [PATCH] Revert "workqueue: skip nr_running sanity check in
+ worker_enter_idle() if trustee is active"
+
+This reverts commit 5d79c6f64a904afc92a329f80abe693e3ae105fe.
+It conflicts with, and appears to be unnecessary for, the PREEMPT_RT
+series.
+---
+ kernel/workqueue.c | 9 ++-------
+ 1 file changed, 2 insertions(+), 7 deletions(-)
+
+diff --git a/kernel/workqueue.c b/kernel/workqueue.c
+index 7947e16..bb425b1 100644
+--- a/kernel/workqueue.c
++++ b/kernel/workqueue.c
+@@ -1215,13 +1215,8 @@ static void worker_enter_idle(struct worker *worker)
+ } else
+ wake_up_all(&gcwq->trustee_wait);
+
+- /*
+- * Sanity check nr_running. Because trustee releases gcwq->lock
+- * between setting %WORKER_ROGUE and zapping nr_running, the
+- * warning may trigger spuriously. Check iff trustee is idle.
+- */
+- WARN_ON_ONCE(gcwq->trustee_state == TRUSTEE_DONE &&
+- gcwq->nr_workers == gcwq->nr_idle &&
++ /* sanity check nr_running */
++ WARN_ON_ONCE(gcwq->nr_workers == gcwq->nr_idle &&
+ atomic_read(get_gcwq_nr_running(gcwq->cpu)));
+ }
+
+--
+1.7.10
+
diff --git a/debian/patches/features/all/wacom/0004-Input-wacom-relax-Bamboo-stylus-ID-check.patch b/debian/patches/features/all/wacom/0004-Input-wacom-relax-Bamboo-stylus-ID-check.patch
deleted file mode 100644
index b2f78555c243..000000000000
--- a/debian/patches/features/all/wacom/0004-Input-wacom-relax-Bamboo-stylus-ID-check.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From: Chris Bagwell <chris@cnpbagwell.com>
-Date: Wed, 26 Oct 2011 22:28:34 -0700
-Subject: Input: wacom - relax Bamboo stylus ID check
-
-commit c5981411f60c31f0dff6f0f98d2d3711384badaf upstream.
-
-Bit 0x02 always means tip versus eraser. Bit 0x01 is something related
-to version of stylus and different values are starting to be used.
-
-Relaxing proximity check is required to be used with 3rd generation
-Bamboo Pen and Touch tablets.
-
-Signed-off-by: Chris Bagwell <chris@cnpbagwell.com>
-Acked-by: Ping Cheng <pingc@wacom.com>
-Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
-Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
----
- drivers/input/tablet/wacom_wac.c | 7 +------
- 1 file changed, 1 insertion(+), 6 deletions(-)
-
-diff --git a/drivers/input/tablet/wacom_wac.c b/drivers/input/tablet/wacom_wac.c
-index 2ee47d01a3b4..f00c70e1adb0 100644
---- a/drivers/input/tablet/wacom_wac.c
-+++ b/drivers/input/tablet/wacom_wac.c
-@@ -843,12 +843,7 @@ static int wacom_bpt_pen(struct wacom_wac *wacom)
- unsigned char *data = wacom->data;
- int prox = 0, x = 0, y = 0, p = 0, d = 0, pen = 0, btn1 = 0, btn2 = 0;
-
-- /*
-- * Similar to Graphire protocol, data[1] & 0x20 is proximity and
-- * data[1] & 0x18 is tool ID. 0x30 is safety check to ignore
-- * 2 unused tool ID's.
-- */
-- prox = (data[1] & 0x30) == 0x30;
-+ prox = (data[1] & 0x20) == 0x20;
-
- /*
- * All reports shared between PEN and RUBBER tool must be
---
-1.7.10.1
-
diff --git a/debian/patches/series/base b/debian/patches/series/base
index 520a90397974..6ec769faf005 100644
--- a/debian/patches/series/base
+++ b/debian/patches/series/base
@@ -189,23 +189,14 @@
+ debian/skbuff-avoid-ABI-change-in-3.2.17.patch
+ debian/usb-hcd-avoid-ABI-change-in-3.2.17.patch
+ debian/fork-avoid-ABI-change-in-3.2.18.patch
++ debian/mmc-Avoid-ABI-change-in-3.2.19.patch
+ bugfix/all/ext4-Report-max_batch_time-option-correctly.patch
-# KVM fixes queued for 3.2.19
-+ bugfix/all/kvm-mmu_notifier-flush-tlbs-before-releasing-mmu_lock.patch
-+ bugfix/all/kvm-ensure-all-vcpus-are-consistent-with-in-kernel-irqchip.patch
-+ bugfix/all/kvm-lock-slots_lock-around-device-assignment.patch
-+ bugfix/x86/kvm-nvmx-fix-erroneous-exception-bitmap-check.patch
-+ bugfix/x86/kvm-vmx-vmx_set_cr0-expects-kvm-srcu-locked.patch
-+ bugfix/s390/kvm-s390-do-store-status-after-handling-stop_on_stop-bit.patch
-+ bugfix/s390/kvm-s390-sanitize-fpc-registers-for-kvm_set_fpu.patch
-
# Update wacom driver to 3.5ish
+ features/all/wacom/0001-Input-wacom-cleanup-feature-report-for-bamboos.patch
+ features/all/wacom/0002-Input-wacom-remove-unused-bamboo-HID-parsing.patch
+ features/all/wacom/0003-Input-wacom-add-some-comments-to-wacom_parse_hid.patch
-+ features/all/wacom/0004-Input-wacom-relax-Bamboo-stylus-ID-check.patch
+ features/all/wacom/0005-Input-wacom-read-3rd-gen-Bamboo-Touch-HID-data.patch
+ features/all/wacom/0006-Input-wacom-3rd-gen-Bamboo-P-Touch-packet-support.patch
+ features/all/wacom/0007-Input-wacom-ignore-unwanted-bamboo-packets.patch
@@ -234,7 +225,6 @@
+ features/all/rt2x00-add-rt5372-chipset-support.patch
+ bugfix/all/acpi-battery-only-refresh-the-sysfs-files-when-pertinent.patch
-+ bugfix/all/ethtool-null-terminate-filename-passed-to.patch
# Update be2net driver to 3.5ish
+ features/all/be2net/0001-sweep-the-floors-and-convert-some-.get_drvinfo-routi.patch
diff --git a/debian/patches/series/base-extra b/debian/patches/series/base-extra
index 490c4dd575b2..dbe4f961f5a5 100644
--- a/debian/patches/series/base-extra
+++ b/debian/patches/series/base-extra
@@ -222,6 +222,7 @@
+ features/all/rt/0223-workqueue-use-get-cpu-light.patch.patch featureset=rt
+ features/all/rt/0224-epoll.patch.patch featureset=rt
+ features/all/rt/0225-mm-vmalloc.patch.patch featureset=rt
++ features/all/rt/revert-workqueue-skip-nr_running-sanity-check-in-wor.patch featureset=rt
+ features/all/rt/0226-workqueue-Fix-cpuhotplug-trainwreck.patch featureset=rt
+ features/all/rt/0227-workqueue-Fix-PF_THREAD_BOUND-abuse.patch featureset=rt
+ features/all/rt/0228-workqueue-Use-get_cpu_light-in-flush_gcwq.patch featureset=rt