From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-f49.google.com (mail-wm0-f49.google.com [74.125.82.49]) by dpdk.org (Postfix) with ESMTP id AFF3C1396 for ; Thu, 18 Aug 2016 18:05:52 +0200 (CEST) Received: by mail-wm0-f49.google.com with SMTP id q128so2597081wma.1 for ; Thu, 18 Aug 2016 09:05:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind-com.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:mail-followup-to:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=pB4Q12FIcVW3iEV6A0ojhUBRr0P3rAuVcLNlRB5HyOY=; b=yCU5dJm+5ITVPfXH9UNbwoT6qX89g39RO30WdqqSCkInKzJlmIR4hyHO/POOv5agq0 enRzIybBh+kl5RuWj8AMHZ7nfmjspC8MZWW91/qm/DFFmD3PPQZu+xOR/m1AF2bqEifr dfTa/NZWuJgPI4y4wRI1V3UyTnxyTp54Gs+Tbc5Gw3YeKkNk7LFOJGvVLqIhBwby6OLQ 0SDXHQHplJev9fToGz4POkUuYuXabP0WA/AhW4lDGeyCyupQxVbXYjtc1LZ74o3LVRTn 33uqv839oXtOWfeXDsanTu5KMOEE47s+2oh3ivnzObSPrbap90YKb+3GP68yVyxBX0Jt bY0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:cc:subject:message-id :mail-followup-to:references:mime-version:content-disposition :content-transfer-encoding:in-reply-to; bh=pB4Q12FIcVW3iEV6A0ojhUBRr0P3rAuVcLNlRB5HyOY=; b=ZXbUM1a55EJe6sKbcC5C5IVY6Ly8FJWQaWIN12Np5NcLzRuJhY8+hYAEJORWCeIKjb //CLqiwGojSVTV2gW8FCmWeDxt7ZV4H8bSJ7ECqE+oBl3w7JI6C2EEp3fIWJmQIU3RWe yuiMMc9488dnDw7/O+WfaP93lMaFNCXxk56wf7Z4RYYmsRle/5X1NmwM9oz/mqBqjPJW e6EyX7itpp5B291vCg1dMSLSf9UwmZzJ9ApnGP9S49KW/btF641a27sZdQJje78MGLge g3buxlQ19gJurm1MPQ5gE0n0JMDCdewc7swzApleJRkgqFn1xFofdjZKvhhWKtmM1EdL 62Sw== X-Gm-Message-State: AEkooutoIk0rYgsyS6f0AItpzor/M6BRjHleU5OsN8EhV5ssZl0aqAHWf7ujyxjf/MbNQz4P X-Received: by 10.28.141.6 with SMTP id p6mr264102wmd.110.1471536352397; Thu, 18 Aug 2016 09:05:52 -0700 (PDT) Received: from 6wind.com (guy78-3-82-239-227-177.fbx.proxad.net. [82.239.227.177]) by smtp.gmail.com with ESMTPSA id e5sm224561wma.13.2016.08.18.09.05.51 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 18 Aug 2016 09:05:51 -0700 (PDT) Date: Thu, 18 Aug 2016 18:05:46 +0200 From: Adrien Mazarguil To: george.dit@gmail.com Cc: dev@dpdk.org Message-ID: <20160818160546.GS31423@6wind.com> Mail-Followup-To: george.dit@gmail.com, dev@dpdk.org References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Subject: Re: [dpdk-dev] ConnectX4 100GbE - Compilation problem X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Aug 2016 16:05:52 -0000 Hi George, On Thu, Aug 18, 2016 at 05:41:38PM +0200, george.dit@gmail.com wrote: > Hi, > > I have a single port Mellanox ConnectX 4 100GbE NIC and I want to test its > Rx/Tx capabilites using DPDK. > My system runs a Linux kernel 4.4 compiled from sources. > > I found the PMD driver for this NIC as provided by Mellanox here > > . > Following this > > guideline, I put my NIC in Ethernet mode, configured the 3 options > regarding mlx5 in the config/common_linuxapp file and applied 'make install > T=x86_64-native-linuxapp-gcc'. Please note this is a third party package maintained by Mellanox, therefore this mailing list is not the right place to discuss related errors, unless they can be reproduced with a version downloaded from dpdk.org. > Then, I stumbled upon a compilation problem in the mlx4 module. > The compiler's output is as follows: > > == Build drivers/net/mlx4 > CC mlx4.o > In file included from /usr/include/linux/if.h:31:0, > from /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:57: > /usr/include/linux/hdlc/ioctl.h:73:14: error: ‘IFNAMSIZ’ undeclared here > (not in a function) > char master[IFNAMSIZ]; /* Name of master FRAD device */ > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:612:53: error: ‘struct > ifreq’ declared inside parameter list [-Werror] > priv_ifreq(const struct priv *priv, int req, struct ifreq *ifr) > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:612:53: error: its scope is > only this definition or declaration, which is probably not what you want > [-Werror] > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c: In function ‘priv_ifreq’: > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:619:32: error: dereferencing > pointer to incomplete type ‘struct ifreq’ > if (priv_get_ifname(priv, &ifr->ifr_name) == 0) > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c: In function ‘rxq_setup’: > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:3735:29: error: unused > parameter ‘inactive’ [-Werror=unused-parameter] > unsigned int socket, int inactive, const struct rte_eth_rxconf *conf, > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c: In function > ‘mlx4_link_update_unlocked’: > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:4712:15: error: storage size > of ‘ifr’ isn’t known > struct ifreq ifr; > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:4724:43: error: ‘IFF_UP’ > undeclared (first use in this function) > dev_link.link_status = ((ifr.ifr_flags & IFF_UP) && > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:4724:43: note: each > undeclared identifier is reported only once for each function it appears in > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:4725:22: error: > ‘IFF_RUNNING’ undeclared (first use in this function) > (ifr.ifr_flags & IFF_RUNNING)); > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:4712:15: error: unused > variable ‘ifr’ [-Werror=unused-variable] > struct ifreq ifr; > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c: In function > ‘mlx4_dev_get_flow_ctrl’: > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:4880:15: error: storage size > of ‘ifr’ isn’t known > struct ifreq ifr; > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:4880:15: error: unused > variable ‘ifr’ [-Werror=unused-variable] > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c: In function > ‘mlx4_dev_set_flow_ctrl’: > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:4930:15: error: storage size > of ‘ifr’ isn’t known > struct ifreq ifr; > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:4930:15: error: unused > variable ‘ifr’ [-Werror=unused-variable] > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c: In function ‘priv_get_mac’: > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:5184:15: error: storage size > of ‘request’ isn’t known > struct ifreq request; > ^ > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:5184:15: error: unused > variable ‘request’ [-Werror=unused-variable] > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c: In function > ‘mlx4_pci_devinit’: > /opt/MLNX_DPDK_2.2_2.7/drivers/net/mlx4/mlx4.c:5725:25: error: ‘IFF_UP’ > undeclared (first use in this function) > priv_set_flags(priv, ~IFF_UP, IFF_UP); > ^ > cc1: all warnings being treated as errors > /opt/MLNX_DPDK_2.2_2.7/mk/internal/rte.compile-pre.mk:126: recipe for > target 'mlx4.o' failed > > Iwould appreciate any suggestions and guidance. Well fortunately these errors are also present in v2.2.0 and should have been addressed since v16.07 by the following commit: http://dpdk.org/browse/dpdk/commit/?id=d06c608c013c36711e7a693b3fece68a93ae4369 You can either upgrade to v16.07, back-port this commit yourself or wait for an update from Mellanox. -- Adrien Mazarguil 6WIND