From patchwork Tue May 7 12:22:19 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Cupertino Miranda X-Patchwork-Id: 13656757 X-Patchwork-Delegate: bpf@iogearbox.net Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9396415B122 for ; Tue, 7 May 2024 12:22:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715084570; cv=fail; b=rIFEKEBsEJJIGALQpqH/t52mcwyBaokmfXBLa+TWbBlbIgnFXzZDZcJYXmoeqOBtDcR5JwAiYUyE7/HcG5bGs2g8mwhfkYpGCKtmcEDTP4Cs52328AT4Ocim8N+kooIY7ODTqVj4navHQYQuK8nqdB/Y/7lRmBYXSJ0Z/XrRyWc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715084570; c=relaxed/simple; bh=9hq8HTfUEKtZ/iYhcmlxetgdZz27huoeug+w2x8utPE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=RqE7sxySnZIYN4TNmOCTtGq6Hy71fKsqtXtB37I6xnAFUqj9ft97fPB7RIe+DEfkfnXl8swqWrks11ypPDjx9pDezCx3AvQdzEmNqi5wdtC3PzB1vB+P+nJPKaiGnnYjbJTf7dWCIvZvaJPZ5SA9oRjxQ6yjM3yB3YSeOsNOb1w= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=I2YxMzeO; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=TCPGFAa6; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="I2YxMzeO"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="TCPGFAa6" Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44793vd8016425; Tue, 7 May 2024 12:22:44 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-11-20; bh=0W3TdYY4ikEzAZkSpi6LSDiWOrAnxYJ0MNK7IwslH4o=; b=I2YxMzeOmBcuw67TbUCVOiIOqCX4jun9FsIb4ldVFtMK3U/e19PYxmScny+s7SEYx2BX Whx1frlFr50j1UUJKR4k4x/VpHdGFzh6iYi0GPeeL7p9Z4vKlEva80yysU7GiXrnFbDM hd54SJhcN+DSIs9JXIE6bXyPX9hjKzR/YMGd2c1JaBa+GFgJKYywLqINnkcMMok+Grtx drcwaYVwrSkDMlDbRW+jat42YgyngtYDFyHgSn7PIPCYJzjrjymJLZwh+5AAfSaSO3MD Owv6ztdMwSnT/+Prm1XrBM9UvkWQ9sE5GSvitt6292j6pIUMkhRx0IRrsRef1hGAzfQ8 6A== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3xwbt54tu3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 07 May 2024 12:22:43 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 447CMgpe007085; Tue, 7 May 2024 12:22:42 GMT Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2040.outbound.protection.outlook.com [104.47.66.40]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3xwbf7xhkv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 07 May 2024 12:22:42 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HoQfR2O16v00hZcYHfrMuYXBEay5IpSoYkjPwOs26b5R1j1vhbt55oGwuiYMwGm3dacOX8x2/cKcSeLfAfGh3etqkmW8VrQdeujamtZBTZBs+NGREdl7UW6OpAQgg1NHRypF+6R8tJCFI73hkNjs5X0fMEICMyvapkqcpp2wioTeudSY3x01bJpAlxh98VXpbnJwm0B8ZvRVk6WTquaEcUzoA69ZgdU7inat62NOz3YS27jksg9Pd3eQ6WWVfIXkimXg66fqjOYkFqPhfmTO1CUV7xYE7p2+SCqzrnYh+OwDFPlsS49wcQbmOc9cEXirDU3FCIqzgjKtMQ0F+3ynUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=0W3TdYY4ikEzAZkSpi6LSDiWOrAnxYJ0MNK7IwslH4o=; b=H2EFIKvS6PYIN47/8PJPW2+5EHxWxY2TyEWmwScgqA/NSPpvD0NCJCyZuUUUx57AJbgRFjmHQnrILSHLl7GF+SMPLjKVSi+mkjDNx5EDpY1oNTCDED5aSinaU2d96Lql5a+VbwJabxNDSTpS/6Z8nzKxoM1jsPsbkk0mzf7pZsr81jrZblJYEm3dxSdJpv0ImfMUAQGUADR2eUULopRR3PuPA0fD764BhFEBUCwjtL8wCTOVLAwZ9pUm222KKGHCQLRc2l0+igewZ3e4qFWqylfv6R96sjYi+AmcZVUsyl1VPzgIXJ1NiBEH86q21GRZgfGTmJyesRdC2oi9kMcp/g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0W3TdYY4ikEzAZkSpi6LSDiWOrAnxYJ0MNK7IwslH4o=; b=TCPGFAa6IZ8yklyYcQyz97NF5vxDBQNHaoZfwQ2wlY0Uc6QCGH0G/3WiMZ1YcEoATCy3/WPzZF3rAEr35mS2UB4Ez8RfY/W/pFprpTS3xr7XPDj1OzhTgMUpYth7eRuhtB566Q13l35EFFdYRVLGYfQLu43QF9GL67h9Gu3dM4g= Received: from MN2PR10MB4382.namprd10.prod.outlook.com (2603:10b6:208:1d7::13) by BN0PR10MB5079.namprd10.prod.outlook.com (2603:10b6:408:128::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.43; Tue, 7 May 2024 12:22:40 +0000 Received: from MN2PR10MB4382.namprd10.prod.outlook.com ([fe80::1e11:7917:d2c:e44c]) by MN2PR10MB4382.namprd10.prod.outlook.com ([fe80::1e11:7917:d2c:e44c%4]) with mapi id 15.20.7544.041; Tue, 7 May 2024 12:22:40 +0000 From: Cupertino Miranda To: bpf@vger.kernel.org Cc: Cupertino Miranda , Yonghong Song , Alexei Starovoitov , Andrii Nakryiko , Eduard Zingerman , David Faust , Jose Marchesi , Elena Zannoni Subject: [PATCH bpf-next v2 1/2] selftests/bpf: Add CFLAGS per source file and runner Date: Tue, 7 May 2024 13:22:19 +0100 Message-Id: <20240507122220.207820-2-cupertino.miranda@oracle.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20240507122220.207820-1-cupertino.miranda@oracle.com> References: <20240507122220.207820-1-cupertino.miranda@oracle.com> X-ClientProxiedBy: LO4P265CA0064.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2af::20) To MN2PR10MB4382.namprd10.prod.outlook.com (2603:10b6:208:1d7::13) Precedence: bulk X-Mailing-List: bpf@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR10MB4382:EE_|BN0PR10MB5079:EE_ X-MS-Office365-Filtering-Correlation-Id: 435d2314-0719-43bf-2df6-08dc6e90636e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|1800799015|366007|376005; X-Microsoft-Antispam-Message-Info: hij9S43SwnznwXSPqDvwwR98aGhgU/GGdOH7bJRo80LWnUgfhPN1AM1iZoST17u/ytC0bNpUAt4pWUBTnZLNW4MExlT8x3wIicMfXI8cRb3ogm6ESEhXkmuWiRRkccj69+LTQPbTc088XRSqBgDrP1YX0CPnp89ZzysG/fxPBuPesrlVe7sMnS9yzS4YtfHX19UPSY4JF32VFNPydY14HK0+VU05zU9dyRW562zMjw33H7O8SMg+yMREC24jATRJLWymUTpFT0N4Fr571QRMnNKrg134b7/HYsLWm2hbtalJ/y1XDmHWYWHjzHdVnS5s9njDLyVXwq9ZDbbw8Sv/hNQHWjfnrAGI3U+EZR6TL8S5uWExW9m3flC+cH0Neqlm4qvgZhcIkDpYrVmt25Ki6p2wMk/TH61Kn22iAB2ZEHJwc/NOSFre6NA9qkSBtteXk7C9iVv635V0lGiMyL32YB05Ll/hRCRA/QnlPq1jJKp+ZjnrsVpsXnUVGnWo2192V5fEKVmY4ulAxzQclZkEjFMTuLepmz1EJx4rcoO76Pxwl5xFhqfWk2vtDaUMPz6sa3FIh+RXw9VusRP7r7o/moQmaZL2TYHL8qMGXCn8sMIGrA9rvt/SEMjifAwaQuuSbKct5pk00Jvy4qhsjoq/zH6oy4py2QvXDsQx9ikcPLCdn57zGjT5U1MQ3LzNwUZ8xByZUaE2WKC9zRvT/DcRDCUog8GHRzceIhLZ97iaUU+RYamV8MbSk9fCXwUJ8/TPGDo0M3ZloQDnRgvbzk66GMdocayUaNYRCyxYQOrL+L9vDyufiN48RYouvr51MCcvA5wZDeZN8kg2obdUw6Yt1RSlAdDGLZrqqn+IhTKpGD7NMtpSOxTAo7z6bDtCnun7R6S5LYmTl+YyCq8y/NWgtbWTyR+PiwxBkmXwSHuHvI5KqjLpkhcVb/RNve5uNvFG4qzrXwAYW4bTDGx7f5v2zZFv1wAZgl2FnJ7brPEKrwQFEYjvKuLeh/R9NvskNh05MQI+dr1SZk0tV5k99qiRe3q8OqzkvvBl+gagnphDx2W0ZagyZ8S3hySH4C7GPk1V+QyqCfOf3zLQnyC/cz5OUwDKRE0PAaU8RvuSAM5lMLiLKfH7MeyeQGxR0rFhsU84uRuHSFMvmoRlXdjEmIctAyO4RE9zkFDvnVSEz4apFJXNGBjPlXqdL8ApAD7B6Nu0Yn8bXraZOpOobOd09aEjprIb9vxUtZWQjKqZKQYzw0G1ChJi8Nigp/ahSpCcj+ZI97ojLWCVWgilTL9mms+POw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR10MB4382.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(1800799015)(366007)(376005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: eUZDvHDg6xTAmQzDFrx6r/hJG7PRWJgK75a3oJi+fEzsehg426SEb2vZZCtf0nk82Bh5mHDuQn2+fdUWTh6xq63IsGfE2NQ73swlHSJyBH1cqj8o2YAT1t8n6MTPfSezNDtGIZU6DHXb6kYI062a1jLaD4lk9o3qH8qPGiePf2ils8WM9ThTsbn1+W4zWDTZ3URGJ97jsgHMlCYwW/dkyNSwP/PjslFZj3PKCIi2/wM2jPzyv6w9Vmr2yHsQTbh50fcS4/8LZE0oezMn7Cfux3jR2kW7shatC8c8stAki2iXBqL29Y8u4yDEHqAYx/mmw3HAj9xvAj8jImysWwcJiIkBOsPjU2v0bk+I4THrYaGqj+GNswyymclef266H3Y5fjjt65FFLG4eYFL13h/9bFuOUV59E/yzwJ7eAN67mHlyVAwDu1X0gIAU8JxhUpKKYiq1wn1lNDDGEbzUaLAXFyCOULpHknoC8m22/OiAxLm1nFBY1wOjUZVRWYskAf8fOQ9efTraZZudXWuPkJ70UKGvcAfbe7wacD/fmLHEOXRcEvPXnGl+Hc4rjNRGnncnrKmo2UrTwB0riCiGJTHOb9IBYG41IIZSAsSN34wk7gV+xBYvtTLlTQ2/tfZxFc1ocm8UNfk4VTYblELyRQYjq4u4oXol7Iw8o0wtt1d4lmSABq1yEv4ukBvgoTbMxd0+3avOr+bK0KSUu6nRHgwt4U2E9HUTaZawUCURAqjKoct7WzcRGl3SWQHBH9Vb3os8tfq+4BkmItdrKwg8Sp5gOUQUvOuRimpojQBYxgzcThMWrnarQv7gACNggLDq/D3obYoiub6vFP3RAbgNhmKBST98IcLMBrfeezTikcYD3LdOZ3uO2CGb+5dyMeIpGenhLmV4atncsJEB54IxsNBvD+baVUa943PMvN6pPxGxSC5z4fhmwyDPj239MGpSEyFIYjAjFyCpCbIBiODm10oPwr3eevxGZFfzYoj+Z9wHnuz6s7428SiKYhwXydhkSTeAAWn99s8PKreB23uT28p8I5zLsBKrbipXBdFb+quLR04dxiifkLDpb6ZPmhoo/34YsYtks8SUfGjKTsKUB2U36Nh7NJBK5cVv7mtICzH3sJMBN63/ZcENttzoU0wUXjrAkbvd4W0dBBj5B1P9ogspURuBo1bNNhYR8cQRofocOszCVjwpadXeV1UF/9F9MXvHexGGsxmmrzZ48m42/XKoZ0YAdDf94r5WJfuNTi57m2ts1hoyQyy4I7zDuGLWPrw4NHb+HV/vaX1Z9J9eXm3LCPasvTRaOveP/jqdVe8TmnP4Azk4O6lB9ycEzvcfT6mA6lP4tWy0Nja3Fk+mi4A3MYT8A6ftmXQ00TVqQnXKrIlD2gEKCQ8GK+L8lF42HbuszUB//hLtbfm5h47xiWRAMVat669zoJ4o1CzhHCR4QFTPJq8oSJUBlqZfIn7glxF2iAMocpLBeme4hZTopHtER627IDrHIyyqJaN9oVJ82adHJXOsC1t2jYqq/I6FRIqIdJr68yIr84fZHh8w3vRtqLpEcKCRs8lIpvEKOH7taohlsqk2YdlSFR6jAsEhPy/x69U6vnQ0jd+vXp7LzelBXXSz6ijhIKB+rrUtKIYtCKA= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: s3DJKcW30TvbIkEex4nHSLiYmcZpahaZ3P/qjUfS628elc0Z+QAR3OjJ9Cv6CrcS4ZM9ih4yq+zZi2o0h7JmMkJW21PAB/d+KZmh6Z3yyXFgn1ADYx3TNni0vgRcRJM4pDXRLBOF9UtiAazNfGCp8Cqw1VRDAJt/2R2zFhHYEUvdAlTz4ei+dyt0nP2CXucAzXO0MfW4LxuHK6HqyxuKZmXqnHx8OE3FO7pw6oaMTf24YFymeI9CC/n8d3ccvIeWmyPdion+FAbVik22EJLhMjC+gQKsUEP4KvNVEnIMkcWFUMkHJyiejF/DNu5zPMNtCYWU7fZnh/oJ455YvmLjM08tObgCnaSF0hJ9u7kNUVyjBIrPHJbyI7dxOl48S860eIu9ZNqcp2hqlkO252C7pM9erUL2cGwgMK9bEilOTwBaS7zNaLFGTwt0mtA0LWpt9XJoyCGhhsdunr8SnqdvP8XPsw9noe/S+ZVSFvQAoy1fLiZwXF6uOAhcTrO+nfZy5VK+ea2M+XCEwesRvQgCgzxRNRZBjfeAD8uORHDX77yt/LIBXJDIGmDaFiiDR8u2atmML16tkvLIMJWC1Mp3ssqFL6ZPugCihesmQ7TWQII= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 435d2314-0719-43bf-2df6-08dc6e90636e X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB4382.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2024 12:22:40.3771 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 9Tj4+pwr/ww25NUK+Y+aAgd0NER+RPQxHyLVNask0lUeF0bs/PHXVDFqYMmOJQan8B+AzMld6esfoay4RUw1d+IcaM5zoIFQQXIlK2XO5W4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5079 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.11.176.26 definitions=2024-05-07_06,2024-05-06_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 mlxlogscore=999 phishscore=0 spamscore=0 suspectscore=0 mlxscore=0 malwarescore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2405070084 X-Proofpoint-GUID: 4bqfSA5FAfcxC7fi1qqEmiU-_MYJCr4K X-Proofpoint-ORIG-GUID: 4bqfSA5FAfcxC7fi1qqEmiU-_MYJCr4K X-Patchwork-Delegate: bpf@iogearbox.net This patch adds support to specify CFLAGS per source file and per test runner. Signed-off-by: Cupertino Miranda Acked-by: Yonghong Song Cc: Alexei Starovoitov Cc: Andrii Nakryiko Cc: Eduard Zingerman Cc: David Faust Cc: Jose Marchesi Cc: Elena Zannoni --- tools/testing/selftests/bpf/Makefile | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests/bpf/Makefile index ba28d42b74db..bd103b770c19 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -81,11 +81,11 @@ TEST_INST_SUBDIRS += bpf_gcc # The following tests contain C code that, although technically legal, # triggers GCC warnings that cannot be disabled: declaration of # anonymous struct types in function parameter lists. -progs/btf_dump_test_case_bitfields.c-CFLAGS := -Wno-error -progs/btf_dump_test_case_namespacing.c-CFLAGS := -Wno-error -progs/btf_dump_test_case_packing.c-CFLAGS := -Wno-error -progs/btf_dump_test_case_padding.c-CFLAGS := -Wno-error -progs/btf_dump_test_case_syntax.c-CFLAGS := -Wno-error +progs/btf_dump_test_case_bitfields.c-bpf_gcc-CFLAGS := -Wno-error +progs/btf_dump_test_case_namespacing.c-bpf_gcc-CFLAGS := -Wno-error +progs/btf_dump_test_case_packing.c-bpf_gcc-CFLAGS := -Wno-error +progs/btf_dump_test_case_padding.c-bpf_gcc-CFLAGS := -Wno-error +progs/btf_dump_test_case_syntax.c-bpf_gcc-CFLAGS := -Wno-error endif ifneq ($(CLANG_CPUV4),) @@ -470,7 +470,7 @@ LINKED_BPF_SRCS := $(patsubst %.bpf.o,%.c,$(foreach skel,$(LINKED_SKELS),$($(ske # $eval()) and pass control to DEFINE_TEST_RUNNER_RULES. # Parameters: # $1 - test runner base binary name (e.g., test_progs) -# $2 - test runner extra "flavor" (e.g., no_alu32, cpuv4, gcc-bpf, etc) +# $2 - test runner extra "flavor" (e.g., no_alu32, cpuv4, bpf_gcc, etc) define DEFINE_TEST_RUNNER TRUNNER_OUTPUT := $(OUTPUT)$(if $2,/)$2 @@ -498,7 +498,7 @@ endef # Using TRUNNER_XXX variables, provided by callers of DEFINE_TEST_RUNNER and # set up by DEFINE_TEST_RUNNER itself, create test runner build rules with: # $1 - test runner base binary name (e.g., test_progs) -# $2 - test runner extra "flavor" (e.g., no_alu32, cpuv4, gcc-bpf, etc) +# $2 - test runner extra "flavor" (e.g., no_alu32, cpuv4, bpf_gcc, etc) define DEFINE_TEST_RUNNER_RULES ifeq ($($(TRUNNER_OUTPUT)-dir),) @@ -521,7 +521,8 @@ $(TRUNNER_BPF_OBJS): $(TRUNNER_OUTPUT)/%.bpf.o: \ | $(TRUNNER_OUTPUT) $$(BPFOBJ) $$(call $(TRUNNER_BPF_BUILD_RULE),$$<,$$@, \ $(TRUNNER_BPF_CFLAGS) \ - $$($$<-CFLAGS)) + $$($$<-CFLAGS) \ + $$($$<-$2-CFLAGS)) $(TRUNNER_BPF_SKELS): %.skel.h: %.bpf.o $(BPFTOOL) | $(TRUNNER_OUTPUT) $$(call msg,GEN-SKEL,$(TRUNNER_BINARY),$$@) From patchwork Tue May 7 12:22:20 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Cupertino Miranda X-Patchwork-Id: 13656758 X-Patchwork-Delegate: bpf@iogearbox.net Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5E0B6158D9C for ; Tue, 7 May 2024 12:23:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715084607; cv=fail; b=NUd7Ihk+aMDXwc/M5FhZ+JZInPrLh9i4B/jqLCwfNpbkZsfc2r83rJJs6sTsyxw+bmCsUQn61Uq2rU7lC5Rn7fI33HUwXs4OWFtdlqoYdOAEmXragPyD20F2Jl1salJvlC4B4fd0IrS4Gy7bmHkBUP6rLJAOHPIbdSATckRiGS0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715084607; c=relaxed/simple; bh=xSaHakNgWWlV3KVzpU+/O+99iYo5SVnpqFL80Y2WO+M=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=jT4caxVfAlOLLeARLpqyVaRVbKwRmvd8Y+MpvPcV5O6ED+cIt7Si5PiHNEz9J5PgEBaKFfYTFFloZB4WW3oUzyjbMsCrBk0EMwB/amOzsybUsFO63PdsI79+8BTKVxnTheEF8Oy24a1K5hKBqX6VgqCNh3OLzLM+QWuyKatRf5I= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=UFGNcRJu; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=KU93r35f; arc=fail smtp.client-ip=205.220.165.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="UFGNcRJu"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="KU93r35f" Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 44794OdT031264; Tue, 7 May 2024 12:23:18 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-11-20; bh=q/RuZo8ClfnEOtGfaS5SK+5QPVxL9WaWmmsXmyJeVis=; b=UFGNcRJuzyHC74Rb56vhsc4f5t6d03nHsC6VZdC104h7/M9OwdqizwzOcL/FyV0Ffn/M /uH/2aW4HgZLFhgyJN1kVB4/xllXfA5G+8iip1Xm7p0FIZ2/LG2Cl9g7lG88L4GA/dvF jTfsBA8DkRdEgyUk5ViPA53WirVN3U/wixl+Ai9eMONC2TKx41FcgtEjL6uia+J/CZu3 4ObX4mo899Xq9ydvVBN3znJCxN+rNUrABzHMTlTWnMso59WtK/fjCbFti78KTQ76mMQc vNcc+gZRVtxOy0g6T4a/wCHokJ6g9hp1pH/6emcUwyHaBAbAnC2WkQqtzzB3sGcbk0OA JQ== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3xwbxcvvqm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 07 May 2024 12:23:17 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 447Ai4aT014471; Tue, 7 May 2024 12:23:17 GMT Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2040.outbound.protection.outlook.com [104.47.66.40]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3xwbf7c6an-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 07 May 2024 12:23:17 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VkIfiz6e3S3XL30RXsBAPbsXNG+qsV43wswafGwB0CFUCgzJdDAamUq1wJ5nmDbr177cnraeFpXaurS12iLAa4I7G5HqqXcNcxOSrY8VlItvX3eWE1Nd5D/l24kHo1O/WXuBKNzCiTS+NSWCsy2z/kzpZWYBTwmCXBasNXIjWwHY3Gpx6ZextE7hpPqBpBLBmkfWsN413eFzkeFFjymCUekEsUM4zyu1QrL2BYhDJJVnk4hJw+xMgp8XUw9PHkgLVub94L4ae6esi5bZ2zaIQV0uTsqrwtQzy8WGOYHHiBAsM5IrNOsz6Rzc48aKkFiFZMC3fUXm1OpJQuf/qvEo3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=q/RuZo8ClfnEOtGfaS5SK+5QPVxL9WaWmmsXmyJeVis=; b=G3B73DhzYiSjOXSkHhDTFMDgrtG9Nq8AsNOHdI7fHR/nHMyrqzSmMsklXW7JxMP3QDnn2cM0TkyfPyrzGqrjMp1Mo/mSChc77jNN1AObIrC2BqRcc1Gn7CnlH3HfINOVUjRsRFgRpACwBIa2Bhzg62QRmG0Rj9RAuOl7Tx3gKTmzASfIFh/n+TeFYGTrAJt4mtE43loSEyucXe0cJbkqHuCeE6oT/6kHeb0WybMcCWVDAjlh3CU3EK2kt9rfO3vqifKqg3Qb0BOg+bQfsVxuQe6yc7Y2ArS8kvHE3muPctLdCPRGr46tuaWM//bwuFZI2vxP/6FKRKgO1WWRIxGQQQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=q/RuZo8ClfnEOtGfaS5SK+5QPVxL9WaWmmsXmyJeVis=; b=KU93r35f8kBcBEHokWsCOnCO6bmpcX0kuGXlZQ6YCcbEXZ8kuyQ3z3WX/I8i19aSbAF4ZIUTWnnXikjrZY8Zv8HRq3dai9YyEt/BJu9VteJfAW3F9Y+RKNIvCL6ocpQOtq2bk+foOa4CuasCn41OC5Yuz4KpFgBDvr+a9H779cg= Received: from MN2PR10MB4382.namprd10.prod.outlook.com (2603:10b6:208:1d7::13) by BN0PR10MB5079.namprd10.prod.outlook.com (2603:10b6:408:128::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.43; Tue, 7 May 2024 12:22:45 +0000 Received: from MN2PR10MB4382.namprd10.prod.outlook.com ([fe80::1e11:7917:d2c:e44c]) by MN2PR10MB4382.namprd10.prod.outlook.com ([fe80::1e11:7917:d2c:e44c%4]) with mapi id 15.20.7544.041; Tue, 7 May 2024 12:22:44 +0000 From: Cupertino Miranda To: bpf@vger.kernel.org Cc: Cupertino Miranda , Yonghong Song , Alexei Starovoitov , Andrii Nakryiko , Eduard Zingerman , David Faust , Jose Marchesi , Elena Zannoni Subject: [PATCH bpf-next v2 2/2] selftests/bpf: Change functions definitions to support GCC Date: Tue, 7 May 2024 13:22:20 +0100 Message-Id: <20240507122220.207820-3-cupertino.miranda@oracle.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20240507122220.207820-1-cupertino.miranda@oracle.com> References: <20240507122220.207820-1-cupertino.miranda@oracle.com> X-ClientProxiedBy: LO2P265CA0319.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a4::19) To MN2PR10MB4382.namprd10.prod.outlook.com (2603:10b6:208:1d7::13) Precedence: bulk X-Mailing-List: bpf@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR10MB4382:EE_|BN0PR10MB5079:EE_ X-MS-Office365-Filtering-Correlation-Id: f205de0c-cd03-48c1-348b-08dc6e906621 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|1800799015|366007|376005; X-Microsoft-Antispam-Message-Info: 7CnRCJfP2vzJSf2OSW7qfdCivHwkVSnEIsS7n6wEpiA2LqEfPAzqmwWlYDqtFFXZzvzGStfVlBHE0wvpaRnISrOcKnBsVI11gi+mnHHC/l+Ly2dwmW+E3E39SQD8QIaskPSu4KXQezKOzfQvz6Gop0RMgw5PcX2Hgjh0C8PBFWIy+lmNGduJR1NuC4L1y4iR7quO7i+4ZrnljLasuydhtewoJX1zvU3LzHu3QpPNC2X83S9DBNlQYg8tEPY/y8sIkju7dbs3znGCbOsFaV61GC003Sgn5mNWzH2q+rrr/kcb48SDV5XKlAZP/bJoagf7qh359Fw6oLbdDzW8VXFWmPe40ij+L+L4B1ttjZ4xuZHquhVcKbAwoz5N9abgbpadrOaAtRm4BB7bIFZzxiDRT3AGmokm/JCbOhAk/LTTs5XPW6tSf2MbzYnqfIltc8UIxAEe58X9DaFHU/ptlmZN0LLaVITVX2OS0xM1CDsAzt07mX6CiI2Rx+igPZytgq3R3XOAiuiKnb7wvyO/+xdDjfaAdo7+dfyCf6XIpyT0mPzigQqQHUmUNcClcKlkxBxQtSRBtUwGt6L8FBOEY0U1pe+TIfy1wnLL/g80QHFQ5GyJ7R5eN6BM83ONZSlIT/zS/EOa8rgWk/m2VSknCoYNGOGa0ndh0/EdS5ByNbj2Ji0QHsRsk3F6RNoCD6/t6lKCVgROcShtmp5PYAfT7rA763YVGNY0KYmDMA3Kr4veLTNM+SlXr5N+uDXtLvrwoUCpS5v/GlsouWFmaHVsHlln+mxFYmjI1eA8qzIcqHYwLV2DU6gOFFX8aEHNHXdQN89G9zJqknP8N4i0pqzBm1quKgx9tZyBSK/7gj5I+604x6SARBRqrHEmRkbDEuZN/3+v0QXsOY5BdNfBgO7ks7MihaS35aJmLuipCKf2mPyrZUOtM9kv744swtkrsDRLuyJ6AETT7DJLnDEYTWDOaAX9yMR/owqfo7LFTI/kHTsfEQARgdhqir25iULKKXCTP+VtxQvY+YH/7U/GUVKOjD6uD5mDvY+tzwYGT3uXm1x83BhE/Irj2wG4ENvawszLibvds1w2Hl9x+Oz8B0B3VLpax1xobEcBIDPTKbdvZZOPQpY92GaW2hJxn3mGBIa3pAEf1CiCjv+g1yHNjUTFqD7rJRJXPCIQQr94k1RXyu27fgE40czyZDKbtJc43KWtFxe0x0kBWHvLavP8Fcx9irMbOOGNl/l5DJVkwoj0CGHh23PtkCAv0Q8rR+eWtG5IANZs+UkzGtm+rHLyIXTGFQTy1A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR10MB4382.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(1800799015)(366007)(376005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: CZs9MsHMuXYWHLVyCprMBj+obrOOkzO+okGLTq6pS4kLcnbMpyDm5oQ3FMa6CWv+nWhF9AbMLPzVx2GeCYuGtlLYt0j0Lq9KtXwkiVULGupe0unyEzvr0vhFyGN+BzRM7c/0JUMMWIozCKWZ/KiVDW8Tb4VmfBHguDqiRJxoXypf3NUoCTSQIV8fWEwKlt+CUxGB3fn+V1Y7jCmB7qxWWxxpo3jXXzBRGhkaUGCdmDaq32T04A0yLy9B5wCQoJp5iQH7eYNwyVAYa/ykYTATFic300jqSgztn1M6OCfz7jhwF7l+Pri8OY8eIfqsBoJJ6LNkXLd32nSVe5A2hR4OEWsDkVOwqHaLx6qIgipb3DywOr44hRt4y98yZl5qdrz/7csYpNYWyomsOsAN8IkHxypISFTd+JprFdcppGamBpOUDQiRN7NJ15+kget/gE0FiesdAw01916w3ZBcagq77VLnKr+EkwGDz89qpzPq6ysg5wR7RKmJFvkhsLyatQeshD2CR7iqyKr70R8rESd36yiOoYh409nF6+FJR+etcPHnSe9pLn24t0sXPQuoG3B16HSIApQaEAuJSvmOS5QFGXaWDzq0qPo7zZPzF3O88Yt1JTRxpNFY+FmGdEejBnNOH99zKN0AotfntGVcBdxb+epc1yseIOxIKWrbhqFRbZkU/vuKwEloQqAM3WPjtQtLPJ1V1guAH4jFFAeL4zRJjawCUssuKNKXNuzzb46RJbP8txIGIo+gunYGIEN9g3JY1pY94NNBFKVcoQ0opEaeBmfpUBLNclA7J2W+0qVyIabS3oa5tJtgGIpBvH37poH+eL6h2IZnU61TbUq5wW2ot8o8cdVAPTefzwx764i1BstzWBQ/ibJ+1C1kGUfnuMhVaI19gLb9zKYpkFAlLlYILrvCrsdNZpGdun61s/63bkEcq5pidVRzPahRtmJQUaWGmUs7m4cqKgWENq6bOryFYRzPQJlxNQDkm1HaGZbvKzKwdp7jOYVFZgcf+nUcfrqs0YD2HqyRImNhfqxEUfIus6nfEstohOFhz7g3jo7cg7BLz7qYpGT7VCstVz35cPg0S6BEBQUR/xyaQDkgy6FIft8eoL/aOt+F+ZNvdEYtGd5uz2d5VaRVHlEcBVEz/UlHYRFFRda4vMzxhGqwIBHgwyfG2HhS2iZm/tCcrnzPb5EyOsC3LKiDRt+49IkgT9759GMmLortLAjEUk6wqMn09n4N2JwTGUIvaTqamic5SzW0vnaMH0rkdyU4xSWmsvBXpl5hJyDqM1L3juobcy2VV1LUu2JQxy68k53Mfu1r+Ur4GuZfZFAoVXqT2olcOypg8VorJ9behdefKY3voLqWelo4z8VpjnRU3hwXpkI/ymg4mYm5d8c1t3acthnqbWaXhlvf6M3dAV9PDTrCKTawmbEa18l/aoioYTbjJoxDlAWMtIrLXbyuitHxVQFJTh1esePmvUpFUQKAxgCGojqJAdERDzyNzxomPLJ8sDLD8Z2oj37SmC0f68yBNjocWeZmKiNfOWb00cA8Xxf7j3j3Mgqn1XjRHzFWQNBilB3Vcrxu1Gpf7eAl5bXn2jJcNiINyJ51tqz9y7ey1iCcMb1A9s1WqDUdQV5oESr2t7FAKP0= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: HuUspCgOsg0kH3Yr0hMr5/ChtykX9AXDvP7+B7ve7IGQVkPIg9sGsHhuKaCsbNs9Zk+FFDVD9VqIch5nt+QX3qUihQQ3DiVAn0F/Zm3bfDEZSxr06H/CBibyf4wS2ywZ4q8sb+W7Ifiddvty1OMRj5Glurc+dFusJ0ctsxk944T21tpkHYaqE5vsvBDuKFCBq4cFnuwZF4p+7CKQuQyWZfDWIqPhUlQsd0ZK06Q7PYqJWW5zk5nNG1m4Znu6/CH42ahrNh+gR0rxauorVGzxznh6J+ai9cevzlEUra0VG9jJWez0CcIMGLE5VKXrWGUyJqYvqGfs3/CPofK3RAvbGL+WCHXzKzEOjnbf09YGQLt0+N6mjvLXF033XyEhsZbOR7j+QMPNpi03j4bXzNXMBu0Dq9XLRI4AUSmPS473dcCyRCd9kXxUJC6YQ0376g5OhMLNVEPYJ5A6Lk3GglFDec3/J9dTQYnGWcK+StkdRDqQwP7Pf8z9r7npceEIlTf29F9Hw/kDBXi9Z6FdhF/jS4PlT/ttqz7Me6BuF0OJKyEd5UNFbbNK5anBEN+sIoMSM3crPdMlNuAkr4Cyk7d4E4eKQSrRcmwsTCCmf5FKe+c= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: f205de0c-cd03-48c1-348b-08dc6e906621 X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB4382.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2024 12:22:44.9145 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 6gVdDLS/CknHDNfskbQPbDHWmLQOhifX8ox6YEGxW7kMNJd+dFSZgbHWbXoL6ESVnBeME9Uqe5Hq8SGPxrWzFdQPWhk4ibADrOBt3F+/Oo4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5079 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.650,FMLib:17.11.176.26 definitions=2024-05-07_06,2024-05-06_02,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 suspectscore=0 mlxlogscore=999 bulkscore=0 mlxscore=0 adultscore=0 malwarescore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2405070085 X-Proofpoint-GUID: -u27hGGVYPLXX8QGlseUPA7Vq8QBIzxD X-Proofpoint-ORIG-GUID: -u27hGGVYPLXX8QGlseUPA7Vq8QBIzxD X-Patchwork-Delegate: bpf@iogearbox.net The test_xdp_noinline.c contains 2 functions that use more then 5 arguments. This patch collapses the 2 last arguments in an array. Also in GCC and ipa_sra optimization increases the number of arguments used in function encap_v4. This pass disables the optimization for that particular file. Signed-off-by: Cupertino Miranda Acked-by: Yonghong Song Cc: Alexei Starovoitov Cc: Andrii Nakryiko Cc: Eduard Zingerman Cc: David Faust Cc: Jose Marchesi Cc: Elena Zannoni --- .../selftests/bpf/progs/test_xdp_noinline.c | 27 ++++++++++++++----- 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/tools/testing/selftests/bpf/progs/test_xdp_noinline.c b/tools/testing/selftests/bpf/progs/test_xdp_noinline.c index 5c7e4758a0ca..fad94e41cef9 100644 --- a/tools/testing/selftests/bpf/progs/test_xdp_noinline.c +++ b/tools/testing/selftests/bpf/progs/test_xdp_noinline.c @@ -318,6 +318,14 @@ bool encap_v6(struct xdp_md *xdp, struct ctl_value *cval, return true; } +#ifndef __clang__ +#pragma GCC push_options +/* GCC optimization collapses functions and increases the number of arguments + * beyond the compatible amount supported by BPF. + */ +#pragma GCC optimize("-fno-ipa-sra") +#endif + static __attribute__ ((noinline)) bool encap_v4(struct xdp_md *xdp, struct ctl_value *cval, struct packet_description *pckt, @@ -372,6 +380,10 @@ bool encap_v4(struct xdp_md *xdp, struct ctl_value *cval, return true; } +#ifndef __clang__ +#pragma GCC pop_options +#endif + static __attribute__ ((noinline)) int swap_mac_and_send(void *data, void *data_end) { @@ -588,12 +600,13 @@ static void connection_table_lookup(struct real_definition **real, __attribute__ ((noinline)) static int process_l3_headers_v6(struct packet_description *pckt, __u8 *protocol, __u64 off, - __u16 *pkt_bytes, void *data, - void *data_end) + __u16 *pkt_bytes, void *extra_args[2]) { struct ipv6hdr *ip6h; __u64 iph_len; int action; + void *data = extra_args[0]; + void *data_end = extra_args[1]; ip6h = data + off; if (ip6h + 1 > data_end) @@ -619,11 +632,12 @@ static int process_l3_headers_v6(struct packet_description *pckt, __attribute__ ((noinline)) static int process_l3_headers_v4(struct packet_description *pckt, __u8 *protocol, __u64 off, - __u16 *pkt_bytes, void *data, - void *data_end) + __u16 *pkt_bytes, void *extra_args[2]) { struct iphdr *iph; int action; + void *data = extra_args[0]; + void *data_end = extra_args[1]; iph = data + off; if (iph + 1 > data_end) @@ -666,13 +680,14 @@ static int process_packet(void *data, __u64 off, void *data_end, __u8 protocol; __u32 vip_num; int action; + void *extra_args[2] = { data, data_end }; if (is_ipv6) action = process_l3_headers_v6(&pckt, &protocol, off, - &pkt_bytes, data, data_end); + &pkt_bytes, extra_args); else action = process_l3_headers_v4(&pckt, &protocol, off, - &pkt_bytes, data, data_end); + &pkt_bytes, extra_args); if (action >= 0) return action; protocol = pckt.flow.proto;