From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.4 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,URIBL_SBL,URIBL_SBL_A autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id CFFECC282CE for ; Wed, 22 May 2019 13:12:41 +0000 (UTC) Received: from dpdk.org (dpdk.org [92.243.14.124]) by mail.kernel.org (Postfix) with ESMTP id 5AC1A20815 for ; Wed, 22 May 2019 13:12:41 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=marvell.com header.i=@marvell.com header.b="Je/H9/cP"; dkim=pass (1024-bit key) header.d=marvell.onmicrosoft.com header.i=@marvell.onmicrosoft.com header.b="NhqP33zk" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5AC1A20815 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=marvell.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=dev-bounces@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 788455589; Wed, 22 May 2019 15:12:39 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 658C1A49; Wed, 22 May 2019 15:12:38 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x4MDBvk3022714; Wed, 22 May 2019 06:12:37 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=xWvtLntBNRmBmxLxT6zsm43Q9sa1pJG8GRHTRaQ69I0=; b=Je/H9/cPuTUzW1J7J20YeZKX7d9EZgBQ4oZhchmBYTWtsiuCHoTd0dyGKqufIfSyH63Y 8xZgHjzvwnaAb5A5NGyG/rl5i+U2hJvHmGVQVh+feN3Fj5XBRvAi7DYMDL2v9ePtEgxh aKCHCsPtIkYvAHdLTZstooItg3ZnfIUrq7bGPhWSUI+uG+uqiteCqIQQ/2+2WtukdQIM G6woF0ckdVommeEOfq14dRH2gP2y1iZR82v8a77uQZ9TEGbAteLb4FJLSPFHsDyn9SBf p7W3ORfPpXqB5KmwFHSIP3z+Y3wCTGxxT2p0R6iRT1cimESHuPlLIPFJlh4EJmQRnr2y uA== Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0a-0016f401.pphosted.com with ESMTP id 2sn2cbsavn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Wed, 22 May 2019 06:12:37 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Wed, 22 May 2019 06:12:36 -0700 Received: from NAM03-BY2-obe.outbound.protection.outlook.com (104.47.42.51) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Wed, 22 May 2019 06:12:36 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector2-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xWvtLntBNRmBmxLxT6zsm43Q9sa1pJG8GRHTRaQ69I0=; b=NhqP33zk5vUFiIhoIExyxStvaUke59qs+6+OUO3hpAhI1Ru6xSfXF6WdkqU0m6ub2wbVmPz/EWnNunb/zVymK8UaPkdDYpalpduRKMAsHHz8oLI6eA/I4nbN+6hwF4FTbv7+PH3GuyW4T7AAUIOopVBDVqJFDxieQpapVTAzyhQ= Received: from BYAPR18MB2424.namprd18.prod.outlook.com (20.179.91.149) by BYAPR18MB2757.namprd18.prod.outlook.com (20.179.56.223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1922.15; Wed, 22 May 2019 13:12:34 +0000 Received: from BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::1ce4:557d:eeb8:843c]) by BYAPR18MB2424.namprd18.prod.outlook.com ([fe80::1ce4:557d:eeb8:843c%7]) with mapi id 15.20.1900.020; Wed, 22 May 2019 13:12:34 +0000 From: Jerin Jacob Kollanukkaran To: Neil Horman CC: "dev@dpdk.org" , "thomas@monjalon.net" , "stable@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH] devtools: skip the symbol check when map file under drivers Thread-Index: AdUQniL2+5Vof9dlTha+z79UF9qb3Q== Date: Wed, 22 May 2019 13:12:34 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [106.201.57.97] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: f220a45e-78b4-4b67-6dc9-08d6deb727c1 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600141)(711020)(4605104)(2017052603328)(7193020); SRVR:BYAPR18MB2757; x-ms-traffictypediagnostic: BYAPR18MB2757: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 0045236D47 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(366004)(376002)(136003)(39860400002)(346002)(396003)(199004)(189003)(13464003)(25786009)(53546011)(6916009)(7696005)(55236004)(102836004)(33656002)(486006)(476003)(86362001)(6506007)(229853002)(74316002)(6246003)(53936002)(81166006)(54906003)(8936002)(14454004)(478600001)(81156014)(8676002)(68736007)(99286004)(4326008)(6436002)(3846002)(66066001)(55016002)(7736002)(9686003)(6116002)(26005)(66446008)(2906002)(64756008)(66556008)(66946007)(76116006)(66476007)(73956011)(52536014)(5660300002)(71190400001)(71200400001)(186003)(256004)(14444005)(305945005)(316002); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR18MB2757; H:BYAPR18MB2424.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: OKo0CsbrGQ6rNUCZmrjjW0VBxO4MObD7AI8zHzoysR1PNflXsogAGHxqf3UMdsrU948pa6aNDdd53TznVH8ah0QYUW1YPJKYWiNBTiEONibbtwjfSbMY0GU3jX7CuEf3cnRl71QAFQSd/6o+vtJ6ZoeTJk3MPgYTG6fJbFgeKIcBZqxapIw6WRUKzfC+S0UCN93l9jFMkhgWXOkJ6JeEPi0ZloeKrM0R1g6MECraHEMOGVKwiFU+iyDHxtY9OADm4hqPW2ckD5I9HN7/3sS9YOT8lBzrfDjUboqV2A1HpV/YqtDBH5cmOPSD9N6zJmTM5Dw+lZMbsvu7ackE1I3i5045jC1NgfARnn5mTsAj6QWfWvi5trExr4fnCaHqUuCqJalbFVPFFMtJzr1KSJxkQ4umswS/0ypKtP6aaN1phlw= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: f220a45e-78b4-4b67-6dc9-08d6deb727c1 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 May 2019 13:12:34.5314 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR18MB2757 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-05-22_07:, , signatures=0 Subject: Re: [dpdk-dev] [PATCH] devtools: skip the symbol check when map file under drivers 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" > -----Original Message----- > From: Neil Horman > Sent: Wednesday, May 22, 2019 6:16 PM > To: Jerin Jacob Kollanukkaran > Cc: dev@dpdk.org; thomas@monjalon.net; stable@dpdk.org > Subject: Re: [EXT] Re: [dpdk-dev] [PATCH] devtools: skip the symbol check > when map file under drivers >=20 > On Wed, May 22, 2019 at 03:05:54AM +0000, Jerin Jacob Kollanukkaran > wrote: > > > -----Original Message----- > > > From: Neil Horman > > > Sent: Wednesday, May 22, 2019 1:57 AM > > > To: Jerin Jacob Kollanukkaran > > > Cc: dev@dpdk.org; thomas@monjalon.net; stable@dpdk.org > > > Subject: [EXT] Re: [dpdk-dev] [PATCH] devtools: skip the symbol > > > check when map file under drivers > > > > > > On Wed, May 22, 2019 at 01:26:28AM +0530, jerinj@marvell.com wrote: > > > > From: Jerin Jacob > > > > > > > > Drivers do not have ABI. > > > > Skip the symbol check if map file under drivers directory. > > > > > > > > Fixes: 4bec48184e33 ("devtools: add checks for ABI symbol > > > > addition") > > > > > > > > Cc: stable@dpdk.org > > > > Cc: Neil Horman > > > > > > > Sorry, but I'm not ok with this, because many of our DPDK PMDs have > > > functions that get exported which are meant to be called by > > > applications directly. The > > > > OK. Just to update my knowledge, Should those API needs to go through > > ABI/API depreciation process? > > > Yes, they definately should, they are API's just as any other in the core= DPDK > library. OK >=20 > > Actually, I am concerned about the APIs, which is called between > > drviers not the application. For example, > > drivers/common/dpaax/rte_common_dpaax_version.map > > > > it is not interface to application rather it is for intra driver case. > > I think, I can change my logic to Skip the symbols which NOT starting w= ith > rte_. > > Agree? > > > No, Thats just one case, and if those calls are between drivers, so be it= , but > those still need to be stable, and we have other examples (like the bondi= ng > or dummy driver), which have additional APIs that are explicitly meant to= be > used by an application. There is no disagreement on the API that exposed to application. I am concerned with internal driver APIs. For example, I am getting followi= ng warning ERROR: symbol otx2_mbox_alloc_msg_rsp is added in the DPDK_19.05 section, b= ut is expected to be added in the EXPERIMENTAL section of the version map This API suppose to be called only a octeontx2 network driver from octeontx= 2 common driver i.e application should not expect any stability on intra driver functions o= r it does not meant to be used by application. Thomas, Any thought on this? >=20 > > Context: > > I am adding a new driver/common/octeontx2 directory and it has some > > API which Needs to shared between drivers not to the application. For > > me, it does not make sense to go through any ABI process in such case. > > > Why? If you create an API thats reachable from another block of code (be= it > a driver or an application), you've created a dependency in which that AP= I > must remain stable, lest you risk breaking something. If an end user wri= tes > an out-of-tree PMD which makes use of an an additional driver API, then y= ou > need to keep it stable or you will break them. >=20 > > > > > dpaa2 driver is a good example, the cryptodev scheduler is another. > > > Take a look at their version.map files to see what I mean. > > > > > > Unless we are willing to make drivers opaque objects that are only > > > accessible from the [eth|crypto|etc]dev apis in the DPDK core, we > > > have the potential for exported symbols, which means we have an ABI > > > that has to be maintained, or at least recognized and reviewed for > > > consistency > > > > > > Nacked-by: Neil Horman > > > > > > > > > > Signed-off-by: Jerin Jacob > > > > --- > > > > devtools/check-symbol-change.sh | 8 ++++++++ > > > > 1 file changed, 8 insertions(+) > > > > > > > > diff --git a/devtools/check-symbol-change.sh > > > > b/devtools/check-symbol-change.sh index c5434f3bb..444beddad > > > > 100755 > > > > --- a/devtools/check-symbol-change.sh > > > > +++ b/devtools/check-symbol-change.sh > > > > @@ -93,6 +93,14 @@ check_for_rule_violations() > > > > if [ "$ar" =3D "add" ] > > > > then > > > > > > > > + directory=3D`echo $mname | cut -d / -f 2` > > > > + if [ "$directory" =3D "drivers" ] > > > > + then > > > > + # Drivers do not have ABI. Skip further > > > > + # processing if the map file is under > > > > + # drivers directory > > > > + continue > > > > + fi > > > > if [ "$secname" =3D "unknown" ] > > > > then > > > > # Just inform the user of this occurrence, but > > > > -- > > > > 2.21.0 > > > > > > > > > >