From: Greg Kroah-Hartman Date: Fri, 4 Sep 2009 16:55:18 +0000 (-0700) Subject: .30 remove a kvm patch and refresh others X-Git-Tag: v2.6.27.32~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6f3fe04555d5573cb1de06b9319b2196f0cfbef7;p=thirdparty%2Fkernel%2Fstable-queue.git .30 remove a kvm patch and refresh others --- diff --git a/queue-2.6.30/do_sigaltstack-avoid-copying-stack_t-as-a-structure-to-user-space.patch b/queue-2.6.30/do_sigaltstack-avoid-copying-stack_t-as-a-structure-to-user-space.patch index a214a9510c0..bd1f18ad292 100644 --- a/queue-2.6.30/do_sigaltstack-avoid-copying-stack_t-as-a-structure-to-user-space.patch +++ b/queue-2.6.30/do_sigaltstack-avoid-copying-stack_t-as-a-structure-to-user-space.patch @@ -24,9 +24,13 @@ Reported-by: Ulrich Drepper Signed-off-by: Linus Torvalds Signed-off-by: Greg Kroah-Hartman +--- + kernel/signal.c | 15 ++++++++------- + 1 file changed, 8 insertions(+), 7 deletions(-) + --- a/kernel/signal.c +++ b/kernel/signal.c -@@ -2454,11 +2454,9 @@ do_sigaltstack (const stack_t __user *uss, stack_t __user *uoss, unsigned long s +@@ -2414,11 +2414,9 @@ do_sigaltstack (const stack_t __user *us stack_t oss; int error; @@ -41,7 +45,7 @@ Signed-off-by: Greg Kroah-Hartman if (uss) { void __user *ss_sp; -@@ -2501,13 +2499,16 @@ do_sigaltstack (const stack_t __user *uss, stack_t __user *uoss, unsigned long s +@@ -2461,13 +2459,16 @@ do_sigaltstack (const stack_t __user *us current->sas_ss_size = ss_size; } diff --git a/queue-2.6.30/ipv4-make-ip_append_data-handle-null-routing-table.patch b/queue-2.6.30/ipv4-make-ip_append_data-handle-null-routing-table.patch index 6ece50364d7..c3639e0dfcf 100644 --- a/queue-2.6.30/ipv4-make-ip_append_data-handle-null-routing-table.patch +++ b/queue-2.6.30/ipv4-make-ip_append_data-handle-null-routing-table.patch @@ -16,9 +16,13 @@ Acked-by: David S. Miller Signed-off-by: Linus Torvalds Signed-off-by: Greg Kroah-Hartman +--- + net/ipv4/ip_output.c | 2 ++ + 1 file changed, 2 insertions(+) + --- a/net/ipv4/ip_output.c +++ b/net/ipv4/ip_output.c -@@ -813,6 +813,8 @@ int ip_append_data(struct sock *sk, +@@ -814,6 +814,8 @@ int ip_append_data(struct sock *sk, inet->cork.addr = ipc->addr; } rt = *rtp; diff --git a/queue-2.6.30/kvm-avoid-redelivery-of-edge-interrupt-before-next-edge.patch b/queue-2.6.30/kvm-avoid-redelivery-of-edge-interrupt-before-next-edge.patch deleted file mode 100644 index 7dfd864381e..00000000000 --- a/queue-2.6.30/kvm-avoid-redelivery-of-edge-interrupt-before-next-edge.patch +++ /dev/null @@ -1,66 +0,0 @@ -From mtosatti@redhat.com Thu Sep 3 14:27:33 2009 -From: Marcelo Tosatti -Date: Tue, 1 Sep 2009 12:15:15 -0300 -Subject: KVM: Avoid redelivery of edge interrupt before next edge -To: stable@kernel.org -Cc: avi@redhat.com, Gleb Natapov -Message-ID: <1251818115-22157-7-git-send-email-mtosatti@redhat.com> - - -From: Gleb Natapov - -(cherry picked from commit b4a2f5e723e4f7df46731106faf9e2405673c073) - -The check for an edge is broken in current ioapic code. ioapic->irr is -cleared on each edge interrupt by ioapic_service() and this makes -old_irr != ioapic->irr condition in kvm_ioapic_set_irq() to be always -true. The patch fixes the code to properly recognise edge. - -Some HW emulation calls set_irq() without level change. If each such -call is propagated to an OS it may confuse a device driver. This is the -case with keyboard device emulation and Windows XP x64 installer on SMP VM. -Each keystroke produce two interrupts (down/up) one interrupt is -submitted to CPU0 and another to CPU1. This confuses Windows somehow -and it ignores keystrokes. - -Signed-off-by: Gleb Natapov -Signed-off-by: Avi Kivity -Signed-off-by: Greg Kroah-Hartman ---- - virt/kvm/ioapic.c | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - ---- a/virt/kvm/ioapic.c -+++ b/virt/kvm/ioapic.c -@@ -95,8 +95,6 @@ static int ioapic_service(struct kvm_ioa - if (injected && pent->fields.trig_mode == IOAPIC_LEVEL_TRIG) - pent->fields.remote_irr = 1; - } -- if (!pent->fields.trig_mode) -- ioapic->irr &= ~(1 << idx); - - return injected; - } -@@ -136,7 +134,8 @@ static void ioapic_write_indirect(struct - mask_after = ioapic->redirtbl[index].fields.mask; - if (mask_before != mask_after) - kvm_fire_mask_notifiers(ioapic->kvm, index, mask_after); -- if (ioapic->irr & (1 << index)) -+ if (ioapic->redirtbl[index].fields.trig_mode == IOAPIC_LEVEL_TRIG -+ && ioapic->irr & (1 << index)) - ioapic_service(ioapic, index); - break; - } -@@ -293,9 +292,10 @@ int kvm_ioapic_set_irq(struct kvm_ioapic - if (!level) - ioapic->irr &= ~mask; - else { -+ int edge = (entry.fields.trig_mode == IOAPIC_EDGE_TRIG); - ioapic->irr |= mask; -- if ((!entry.fields.trig_mode && old_irr != ioapic->irr) -- || !entry.fields.remote_irr) -+ if ((edge && old_irr != ioapic->irr) || -+ (!edge && !entry.fields.remote_irr)) - ret = ioapic_service(ioapic, irq); - } - } diff --git a/queue-2.6.30/series b/queue-2.6.30/series index f1601bb52b6..e43b21f948b 100644 --- a/queue-2.6.30/series +++ b/queue-2.6.30/series @@ -31,7 +31,6 @@ kvm-svm-force-new-asid-on-vcpu-migration.patch kvm-mmu-handle-n_free_mmu_pages-n_alloc_mmu_pages-in-kvm_mmu_change_mmu_pages.patch kvm-mmu-limit-rmap-chain-length.patch kvm-fix-ack-not-being-delivered-when-msi-present.patch -kvm-avoid-redelivery-of-edge-interrupt-before-next-edge.patch kvm-fix-kvm_get_msr_index_list.patch iwl3945-fix-rfkill-switch.patch iwlagn-do-not-send-key-clear-commands-when-rfkill-enabled.patch