Lines Matching defs:queue
142 static void eql_kill_one_slave(slave_queue_t *queue, slave_t *slave);
149 spin_lock(&eql->queue.lock);
150 head = &eql->queue.all_slaves;
159 eql_kill_one_slave(&eql->queue, slave);
163 spin_unlock(&eql->queue.lock);
186 spin_lock_init(&eql->queue.lock);
187 INIT_LIST_HEAD(&eql->queue.all_slaves);
188 eql->queue.master_dev = dev;
213 BUG_ON(!list_empty(&eql->queue.all_slaves));
223 static void eql_kill_one_slave(slave_queue_t *queue, slave_t *slave)
226 queue->num_slaves--;
232 static void eql_kill_slave_queue(slave_queue_t *queue)
236 spin_lock_bh(&queue->lock);
238 head = &queue->all_slaves;
242 eql_kill_one_slave(queue, s);
245 spin_unlock_bh(&queue->lock);
259 eql_kill_slave_queue(&eql->queue);
301 /* queue->lock must be held */
302 static slave_t *__eql_schedule_slaves(slave_queue_t *queue)
311 head = &queue->all_slaves;
331 eql_kill_one_slave(queue, slave);
342 spin_lock(&eql->queue.lock);
344 slave = __eql_schedule_slaves(&eql->queue);
358 spin_unlock(&eql->queue.lock);
367 /* queue->lock must be held */
368 static slave_t *__eql_find_slave_dev(slave_queue_t *queue, struct net_device *dev)
372 head = &queue->all_slaves;
383 static inline int eql_is_full(slave_queue_t *queue)
385 equalizer_t *eql = netdev_priv(queue->master_dev);
387 if (queue->num_slaves >= eql->max_slaves)
392 /* queue->lock must be held */
393 static int __eql_insert_slave(slave_queue_t *queue, slave_t *slave)
395 if (!eql_is_full(queue)) {
398 duplicate_slave = __eql_find_slave_dev(queue, slave->dev);
400 eql_kill_one_slave(queue, duplicate_slave);
403 list_add(&slave->list, &queue->all_slaves);
404 queue->num_slaves++;
440 spin_lock_bh(&eql->queue.lock);
441 ret = __eql_insert_slave(&eql->queue, s);
445 spin_unlock_bh(&eql->queue.lock);
469 spin_lock_bh(&eql->queue.lock);
471 slave_t *slave = __eql_find_slave_dev(&eql->queue, slave_dev);
473 eql_kill_one_slave(&eql->queue, slave);
477 spin_unlock_bh(&eql->queue.lock);
499 spin_lock_bh(&eql->queue.lock);
501 slave = __eql_find_slave_dev(&eql->queue, slave_dev);
507 spin_unlock_bh(&eql->queue.lock);
533 spin_lock_bh(&eql->queue.lock);
535 slave = __eql_find_slave_dev(&eql->queue, slave_dev);
543 spin_unlock_bh(&eql->queue.lock);