Changeset 6281


Ignore:
Timestamp:
Apr 16, 2007, 6:15:49 PM (15 years ago)
Author:
gb
Message:

Memory-fault errors on PPC, too.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/lisp-kernel/ppc-exceptions.c

    r6217 r6281  
    894894  }
    895895
    896   if (! is_write_fault(xp, info)) {
    897     return -1;
    898   }
    899 
    900   area = find_protected_area(addr);
    901 
    902   if (area == NULL) {           /* Don't know why this fault happened. */
    903     return -1;
    904   }
    905  
    906   handler = protection_handlers[area->why];
    907 
    908   return handler(xp, area, addr);
     896
     897  if (is_write_fault(xp,info)) {
     898    area = find_protected_area(addr);
     899    if (area != NULL) {
     900      handler = protection_handlers[area->why];
     901      return handler(xp, area, addr);
     902    }
     903  }
     904  callback_for_trap(nrs_CMAIN.vcell, xp, (pc)xpPC(xp), SIGBUS, (natural)addr, is_write_fault(xp,info));
     905  return -1;
    909906}
    910907
Note: See TracChangeset for help on using the changeset viewer.