New upstream version 17.11-rc3
[deb_dpdk.git] / lib / librte_ether / ethdev_profile.h
similarity index 59%
rename from examples/vhost_xen/main.h
rename to lib/librte_ether/ethdev_profile.h
index 5ff48fd..697facf 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  *   BSD LICENSE
  *
- *   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+ *   Copyright(c) 2010-2017 Intel Corporation. All rights reserved.
  *   All rights reserved.
  *
  *   Redistribution and use in source and binary forms, with or without
  *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef _MAIN_H_
-#define _MAIN_H_
+#ifndef _RTE_ETHDEV_PROFILE_H_
+#define _RTE_ETHDEV_PROFILE_H_
 
-/* Macros for printing using RTE_LOG */
-#define RTE_LOGTYPE_VHOST_CONFIG RTE_LOGTYPE_USER1
-#define RTE_LOGTYPE_VHOST_DATA   RTE_LOGTYPE_USER2
-#define RTE_LOGTYPE_VHOST_PORT   RTE_LOGTYPE_USER3
+#include "rte_ethdev.h"
 
-/*
- * Device linked list structure for data path.
- */
-struct virtio_net_data_ll
-{
-       struct virtio_net          *dev;   /* Pointer to device created by configuration core. */
-       struct virtio_net_data_ll  *next;  /* Pointer to next device in linked list. */
-};
-
-/*
- * Structure containing data core specific information.
+/**
+ * Initialization of profiling RX queues for the Ethernet device.
+ * Implementation of this function depends on chosen profiling method,
+ * defined in configs.
+ *
+ * @param port_id
+ *  The port identifier of the Ethernet device.
+ * @param dev
+ *  Pointer to struct rte_eth_dev corresponding to given port_id.
+ *
+ * @return
+ *  - On success, zero.
+ *  - On failure, a negative value.
  */
-struct lcore_ll_info
-{
-       struct virtio_net_data_ll    *ll_root_free;     /* Pointer to head in free linked list. */
-       struct virtio_net_data_ll    *ll_root_used;         /* Pointer to head of used linked list. */
-       uint32_t                      device_num;       /* Number of devices on lcore. */
-       volatile  uint8_t             dev_removal_flag; /* Flag to synchronize device removal. */
-};
+int
+__rte_eth_profile_rx_init(uint16_t port_id, struct rte_eth_dev *dev);
 
-struct lcore_info
-{
-       struct lcore_ll_info    *lcore_ll;      /* Pointer to data core specific lcore_ll_info struct */
-};
-#endif /* _MAIN_H_ */
+#endif