Lines Matching defs:timers
31 #include <linux/posix-timers.h>
241 static struct mmtimer_node *timers;
252 struct rb_node **link = &timers[nodeid].timer_head.rb_node;
274 rb_insert_color(&n->list, &timers[nodeid].timer_head);
276 if (!timers[nodeid].next || expires < rb_entry(timers[nodeid].next,
278 timers[nodeid].next = &n->list;
287 struct mmtimer_node *n = &timers[nodeid];
524 spin_lock(&timers[indx].lock);
525 base = rb_entry(timers[indx].next, struct mmtimer, list);
527 spin_unlock(&timers[indx].lock);
538 tasklet_schedule(&timers[indx].tasklet);
542 spin_unlock(&timers[indx].lock);
549 struct mmtimer_node *mn = &timers[nodeid];
607 spin_lock_irqsave(&timers[nodeid].lock, irqflags);
610 struct rb_node *n = timers[nodeid].timer_head.rb_node;
629 spin_unlock_irqrestore(&timers[nodeid].lock, irqflags);
633 if (timers[nodeid].next == n) {
634 timers[nodeid].next = rb_next(n);
638 rb_erase(n, &timers[nodeid].timer_head);
647 spin_unlock_irqrestore(&timers[nodeid].lock, irqflags);
724 spin_lock_irqsave(&timers[nodeid].lock, irqflags);
734 n = timers[nodeid].next;
739 if (timers[nodeid].next == n) {
741 spin_unlock_irqrestore(&timers[nodeid].lock, irqflags);
753 spin_unlock_irqrestore(&timers[nodeid].lock, irqflags);
814 timers = kzalloc(sizeof(struct mmtimer_node)*maxn, GFP_KERNEL);
815 if (timers == NULL) {
823 spin_lock_init(&timers[node].lock);
824 tasklet_init(&timers[node].tasklet, mmtimer_tasklet,
837 kfree(timers);