[dpdk-dev] [PATCH v2 1/6] bonding: add spinlock to rx and tx queues
Bernard Iremonger
bernard.iremonger at intel.com
Thu May 26 18:38:42 CEST 2016
Signed-off-by: Bernard Iremonger <bernard.iremonger at intel.com>
---
drivers/net/bonding/rte_eth_bond_pmd.c | 4 ++++
drivers/net/bonding/rte_eth_bond_private.h | 4 +++-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c
index 129f04b..2e624bb 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -1676,6 +1676,8 @@ bond_ethdev_rx_queue_setup(struct rte_eth_dev *dev, uint16_t rx_queue_id,
if (bd_rx_q == NULL)
return -1;
+ rte_spinlock_init(&bd_rx_q->lock);
+
bd_rx_q->queue_id = rx_queue_id;
bd_rx_q->dev_private = dev->data->dev_private;
@@ -1701,6 +1703,8 @@ bond_ethdev_tx_queue_setup(struct rte_eth_dev *dev, uint16_t tx_queue_id,
if (bd_tx_q == NULL)
return -1;
+ rte_spinlock_init(&bd_tx_q->lock);
+
bd_tx_q->queue_id = tx_queue_id;
bd_tx_q->dev_private = dev->data->dev_private;
diff --git a/drivers/net/bonding/rte_eth_bond_private.h b/drivers/net/bonding/rte_eth_bond_private.h
index 8312397..b6abcba 100644
--- a/drivers/net/bonding/rte_eth_bond_private.h
+++ b/drivers/net/bonding/rte_eth_bond_private.h
@@ -1,7 +1,7 @@
/*-
* BSD LICENSE
*
- * Copyright(c) 2010-2015 Intel Corporation. All rights reserved.
+ * Copyright(c) 2010-2016 Intel Corporation. All rights reserved.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -76,6 +76,7 @@ struct bond_rx_queue {
/**< Copy of RX configuration structure for queue */
struct rte_mempool *mb_pool;
/**< Reference to mbuf pool to use for RX queue */
+ rte_spinlock_t lock;
};
struct bond_tx_queue {
@@ -87,6 +88,7 @@ struct bond_tx_queue {
/**< Number of TX descriptors available for the queue */
struct rte_eth_txconf tx_conf;
/**< Copy of TX configuration structure for queue */
+ rte_spinlock_t lock;
};
/** Bonded slave devices structure */
--
2.6.3
More information about the dev
mailing list