SOFTIRQ is a counter. Why here: #define in_serving_softirq() (softirq_count() & SOFTIRQ_OFFSET) #define in_task() (!(preempt_count() & \ (NMI_MASK | HARDIRQ_MASK | SOFTIRQ_OFFSET)))
we check only lowest bit?
SOFTIRQ is a counter. Why here: #define in_serving_softirq() (softirq_count() & SOFTIRQ_OFFSET) #define in_task() (!(preempt_count() & \ (NMI_MASK | HARDIRQ_MASK | SOFTIRQ_OFFSET)))
we check only lowest bit?