 7c7fcf762e
			
		
	
	
	7c7fcf762e
	
	
	
		
			
			Save the current exception frame pointer in the thread_info struct rather than in a global variable as the latter makes SMP tricky, especially when preemption is also enabled. This also replaces __frame with current_frame() and rearranges header file inclusions to make it all compile. Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Akira Takeuchi <takeuchi.akr@jp.panasonic.com>
		
			
				
	
	
		
			28 lines
		
	
	
	
		
			751 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
	
		
			751 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
| /* MN10300 IRQ registers pointer definition
 | |
|  *
 | |
|  * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved.
 | |
|  * Written by David Howells (dhowells@redhat.com)
 | |
|  *
 | |
|  * This program is free software; you can redistribute it and/or
 | |
|  * modify it under the terms of the GNU General Public Licence
 | |
|  * as published by the Free Software Foundation; either version
 | |
|  * 2 of the Licence, or (at your option) any later version.
 | |
|  */
 | |
| #ifndef _ASM_IRQ_REGS_H
 | |
| #define _ASM_IRQ_REGS_H
 | |
| 
 | |
| /*
 | |
|  * Per-cpu current frame pointer - the location of the last exception frame on
 | |
|  * the stack
 | |
|  */
 | |
| #define ARCH_HAS_OWN_IRQ_REGS
 | |
| 
 | |
| #ifndef __ASSEMBLY__
 | |
| static inline __attribute__((const))
 | |
| struct pt_regs *get_irq_regs(void)
 | |
| {
 | |
| 	return current_frame();
 | |
| }
 | |
| #endif
 | |
| 
 | |
| #endif /* _ASM_IRQ_REGS_H */
 |