if (ns->timer) {
v3_remove_timer(core,ns->timer);
}
+
+ v3_lock_deinit(&(ns->rx_lock));
+ v3_lock_deinit(&(ns->tx_lock));
+
+
return 0;
}
virtio->pci_dev, 0);
break;
- case VIRTIO_NET_CONFIG ... VIRTIO_NET_CONFIG + ETH_ALEN:
+ case VIRTIO_NET_CONFIG ... VIRTIO_NET_CONFIG + ETH_ALEN - 1:
*(uint8_t *)dst = virtio->net_cfg.mac[port_idx-VIRTIO_NET_CONFIG];
break;
if (q->cur_avail_idx != q->avail->index){
uint16_t buf_idx;
struct vring_desc * buf_desc;
- uint32_t hdr_len, len;
+ uint32_t hdr_len;
+ int len;
uint32_t offset = 0;
hdr_len = (virtio->mergeable_rx_bufs)?
V3_Free(backend);
}
- v3_lock_deinit(&(virtio->rx_lock));
- v3_lock_deinit(&(virtio->tx_lock));
-
V3_Free(virtio);
return 0;