DESC_NUM
dring->tail = (dring->tail + 1) % DESC_NUM;
dring->tail = (dring->tail + 1) % DESC_NUM;
used = dring->head + DESC_NUM - dring->tail;
if (DESC_NUM - used < 2) {
if (DESC_NUM - used < 2)
for (idx = 0; idx < DESC_NUM; idx++) {
memset(dring->desc, 0, sizeof(struct netsec_desc) * DESC_NUM);
memset(dring->vaddr, 0, DESC_SZ * DESC_NUM);
dma_free_coherent(priv->dev, DESC_SZ * DESC_NUM,
dring->vaddr = dma_alloc_coherent(priv->dev, DESC_SZ * DESC_NUM,
dring->desc = kzalloc_objs(*dring->desc, DESC_NUM);
for (i = 0; i < DESC_NUM; i++) {
.pool_size = DESC_NUM,
for (i = 0; i < DESC_NUM; i++) {
netsec_rx_fill(priv, 0, DESC_NUM);
BUILD_BUG_ON_NOT_POWER_OF_2(DESC_NUM);
if (idx == DESC_NUM - 1)
cnt < DESC_NUM) {
dring->tail = (tail + 1) % DESC_NUM;
if (idx >= DESC_NUM)
if (idx == DESC_NUM - 1)
dring->head = (dring->head + 1) % DESC_NUM;
filled = tx_ring->head + DESC_NUM - tx_ring->tail;
if (DESC_NUM - filled <= 1)
vq_info_add(&dev, 0, DESC_NUM, fd);
vq_info_add(&dev, 1, DESC_NUM, fd);