Lines Matching refs:dev
57 struct hfi1_ibdev *dev;
64 dev = to_idev(qp->ibqp.device);
69 sdma_txclean(dd_from_dev(dev), &tx->txreq);
72 kmem_cache_free(dev->verbs_txreq_cache, tx);
75 seq = read_seqbegin(&dev->txwait_lock);
76 if (!list_empty(&dev->txwait)) {
79 write_seqlock_irqsave(&dev->txwait_lock, flags);
80 wait = list_first_entry(&dev->txwait, struct iowait,
86 write_sequnlock_irqrestore(&dev->txwait_lock, flags);
90 } while (read_seqretry(&dev->txwait_lock, seq));
93 struct verbs_txreq *__get_txreq(struct hfi1_ibdev *dev,
99 write_seqlock(&dev->txwait_lock);
103 tx = kmem_cache_alloc(dev->verbs_txreq_cache, VERBS_TXREQ_GFP);
108 dev->n_txwait++;
110 list_add_tail(&priv->s_iowait.list, &dev->txwait);
111 priv->s_iowait.lock = &dev->txwait_lock;
118 write_sequnlock(&dev->txwait_lock);
122 int verbs_txreq_init(struct hfi1_ibdev *dev)
125 struct hfi1_devdata *dd = dd_from_dev(dev);
128 dev->verbs_txreq_cache = kmem_cache_create(buf,
132 if (!dev->verbs_txreq_cache)
137 void verbs_txreq_exit(struct hfi1_ibdev *dev)
139 kmem_cache_destroy(dev->verbs_txreq_cache);
140 dev->verbs_txreq_cache = NULL;