From: Bernard Iremonger <bernard.iremonger@intel.com>
To: dev@dpdk.org, rahul.r.shah@intel.com, wenzhuo.lu@intel.com,
az5157@att.com, jerin.jacob@caviumnetworks.com
Cc: Bernard Iremonger <bernard.iremonger@intel.com>
Subject: [dpdk-dev] [PATCH v5 01/13] librte_ether: modify internal callback function
Date: Thu, 6 Oct 2016 12:26:19 +0100 [thread overview]
Message-ID: <1475753191-17391-2-git-send-email-bernard.iremonger@intel.com> (raw)
In-Reply-To: <1475592734-22355-1-git-send-email-bernard.iremonger@intel.com>
add parameter to the _rte_eth_dev_callback_process function.
Adding a parameter to this function allows passing information
to the application when an eth device event occurs such as
a VF to PF message.
This allows the application to decide if a particular function
is permitted.
Signed-off-by: Alex Zelezniak <az5157@att.com>
Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
---
lib/librte_ether/rte_ethdev.c | 5 ++++-
lib/librte_ether/rte_ethdev.h | 7 ++++++-
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
index c517e88..416ca77 100644
--- a/lib/librte_ether/rte_ethdev.c
+++ b/lib/librte_ether/rte_ethdev.c
@@ -2508,7 +2508,7 @@ rte_eth_dev_callback_unregister(uint8_t port_id,
void
_rte_eth_dev_callback_process(struct rte_eth_dev *dev,
- enum rte_eth_event_type event)
+ enum rte_eth_event_type event, void *param)
{
struct rte_eth_dev_callback *cb_lst;
struct rte_eth_dev_callback dev_cb;
@@ -2519,6 +2519,9 @@ _rte_eth_dev_callback_process(struct rte_eth_dev *dev,
continue;
dev_cb = *cb_lst;
cb_lst->active = 1;
+ if (param != NULL)
+ dev_cb.cb_arg = (void *) param;
+
rte_spinlock_unlock(&rte_eth_dev_cb_lock);
dev_cb.cb_fn(dev->data->port_id, dev_cb.event,
dev_cb.cb_arg);
diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h
index 7218b6f..9fb34ca 100644
--- a/lib/librte_ether/rte_ethdev.h
+++ b/lib/librte_ether/rte_ethdev.h
@@ -3026,6 +3026,7 @@ enum rte_eth_event_type {
/**< queue state event (enabled/disabled) */
RTE_ETH_EVENT_INTR_RESET,
/**< reset interrupt event, sent to VF on PF reset */
+ RTE_ETH_EVENT_VF_MBOX, /**< PF mailbox processing callback */
RTE_ETH_EVENT_MAX /**< max value of this enum */
};
@@ -3085,12 +3086,16 @@ int rte_eth_dev_callback_unregister(uint8_t port_id,
* Pointer to struct rte_eth_dev.
* @param event
* Eth device interrupt event type.
+ * @param param
+ * Parameter to pass back to user application.
+ * Allows the user application to decide if a particular function
+ * is permitted.
*
* @return
* void
*/
void _rte_eth_dev_callback_process(struct rte_eth_dev *dev,
- enum rte_eth_event_type event);
+ enum rte_eth_event_type event, void *param);
/**
* When there is no rx packet coming in Rx Queue for a long time, we can
--
2.9.0
next prev parent reply other threads:[~2016-10-06 11:26 UTC|newest]
Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-30 15:45 [dpdk-dev] [PATCH v3 0/2] add callbacks for VF management Bernard Iremonger
2016-09-30 15:45 ` [dpdk-dev] [PATCH v3 1/2] librte_ether: add internal callback functions Bernard Iremonger
2016-10-02 9:12 ` Stephen Hemminger
2016-10-03 15:29 ` Iremonger, Bernard
2016-09-30 15:45 ` [dpdk-dev] [PATCH v3 2/2] net/ixgbe: add callback to user app on VF to PF mbox msg Bernard Iremonger
2016-10-04 14:52 ` [dpdk-dev] [PATCH v4 0/2] add callbacks for VF management Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 00/13] modify callback " Bernard Iremonger
2016-10-06 16:48 ` [dpdk-dev] [PATCH v6 0/2] " Bernard Iremonger
2016-10-07 16:46 ` [dpdk-dev] [PATCH v7 " Bernard Iremonger
2016-10-07 22:52 ` Thomas Monjalon
2016-10-10 14:34 ` [dpdk-dev] [PATCH v8 " Bernard Iremonger
2016-10-14 0:07 ` Thomas Monjalon
2016-10-10 14:34 ` [dpdk-dev] [PATCH v8 1/2] librte_ether: modify internal callback function Bernard Iremonger
2016-10-10 14:34 ` [dpdk-dev] [PATCH v8 2/2] net/ixgbe: add callback to user app on VF to PF mbox msg Bernard Iremonger
2016-10-12 15:03 ` [dpdk-dev] [PATCH v8 0/2] add API's for VF management Bernard Iremonger
2016-10-12 17:54 ` [dpdk-dev] [PATCH v9 " Bernard Iremonger
2016-10-13 13:47 ` Bruce Richardson
2016-10-12 17:54 ` [dpdk-dev] [PATCH v9 1/2] net/ixgbe: " Bernard Iremonger
2016-10-12 17:54 ` [dpdk-dev] [PATCH v9 2/2] app/test_pmd: add tests for new API's Bernard Iremonger
2016-10-12 15:03 ` [dpdk-dev] [PATCH v8 1/2] net/ixgbe: add API's for VF management Bernard Iremonger
2016-10-12 15:03 ` [dpdk-dev] [PATCH v8 2/2] app/test_pmd: add tests for new API's Bernard Iremonger
2016-10-12 15:11 ` Thomas Monjalon
2016-10-12 15:27 ` Iremonger, Bernard
2016-10-12 15:36 ` Thomas Monjalon
2016-10-12 15:48 ` Iremonger, Bernard
2016-10-12 16:06 ` Thomas Monjalon
2016-10-12 16:21 ` Iremonger, Bernard
2016-10-12 16:31 ` Thomas Monjalon
2016-10-12 16:50 ` Iremonger, Bernard
2016-10-12 17:20 ` Iremonger, Bernard
2016-10-07 16:46 ` [dpdk-dev] [PATCH v7 1/2] librte_ether: modify internal callback function Bernard Iremonger
2016-10-07 16:46 ` [dpdk-dev] [PATCH v7 2/2] net/ixgbe: add callback to user app on VF to PF mbox msg Bernard Iremonger
2016-10-07 22:44 ` Thomas Monjalon
2016-10-10 14:31 ` Iremonger, Bernard
2016-10-06 16:48 ` [dpdk-dev] [PATCH v6 1/2] librte_ether: modify internal callback function Bernard Iremonger
2016-10-07 12:29 ` Thomas Monjalon
2016-10-07 16:57 ` Iremonger, Bernard
2016-10-06 16:48 ` [dpdk-dev] [PATCH v6 2/2] net/ixgbe: add callback to user app on VF to PF mbox msg Bernard Iremonger
2016-10-07 12:14 ` Thomas Monjalon
2016-10-07 12:19 ` Iremonger, Bernard
2016-10-06 11:26 ` Bernard Iremonger [this message]
2016-10-06 12:56 ` [dpdk-dev] [PATCH v5 01/13] librte_ether: modify internal callback function Thomas Monjalon
2016-10-06 14:33 ` Iremonger, Bernard
2016-10-06 14:56 ` Thomas Monjalon
2016-10-06 15:32 ` Iremonger, Bernard
2016-10-06 15:41 ` Thomas Monjalon
2016-10-06 15:45 ` Iremonger, Bernard
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 02/13] net/ixgbe: add callback to user app on VF to PF mbox msg Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 03/13] app/test: add parameter to callback process function Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 04/13] net/bonding: " Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 05/13] net/e1000: " Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 06/13] net/i40e: update call " Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 07/13] net/mlx4: add parameter " Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 08/13] net/mlx5: " Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 09/13] net/nfp: " Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 10/13] net/thunderx: " Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 11/13] net/vhost: " Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 12/13] net/virtio: " Bernard Iremonger
2016-10-06 11:26 ` [dpdk-dev] [PATCH v5 13/13] net/enic: " Bernard Iremonger
2016-10-04 14:52 ` [dpdk-dev] [PATCH v4 1/2] librte_ether: add internal callback functions Bernard Iremonger
2016-10-05 16:10 ` Thomas Monjalon
2016-10-05 17:04 ` Iremonger, Bernard
2016-10-05 17:19 ` Thomas Monjalon
2016-10-04 14:52 ` [dpdk-dev] [PATCH v4 2/2] net/ixgbe: add callback to user app on VF to PF mbox msg Bernard Iremonger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1475753191-17391-2-git-send-email-bernard.iremonger@intel.com \
--to=bernard.iremonger@intel.com \
--cc=az5157@att.com \
--cc=dev@dpdk.org \
--cc=jerin.jacob@caviumnetworks.com \
--cc=rahul.r.shah@intel.com \
--cc=wenzhuo.lu@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).