forked from Minki/linux
genirq: Add internal state field to irq_desc
That field will contain internal state information which is not going to be exposed to anything outside the core code - except via accessor functions. I'm tired of everyone fiddling in irq_desc.status. core_internal_state__do_not_mess_with_it is clear enough, annoying to type and easy to grep for. Offenders will be tracked down and slapped with stinking trouts. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
35e857cbeb
commit
dbec07bac6
@ -19,6 +19,7 @@ struct timer_rand_state;
|
||||
* @handle_irq: highlevel irq-events handler [if NULL, __do_IRQ()]
|
||||
* @action: the irq action chain
|
||||
* @status: status information
|
||||
* @core_internal_state__do_not_mess_with_it: core internal status information
|
||||
* @depth: disable-depth, for nested irq_disable() calls
|
||||
* @wake_depth: enable depth, for multiple set_irq_wake() callers
|
||||
* @irq_count: stats field to detect stalled irqs
|
||||
@ -63,7 +64,7 @@ struct irq_desc {
|
||||
irq_flow_handler_t handle_irq;
|
||||
struct irqaction *action; /* IRQ action list */
|
||||
unsigned int status; /* IRQ status */
|
||||
|
||||
unsigned int core_internal_state__do_not_mess_with_it;
|
||||
unsigned int depth; /* nested irq disables */
|
||||
unsigned int wake_depth; /* nested wake enables */
|
||||
unsigned int irq_count; /* For detecting broken IRQs */
|
||||
|
@ -1,5 +1,9 @@
|
||||
/*
|
||||
* IRQ subsystem internal functions and variables:
|
||||
*
|
||||
* Do not ever include this file from anything else than
|
||||
* kernel/irq/. Do not even think about using any information outside
|
||||
* of this file for your non core code.
|
||||
*/
|
||||
#include <linux/irqdesc.h>
|
||||
|
||||
@ -9,6 +13,8 @@
|
||||
# define IRQ_BITMAP_BITS NR_IRQS
|
||||
#endif
|
||||
|
||||
#define istate core_internal_state__do_not_mess_with_it
|
||||
|
||||
extern int noirqdebug;
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user