X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=lib%2Flibrte_vhost%2Frte_vhost.h;h=010f1608695eedeb2d0251e3fbbe6ea873ec28b7;hb=9253c34cfb9dd32faeb8e513f6d8fafd356a2e62;hp=2fbc36464336403806bee77dbb89d15b4a67765d;hpb=2263f13941a10989d141e73529fa1b0fe356608b;p=dpdk.git diff --git a/lib/librte_vhost/rte_vhost.h b/lib/librte_vhost/rte_vhost.h index 2fbc364643..010f160869 100644 --- a/lib/librte_vhost/rte_vhost.h +++ b/lib/librte_vhost/rte_vhost.h @@ -28,13 +28,31 @@ extern "C" { #define RTE_VHOST_USER_CLIENT (1ULL << 0) #define RTE_VHOST_USER_NO_RECONNECT (1ULL << 1) -#define RTE_VHOST_USER_DEQUEUE_ZERO_COPY (1ULL << 2) +#define RTE_VHOST_USER_RESERVED_1 (1ULL << 2) #define RTE_VHOST_USER_IOMMU_SUPPORT (1ULL << 3) #define RTE_VHOST_USER_POSTCOPY_SUPPORT (1ULL << 4) /* support mbuf with external buffer attached */ #define RTE_VHOST_USER_EXTBUF_SUPPORT (1ULL << 5) /* support only linear buffers (no chained mbufs) */ #define RTE_VHOST_USER_LINEARBUF_SUPPORT (1ULL << 6) +#define RTE_VHOST_USER_ASYNC_COPY (1ULL << 7) + +/* Features. */ +#ifndef VIRTIO_NET_F_GUEST_ANNOUNCE + #define VIRTIO_NET_F_GUEST_ANNOUNCE 21 +#endif + +#ifndef VIRTIO_NET_F_MQ + #define VIRTIO_NET_F_MQ 22 +#endif + +#ifndef VIRTIO_NET_F_MTU + #define VIRTIO_NET_F_MTU 3 +#endif + +#ifndef VIRTIO_F_ANY_LAYOUT + #define VIRTIO_F_ANY_LAYOUT 27 +#endif /** Protocol features. */ #ifndef VHOST_USER_PROTOCOL_F_MQ @@ -85,6 +103,10 @@ extern "C" { #define VHOST_USER_PROTOCOL_F_INFLIGHT_SHMFD 12 #endif +#ifndef VHOST_USER_PROTOCOL_F_STATUS +#define VHOST_USER_PROTOCOL_F_STATUS 16 +#endif + /** Indicate whether protocol features negotiation is supported. */ #ifndef VHOST_USER_F_PROTOCOL_FEATURES #define VHOST_USER_F_PROTOCOL_FEATURES 30 @@ -408,7 +430,6 @@ int rte_vhost_driver_unregister(const char *path); * @return * 0 on success, -1 on failure */ -__rte_experimental int rte_vhost_driver_attach_vdpa_device(const char *path, struct rte_vdpa_device *dev); @@ -421,7 +442,6 @@ rte_vhost_driver_attach_vdpa_device(const char *path, * @return * 0 on success, -1 on failure */ -__rte_experimental int rte_vhost_driver_detach_vdpa_device(const char *path); @@ -433,7 +453,6 @@ rte_vhost_driver_detach_vdpa_device(const char *path); * @return * vDPA device pointer, NULL on failure */ -__rte_experimental struct rte_vdpa_device * rte_vhost_driver_get_vdpa_device(const char *path); @@ -891,7 +910,6 @@ uint32_t rte_vhost_rx_queue_count(int vid, uint16_t qid); * @return * 0 on success, -1 on failure */ -__rte_experimental int rte_vhost_get_log_base(int vid, uint64_t *log_base, uint64_t *log_size); @@ -909,7 +927,6 @@ rte_vhost_get_log_base(int vid, uint64_t *log_base, uint64_t *log_size); * @return * 0 on success, -1 on failure */ -__rte_experimental int rte_vhost_get_vring_base(int vid, uint16_t queue_id, uint16_t *last_avail_idx, uint16_t *last_used_idx); @@ -951,7 +968,6 @@ rte_vhost_get_vring_base_from_inflight(int vid, * @return * 0 on success, -1 on failure */ -__rte_experimental int rte_vhost_set_vring_base(int vid, uint16_t queue_id, uint16_t last_avail_idx, uint16_t last_used_idx); @@ -981,7 +997,6 @@ rte_vhost_extern_callback_register(int vid, * @return * vDPA device pointer on success, NULL on failure */ -__rte_experimental struct rte_vdpa_device * rte_vhost_get_vdpa_device(int vid);