[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] Fix delivery of nat consumption faults (still chatty)



# HG changeset patch
# User djm@xxxxxxxxxxxxxxx
# Node ID bd234c9603ce433dcb4a4ac1795a94f3b7b2796f
# Parent  12d4d2dc06a26830c1ef5b1cebd31221a94487e6
Fix delivery of nat consumption faults (still chatty)
Signed-off by: Dan Magenheimer <dan.magenheimer@xxxxxx>

diff -r 12d4d2dc06a2 -r bd234c9603ce xen/arch/ia64/xen/process.c
--- a/xen/arch/ia64/xen/process.c       Fri Nov 11 19:05:38 2005
+++ b/xen/arch/ia64/xen/process.c       Fri Nov 11 19:23:04 2005
@@ -743,10 +743,15 @@
                vector = IA64_DISABLED_FPREG_VECTOR;
                break;
            case 26:
+               if (((isr >> 4L) & 0xfL) == 1) {
+                       //regs->eml_unat = 0;  FIXME: DO WE NEED THIS??
+                       printf("ia64_handle_reflection: handling regNaT fault");
+                       vector = IA64_NAT_CONSUMPTION_VECTOR; break;
+               }
 printf("*** NaT fault... attempting to handle as privop\n");
 printf("isr=%p, ifa=%p,iip=%p,ipsr=%p\n",isr,ifa,regs->cr_iip,psr);
-               regs->eml_unat = 0;
-               return;
+               //regs->eml_unat = 0;  FIXME: DO WE NEED THIS???
+               // certain NaT faults are higher priority than privop faults
                vector = priv_emulate(v,regs,isr);
                if (vector == IA64_NO_FAULT) {
 printf("*** Handled privop masquerading as NaT fault\n");

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.