All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch] ia64 vcpu_reset() do not call kmalloc() with irqs disabled
@ 2009-04-17 14:43 Jes Sorensen
  2009-04-19 13:16 ` [patch] ia64 vcpu_reset() do not call kmalloc() with irqs Zhang, Xiantao
  2009-04-20  7:58 ` [patch] ia64 vcpu_reset() do not call kmalloc() with irqs disabled Avi Kivity
  0 siblings, 2 replies; 3+ messages in thread
From: Jes Sorensen @ 2009-04-17 14:43 UTC (permalink / raw)
  To: kvm-ia64

[-- Attachment #1: Type: text/plain, Size: 141 bytes --]

Hi,

Here we go again, another case where we were calling kmalloc() through
vcpu_reset() while local interrupts were disabled.

Cheers,
Jes


[-- Attachment #2: 0006-kvm-ia64-vcpu-reset-sleep.patch --]
[-- Type: text/x-patch, Size: 695 bytes --]

Restore local irq enabled state before calling kvm_arch_vcpu_init(),
which calls kmalloc(GFP_KERNEL).

Signed-off-by: Jes Sorensen <jes@sgi.com>

---
 arch/ia64/kvm/kvm-ia64.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6.git/arch/ia64/kvm/kvm-ia64.c
===================================================================
--- linux-2.6.git.orig/arch/ia64/kvm/kvm-ia64.c
+++ linux-2.6.git/arch/ia64/kvm/kvm-ia64.c
@@ -1919,6 +1919,7 @@
 	long psr;
 	local_irq_save(psr);
 	r = kvm_insert_vmm_mapping(vcpu);
+	local_irq_restore(psr);
 	if (r)
 		goto fail;
 
@@ -1931,7 +1932,6 @@
 	kvm_purge_vmm_mapping(vcpu);
 	r = 0;
 fail:
-	local_irq_restore(psr);
 	return r;
 }
 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* RE: [patch] ia64 vcpu_reset() do not call kmalloc() with irqs
  2009-04-17 14:43 [patch] ia64 vcpu_reset() do not call kmalloc() with irqs disabled Jes Sorensen
@ 2009-04-19 13:16 ` Zhang, Xiantao
  2009-04-20  7:58 ` [patch] ia64 vcpu_reset() do not call kmalloc() with irqs disabled Avi Kivity
  1 sibling, 0 replies; 3+ messages in thread
From: Zhang, Xiantao @ 2009-04-19 13:16 UTC (permalink / raw)
  To: kvm-ia64

Thanks, Jes!

Acked-by: Xiantao Zhang <xiantao.zhang@intel.com>

Jes Sorensen wrote:
> Hi,
> 
> Here we go again, another case where we were calling kmalloc() through
> vcpu_reset() while local interrupts were disabled.
> 
> Cheers,
> Jes


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [patch] ia64 vcpu_reset() do not call kmalloc() with irqs disabled
  2009-04-17 14:43 [patch] ia64 vcpu_reset() do not call kmalloc() with irqs disabled Jes Sorensen
  2009-04-19 13:16 ` [patch] ia64 vcpu_reset() do not call kmalloc() with irqs Zhang, Xiantao
@ 2009-04-20  7:58 ` Avi Kivity
  1 sibling, 0 replies; 3+ messages in thread
From: Avi Kivity @ 2009-04-20  7:58 UTC (permalink / raw)
  To: kvm-ia64

Jes Sorensen wrote:
> Hi,
>
> Here we go again, another case where we were calling kmalloc() through
> vcpu_reset() while local interrupts were disabled.

Applied, thanks.

-- 
error compiling committee.c: too many arguments to function


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-04-20  7:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-17 14:43 [patch] ia64 vcpu_reset() do not call kmalloc() with irqs disabled Jes Sorensen
2009-04-19 13:16 ` [patch] ia64 vcpu_reset() do not call kmalloc() with irqs Zhang, Xiantao
2009-04-20  7:58 ` [patch] ia64 vcpu_reset() do not call kmalloc() with irqs disabled Avi Kivity

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.