From: "Dai, Wei" <wei.dai@intel.com>
To: "alexz@att.com" <alexz@att.com>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>,
"Zhang, Helin" <helin.zhang@intel.com>,
"Lu, Wenzhuo" <wenzhuo.lu@intel.com>,
"Iremonger, Bernard" <bernard.iremonger@intel.com>
Subject: Re: [PATCH v4] net/ixgbe: ping VF when PF status changes
Date: Fri, 31 Mar 2017 00:47:40 +0000 [thread overview]
Message-ID: <49759EB36A64CF4892C1AFEC9231E8D650A23F62@PGSMSX101.gar.corp.intel.com> (raw)
In-Reply-To: <1490907954-34791-1-git-send-email-alexz@att.com>
Hi, Alexz
Thanks for your quick reponse.
Hi, Wenzhuo
Would you please review it again and add your acknowledgement if it is OK for you.
> Subject: [PATCH v4] net/ixgbe: ping VF when PF status changes
>
> From: Alex Zelezniak <alexz@att.com>
>
> v4:
> * Removed duplicate line
>
> v3:
> * Added 17.05 block to rte_pmd_ixgbe_version.map file
>
> v2:
> * Removed trailing spaces
>
> v1:
> * Implements function used by application managing PF to inform VF when link
> status changes
>
> Signed-off-by: Alex Zelezniak <alexz@att.com>
Acked-by: Wei Dai <wei.dai@intel.com>
> ---
> drivers/net/ixgbe/ixgbe_ethdev.c | 31
> +++++++++++++++++++++++++++++
> drivers/net/ixgbe/rte_pmd_ixgbe.h | 14 +++++++++++++
> drivers/net/ixgbe/rte_pmd_ixgbe_version.map | 6 ++++++
> 3 files changed, 51 insertions(+)
>
> diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c
> b/drivers/net/ixgbe/ixgbe_ethdev.c
> index 34bd681..a427a3d 100644
> --- a/drivers/net/ixgbe/ixgbe_ethdev.c
> +++ b/drivers/net/ixgbe/ixgbe_ethdev.c
> @@ -4898,6 +4898,37 @@ static void ixgbevf_set_vfta_all(struct rte_eth_dev
> *dev, bool on)
> return new_val;
> }
>
> +int
> +rte_pmd_ixgbe_ping_vf(uint8_t port, uint16_t vf) {
> + struct ixgbe_hw *hw;
> + struct ixgbe_vf_info *vfinfo;
> + struct rte_eth_dev *dev;
> + struct rte_pci_device *pci_dev;
> + uint32_t ctrl;
> +
> + RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
> +
> + dev = &rte_eth_devices[port];
> + pci_dev = IXGBE_DEV_TO_PCI(dev);
> +
> + if (!is_device_supported(dev, &rte_ixgbe_pmd))
> + return -ENOTSUP;
> +
> + if (vf >= pci_dev->max_vfs)
> + return -EINVAL;
> +
> + hw = IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
> + vfinfo = *(IXGBE_DEV_PRIVATE_TO_P_VFDATA(dev->data->dev_private));
> +
> + ctrl = IXGBE_PF_CONTROL_MSG;
> + if (vfinfo[vf].clear_to_send)
> + ctrl |= IXGBE_VT_MSGTYPE_CTS;
> +
> + ixgbe_write_mbx(hw, &ctrl, 1, vf);
> +
> + return 0;
> +}
>
> int
> rte_pmd_ixgbe_set_vf_vlan_anti_spoof(uint8_t port, uint16_t vf, uint8_t on)
> diff --git a/drivers/net/ixgbe/rte_pmd_ixgbe.h
> b/drivers/net/ixgbe/rte_pmd_ixgbe.h
> index 4d7b507..cdb747e 100644
> --- a/drivers/net/ixgbe/rte_pmd_ixgbe.h
> +++ b/drivers/net/ixgbe/rte_pmd_ixgbe.h
> @@ -42,6 +42,20 @@
> #include <rte_ethdev.h>
>
> /**
> + * Notify VF when PF link status changes.
> + *
> + * @param port
> + * The port identifier of the Ethernet device.
> + * @param vf
> + * VF id.
> + * @return
> + * - (0) if successful.
> + * - (-ENODEV) if *port* invalid.
> + * - (-EINVAL) if *vf* invalid.
> + */
> +int rte_pmd_ixgbe_ping_vf(uint8_t port, uint16_t vf);
> +
> +/**
> * Set the VF MAC address.
> *
> * @param port
> diff --git a/drivers/net/ixgbe/rte_pmd_ixgbe_version.map
> b/drivers/net/ixgbe/rte_pmd_ixgbe_version.map
> index a992dfd..2c7512d 100644
> --- a/drivers/net/ixgbe/rte_pmd_ixgbe_version.map
> +++ b/drivers/net/ixgbe/rte_pmd_ixgbe_version.map
> @@ -31,3 +31,9 @@ DPDK_17.02 {
> rte_pmd_ixgbe_set_vf_tx;
> rte_pmd_ixgbe_set_vf_vlan_filter;
> } DPDK_16.11;
> +
> +DPDK_17.05 {
> + global:
> +
> + rte_pmd_ixgbe_ping_vf;
> +} DPDK_17.02;
> --
> 1.9.1
next prev parent reply other threads:[~2017-03-31 0:48 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-22 17:32 [PATCH] net/ixgbe: notify VF when PF link status changes alexz
2017-03-29 11:10 ` Iremonger, Bernard
2017-03-29 20:52 ` [PATCH v2] ping VF when PF " alexz
2017-03-29 21:59 ` Iremonger, Bernard
2017-03-30 12:33 ` [PATCH v3] net/ixgbe: " alexz
2017-03-30 13:09 ` Lu, Wenzhuo
2017-03-30 16:50 ` Dai, Wei
2017-03-30 21:05 ` [PATCH v4] " alexz
2017-03-31 0:47 ` Dai, Wei [this message]
2017-03-31 1:00 ` Lu, Wenzhuo
2017-03-31 10:26 ` Ferruh Yigit
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=49759EB36A64CF4892C1AFEC9231E8D650A23F62@PGSMSX101.gar.corp.intel.com \
--to=wei.dai@intel.com \
--cc=alexz@att.com \
--cc=bernard.iremonger@intel.com \
--cc=dev@dpdk.org \
--cc=helin.zhang@intel.com \
--cc=konstantin.ananyev@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.