Re: [PATCH 1/3] PCI: Rework default handling of suspend and resume

From: Linus Torvalds
Date: Sun Dec 07 2008 - 11:44:39 EST




On Sun, 7 Dec 2008, Rafael J. Wysocki wrote:
>
> If there is no objection from Jesse and if you don't mind, I'll prepare a
> version of the $subject patch on top of the patch in your tree and send it to
> you.

Rafael: there's a bug in your 1/3 patch.

It looks like "pci_save_state()" is currently unhappy with being called
with interrupts disabled. Or at least "pci_save_pci[ex]_state()" state
are. They both do a kzalloc(GFP_KERNEL).

So you should change that GFP_KERNEL into a GFP_ATOMIC. Or do something
more complicated like pre-allocate them during early suspend, but just
changing it to GFP_ATOMIC seems to be the trivial fix.

I'm not seeing any other issues with saving/restoring things with irq's
disabled, but people should be on the lookout for details like this.

Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/