From patchwork Sun Jun 12 15:30:38 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rami Rosen X-Patchwork-Id: 13481 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 647C637B6; Sun, 12 Jun 2016 17:30:45 +0200 (CEST) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 8896E37B3 for ; Sun, 12 Jun 2016 17:30:43 +0200 (CEST) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga103.jf.intel.com with ESMTP; 12 Jun 2016 08:30:43 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.26,462,1459839600"; d="scan'208";a="996072496" Received: from fmsmsx106.amr.corp.intel.com ([10.18.124.204]) by orsmga002.jf.intel.com with ESMTP; 12 Jun 2016 08:30:42 -0700 Received: from fmsmsx114.amr.corp.intel.com (10.18.116.8) by FMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP Server (TLS) id 14.3.248.2; Sun, 12 Jun 2016 08:30:42 -0700 Received: from hasmsx107.ger.corp.intel.com (10.184.198.27) by FMSMSX114.amr.corp.intel.com (10.18.116.8) with Microsoft SMTP Server (TLS) id 14.3.248.2; Sun, 12 Jun 2016 08:30:41 -0700 Received: from HASMSX110.ger.corp.intel.com ([169.254.11.140]) by hasmsx107.ger.corp.intel.com ([169.254.6.143]) with mapi id 14.03.0248.002; Sun, 12 Jun 2016 18:30:38 +0300 From: "Rosen, Rami" To: "thiagocmartinsc@gmail.com" , "Yigit, Ferruh" CC: dev , "Rosen, Rami" Thread-Topic: [dpdk-dev] Can't build DPDK-16.04 on CentOS 6.8 Thread-Index: AQHRvEFh1r0aXULBY0y0g9sROOdax5/XXysAgABME4CADlh8cA== Date: Sun, 12 Jun 2016 15:30:38 +0000 Message-ID: <9B0331B6EBBD0E4684FBFAEDA55776F92CD5CBC7@HASMSX110.ger.corp.intel.com> References: <57515FB0.3040800@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMWM2N2IyYTYtOTZlNi00NjUzLWE5ZTEtNWRiNmZjNjFkNzQyIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6IlBNWTdLVHhmWkM2K3NKc3EyaUZaQWJTeGIyVW9pRGtncjFUbHh6bjhLSTA9In0= x-ctpclassification: CTP_IC x-originating-ip: [10.184.70.11] MIME-Version: 1.0 Subject: Re: [dpdk-dev] Can't build DPDK-16.04 on CentOS 6.8 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi Thiago, > Any clue? Sure. This is the reason: in dpdk-16.04/lib/librte_eal/linuxapp/igb_uio we have: .... #ifndef PCI_MSIX_ENTRY_SIZE #define PCI_MSIX_ENTRY_SIZE 16 #define PCI_MSIX_ENTRY_LOWER_ADDR 0 #define PCI_MSIX_ENTRY_UPPER_ADDR 4 #define PCI_MSIX_ENTRY_DATA 8 #define PCI_MSIX_ENTRY_VECTOR_CTRL 12 #define PCI_MSIX_ENTRY_CTRL_MASKBIT 1 #endif ... The root cause of the problem is due to that in CentOS 6.8, PCI_MSIX_ENTRY_SIZE is defined; this causes *avoiding* having the PCI_MSIX_ENTRY_CTRL_MASKBIT definition as shown above. The definition of PCI_MSIX_ENTRY_SIZE is due to the following patch, which was introduced in CentOS 6.8, which moved PCI_MSIX_ENTRY_SIZE from the inner drivers/pci/msi.h header file into include/linux/pci_regs.h, The linux/pci_regs.h is included in the pci.h header, which is used by the igb_uio.c, which failed in compilation. "PATCH 1/8] PCI: MSI: Move MSI-X entry definition to pci_regs.h" #define PCI_MSIX_FLAGS_BIRMASK (7 << 0) +/* MSI-X entry's format */ +#define PCI_MSIX_ENTRY_SIZE 16 .... http://linux-pci.vger.kernel.narkive.com/cZquopIw/patch-1-8-pci-msi-move-msi-x-entry-definition-to-pci-regs-h See also: rpm -qp --changelog kernel-devel-2.6.32-642.el6.x86_64.rpm | grep "Move MSI-X entry" warning: kernel-devel-2.6.32-642.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY - [pci] msi: Move MSI-X entry definition to pci_regs.h (Myron Stowe) [1288629 A proper patch which checks kernel version can fix it. Regards, Rami Rosen Intel Corporation --- a/drivers/pci/msi.h +++ b/drivers/pci/msi.h @@ -6,12 +6,6 @@ #ifndef MSI_H #define MSI_H -#define PCI_MSIX_ENTRY_SIZE 16 ... ... ... diff --git a/include/linux/pci_regs.h b/include/linux/pci_regs.h index 455b9cc..acfc224 100644 --- a/include/linux/pci_regs.h +++ b/include/linux/pci_regs.h @@ -307,6 +307,13 @@ #define PCI_MSIX_FLAGS_MASKALL (1 << 14)