MCPcopy Create free account
hub / github.com/RT-Thread/rt-thread / virtio_free_desc

Function virtio_free_desc

components/drivers/virtio/virtio.c:232–251  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

230}
231
232void virtio_free_desc(struct virtio_device *dev, rt_uint32_t queue_index, rt_uint16_t desc_index)
233{
234 struct virtq *queue;
235
236 _virtio_dev_check(dev);
237
238 queue = &dev->queues[queue_index];
239
240 RT_ASSERT(queue_index < dev->queues_num);
241 RT_ASSERT(!queue->free[desc_index]);
242
243 queue->desc[desc_index].addr = 0;
244 queue->desc[desc_index].len = 0;
245 queue->desc[desc_index].flags = 0;
246 queue->desc[desc_index].next = 0;
247
248 queue->free[desc_index] = RT_TRUE;
249
250 queue->free_count++;
251}
252
253rt_err_t virtio_alloc_desc_chain(struct virtio_device *dev, rt_uint32_t queue_index, rt_size_t count,
254 rt_uint16_t *indexs)

Callers 7

virtio_console_send_ctrlFunction · 0.85
virtio_alloc_desc_chainFunction · 0.85
virtio_free_desc_chainFunction · 0.85
virtio_input_controlFunction · 0.85
virtio_net_txFunction · 0.85

Calls 1

_virtio_dev_checkFunction · 0.85

Tested by

no test coverage detected