Lines Matching refs:softirq_ctrl
110 * also in per CPU softirq_ctrl::cnt. This is necessary to allow tasks in a
115 * holding softirq_ctrl::lock is running.
120 struct softirq_ctrl {
125 static DEFINE_PER_CPU(struct softirq_ctrl, softirq_ctrl) = {
126 .lock = INIT_LOCAL_LOCK(softirq_ctrl.lock),
136 * softirq_ctrl::lock was the only running task on the CPU and blocks on
141 return __this_cpu_read(softirq_ctrl.cnt) != 0;
154 local_lock(&softirq_ctrl.lock);
158 DEBUG_LOCKS_WARN_ON(this_cpu_read(softirq_ctrl.cnt));
166 newcnt = __this_cpu_add_return(softirq_ctrl.cnt, cnt);
187 this_cpu_read(softirq_ctrl.cnt));
195 newcnt = __this_cpu_sub_return(softirq_ctrl.cnt, cnt);
200 local_unlock(&softirq_ctrl.lock);
215 curcnt = __this_cpu_read(softirq_ctrl.cnt);
274 return !this_cpu_read(softirq_ctrl.cnt);