Lines Matching refs:num
295 static size_t vring_pci_size(u16 num) in vring_pci_size() argument
298 return PAGE_ALIGN(vring_size(num, SMP_CACHE_BYTES)); in vring_pci_size()
301 static void *alloc_virtqueue_pages(int *num) in alloc_virtqueue_pages() argument
306 for (; *num && vring_pci_size(*num) > PAGE_SIZE; *num /= 2) { in alloc_virtqueue_pages()
307 pages = alloc_pages_exact(vring_pci_size(*num), in alloc_virtqueue_pages()
313 if (!*num) in alloc_virtqueue_pages()
317 return alloc_pages_exact(vring_pci_size(*num), GFP_KERNEL|__GFP_ZERO); in alloc_virtqueue_pages()
329 u16 num, off; in setup_vq() local
339 num = vp_ioread16(&cfg->queue_size); in setup_vq()
340 if (!num || vp_ioread16(&cfg->queue_enable)) in setup_vq()
343 if (num & (num - 1)) { in setup_vq()
344 dev_warn(&vp_dev->pci_dev->dev, "bad queue size %u", num); in setup_vq()
351 info->num = num; in setup_vq()
354 info->queue = alloc_virtqueue_pages(&info->num); in setup_vq()
359 vq = vring_new_virtqueue(index, info->num, in setup_vq()
368 vp_iowrite16(num, &cfg->queue_size); in setup_vq()
419 free_pages_exact(info->queue, vring_pci_size(info->num)); in setup_vq()
465 free_pages_exact(info->queue, vring_pci_size(info->num)); in del_vq()