|  | /* | 
|  | * vhost-net support | 
|  | * | 
|  | * Copyright Red Hat, Inc. 2010 | 
|  | * | 
|  | * Authors: | 
|  | *  Michael S. Tsirkin <mst@redhat.com> | 
|  | * | 
|  | * This work is licensed under the terms of the GNU GPL, version 2 or later. | 
|  | * See the COPYING file in the top-level directory. | 
|  | */ | 
|  |  | 
|  | #include "qemu/osdep.h" | 
|  | #include "net/net.h" | 
|  | #include "net/tap.h" | 
|  | #include "net/vhost-user.h" | 
|  |  | 
|  | #include "hw/virtio/virtio-net.h" | 
|  | #include "net/vhost_net.h" | 
|  | #include "qemu/error-report.h" | 
|  |  | 
|  |  | 
|  | uint64_t vhost_net_get_max_queues(VHostNetState *net) | 
|  | { | 
|  | return 1; | 
|  | } | 
|  |  | 
|  | struct vhost_net *vhost_net_init(VhostNetOptions *options) | 
|  | { | 
|  | error_report("vhost-net support is not compiled in"); | 
|  | return NULL; | 
|  | } | 
|  |  | 
|  | int vhost_net_start(VirtIODevice *dev, | 
|  | NetClientState *ncs, | 
|  | int data_queue_pairs, int cvq) | 
|  | { | 
|  | return -ENOSYS; | 
|  | } | 
|  | void vhost_net_stop(VirtIODevice *dev, | 
|  | NetClientState *ncs, | 
|  | int data_queue_pairs, int cvq) | 
|  | { | 
|  | } | 
|  |  | 
|  | void vhost_net_cleanup(struct vhost_net *net) | 
|  | { | 
|  | } | 
|  |  | 
|  | uint64_t vhost_net_get_features(struct vhost_net *net, uint64_t features) | 
|  | { | 
|  | return features; | 
|  | } | 
|  |  | 
|  | int vhost_net_get_config(struct vhost_net *net,  uint8_t *config, | 
|  | uint32_t config_len) | 
|  | { | 
|  | return 0; | 
|  | } | 
|  | int vhost_net_set_config(struct vhost_net *net, const uint8_t *data, | 
|  | uint32_t offset, uint32_t size, uint32_t flags) | 
|  | { | 
|  | return 0; | 
|  | } | 
|  |  | 
|  | void vhost_net_ack_features(struct vhost_net *net, uint64_t features) | 
|  | { | 
|  | } | 
|  |  | 
|  | uint64_t vhost_net_get_acked_features(VHostNetState *net) | 
|  | { | 
|  | return 0; | 
|  | } | 
|  |  | 
|  | bool vhost_net_virtqueue_pending(VHostNetState *net, int idx) | 
|  | { | 
|  | return false; | 
|  | } | 
|  |  | 
|  | void vhost_net_virtqueue_mask(VHostNetState *net, VirtIODevice *dev, | 
|  | int idx, bool mask) | 
|  | { | 
|  | } | 
|  |  | 
|  | bool vhost_net_config_pending(VHostNetState *net) | 
|  | { | 
|  | return false; | 
|  | } | 
|  |  | 
|  | void vhost_net_config_mask(VHostNetState *net, VirtIODevice *dev, bool mask) | 
|  | { | 
|  | } | 
|  |  | 
|  | int vhost_net_notify_migration_done(struct vhost_net *net, char* mac_addr) | 
|  | { | 
|  | return -1; | 
|  | } | 
|  |  | 
|  | VHostNetState *get_vhost_net(NetClientState *nc) | 
|  | { | 
|  | return 0; | 
|  | } | 
|  |  | 
|  | int vhost_set_vring_enable(NetClientState *nc, int enable) | 
|  | { | 
|  | return 0; | 
|  | } | 
|  |  | 
|  | int vhost_net_set_mtu(struct vhost_net *net, uint16_t mtu) | 
|  | { | 
|  | return 0; | 
|  | } | 
|  |  | 
|  | void vhost_net_virtqueue_reset(VirtIODevice *vdev, NetClientState *nc, | 
|  | int vq_index) | 
|  | { | 
|  |  | 
|  | } | 
|  |  | 
|  | int vhost_net_virtqueue_restart(VirtIODevice *vdev, NetClientState *nc, | 
|  | int vq_index) | 
|  | { | 
|  | return 0; | 
|  | } | 
|  |  | 
|  | void vhost_net_save_acked_features(NetClientState *nc) | 
|  | { | 
|  |  | 
|  | } |