Lines Matching defs:xenvif_queue
135 struct xenvif_queue { /* Per-queue data for xenvif */ struct
136 unsigned int id; /* Queue ID, 0-based */
137 char name[QUEUE_NAME_SIZE]; /* DEVNAME-qN */
138 struct xenvif *vif; /* Parent VIF */
141 struct napi_struct napi;
143 unsigned int tx_irq;
145 char tx_irq_name[IRQ_NAME_SIZE]; /* DEVNAME-qN-tx */
146 struct xen_netif_tx_back_ring tx;
147 struct sk_buff_head tx_queue;
148 struct page *mmap_pages[MAX_PENDING_REQS];
149 pending_ring_idx_t pending_prod;
150 pending_ring_idx_t pending_cons;
151 u16 pending_ring[MAX_PENDING_REQS];
152 struct pending_tx_info pending_tx_info[MAX_PENDING_REQS];
153 grant_handle_t grant_tx_handle[MAX_PENDING_REQS];
155 struct gnttab_copy tx_copy_ops[MAX_PENDING_REQS];
156 struct gnttab_map_grant_ref tx_map_ops[MAX_PENDING_REQS];
157 struct gnttab_unmap_grant_ref tx_unmap_ops[MAX_PENDING_REQS];
159 struct page *pages_to_map[MAX_PENDING_REQS];
160 struct page *pages_to_unmap[MAX_PENDING_REQS];
163 spinlock_t callback_lock;
168 spinlock_t response_lock;
169 pending_ring_idx_t dealloc_prod;
170 pending_ring_idx_t dealloc_cons;
171 u16 dealloc_ring[MAX_PENDING_REQS];
172 struct task_struct *dealloc_task;
173 wait_queue_head_t dealloc_wq;
174 atomic_t inflight_packets;
177 struct task_struct *task;
178 wait_queue_head_t wq;
180 unsigned int rx_irq;
182 char rx_irq_name[IRQ_NAME_SIZE]; /* DEVNAME-qN-rx */
183 struct xen_netif_rx_back_ring rx;
184 struct sk_buff_head rx_queue;
186 unsigned int rx_queue_max;
187 unsigned int rx_queue_len;
188 unsigned long last_rx_time;
189 bool stalled;
191 struct gnttab_copy grant_copy_op[MAX_GRANT_COPY_OPS];
196 struct xenvif_rx_meta meta[XEN_NETIF_RX_RING_SIZE];
199 unsigned long credit_bytes;
200 unsigned long credit_usec;
201 unsigned long remaining_credit;
202 struct timer_list credit_timeout;
203 u64 credit_window_start;
206 struct xenvif_stats stats;