forked from mirrors/linux
		
	Make hard_irq_disable() actually hard-disable interrupts
At present, hard_irq_disable() does nothing on powerpc because of
this code in include/linux/interrupt.h:
    #ifndef hard_irq_disable
    #define hard_irq_disable()      do { } while(0)
    #endif
So we need to make our hard_irq_disable be a macro.  It was previously
a macro until commit 7230c56441 ("powerpc: Rework lazy-interrupt
handling") changed it to a static inline function.
Cc: stable@vger.kernel.org
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
--
 arch/powerpc/include/asm/hw_irq.h |    3 +++
 1 file changed, 3 insertions(+)
			
			
This commit is contained in:
		
							parent
							
								
									cfaf025112
								
							
						
					
					
						commit
						f948501b36
					
				
					 1 changed files with 3 additions and 0 deletions
				
			
		| 
						 | 
					@ -100,6 +100,9 @@ static inline void hard_irq_disable(void)
 | 
				
			||||||
	get_paca()->irq_happened |= PACA_IRQ_HARD_DIS;
 | 
						get_paca()->irq_happened |= PACA_IRQ_HARD_DIS;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* include/linux/interrupt.h needs hard_irq_disable to be a macro */
 | 
				
			||||||
 | 
					#define hard_irq_disable	hard_irq_disable
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * This is called by asynchronous interrupts to conditionally
 | 
					 * This is called by asynchronous interrupts to conditionally
 | 
				
			||||||
 * re-enable hard interrupts when soft-disabled after having
 | 
					 * re-enable hard interrupts when soft-disabled after having
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue