Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
[deliverable/linux.git] / arch / ia64 / mm / extable.c
1 /*
2 * Kernel exception handling table support. Derived from arch/alpha/mm/extable.c.
3 *
4 * Copyright (C) 1998, 1999, 2001-2002, 2004 Hewlett-Packard Co
5 * David Mosberger-Tang <davidm@hpl.hp.com>
6 */
7
8 #include <asm/uaccess.h>
9
10 void
11 ia64_handle_exception (struct pt_regs *regs, const struct exception_table_entry *e)
12 {
13 long fix = (u64) &e->fixup + e->fixup;
14
15 regs->r8 = -EFAULT;
16 if (fix & 4)
17 regs->r9 = 0;
18 regs->cr_iip = fix & ~0xf;
19 ia64_psr(regs)->ri = fix & 0x3; /* set continuation slot number */
20 }
This page took 0.05733 seconds and 5 git commands to generate.