Lines Matching full:item
70 struct cw1200_queue_item *item, *tmp; in cw1200_queue_post_gc() local
72 list_for_each_entry_safe(item, tmp, gc_list, head) { in cw1200_queue_post_gc()
73 list_del(&item->head); in cw1200_queue_post_gc()
74 stats->skb_dtor(stats->priv, item->skb, &item->txpriv); in cw1200_queue_post_gc()
75 kfree(item); in cw1200_queue_post_gc()
80 struct cw1200_queue_item *item) in cw1200_queue_register_post_gc() argument
83 gc_item = kmemdup(item, sizeof(struct cw1200_queue_item), in cw1200_queue_register_post_gc()
94 struct cw1200_queue_item *item = NULL, *iter, *tmp; in __cw1200_queue_gc() local
99 item = iter; in __cw1200_queue_gc()
123 } else if (item) { in __cw1200_queue_gc()
124 unsigned long tmo = item->queue_timestamp + queue->ttl; in __cw1200_queue_gc()
207 struct cw1200_queue_item *item, *tmp; in cw1200_queue_clear() local
212 list_for_each_entry_safe(item, tmp, &queue->pending, head) { in cw1200_queue_clear()
213 WARN_ON(!item->skb); in cw1200_queue_clear()
214 cw1200_queue_register_post_gc(&gc_list, item); in cw1200_queue_clear()
215 item->skb = NULL; in cw1200_queue_clear()
216 list_move_tail(&item->head, &queue->free_pool); in cw1200_queue_clear()
292 struct cw1200_queue_item *item = list_first_entry( in cw1200_queue_put() local
294 BUG_ON(item->skb); in cw1200_queue_put()
296 list_move_tail(&item->head, &queue->queue); in cw1200_queue_put()
297 item->skb = skb; in cw1200_queue_put()
298 item->txpriv = *txpriv; in cw1200_queue_put()
299 item->generation = 0; in cw1200_queue_put()
300 item->packet_id = cw1200_queue_mk_packet_id(queue->generation, in cw1200_queue_put()
302 item->generation, in cw1200_queue_put()
303 item - queue->pool); in cw1200_queue_put()
304 item->queue_timestamp = jiffies; in cw1200_queue_put()
338 struct cw1200_queue_item *item; in cw1200_queue_get() local
343 list_for_each_entry(item, &queue->queue, head) { in cw1200_queue_get()
344 if (link_id_map & BIT(item->txpriv.link_id)) { in cw1200_queue_get()
351 *tx = (struct wsm_tx *)item->skb->data; in cw1200_queue_get()
352 *tx_info = IEEE80211_SKB_CB(item->skb); in cw1200_queue_get()
353 *txpriv = &item->txpriv; in cw1200_queue_get()
354 (*tx)->packet_id = item->packet_id; in cw1200_queue_get()
355 list_move_tail(&item->head, &queue->pending); in cw1200_queue_get()
357 --queue->link_map_cache[item->txpriv.link_id]; in cw1200_queue_get()
358 item->xmit_timestamp = jiffies; in cw1200_queue_get()
362 if (!--stats->link_map_cache[item->txpriv.link_id]) in cw1200_queue_get()
376 struct cw1200_queue_item *item; in cw1200_queue_requeue() local
382 item = &queue->pool[item_id]; in cw1200_queue_requeue()
391 } else if (item->generation != item_generation) { in cw1200_queue_requeue()
396 ++queue->link_map_cache[item->txpriv.link_id]; in cw1200_queue_requeue()
400 ++stats->link_map_cache[item->txpriv.link_id]; in cw1200_queue_requeue()
403 item->generation = ++item_generation; in cw1200_queue_requeue()
404 item->packet_id = cw1200_queue_mk_packet_id(queue_generation, in cw1200_queue_requeue()
408 list_move(&item->head, &queue->queue); in cw1200_queue_requeue()
416 struct cw1200_queue_item *item, *tmp; in cw1200_queue_requeue_all() local
420 list_for_each_entry_safe_reverse(item, tmp, &queue->pending, head) { in cw1200_queue_requeue_all()
422 ++queue->link_map_cache[item->txpriv.link_id]; in cw1200_queue_requeue_all()
426 ++stats->link_map_cache[item->txpriv.link_id]; in cw1200_queue_requeue_all()
429 ++item->generation; in cw1200_queue_requeue_all()
430 item->packet_id = cw1200_queue_mk_packet_id(queue->generation, in cw1200_queue_requeue_all()
432 item->generation, in cw1200_queue_requeue_all()
433 item - queue->pool); in cw1200_queue_requeue_all()
434 list_move(&item->head, &queue->queue); in cw1200_queue_requeue_all()
445 struct cw1200_queue_item *item; in cw1200_queue_remove() local
453 item = &queue->pool[item_id]; in cw1200_queue_remove()
462 } else if (item->generation != item_generation) { in cw1200_queue_remove()
466 gc_txpriv = item->txpriv; in cw1200_queue_remove()
467 gc_skb = item->skb; in cw1200_queue_remove()
468 item->skb = NULL; in cw1200_queue_remove()
472 ++item->generation; in cw1200_queue_remove()
476 list_move(&item->head, &queue->free_pool); in cw1200_queue_remove()
498 struct cw1200_queue_item *item; in cw1200_queue_get_skb() local
502 item = &queue->pool[item_id]; in cw1200_queue_get_skb()
511 } else if (item->generation != item_generation) { in cw1200_queue_get_skb()
515 *skb = item->skb; in cw1200_queue_get_skb()
516 *txpriv = &item->txpriv; in cw1200_queue_get_skb()
540 struct cw1200_queue_item *item; in cw1200_queue_get_xmit_timestamp() local
546 list_for_each_entry(item, &queue->pending, head) { in cw1200_queue_get_xmit_timestamp()
547 if (item->packet_id != pending_frame_id) in cw1200_queue_get_xmit_timestamp()
548 if (time_before(item->xmit_timestamp, in cw1200_queue_get_xmit_timestamp()
550 *timestamp = item->xmit_timestamp; in cw1200_queue_get_xmit_timestamp()