Changeset feb5915 in mainline for arch/sparc64/src/trap/trap.c


Ignore:
Timestamp:
2005-12-29T19:17:29Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
80bff342
Parents:
7614565
Message:

sparc64 work.
Rename saving_handler() to preemptible_handler()
and fix it to make sparc64 kernel preemptive.
Add two handlers for two fatal exceptions (i.e.
instruction_access_exception and mem_address_not_aligned.
Fix panic_printf() to not allocate its own register window.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • arch/sparc64/src/trap/trap.c

    r7614565 rfeb5915  
    3030#include <arch/trap/trap_table.h>
    3131#include <arch/trap/regwin.h>
     32#include <arch/trap/exception.h>
    3233#include <arch/trap/interrupt.h>
    3334#include <arch/asm.h>
     
    5455         * Install kernel-provided handlers.
    5556         */
     57        trap_install_handler(TT_INSTRUCTION_ACCESS_EXCEPTION, TRAP_TABLE_ENTRY_SIZE, false);
    5658        trap_install_handler(TT_CLEAN_WINDOW, CLEAN_WINDOW_HANDLER_SIZE, false);
     59        trap_install_handler(TT_MEM_ADDRESS_NOT_ALIGNED, TRAP_TABLE_ENTRY_SIZE, false);
    5760        trap_install_handler(TT_SPILL_0_NORMAL, SPILL_HANDLER_SIZE, false);
    5861        trap_install_handler(TT_FILL_0_NORMAL, FILL_HANDLER_SIZE, false);
     62        trap_install_handler(TT_INSTRUCTION_ACCESS_EXCEPTION, TRAP_TABLE_ENTRY_SIZE, true);
    5963        trap_install_handler(TT_CLEAN_WINDOW, CLEAN_WINDOW_HANDLER_SIZE, true);
     64        trap_install_handler(TT_MEM_ADDRESS_NOT_ALIGNED, TRAP_TABLE_ENTRY_SIZE, true);
    6065        trap_install_handler(TT_SPILL_0_NORMAL, SPILL_HANDLER_SIZE, true);
    6166        trap_install_handler(TT_FILL_0_NORMAL, FILL_HANDLER_SIZE, true);
Note: See TracChangeset for help on using the changeset viewer.