net/mlx5: fix dynamic inline hint handling
[dpdk.git] / drivers / net / memif / rte_eth_memif.h
index 24e8a09..6f45b70 100644 (file)
@@ -63,12 +63,14 @@ struct memif_queue {
        uint16_t last_head;                     /**< last ring head */
        uint16_t last_tail;                     /**< last ring tail */
 
+       struct rte_mbuf **buffers;
+       /**< Stored mbufs. Used in zero-copy tx. Slave stores transmitted
+        * mbufs to free them once master has received them.
+        */
+
        /* rx/tx info */
        uint64_t n_pkts;                        /**< number of rx/tx packets */
        uint64_t n_bytes;                       /**< number of rx/tx bytes */
-       uint64_t n_err;                         /**< number of tx errors */
-
-       memif_ring_t *ring;                     /**< pointer to ring */
 
        struct rte_intr_handle intr_handle;     /**< interrupt handle */
 
@@ -92,6 +94,7 @@ struct pmd_internals {
        char secret[ETH_MEMIF_SECRET_SIZE]; /**< secret (optional security parameter) */
 
        struct memif_control_channel *cc;       /**< control channel */
+       rte_spinlock_t cc_lock;                 /**< control channel lock */
 
        /* remote info */
        char remote_name[RTE_DEV_NAME_MAX_LEN];         /**< remote app name */
@@ -116,8 +119,6 @@ struct pmd_internals {
        /**< local disconnect reason */
        char remote_disc_string[ETH_MEMIF_DISC_STRING_SIZE];
        /**< remote disconnect reason */
-
-       struct rte_vdev_device *vdev;           /**< vdev handle */
 };
 
 struct pmd_process_private {
@@ -132,7 +133,7 @@ struct pmd_process_private {
  * @param proc_private
  *   device process private data
  */
-void memif_free_regions(struct pmd_process_private *proc_private);
+void memif_free_regions(struct rte_eth_dev *dev);
 
 /**
  * Finalize connection establishment process. Map shared memory file