diff mbox

powerpc/eeh: Fix trivial error in eeh_restore_dev_state()

Message ID 1433307179-17020-1-git-send-email-david@gibson.dropbear.id.au (mailing list archive)
State Accepted
Commit 502f159c0239863deebfc50e09c0892d0c157101
Delegated to: Michael Ellerman
Headers show

Commit Message

David Gibson June 3, 2015, 4:52 a.m. UTC
Commit 28158cd "powerpc/eeh: Enhance pcibios_set_pcie_reset_state()"
introduced a fix for a problem where certain configurations could lead to
pci_reset_function() destroying the state of PCI devices other than the one
specified.

Unfortunately, the fix has a trivial bug - it calls pci_save_state() again,
when it should be calling pci_restore_state().  This corrects the problem.

Cc: Gavin Shan <gwshan@au1.ibm.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
 arch/powerpc/kernel/eeh.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Guo Wen Shan June 3, 2015, 4:58 a.m. UTC | #1
David Gibson <david@gibson.dropbear.id.au> wrote on 03/06/2015 14:52:59:

> From: David Gibson <david@gibson.dropbear.id.au>
> To: Guo Wen Shan/Australia/IBM@IBMAU, mpe@ellerman.id.au
> Cc: benh@kernel.crashing.org, paulus@samba.org, linuxppc-
> dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, David Gibson
> <david@gibson.dropbear.id.au>
> Date: 03/06/2015 14:53
> Subject: [PATCH] powerpc/eeh: Fix trivial error in eeh_restore_dev_state
()
>
> Commit 28158cd "powerpc/eeh: Enhance pcibios_set_pcie_reset_state()"
> introduced a fix for a problem where certain configurations could lead to
> pci_reset_function() destroying the state of PCI devices other than the
one
> specified.
>
> Unfortunately, the fix has a trivial bug - it calls pci_save_state()
again,
> when it should be calling pci_restore_state().  This corrects the
problem.
>
> Cc: Gavin Shan <gwshan@au1.ibm.com>
> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>

Acked-by: Gavin Shan <gwshan@linux.vnet.ibm.com>

Thanks,
Gavin

> ---
>  arch/powerpc/kernel/eeh.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/kernel/eeh.c b/arch/powerpc/kernel/eeh.c
> index 9ee61d1..ece4181 100644
> --- a/arch/powerpc/kernel/eeh.c
> +++ b/arch/powerpc/kernel/eeh.c
> @@ -719,7 +719,7 @@ static void *eeh_restore_dev_state(void *data,
> void *userdata)
>
>     /* The caller should restore state for the specified device */
>     if (pdev != dev)
> -      pci_save_state(pdev);
> +      pci_restore_state(pdev);
>
>     return NULL;
>  }
> --
> 2.4.2
>
diff mbox

Patch

diff --git a/arch/powerpc/kernel/eeh.c b/arch/powerpc/kernel/eeh.c
index 9ee61d1..ece4181 100644
--- a/arch/powerpc/kernel/eeh.c
+++ b/arch/powerpc/kernel/eeh.c
@@ -719,7 +719,7 @@  static void *eeh_restore_dev_state(void *data, void *userdata)
 
 	/* The caller should restore state for the specified device */
 	if (pdev != dev)
-		pci_save_state(pdev);
+		pci_restore_state(pdev);
 
 	return NULL;
 }