Re: [Linux-ia64] floating-point error

From: Jesse Barnes <jbarnes_at_sgi.com>
Date: 2003-04-18 06:27:24
Great, thanks Bjorn.

Jesse

On Thu, Apr 17, 2003 at 02:06:42PM -0600, Bjorn Helgaas wrote:
> On Thursday 17 April 2003 1:52 pm, Jesse Barnes wrote:
> > It would be helpful to apply the patch that Martin Hicks sent out
> > awhile ago which will print the isr as well as the IP.  You can then
> > decode the isr to figure out exactly what's causing the fault in your
> > app.
> 
> I couldn't find this in the archives, but I got it out of David's
> 2.5 tree, and applied it for 2.4 as well.  Here it is if you
> want to try it:
> 
> # This is a BitKeeper generated patch for the following project:
> # Project Name: Linux kernel tree
> # This patch format is intended for GNU patch command version 2.5 or higher.
> # This patch includes the following deltas:
> #	           ChangeSet	1.889.308.20 -> 1.889.308.21
> #	arch/ia64/kernel/traps.c	1.26    -> 1.26.1.1
> #
> # The following is the BitKeeper ChangeSet Log
> # --------------------------------------------
> # 03/03/18	mort@wildopensource.com	1.889.308.21
> # [PATCH] ia64: print ISR for FPSWA faults
> # 
> # Here is a simple patch to also print isr during the handling of a
> # floating point assist fault.
> # --------------------------------------------
> #
> diff -Nru a/arch/ia64/kernel/traps.c b/arch/ia64/kernel/traps.c
> --- a/arch/ia64/kernel/traps.c	Thu Apr 17 13:41:11 2003
> +++ b/arch/ia64/kernel/traps.c	Thu Apr 17 13:41:11 2003
> @@ -336,8 +336,8 @@
>  		fpu_swa_count = 0;
>  	if ((++fpu_swa_count < 5) && !(current->thread.flags & IA64_THREAD_FPEMU_NOPRINT)) {
>  		last_time = jiffies;
> -		printk(KERN_WARNING "%s(%d): floating-point assist fault at ip %016lx\n",
> -		       current->comm, current->pid, regs->cr_iip + ia64_psr(regs)->ri);
> +		printk(KERN_WARNING "%s(%d): floating-point assist fault at ip %016lx, isr %016lx\n",
> +		       current->comm, current->pid, regs->cr_iip + ia64_psr(regs)->ri, isr);
>  	}
>  
>  	exception = fp_emulate(fp_fault, bundle, &regs->cr_ipsr, &regs->ar_fpsr, &isr, &regs->pr,
Received on Thu Apr 17 13:27:29 2003

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:13 EST