Skip to content

Commit

Permalink
[PATCH] i386: Store the interrupt regs pointer in the PDA
Browse files Browse the repository at this point in the history
Signed-off-by: Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Andi Kleen <ak@suse.de>
  • Loading branch information
Jeremy Fitzhardinge authored and Andi Kleen committed Dec 7, 2006
1 parent ec7fcaa commit 70463da
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 1 deletion.
28 changes: 27 additions & 1 deletion include/asm-i386/irq_regs.h
Original file line number Diff line number Diff line change
@@ -1 +1,27 @@
#include <asm-generic/irq_regs.h>
/*
* Per-cpu current frame pointer - the location of the last exception frame on
* the stack, stored in the PDA.
*
* Jeremy Fitzhardinge <jeremy@goop.org>
*/
#ifndef _ASM_I386_IRQ_REGS_H
#define _ASM_I386_IRQ_REGS_H

#include <asm/pda.h>

static inline struct pt_regs *get_irq_regs(void)
{
return read_pda(irq_regs);
}

static inline struct pt_regs *set_irq_regs(struct pt_regs *new_regs)
{
struct pt_regs *old_regs;

old_regs = read_pda(irq_regs);
write_pda(irq_regs, new_regs);

return old_regs;
}

#endif /* _ASM_I386_IRQ_REGS_H */
1 change: 1 addition & 0 deletions include/asm-i386/pda.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ struct i386_pda

int cpu_number;
struct task_struct *pcurrent; /* current process */
struct pt_regs *irq_regs;
};

extern struct i386_pda *_cpu_pda[];
Expand Down

0 comments on commit 70463da

Please sign in to comment.