From: Greg Kroah-Hartman Date: Wed, 30 Jan 2013 05:36:38 +0000 (+0100) Subject: 3.7-stable patches X-Git-Tag: v3.0.62~36 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0baf2e0a601175b03f42f05982a6b4c846fc67dd;p=thirdparty%2Fkernel%2Fstable-queue.git 3.7-stable patches added patches: fs-cifs-cifs_dfs_ref.c-fix-potential-memory-leakage.patch kvm-ppc-emulate-dcbf.patch powerpc-book3e-disable-interrupt-after-preempt_schedule_irq.patch --- diff --git a/queue-3.7/fs-cifs-cifs_dfs_ref.c-fix-potential-memory-leakage.patch b/queue-3.7/fs-cifs-cifs_dfs_ref.c-fix-potential-memory-leakage.patch new file mode 100644 index 00000000000..8a20b9c2514 --- /dev/null +++ b/queue-3.7/fs-cifs-cifs_dfs_ref.c-fix-potential-memory-leakage.patch @@ -0,0 +1,34 @@ +From 10b8c7dff5d3633b69e77f57d404dab54ead3787 Mon Sep 17 00:00:00 2001 +From: Cong Ding +Date: Tue, 22 Jan 2013 19:20:58 -0500 +Subject: fs/cifs/cifs_dfs_ref.c: fix potential memory leakage + +From: Cong Ding + +commit 10b8c7dff5d3633b69e77f57d404dab54ead3787 upstream. + +When it goes to error through line 144, the memory allocated to *devname is +not freed, and the caller doesn't free it either in line 250. So we free the +memroy of *devname in function cifs_compose_mount_options() when it goes to +error. + +Signed-off-by: Cong Ding +Reviewed-by: Jeff Layton +Signed-off-by: Steve French +Signed-off-by: Greg Kroah-Hartman + +--- + fs/cifs/cifs_dfs_ref.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/fs/cifs/cifs_dfs_ref.c ++++ b/fs/cifs/cifs_dfs_ref.c +@@ -226,6 +226,8 @@ compose_mount_options_out: + compose_mount_options_err: + kfree(mountdata); + mountdata = ERR_PTR(rc); ++ kfree(*devname); ++ *devname = NULL; + goto compose_mount_options_out; + } + diff --git a/queue-3.7/kvm-ppc-emulate-dcbf.patch b/queue-3.7/kvm-ppc-emulate-dcbf.patch new file mode 100644 index 00000000000..0867c458eee --- /dev/null +++ b/queue-3.7/kvm-ppc-emulate-dcbf.patch @@ -0,0 +1,39 @@ +From d3286144c92ec876da9e30320afa875699b7e0f1 Mon Sep 17 00:00:00 2001 +From: Alexander Graf +Date: Thu, 17 Jan 2013 13:50:25 +0100 +Subject: KVM: PPC: Emulate dcbf + +From: Alexander Graf + +commit d3286144c92ec876da9e30320afa875699b7e0f1 upstream. + +Guests can trigger MMIO exits using dcbf. Since we don't emulate cache +incoherent MMIO, just do nothing and move on. + +Reported-by: Ben Collins +Signed-off-by: Alexander Graf +Tested-by: Ben Collins +Signed-off-by: Greg Kroah-Hartman + +--- + arch/powerpc/kvm/emulate.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/arch/powerpc/kvm/emulate.c ++++ b/arch/powerpc/kvm/emulate.c +@@ -39,6 +39,7 @@ + #define OP_31_XOP_TRAP 4 + #define OP_31_XOP_LWZX 23 + #define OP_31_XOP_TRAP_64 68 ++#define OP_31_XOP_DCBF 86 + #define OP_31_XOP_LBZX 87 + #define OP_31_XOP_STWX 151 + #define OP_31_XOP_STBX 215 +@@ -353,6 +354,7 @@ int kvmppc_emulate_instruction(struct kv + kvmppc_set_exit_type(vcpu, EMULATED_MTSPR_EXITS); + break; + ++ case OP_31_XOP_DCBF: + case OP_31_XOP_DCBI: + /* Do nothing. The guest is performing dcbi because + * hardware DMA is not snooped by the dcache, but diff --git a/queue-3.7/powerpc-book3e-disable-interrupt-after-preempt_schedule_irq.patch b/queue-3.7/powerpc-book3e-disable-interrupt-after-preempt_schedule_irq.patch new file mode 100644 index 00000000000..49f01955b8e --- /dev/null +++ b/queue-3.7/powerpc-book3e-disable-interrupt-after-preempt_schedule_irq.patch @@ -0,0 +1,44 @@ +From 572177d7c77db1981ba2563e01478126482c43bc Mon Sep 17 00:00:00 2001 +From: Tiejun Chen +Date: Sun, 6 Jan 2013 00:49:34 +0000 +Subject: powerpc/book3e: Disable interrupt after preempt_schedule_irq + +From: Tiejun Chen + +commit 572177d7c77db1981ba2563e01478126482c43bc upstream. + +In preempt case current arch_local_irq_restore() from +preempt_schedule_irq() may enable hard interrupt but we really +should disable interrupts when we return from the interrupt, +and so that we don't get interrupted after loading SRR0/1. + +Signed-off-by: Tiejun Chen +Signed-off-by: Benjamin Herrenschmidt +Signed-off-by: Greg Kroah-Hartman + +--- + arch/powerpc/kernel/entry_64.S | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +--- a/arch/powerpc/kernel/entry_64.S ++++ b/arch/powerpc/kernel/entry_64.S +@@ -668,6 +668,19 @@ resume_kernel: + ld r4,TI_FLAGS(r9) + andi. r0,r4,_TIF_NEED_RESCHED + bne 1b ++ ++ /* ++ * arch_local_irq_restore() from preempt_schedule_irq above may ++ * enable hard interrupt but we really should disable interrupts ++ * when we return from the interrupt, and so that we don't get ++ * interrupted after loading SRR0/1. ++ */ ++#ifdef CONFIG_PPC_BOOK3E ++ wrteei 0 ++#else ++ ld r10,PACAKMSR(r13) /* Get kernel MSR without EE */ ++ mtmsrd r10,1 /* Update machine state */ ++#endif /* CONFIG_PPC_BOOK3E */ + #endif /* CONFIG_PREEMPT */ + + .globl fast_exc_return_irq diff --git a/queue-3.7/series b/queue-3.7/series index 575614ddb8f..029059594e1 100644 --- a/queue-3.7/series +++ b/queue-3.7/series @@ -1,3 +1,6 @@ can-c_can-fix-invalid-error-codes.patch can-ti_hecc-fix-invalid-error-codes.patch can-pch_can-fix-invalid-error-codes.patch +fs-cifs-cifs_dfs_ref.c-fix-potential-memory-leakage.patch +kvm-ppc-emulate-dcbf.patch +powerpc-book3e-disable-interrupt-after-preempt_schedule_irq.patch