+ if (!busy) {
+ ctl->timer_running = false;
+ } else {
+ ctl->timer.expires = jiffies + HZ;
+ add_timer(&ctl->timer);
+ }
+ spin_unlock_irq(&tags->lock);
+inc_busy:
+ atomic_inc(&info->busy_count);
+ if (!tags->ctl.timer_running &&
+ try_cmpxchg_relaxed(&tags->ctl.timer_running, &timer_running, true)) {
+ tags->ctl.timer.expires = jiffies + HZ;
+ add_timer(&tags->ctl.timer);
+ }
}