1/* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * Copyright (C) 1997, 99, 2001 - 2004 Ralf Baechle <ralf@linux-mips.org> 7 */ 8#include <linux/module.h> 9#include <linux/spinlock.h> 10#include <asm/branch.h> 11#include <asm/uaccess.h> 12 13int fixup_exception(struct pt_regs *regs) 14{ 15 const struct exception_table_entry *fixup; 16 17 fixup = search_exception_tables(exception_epc(regs)); 18 if (fixup) { 19 regs->cp0_epc = fixup->nextinsn; 20 21 return 1; 22 } 23 24 return 0; 25} 26