• K
    locking, irq: enclose irq_desc_lock_class in CONFIG_LOCKDEP · 74c8a613
    KOSAKI Motohiro 提交于
    Impact: simplify code
    
    commit "08678b08: generic: sparse irqs: use irq_desc() [...]" introduced
    the irq_desc_lock_class variable.
    
    But it is used only if CONFIG_SPARSE_IRQ=Y or CONFIG_TRACE_IRQFLAGS=Y.
    Otherwise, following warnings happen:
    
    	CC      kernel/irq/handle.o
    	kernel/irq/handle.c:26: warning: 'irq_desc_lock_class' defined but not used
    
    Actually, current early_init_irq_lock_class has a bit strange and messy ifdef.
    In addition, it is not valueable.
    
    1. this function is protected by !CONFIG_SPARSE_IRQ, but that is not necessary.
       if CONFIG_SPARSE_IRQ=Y, desc of all irq number are initialized by NULL
       at first - then this function calling is safe.
    
    2. this function protected by CONFIG_TRACE_IRQFLAGS too. but it is not
       necessary either, because lockdep_set_class() doesn't have bad side
       effect even if CONFIG_TRACE_IRQFLAGS=n.
    
    This patch bloat kernel size a bit on CONFIG_TRACE_IRQFLAGS=n and
    CONFIG_SPARSE_IRQ=Y - but that's ok. early_init_irq_lock_class() is not
    a fastpatch at all.
    
    To avoid messy ifdefs is more important than a few bytes diet.
    Signed-off-by: NKOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
    Signed-off-by: NIngo Molnar <mingo@elte.hu>
    74c8a613
lockdep.h 13.7 KB