[dpdk-dev] [PATCH 07/13] pci: replace probe and remove handlers with rte_driver
Shreyansh Jain
shreyansh.jain at nxp.com
Fri Dec 9 05:59:40 CET 2016
Hello Ferruh,
As always, thanks for your checks.
> -----Original Message-----
> From: Ferruh Yigit [mailto:ferruh.yigit at intel.com]
> Sent: Thursday, December 08, 2016 11:21 PM
> To: Shreyansh Jain <shreyansh.jain at nxp.com>; dev at dpdk.org
> Cc: thomas.monjalon at 6wind.com; david.marchand at 6wind.com; Adrien Mazarguil
> <adrien.mazarguil at 6wind.com>
> Subject: Re: [dpdk-dev] [PATCH 07/13] pci: replace probe and remove handlers
> with rte_driver
>
> Hi Shreyansh,
>
> On 12/4/2016 10:11 AM, Shreyansh Jain wrote:
> > rte_pci_driver probe/remove callback are replaced with the rte_driver
> > based probe/remove. This patch changes all the PCI drivers which reference
> > rte_pci_driver->probe/remove.
> >
> > rte_pci_driver continues to have probe/remove callback which would be used
> > once eth_driver is removed in later patches.
> >
> > Only changes to PCI are done. VDEV changes require a different
> > model because of arguments being passed to vdev->probe/remove.
> >
> > Signed-off-by: Shreyansh Jain <shreyansh.jain at nxp.com>
> > ---
> > drivers/net/bnx2x/bnx2x_ethdev.c | 12 ++++++++----
> > drivers/net/bnxt/bnxt_ethdev.c | 6 ++++--
> > drivers/net/cxgbe/cxgbe_ethdev.c | 6 ++++--
> > drivers/net/e1000/em_ethdev.c | 6 ++++--
> > drivers/net/e1000/igb_ethdev.c | 12 ++++++++----
> > drivers/net/ena/ena_ethdev.c | 6 ++++--
> > drivers/net/enic/enic_ethdev.c | 6 ++++--
> > drivers/net/fm10k/fm10k_ethdev.c | 6 ++++--
> > drivers/net/i40e/i40e_ethdev.c | 6 ++++--
> > drivers/net/i40e/i40e_ethdev_vf.c | 6 ++++--
> > drivers/net/ixgbe/ixgbe_ethdev.c | 12 ++++++++----
> > drivers/net/mlx4/mlx4.c | 6 ++++--
>
> Generating compile error:
> .../net/mlx4/mlx4.c:5913:13: error: subobject initialization overrides
> initialization of other fields within its enclosing subobject
> [-Werror,-Winitializer-overrides]
> .driver = {
> ^
> .../net/mlx4/mlx4.c:5909:13: note: previous initialization is here
> .driver = {
> ^
>
>
> > drivers/net/mlx5/mlx5.c | 4 +++-
>
> .../net/mlx5/mlx5.c:736:13: error: subobject initialization overrides
> initialization of other fields within its enclosing subobject
> [-Werror,-Winitializer-overrides]
> .driver = {
> ^
> .../net/mlx5/mlx5.c:732:13: note: previous initialization is here
> .driver = {
> ^
>
Yes, David Marchand also highlighted this another comment. Somehow I messed up the MLX changes. And just like the last time, I forgot to change my environment configuration to enable it before sending the patches.
>
> > drivers/net/nfp/nfp_net.c | 6 ++++--
> > drivers/net/qede/qede_ethdev.c | 16 ++++++++++------
> > drivers/net/szedata2/rte_eth_szedata2.c | 6 ++++--
> > drivers/net/virtio/virtio_ethdev.c | 4 ++--
> > drivers/net/vmxnet3/vmxnet3_ethdev.c | 6 ++++--
>
> Following drivers seems missing:
> drivers/net/thunderx/nicvf_ethdev.c
I will fix this as well in v2.
>
> Also new added drivers/net/sfc/sfc_ethdev.c, but since sfc is not merged
> to main branch yet, perhaps fix may wait your patches to be applied first.
>
> > lib/librte_eal/common/eal_common_pci.c | 10 ++++++++--
> > lib/librte_eal/common/include/rte_dev.h | 12 ++++++++++++
> > lib/librte_ether/rte_ethdev.c | 16 ++++++++++++----
> > lib/librte_ether/rte_ethdev.h | 6 +++---
> > 22 files changed, 122 insertions(+), 54 deletions(-)
> >
>
> Also getting following with mlx5:
>
> In file included from
> .../x86_64-native-linuxapp-gcc/include/rte_mbuf.h:57:0,
> from .../x86_64-native-linuxapp-gcc/include/rte_ether.h:52,
> from .../drivers/net/mlx5/mlx5_trigger.c:38:
> /usr/include/infiniband/verbs.h: In function 'verbs_get_device':
> .../x86_64-native-linuxapp-gcc/include/rte_common.h:350:40: error:
> initialization discards 'const' qualifier from pointer target type
> [-Werror=discarded-qualifiers]
> typeof(((type *)0)->member) *_ptr = (ptr); \
>
>
> <...>
I will check MLX* again.
Thanks for your inputs.
-
Shreyansh
More information about the dev
mailing list