Lines Matching defs:queue
140 static void eql_kill_one_slave(slave_queue_t *queue, slave_t *slave);
147 spin_lock(&eql->queue.lock);
148 head = &eql->queue.all_slaves;
157 eql_kill_one_slave(&eql->queue, slave);
161 spin_unlock(&eql->queue.lock);
184 spin_lock_init(&eql->queue.lock);
185 INIT_LIST_HEAD(&eql->queue.all_slaves);
186 eql->queue.master_dev = dev;
211 BUG_ON(!list_empty(&eql->queue.all_slaves));
221 static void eql_kill_one_slave(slave_queue_t *queue, slave_t *slave)
224 queue->num_slaves--;
230 static void eql_kill_slave_queue(slave_queue_t *queue)
234 spin_lock_bh(&queue->lock);
236 head = &queue->all_slaves;
240 eql_kill_one_slave(queue, s);
243 spin_unlock_bh(&queue->lock);
257 eql_kill_slave_queue(&eql->queue);
295 /* queue->lock must be held */
296 static slave_t *__eql_schedule_slaves(slave_queue_t *queue)
305 head = &queue->all_slaves;
325 eql_kill_one_slave(queue, slave);
336 spin_lock(&eql->queue.lock);
338 slave = __eql_schedule_slaves(&eql->queue);
352 spin_unlock(&eql->queue.lock);
361 /* queue->lock must be held */
362 static slave_t *__eql_find_slave_dev(slave_queue_t *queue, struct net_device *dev)
366 head = &queue->all_slaves;
377 static inline int eql_is_full(slave_queue_t *queue)
379 equalizer_t *eql = netdev_priv(queue->master_dev);
381 if (queue->num_slaves >= eql->max_slaves)
386 /* queue->lock must be held */
387 static int __eql_insert_slave(slave_queue_t *queue, slave_t *slave)
389 if (!eql_is_full(queue)) {
392 duplicate_slave = __eql_find_slave_dev(queue, slave->dev);
394 eql_kill_one_slave(queue, duplicate_slave);
397 list_add(&slave->list, &queue->all_slaves);
398 queue->num_slaves++;
435 spin_lock_bh(&eql->queue.lock);
436 ret = __eql_insert_slave(&eql->queue, s);
440 spin_unlock_bh(&eql->queue.lock);
464 spin_lock_bh(&eql->queue.lock);
466 slave_t *slave = __eql_find_slave_dev(&eql->queue, slave_dev);
468 eql_kill_one_slave(&eql->queue, slave);
472 spin_unlock_bh(&eql->queue.lock);
494 spin_lock_bh(&eql->queue.lock);
496 slave = __eql_find_slave_dev(&eql->queue, slave_dev);
502 spin_unlock_bh(&eql->queue.lock);
528 spin_lock_bh(&eql->queue.lock);
530 slave = __eql_find_slave_dev(&eql->queue, slave_dev);
538 spin_unlock_bh(&eql->queue.lock);