From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0068.outbound.protection.outlook.com [104.47.36.68]) by dpdk.org (Postfix) with ESMTP id 859AC1B97E for ; Thu, 10 May 2018 11:19:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=VeBVTdraUcLOpK4EFej/UlCxzwe/NzxWs80qEimGUTY=; b=a1J5IJLUlOE9wSEJA9Hsi3oOXJmbuKDlljiNiSe6e6YQSMoXJiPfpeNz4gqVJzugGiK4u0UlUwY4rh9hb+40q/NOm9oeQRpgBW2B34i/I+MNrxM41uhMgVkPqTVsJOOWyb/cCO/4WIfouP5g8WLRftwreGyhxd2SG3/ltspMwY0= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.JacobKollanukkaran@cavium.com; Received: from jerin (115.113.156.3) by BN3PR07MB2516.namprd07.prod.outlook.com (2a01:111:e400:7bbf::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.755.16; Thu, 10 May 2018 09:19:52 +0000 Date: Thu, 10 May 2018 14:49:37 +0530 From: Jerin Jacob To: Andy Green Cc: dev@dpdk.org Message-ID: <20180510091936.GB26838@jerin> References: <152591991920.119328.14523975619615362920.stgit@localhost.localdomain> <20180510061226.GA12718@jerin> <2aa359ce-9441-7c9c-4492-8546bd6568ea@warmcat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <2aa359ce-9441-7c9c-4492-8546bd6568ea@warmcat.com> User-Agent: Mutt/1.9.5 (2018-04-13) X-Originating-IP: [115.113.156.3] X-ClientProxiedBy: BM1PR0101CA0053.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:19::15) To BN3PR07MB2516.namprd07.prod.outlook.com (2a01:111:e400:7bbf::13) X-MS-PublicTrafficType: Email X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(5600026)(2017052603328)(7153060)(7193020); SRVR:BN3PR07MB2516; X-Microsoft-Exchange-Diagnostics: 1; BN3PR07MB2516; 3:DTYHZau977z9mNFbRjZWDcQ5pZ6SXZxEs+czov9AoUFHVUy4CbIQE6qqrRery18ZbTDaPqdBobDn7q+pB5A2xJh7RJNk7wNo9CIBgOUbiqzZjtHO/1AquJV7dqeYKuE2tGM+4ySFwjWi3VLg+zUb1rIj0RMgFeHhAZWZwdyLJFsXa/IFK9bwio2GYanzQ57q+sq9SHA3wygdJO8sLQLx+w6zYljyuChPHUK7n/uqFgI3XKS1DQkoBptqOUE0MpOu; 25:IUE+m7sXGSH0xClB9hJ2xCa7d9DSI1SuEcrG4QaFJgO2EjwzlstpNetF9BA2XeZCx1i+R6w1mN6o0p35lmaa64Ofi4DzgxU1jzvYqa8LJ9uB+eh25gG/VsqacyOIXW+fGwOVwhcPn+HY+j34whA8GNbbMnORQH1fGKyVF0CpnP9qF3hhN8138FpaBvVEnVWpRGVsFya4GJnRrWyr6uFJO5TazZz1b2hZukVrYsmQKj6xWuV7Cgkdq7OKxDh47jMiHDGDzUIwC/nCfHc+y4rEPlZRJut5+9U9vSYsOukSSIk2z3sm5Q2I8UrCLk4r/OMGyaZ8KhqW9AlcKiNFtu0NoA==; 31:DkTIGW+5sjdLBMHfg8YiGO0kQH9vQFmQE3N1BrSbPTYwmqOscgs+51hzA5G9vhhGsyYoW/8/kvqQ9+RbKgvPowpeybHmMjGCiCA3KKA/P1ZJGzOWjo87YPaKnRTvY7zJnmZCzUxWbvOFBuOyYVJK/jduxDaYr0DRjfXGT1JzhT0xO4WxXYjH9jzjuZOvp7dNnkYtGbbIJ+eCPWt881hWuRED2Ay1IJrBmusHxYAraX0= X-MS-TrafficTypeDiagnostic: BN3PR07MB2516: X-Microsoft-Exchange-Diagnostics: 1; BN3PR07MB2516; 20:PMKuWY3sqwD7IUhk3jp0pwhB3kNaQ0+JKrVc5w3FNw8yRoT9LHYeHHx97UhPZadr3VyM7pgPbAWmtKg/fjeaJJF/1x2jSs55r3PdR+wrSDqQArG5N+Z46mjAmabG9++uMcZzwYDP+uTaiv/UZLcjUX/TVO7DXKamCgcuPF3kiFfNAmMw639Ia9ocnnynFU3QF5HeiblXqo6iHDiqz3S3RZ5oIgx7lwhFSPQ9bYdw6qHjBHTcw2f5TjH7tOo43y7aApYXrwsDCHv/01F0hHB0A6VjtWutivxSoMZpteUOXS8EcvlOCMwbZYjf7LJFrtF25VUNH/IGrNvCKW04onOZMEiSvS49lamhd32bYy+psrMv/zJ3ba2lhM2qIRsc5q28L5vpva5Tc73J3Jpb0M7+pVKPRiWZwMV75Ui+w27iQrC5WGI4w8FgJ2b4PoOldO9cGlkbe7wM+lSExBW9HMWjKaUsNICEh5mmzSFFioZSAKeHZ8qA+pyhK6RjRtTCIGoY8X6sPwU9eHx672gaSotk1FPFHngmIo4uUwB1lXoIHw/zAX51EuMqcUvD3vdTvMggf7kuTlrJe3EFQ5ZdJVL2LmWzZ5RLN/hiifpFW8g6cO4=; 4:5zkXwDccd2QxlgLH12vcYe93Nl577XEaeaLHBl3OMwQhSLAJKIwdfv6y9EzlMK8YAEv/LvvZTP6ie8AJZufGZ2Tb/Pdq6Jd003fhftGWBC6DUixEroQ0Z1PxR3d5an07gdU0RFYnF0vI3vSpa4WVW/XVcdoedxuXhxoPFDGYqfqE9wJpyLruYBjLFfKmYIeNIUTPTN7QjjNXeZNOxR2WkXHfCvpprjJijEnHLInHs9zGlOVdLzJiB09bAh4WQ69DrqeXasReiyroBGmlO5G0lBfySYh6xL0rDZa6oMsfA6DjLWXayeL1ZA34bcdxI2+P X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(17755550239193); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(3002001)(3231254)(944501410)(52105095)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123558120)(20161123562045)(6072148)(201708071742011); SRVR:BN3PR07MB2516; BCL:0; PCL:0; RULEID:; SRVR:BN3PR07MB2516; X-Forefront-PRVS: 066898046A X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(39860400002)(39380400002)(396003)(366004)(346002)(376002)(13464003)(189003)(199004)(8676002)(106356001)(2870700001)(6116002)(478600001)(4326008)(386003)(23676004)(7736002)(55236004)(9686003)(44832011)(53936002)(105586002)(25786009)(55016002)(81156014)(26005)(8936002)(53546011)(81166006)(2906002)(5660300001)(186003)(16526019)(76176011)(2486003)(1076002)(52146003)(52116002)(42882007)(6496006)(59450400001)(33716001)(3846002)(33896004)(66066001)(316002)(58126008)(956004)(486006)(50466002)(6916009)(47776003)(305945005)(72206003)(6666003)(68736007)(6246003)(446003)(229853002)(97736004)(11346002)(33656002)(476003)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR07MB2516; H:jerin; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCTjNQUjA3TUIyNTE2OzIzOldiZVRrRU9xR2NFVFF3QnNPQ3Y5YmlJTDIx?= =?utf-8?B?VkF0TmIxNmhvQW5TSEdZREliUHhiUDJPeWF6eHRmbXRKYjZQZEhuMktsSEow?= =?utf-8?B?QWJVczlHNEs4TGRLT1R6WjRHSmJ4Q2pTMG5PNkFnVWpOYUdZaW1BWTkzTWVh?= =?utf-8?B?T1BiUHRWeTRJb05lVEh2MlhNdW54R0JnQk0rZzhOR0Vmam1Ca0F3VnpjeGE4?= =?utf-8?B?bk9hT0hIaEhWTnd1aEhxdWNmRUVwSi81Tlh3VUJUQnNVM3FIeS8zc0k4MEdO?= =?utf-8?B?UUVoU2VYRzJyZzYyaUcwTHYvUjArRHpXbkpZSVBMQ2VXOFB4Zmd2OVZPKzNC?= =?utf-8?B?ZVlCUCsvemx4eEQwWHBhTWpJNnc3QXQ2dXVhM2ZUSWV6RWhubTJ2cVZHZ2pr?= =?utf-8?B?TENlUzJXdUkydWhlT3NkeVAxWHh2RjdHc2Y5aTk5UFFiMzFkUW1ObkJmVUlo?= =?utf-8?B?TVdPeWNEaWdBcFMyQ1BhUVBpQnVkUWE1QjZwdWNCRSs4QW1yTmFNMVJPSGJu?= =?utf-8?B?Yk1SaGZVVmlLWDRGR2hHc1YvNUJidkNEaXNDQTE2dTVtdEdDa3RETnRSLzg2?= =?utf-8?B?VmVXQm1pNzNPNUFEU1prVGs3R1pEK2lNUnkzZWpqM1BESmRsTmJUUlNHVWxn?= =?utf-8?B?Uk1hcTU4NjhJWjhyanlYaG1ZM2R6UkZCV29XTmxKd2MyRWlGd2xJSEswZ1hw?= =?utf-8?B?M21RZmJWcVBIRnNmWUZpMGpUTjdKRVlKMnpDVEs3QW5aUjQzaWdwdE1TRkRt?= =?utf-8?B?T3lhV2x3eFBvNUNUb2s3emtYY0lsbVh1ci9LOFBPQTNwNHRaUEIxOTNKQVBQ?= =?utf-8?B?N05LZWYzQXZWUkxlNDVUWFBJbTNuVE1TcG1VMHphWkN6RDNJVW9lcE0vaWxv?= =?utf-8?B?QXpOMEd4NHFPTGljdXNFS1FzQlhLWFZQVDhQTWFpU0pUQ25jZ2dEOE1aeTRL?= =?utf-8?B?KzRiTmpNUERCZGVXeEJ6NXRGVDVwbWN0T3B3S01BdHEvN1dwcjMwdlRFM2g3?= =?utf-8?B?WjV0MmRBWElnMWxpWU16UnBqMno0L2t3L0o1alNlbURoUGUxNUdiWW5OTk8x?= =?utf-8?B?YW0zZnpCTWhuWDhYWjVSeUE2RUg0czIxNG4xNUcrQSt4aklraUQ5eHJyMWg4?= =?utf-8?B?Q3NCTVN4YnBJMU5QUEVBRXRlYTUycnBWY0JYTk5vY0F3eG8yTm8rZ3UrZmd5?= =?utf-8?B?WEJTcnEwL280aWVEdy9sNnAwTEl1a2x0bFRrL1dlYk5zU0toRmhya1dxTGow?= =?utf-8?B?K2VGNWpkVTNIQ3Arb3plYkR5czlkb1UwRXd3YlZVaDI0QkZWeTBkVTdwTnQz?= =?utf-8?B?aUJuNTh5M3NGbnhzN21Xb085bGpodkswaVFRcUgzNmZaZHpVWWZEaExpcURp?= =?utf-8?B?WDJpK3ZMK1N5M1BHTi9ENjRiWVJnaEJwNEZ3VElCQTh5TVE4cWhQMEk0Tlhs?= =?utf-8?B?Z0x6NDNzbjQyMUYxdS9jSTg2OU5TOGhISTdwcHd3Q1R0REMzeDdJWkN0bkJl?= =?utf-8?B?cUwrL3dXRnpPTm8zSlpzSVgzbUptbjlkOE1vNGhxeExwZ1NFYUhwTHZhVUQy?= =?utf-8?B?ZythQitRSkZYZGRjTE9QOGg5dHpCTUFPK2tMMmdwVG8yMkZOOG9wSTJDM3Vm?= =?utf-8?B?YnVtbDBDRmRaTExQeThLQWcyV3NTbkJIS0xxYUZwbmVBVHZXRHluMEExT05G?= =?utf-8?B?aGhVeXhkdWpjREc4TzNCcWJIenJydUNhRWhRazZ1b2RRSTFVbmFCQTAyekZ6?= =?utf-8?B?UDROZEZXUzlaSVFYZGJUL3VKaThWc0pxZVNqSDJodWhOdnpTSTNBMnU2OHVw?= =?utf-8?B?OUhNSUxZdmt4QXN2TTFiZFVqN294bUM3a0lYMkpKRE5VWm1KQUx1TGZUYjc1?= =?utf-8?B?QjZuYUdEZHp4QnQrVTNDUUt4UjV1Szh4N0c2MGdwTHE1WlFPeG1mdWxPTWlY?= =?utf-8?Q?qt+dZRqqTrWD5U0XtoVttpWlLyORJo=3D?= X-Microsoft-Antispam-Message-Info: zo4q5qJPqLj6NnFrFEtWwNpVLq143D3qUfQ/Y+LNNKWJBw/VIitkSYtbFBq9qMHVBUzzoJYBb6PsDSZrCtXPAFVXjOY8Dau4Icvdg3/EL2qbJG3IfObGUbrVGveVPAWGzWEQ5gSnwGJMYuB4c1eBXy4iqtyZxJfnik5Kq4RMoyhAm4oXljH3r7RvyLJvMzge X-Microsoft-Exchange-Diagnostics: 1; BN3PR07MB2516; 6:I3jI4ars9wCIfxuHLI7Su+PPp2/M/FbuAU4kFFMIANWU90I31mX5WHZBxUxomB4kc5TxFs7apjip7p7XHcZxEa2gSPzsu+ESCMu76ZGFLB57tEECzpk2WcYEFXWOFw/fla69aRjZTOwvK0pw+iNNA3QUEYV3801tYWvRtPJs2LvpJNGcTxlM8+OrWH5H+fnS8B0gUZaW2LyT2/+e2NHUOp/ADuthFHak9cGtI2gbHCfC/74G0Pev5mVsK6VGdOis9adctyv5SGs4nReNTSC1OXoqYeJJbDMiBs6K5rtAZAY35bYrMVgSUmJxeOUiZqJDk1KsytULCb8pqGcoTC6xUJlc7HpObvcNE61V1b0Lsn1Sk51NBRyiU/BxFvKC2BRMZklxsSmigMsQWUI6wb7R1nSurJdvi4smJjciJGABwJzq8JPHBR6mONd1QVA7chYKxS55mb46zjhzmPgNQ6kFcQ==; 5:HkpOnVt4b57eDYhK3FA+6TjXpQWOs7kHVpam/05eJ3aedt5MG/7ntn5VJI1zVGeTXXt+tO7yrPRB0pM+VJk6P9Riwww9IV8cUTcgYF7AGDvtox8zGd78GIeSG2AQ6VxPRs5CshkqMWtna8XQpHlJyaiWeC62fJaAp6WdBkmZlzI=; 24:px8Btm2myADlyo2C5YBXVvsEro005fEN6OVKjAy4c+3+iWwNT93krMlpbauFokOAV6n9xMIsLdzAeHlMhcX/Bkescsjj3uDuXFsl8Zmw3+E= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN3PR07MB2516; 7:/vPAxIk8bpsSny/u/Xr4BFk7JSl8CdbnKres2IEW6rxB14//bA2ZAd8IFf/Z48ptFyDZlvh6190s/LHLTGulHMvWu4NZDbW0LVLTiWOFy6jMFUv9+qi3s3D3fAU6+0tMStDJ+v8wBdkhowLYM4kNLnriNev4ptRbhiMJelZSOQlzq4wOxGkyFt5v75Yzpa468kBpBV0nOXej0+gqV1OKVqGfcLE02nksr3asbkLWcwByM2wSMkfSmqxxL2x5Bc38 X-MS-Office365-Filtering-Correlation-Id: bd6b2219-c8ef-461c-2fc8-08d5b657309f X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 May 2018 09:19:52.4039 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bd6b2219-c8ef-461c-2fc8-08d5b657309f X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR07MB2516 Subject: Re: [dpdk-dev] [PATCH v3 00/40] Fix build on gcc8 and various bugs X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 May 2018 09:19:56 -0000 -----Original Message----- > Date: Thu, 10 May 2018 15:11:11 +0800 > From: Andy Green > To: Jerin Jacob > CC: dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH v3 00/40] Fix build on gcc8 and various bugs > User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 > Thunderbird/52.7.0 > > > > On 05/10/2018 02:12 PM, Jerin Jacob wrote: > > -----Original Message----- > > > Date: Thu, 10 May 2018 10:46:18 +0800 > > > From: Andy Green > > > To: dev@dpdk.org > > > Subject: [dpdk-dev] [PATCH v3 00/40] Fix build on gcc8 and various bugs > > > User-Agent: StGit/unknown-version > > > > > > The following series gets current master able to build > > > itself, and allow lagopus to build against it, on Fedora 28 + > > > x86_64 using gcc 8.0.1. > > > > > > The first 17 patches have already been through two spins and > > > this time are corrected for all the comment (thanks to > > > everybody who commented) since v2, and have tested-by / > > > acked-bys applied. The first workaround patch for the hash > > > function cast problem is dropped since something has already > > > been applied in master since yesterday to address it. > > > > > > The additional 23 patches are fixes for problems found > > > actually trying to build lagopus using current master. > > > These are almost entirely related to signed / unsigned > > > or truncation without explicit casts inside dpdk > > > headers. > > > > > > Tested this series on gcc version 8.1.0 > > > > Found following error: > > On gcc 8.0.1 on Fedora 28, where this doesn't appear using x86_64 defconfig. > This is with the basis the current master HEAD > 8ea41438832a360aed2b7ba49fb75e310a2ff1dc I use the same change set. I think, In GCC 8.1, they have added strict function type casting check. I see a lot failure in examples with GCC 8.1, Are you tested the examples directory? > > I assume 8.1 just got better at spotting the problem. > > > /export/dpdk.org/test/test/test_table_pipeline.c: In function > > ‘test_table_pipeline’: > > /export/dpdk.org/test/test/test_table_pipeline.c:521:3: error: cast > > between incompatible function types from ‘int (* (*)(struct rte_pipeline > > *, struct rte_mbuf **, uint64_t, struct rte_pipeline_table_entry **, > > void *))(struct rte_pipeline *, struct rte_mbuf **, uint64_t, struct > > rte_pipeline_table_entry *, void *)’ {aka ‘int (* (*)(struct > > rte_pipeline *, struct rte_mbuf **, long unsigned int, struct > > rte_pipeline_table_entry **, void *))(struct rte_pipeline *, struct > > rte_mbuf **, long unsigned int, struct rte_pipeline_table_entry *, void > > *)’} to ‘int (*)(struct rte_pipeline *, struct rte_mbuf **, uint64_t, > > struct rte_pipeline_table_entry *, void *)’ {aka ‘int (*)(struct > > rte_pipeline *, struct rte_mbuf **, long unsigned int, struct > > rte_pipeline_table_entry *, void *)’} [-Werror=cast-function-type] > > (rte_pipeline_table_action_handler_miss) table_action_stub_miss; > > ^ > > /export/dpdk.org/test/test/test_table_pipeline.c:557:3: error: cast > > between incompatible function types from ‘int (* (*)(struct rte_pipeline > > *, struct rte_mbuf **, uint64_t, struct rte_pipeline_table_entry **, > > void *))(struct rte_pipeline *, struct rte_mbuf **, uint64_t, struct > > rte_pipeline_table_entry *, void *)’ {aka ‘int (* (*)(struct > > rte_pipeline *, struct rte_mbuf **, long unsigned int, struct > > rte_pipeline_table_entry **, void *))(struct rte_pipeline *, struct > > rte_mbuf **, long unsigned int, struct rte_pipeline_table_entry *, void > > *)’} to ‘int (*)(struct rte_pipeline *, struct rte_mbuf **, uint64_t, > > struct rte_pipeline_table_entry *, void *)’ {aka ‘int (*)(struct > > rte_pipeline *, struct rte_mbuf **, long unsigned int, struct > > rte_pipeline_table_entry *, void *)’} [-Werror=cast-function-type] > > (rte_pipeline_table_action_handler_miss)table_action_stub_miss; > > Hum... > > That seems to be declared: > > rte_pipeline_table_action_handler_miss action_handler_miss = NULL; > > which is > > typedef int (*rte_pipeline_table_action_handler_miss)( > struct rte_pipeline *p, > struct rte_mbuf **pkts, > uint64_t pkts_mask, > struct rte_pipeline_table_entry *entry, <<<<===== > void *arg); > > We're doing > > action_handler_miss = > (rte_pipeline_table_action_handler_miss)table_action_stub_miss; > > The prototype for that is > > rte_pipeline_table_action_handler_miss > table_action_stub_miss(struct rte_pipeline *p, > struct rte_mbuf **pkts, > uint64_t pkts_mask, > struct rte_pipeline_table_entry **entry, <<==== > void *arg); > > It's true, the fourth arg has a different level of indirection... it seems > another real pre-existing problem. > > However the stub doesn't use the fourth arg "entry" > > rte_pipeline_table_action_handler_miss > table_action_stub_miss(struct rte_pipeline *p, > __attribute__((unused)) struct rte_mbuf **pkts, > uint64_t pkts_mask, > __attribute__((unused)) struct rte_pipeline_table_entry **entry, > __attribute__((unused)) void *arg) > { > printf("STUB Table Action Miss - setting mask to 0x%"PRIx64"\n", > override_miss_mask); > pkts_mask = (~override_miss_mask) & 0x3; > rte_pipeline_ah_packet_drop(p, pkts_mask); > return 0; > } > > Therefore, since I can't get the error here, can you check if this solves > it? > > diff --git a/test/test/test_table_pipeline.c > b/test/test/test_table_pipeline.c > index 055a1a4e7..d007d55ce 100644 > --- a/test/test/test_table_pipeline.c > +++ b/test/test/test_table_pipeline.c > @@ -71,7 +71,7 @@ table_action_stub_hit(struct rte_pipeline *p, struct > rte_mbuf **pkts, > > rte_pipeline_table_action_handler_miss > table_action_stub_miss(struct rte_pipeline *p, struct rte_mbuf **pkts, > - uint64_t pkts_mask, struct rte_pipeline_table_entry **entry, void > *arg); > + uint64_t pkts_mask, struct rte_pipeline_table_entry *entry, void > *arg); > > rte_pipeline_table_action_handler_hit > table_action_0x00(__attribute__((unused)) struct rte_pipeline *p, > @@ -105,7 +105,7 @@ rte_pipeline_table_action_handler_miss > table_action_stub_miss(struct rte_pipeline *p, > __attribute__((unused)) struct rte_mbuf **pkts, > uint64_t pkts_mask, > - __attribute__((unused)) struct rte_pipeline_table_entry **entry, > + __attribute__((unused)) struct rte_pipeline_table_entry *entry, > __attribute__((unused)) void *arg) > { > printf("STUB Table Action Miss - setting mask to 0x%"PRIx64"\n", > > > At least I confirmed it still builds without error on 8.0.1 with my series > and that patch. OK. The above patch does not help, GCC 8.1 simply don't like any from function typecasting. see ^^^^^ in the quote below. /export/dpdk.org/test/test/test_table_pipeline.c: In function ‘test_table_pipeline’: /export/dpdk.org/test/test/test_table_pipeline.c:521:3: error: cast between incompatible function types from ‘int (* (*)(struct rte_pipeline *, struct rte_mbuf **, uint64_t, struct rte_pipeline_table_entry *, void *))(struct rte_pipeline *, struct rte_mbuf **, uint64_t, struct rte_pipeline_table_entry *, void *)’ {aka ‘int (* (*)(struct ^^^^^^^^ rte_pipeline *, struct rte_mbuf **, long unsigned int, struct rte_pipeline_table_entry *, void *))(struct rte_pipeline *, struct rte_mbuf **, long unsigned int, struct rte_pipeline_table_entry *, void *)’} to ‘int (*)(struct rte_pipeline *, struct rte_mbuf **, uint64_t, ^^^^^^^^^ struct rte_pipeline_table_entry *, void *)’ {aka ‘int (*)(struct rte_pipeline *, struct rte_mbuf **, long unsigned int, struct rte_pipeline_table_entry *, void *)’} [-Werror=cast-function-type] (rte_pipeline_table_action_handler_miss) table_action_stub_miss; ^ /export/dpdk.org/test/test/test_table_pipeline.c:557:3: error: cast between incompatible function types from ‘int (* (*)(struct rte_pipeline *, struct rte_mbuf **, uint64_t, struct rte_pipeline_table_entry *, void *))(struct rte_pipeline *, struct rte_mbuf **, uint64_t, struct rte_pipeline_table_entry *, void *)’ {aka ‘int (* (*)(struct rte_pipeline *, struct rte_mbuf **, long unsigned int, struct rte_pipeline_table_entry *, void *))(struct rte_pipeline *, struct rte_mbuf **, long unsigned int, struct rte_pipeline_table_entry *, void *)’} to ‘int (*)(struct rte_pipeline *, struct rte_mbuf **, uint64_t, struct rte_pipeline_table_entry *, void *)’ {aka ‘int (*)(struct rte_pipeline *, struct rte_mbuf **, long unsigned int, struct rte_pipeline_table_entry *, void *)’} [-Werror=cast-function-type] (rte_pipeline_table_action_handler_miss)table_action_stub_miss; ^ cc1: all warnings being treated as errors