mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [patch 1/4] x86, ioapic: fix potential resume deadlock
@ 2011-05-16 18:56 Suresh Siddha
  2011-05-16 18:56 ` [patch 2/4] x86, ioapic: allocate ioapic_saved_data early Suresh Siddha
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Suresh Siddha @ 2011-05-16 18:56 UTC (permalink / raw)
  To: mingo, tglx, hpa; +Cc: linux-kernel, daniel.blueman, suresh.b.siddha, stable

[-- Attachment #1: fix_gfp_kernel_alloc_with_irqs_disabled.patch --]
[-- Type: text/plain, Size: 1409 bytes --]

From: Daniel J Blueman <daniel.blueman@gmail.com>
Subject: x86, ioapic: fix potential resume deadlock

Fix a potential deadlock when resuming; here the calling function
has disabled interrupts, so we cannot sleep.

Change the memory allocation flag from GFP_KERNEL to GFP_ATOMIC.

TODO: We can do away with this memory allocation during resume by
reusing the ioapic suspend/resume code that uses boot time allocated
buffers.

Signed-off-by: Daniel J Blueman <daniel.blueman@gmail.com>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Cc: stable@kernel.org	[v2.6.39]
---
 arch/x86/kernel/apic/io_apic.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Index: linux-2.6-tip/arch/x86/kernel/apic/io_apic.c
===================================================================
--- linux-2.6-tip.orig/arch/x86/kernel/apic/io_apic.c
+++ linux-2.6-tip/arch/x86/kernel/apic/io_apic.c
@@ -621,14 +621,14 @@ struct IO_APIC_route_entry **alloc_ioapi
 	struct IO_APIC_route_entry **ioapic_entries;
 
 	ioapic_entries = kzalloc(sizeof(*ioapic_entries) * nr_ioapics,
-				GFP_KERNEL);
+				GFP_ATOMIC);
 	if (!ioapic_entries)
 		return 0;
 
 	for (apic = 0; apic < nr_ioapics; apic++) {
 		ioapic_entries[apic] =
 			kzalloc(sizeof(struct IO_APIC_route_entry) *
-				nr_ioapic_registers[apic], GFP_KERNEL);
+				nr_ioapic_registers[apic], GFP_ATOMIC);
 		if (!ioapic_entries[apic])
 			goto nomem;
 	}



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

end of thread, other threads:[~2011-05-17  9:08 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-05-16 18:56 [patch 1/4] x86, ioapic: fix potential resume deadlock Suresh Siddha
2011-05-16 18:56 ` [patch 2/4] x86, ioapic: allocate ioapic_saved_data early Suresh Siddha
2011-05-16 18:56 ` [patch 3/4] x86, ioapic: use ioapic_saved_data while enabling intr-remapping Suresh Siddha
2011-05-16 18:56 ` [patch 4/4] x86, ioapic: remove duplicate code for saving/restoring RTEs Suresh Siddha
2011-05-17  9:08   ` Ingo Molnar
2011-05-16 19:53 ` [patch 1/4] x86, ioapic: fix potential resume deadlock Daniel J Blueman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®