[PATCH 19/42]: ppc64: bugfix: crash on PHB add

Linas Vepstas linas at linas.org
Fri Nov 4 11:51:17 EST 2005


19-rpaphp-crashing.patch

This patch fixes a bug related to dlpar PHB add, after a PHB removal.

-- The crash was due to the PHB not having a pci_dn structure yet,
   when the phb is being added.

This code survived testing, of adding and removeig the PHB and all slots
underneath it, 17 times so far, as of this writing.

Signed-off-by: Linas Vepstas <linas at austin.ibm.com>

emailed to 
To: paulus at samba.org
Cc: linuxppc64-dev at ozlabs.org, linux-pci at atrey.karlin.mff.cuni.cz,
        johnrose at linux.ibm.com, linux-kernel at vger.kernel.org
Subject: [PATCH] rpaphp: PCI Hotplug crash on PHB DLPAR add

on 4 October 2005


Index: linux-2.6.14-git3/drivers/pci/hotplug/rpadlpar_core.c
===================================================================
--- linux-2.6.14-git3.orig/drivers/pci/hotplug/rpadlpar_core.c	2005-11-02 14:29:02.115685162 -0600
+++ linux-2.6.14-git3/drivers/pci/hotplug/rpadlpar_core.c	2005-11-02 14:35:52.800111285 -0600
@@ -306,7 +306,7 @@
 {
 	struct pci_controller *phb;
 
-	if (PCI_DN(dn)->phb) {
+	if (PCI_DN(dn) && PCI_DN(dn)->phb) {
 		/* PHB already exists */
 		return -EINVAL;
 	}



More information about the Linuxppc64-dev mailing list