All of lore.kernel.org
 help / color / mirror / Atom feed
From: Brian King <brking@linux.vnet.ibm.com>
To: Linas Vepstas <linas@austin.ibm.com>
Cc: linuxppc-dev <linuxppc-dev@ozlabs.org>,
	Paul Mackerras <paulus@samba.org>
Subject: Re: [PATCH 2/11] ppc64: EEH: Add clarifying messages.
Date: Tue, 20 Mar 2007 13:26:44 -0500	[thread overview]
Message-ID: <46002764.70900@linux.vnet.ibm.com> (raw)
In-Reply-To: <20070319195204.GB11532@austin.ibm.com>

Linas Vepstas wrote:
> There are multiple code patchs tht resuls in a "permanent
> failure"; when examining rare events, it can be hard to see 
> which was taken. This patch adds printk's to assist.

Should these printk's be logging the location of the failing device/slot?

Brian

> 
> Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
> 
> ----
>  arch/powerpc/platforms/pseries/eeh_driver.c |   20 +++++++++++++++-----
>  1 file changed, 15 insertions(+), 5 deletions(-)
> 
> Index: linux-2.6.21-rc4-git4/arch/powerpc/platforms/pseries/eeh_driver.c
> ===================================================================
> --- linux-2.6.21-rc4-git4.orig/arch/powerpc/platforms/pseries/eeh_driver.c	2007-03-19 12:51:09.000000000 -0500
> +++ linux-2.6.21-rc4-git4/arch/powerpc/platforms/pseries/eeh_driver.c	2007-03-19 13:19:28.000000000 -0500
> @@ -367,8 +367,10 @@ struct pci_dn * handle_eeh_events (struc
>  	 */
>  	if ((event->state == pci_channel_io_perm_failure) &&
>  	    ((event->time_unavail <= 0) ||
> -	     (event->time_unavail > MAX_WAIT_FOR_RECOVERY*1000)))
> +	     (event->time_unavail > MAX_WAIT_FOR_RECOVERY*1000))) {
> +		printk(KERN_WARNING "EEH: Permanent failure\n");
>  		goto hard_fail;
> +	}
> 
>  	eeh_slot_error_detail(frozen_pdn, 1 /* Temporary Error */);
>  	printk(KERN_WARNING
> @@ -390,8 +392,10 @@ struct pci_dn * handle_eeh_events (struc
>  	 */
>  	if (result == PCI_ERS_RESULT_NONE) {
>  		rc = eeh_reset_device(frozen_pdn, frozen_bus);
> -		if (rc)
> +		if (rc) {
> +			printk(KERN_WARNING "EEH: Unable to reset, rc=%d\n", rc);
>  			goto hard_fail;
> +		}
>  	}
> 
>  	/* If all devices reported they can proceed, then re-enable MMIO */
> @@ -417,21 +421,27 @@ struct pci_dn * handle_eeh_events (struc
>  	}
> 
>  	/* If any device has a hard failure, then shut off everything. */
> -	if (result == PCI_ERS_RESULT_DISCONNECT)
> +	if (result == PCI_ERS_RESULT_DISCONNECT) {
> +		printk(KERN_WARNING "EEH: Device driver gave up\n");
>  		goto hard_fail;
> +	}
> 
>  	/* If any device called out for a reset, then reset the slot */
>  	if (result == PCI_ERS_RESULT_NEED_RESET) {
>  		rc = eeh_reset_device(frozen_pdn, NULL);
> -		if (rc)
> +		if (rc) {
> +			printk(KERN_WARNING "EEH: Cannot reset, rc=%d\n", rc);
>  			goto hard_fail;
> +		}
>  		result = PCI_ERS_RESULT_NONE;
>  		pci_walk_bus(frozen_bus, eeh_report_reset, &result);
>  	}
> 
>  	/* All devices should claim they have recovered by now. */
> -	if (result != PCI_ERS_RESULT_RECOVERED)
> +	if (result != PCI_ERS_RESULT_RECOVERED) {
> +		printk(KERN_WARNING "EEH: Not recovered\n");
>  		goto hard_fail;
> +	}
> 
>  	/* Tell all device drivers that they can resume operations */
>  	pci_walk_bus(frozen_bus, eeh_report_resume, NULL);
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev


-- 
Brian King
eServer Storage I/O
IBM Linux Technology Center

  reply	other threads:[~2007-03-20 18:26 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-19 19:43 [PATCH 0/11] ppc64: EEH: modifications, fixes Linas Vepstas
2007-03-19 19:51 ` [PATCH 1/11] ppc64: EEH: modify order of EEH state checking Linas Vepstas
2007-03-19 19:52 ` [PATCH 2/11] ppc64: EEH: Add clarifying messages Linas Vepstas
2007-03-20 18:26   ` Brian King [this message]
2007-03-21 17:59     ` Linas Vepstas
2007-03-19 19:53 ` [PATCH 3/11] ppc64: EEH: Tolerate high mmio Linas Vepstas
2007-03-21  1:25   ` Olof Johansson
2007-03-21 19:20     ` Linas Vepstas
2007-03-19 19:54 ` [PATCH 4/11] ppc64: EEH: support ibm,get-config-addr-info2 RTAS call Linas Vepstas
2007-03-19 19:55 ` [PATCH 5/11] ppc64: EEH: hotplug recovery bugfix Linas Vepstas
2007-03-19 19:55 ` [PATCH 6/11] ppc64: EEH: multifunction " Linas Vepstas
2007-03-19 19:56 ` [PATCH 7/11] ppc64: EEH: handle reset state high Linas Vepstas
2007-03-19 19:58 ` [PATCH 8/11] ppc64: EEH: wait for slot status Linas Vepstas
2007-03-19 19:59 ` [PATCH 9/11] ppc64: EEH: rm un-needed data Linas Vepstas
2007-03-19 19:59 ` [PATCH 10/11] ppc64: EEH: verify state change Linas Vepstas
2007-03-19 20:01 ` [PATCH 11/11] ppc64: EEH: restructure multi-function support Linas Vepstas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=46002764.70900@linux.vnet.ibm.com \
    --to=brking@linux.vnet.ibm.com \
    --cc=linas@austin.ibm.com \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=paulus@samba.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.