From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 102C1A0547;
	Thu, 20 May 2021 20:59:19 +0200 (CEST)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 93CF340143;
	Thu, 20 May 2021 20:59:18 +0200 (CEST)
Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com
 [67.231.156.173])
 by mails.dpdk.org (Postfix) with ESMTP id 0962B40041
 for <dev@dpdk.org>; Thu, 20 May 2021 20:59:16 +0200 (CEST)
Received: from pps.filterd (m0045851.ppops.net [127.0.0.1])
 by mx0b-0016f401.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id
 14KItx5U025059; Thu, 20 May 2021 11:59:14 -0700
Received: from nam12-dm6-obe.outbound.protection.outlook.com
 (mail-dm6nam12lp2174.outbound.protection.outlook.com [104.47.59.174])
 by mx0b-0016f401.pphosted.com with ESMTP id 38nph1suny-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 20 May 2021 11:59:14 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XUx/ZIcCjyaD4TVQw4cXub7D7tlLocmuPb++KTfws/apHXAZHlqjnEgiG3BOQSDs7K0+FP0s99iP3wPHSAQvM+W9CE2NMqF1we1PAh5oZJzrdw4gGXNf8W7mToEomyHiG2b9Fx7jF/vNWesdhZuHSLFxaBLyRNKtSteHOF5UA2tnWilUBqxriRTpbq7Cm+7oS80Zy3wMQQ+Hh3Frb1bGH65vXIRqrv9aXmTKKOttok2supVjF1A4E6+P2k0IJuSKJIpZlpU2FOp/JiLAR+mKqfFRx5cKpMbmAT0Gwxn/cpDRH+wyIhmFSNWAuhLs3HdseclN4QhoHb+q1PcPaCqjSA==
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-SenderADCheck;
 bh=QZRHwcLMyHFbCQaEk6DKQvkmISOXbotdYLfvqxYCfsM=;
 b=X4YMwtUvBkTot973lDJfegnGKDm/qOKPaqdsNfeV49KYyjjDwKL7HmOnsbHX5DcOU6pDMisjkwz5F/cyZR1ZOxzo3phCyLUUYmETIOc8dug9Vpd32hmDWXDYVkOllSMEfn8zWt+n8XjNrL+SHTch7+NeEega3rTL+6Ada3orc6v2X329RzGew3HqwlE2+itNLLT+wQfT2RNndNBgJWUOfEeJH4gj4WdzUO2ELNnd9eGe9pVPfN8YwHgtf7XMvuZWtahA1eSsUVlE/u6GPyTBiDR0h+MAS2wZqjX+nN9KgCDhj23Ne78EmiGd3u2kMxwuzcjLQC7KBkcr7ZVoAQrX/A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com;
 dkim=pass header.d=marvell.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QZRHwcLMyHFbCQaEk6DKQvkmISOXbotdYLfvqxYCfsM=;
 b=NycufD+z5Shsl0ei2jaajzFiURgl8FnbjVSWzUEu8Tg+muXVkr1EY5Jjzbizg0keZnI8ixl0ho0Lt0voeJyj5I5IrqXJgrNRPqSrvM+Dna/78gYB/IboqS5AFAQuwzm58dI0p6UOwzB1ccclZbs1O+pBWM2ImLVdqALv37jVvFE=
Received: from MW2PR18MB2284.namprd18.prod.outlook.com (2603:10b6:907:10::16)
 by CO6PR18MB4003.namprd18.prod.outlook.com (2603:10b6:5:344::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4150.25; Thu, 20 May
 2021 18:59:12 +0000
Received: from MW2PR18MB2284.namprd18.prod.outlook.com
 ([fe80::3168:cb00:6607:743f]) by MW2PR18MB2284.namprd18.prod.outlook.com
 ([fe80::3168:cb00:6607:743f%7]) with mapi id 15.20.4129.035; Thu, 20 May 2021
 18:59:12 +0000
From: Akhil Goyal <gakhil@marvell.com>
To: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>, "dev@dpdk.org" <dev@dpdk.org>
CC: Ferruh Yigit <ferruh.yigit@intel.com>, Fiona Trahe <fiona.trahe@intel.com>,
 Ashish Gupta <ashishg@marvell.com>, Khoa To <khot@microsoft.com>,
 Ray Kinsella <mdr@ashroe.eu>, Neil Horman <nhorman@tuxdriver.com>
Thread-Topic: [EXT] [PATCH v3] doc: announce API changes for Windows
 compatibility
Thread-Index: AQHXTaf6EoE1eZl57Eu1ACBK+v3ukqrst/MQ
Date: Thu, 20 May 2021 18:59:12 +0000
Message-ID: <MW2PR18MB228479D4EAC246E6BC47883BD82A9@MW2PR18MB2284.namprd18.prod.outlook.com>
References: <20210310235421.23259-1-dmitry.kozliuk@gmail.com>
 <20210520184254.16790-1-dmitry.kozliuk@gmail.com>
In-Reply-To: <20210520184254.16790-1-dmitry.kozliuk@gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: gmail.com; dkim=none (message not signed)
 header.d=none;gmail.com; dmarc=none action=none header.from=marvell.com;
x-originating-ip: [182.68.13.184]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 8bb5b9a2-8bb2-4a81-9345-08d91bc15b80
x-ms-traffictypediagnostic: CO6PR18MB4003:
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <CO6PR18MB4003E9755B2537FF548C5576D82A9@CO6PR18MB4003.namprd18.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:1728;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: MjNq2dOQoymaYk1G0uVAyMuc8FaAiZ8qXtC8qhgVjaCe4R5YmwWZQXZmmQp6SFmADhhMbw9FYWrnB9Mo9wu03d61Bz9ocNu0M9AdqwlfnNThEdKeCeLKr9YWAEu+4S7DDoSzXw7eOwOMwBougKLOEEc7lFO50NkSlH+tZ/QPxreR9dsqH2IM16a4VW7yUKUJNtlcXdtN8dLUm6UZaq2rMH0iIgNtVsmGdS2c3YLbute0qljO6IbN56h5e/NKdxtA4qZnj4HjPvo9pW2ikVDHlnfpz8BSu/6Y9l3+cDzDc9do1qG9/xRVPkfnzdQwbKc+brx0r6e4h4V7FZCVCbQud2mvZWKYb3QX+jBSMQuARjPyoylA9xSwIx508AiFXWLzgDVdSkt25Z3ZiAJwFl1mqLZy9LvGzL/5Pyua5/8AjPSfFo12PTV7XYKcNiPu95YrG5bq6BCmhYrKmebWNjQiZILX8kLzAid59NZeT1WwHjq1c3EeyA/fcpraiBSlBE0wndyeJUSAUh01HdCYlDcTAJwUMqYEe39y2XjeyxHx/kZZJieMADyD9Z1Fgs81SNX1HrJ4tlntjAI1/TSU2kspDjMpO/VVheXPEIc7Engxkso=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:MW2PR18MB2284.namprd18.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(4636009)(39850400004)(376002)(346002)(366004)(396003)(136003)(316002)(66556008)(4326008)(186003)(8936002)(8676002)(66946007)(66476007)(9686003)(54906003)(110136005)(76116006)(5660300002)(64756008)(52536014)(2906002)(86362001)(83380400001)(6506007)(66446008)(33656002)(7696005)(478600001)(38100700002)(26005)(55016002)(122000001)(71200400001);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata: =?us-ascii?Q?o3t4JbBrWcjMwC2XnazVvnyDjPaEqyY4DbD+iRd4HTez+80aTywjtgZ2LgKP?=
 =?us-ascii?Q?4EsldP6B60yLYZX3vebbspNFPdPKay3ELvFBEUJO6YyvAYcVvfJgz/l289+R?=
 =?us-ascii?Q?oD1wUxRb1ZqlVLRoqq2tCNIQl1uZgPx4wovuE6XblBvvz/ccjBVIJ/TkIZlv?=
 =?us-ascii?Q?lrw8VYYc53v5C/I49Sn2d/zbArWljXcBlrZwJgknNW2u2g7mNJaQ5jN2F1Ep?=
 =?us-ascii?Q?j2qBoeWHQGAODz5siACdG0SCWPUYKotjDL4SPEGyup2fKQCsykRP2hhF0me/?=
 =?us-ascii?Q?LtYdxitw7/UxMub1tGEB3JysnPWoDMgRMnPsBg0IZvsjp2uyukPSdTpWzT8E?=
 =?us-ascii?Q?psaue9LhFd/ZVGgF1N1RJOWE5O6lVqM2CgpbTQGIWz/PdwyZfAaUm8Wa9PBZ?=
 =?us-ascii?Q?7tn8t2oSjmAZxhgmgD+Zjrq2LqyJ8aVdtIZJoFkdbM3uHVZIKUENHU0v3cjG?=
 =?us-ascii?Q?43CPGQuCwTGZkZ/1aqDuGWgVjQjLN4xaaLgpiEOnNZkeOfrghmjDxGxu8rU+?=
 =?us-ascii?Q?Lsn6NxUHa4PqDo2F6v/9gbqGbM46zP+X3aClta9pRLyHnpOd9N0/tsmxPTJv?=
 =?us-ascii?Q?WSETnpF4DRr2z5Bv7Sd08tEs2IMggl9U6JNm0+zaW0IEBpV4WiiUfNUawaJY?=
 =?us-ascii?Q?EWUTowb0VlTIflr/pP5Di+yEE9MI1LnBFtGKgDIVAgyhBw9TksP1GdKMQCrq?=
 =?us-ascii?Q?4SPy9sX61pLb5U5ErJl+ax5VXbCV3s+IzJjZTSpoHB4yDTpjLRoy6FjQsLGN?=
 =?us-ascii?Q?UdsvWELSMJ27mBq4hJU7G/46+dh3gFwhrS4khzU+BBXLo11y7k5al3WE3VRA?=
 =?us-ascii?Q?kArkX+9coVfW9FI1oz4BEL50g33bZbAG0MaDC4ywgT6eSNGRak8O6SJEy6wI?=
 =?us-ascii?Q?3P0KvN49alCCBZi8YlD3JQxveBvlwqsTaFayeQL0yp7+dm7MuASVgYksn8lr?=
 =?us-ascii?Q?JUr/rhPcfdKV0xePjdbUReJ82mhdK28gc5p82o9FHe9mjMHPWDStfO29Spdr?=
 =?us-ascii?Q?KgEp6V2m2Mv0WSK0UJcTpJ16x4bhSxyD+nk1G0qaPxMEo+5N52XkgsZnFkn9?=
 =?us-ascii?Q?r9ez2MriWiUeBxUDbQBN/DUulvpKWJXeP3gMbxbpmb8m6zpzNPhVPY5lDEDF?=
 =?us-ascii?Q?N3V0GCgTLuvmGmK9kPfOFSVm6cqNuHoJRH0TaKnaSGQOU2ASEzPsteRrQYVY?=
 =?us-ascii?Q?jc7FsJfJiSvnb8eZORHMKcoSCL6aaJ52E6ohe47HMJVkPP5REl8sDL6+e5h+?=
 =?us-ascii?Q?pKSKU+dIqBqQ2qDF7JDR8NDwNiytiQ8lHEM+kHOzfoMdN5irmSPJykewT8zs?=
 =?us-ascii?Q?i0dMbU7QZgncc4k71bcqJtlg?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: marvell.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MW2PR18MB2284.namprd18.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8bb5b9a2-8bb2-4a81-9345-08d91bc15b80
X-MS-Exchange-CrossTenant-originalarrivaltime: 20 May 2021 18:59:12.5947 (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-CrossTenant-userprincipalname: +BrtuVj0tXCIadSG9wybxQRJrxQpZu+oeZpCXc7omrwJ/f8E97lofniZmqUvSRYl8BlsPA0ihIvhTSHLRCRTGQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO6PR18MB4003
X-Proofpoint-GUID: aQs9I80AXENkL4EKXrDaN7X_KQlxGKpj
X-Proofpoint-ORIG-GUID: aQs9I80AXENkL4EKXrDaN7X_KQlxGKpj
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.391, 18.0.761
 definitions=2021-05-20_05:2021-05-20,
 2021-05-20 signatures=0
Subject: Re: [dpdk-dev] [EXT] [PATCH v3] doc: announce API changes for
 Windows compatibility
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

> Windows system headers define `s_addr`, `min`, and `max` macros which
> break structure definitions containing fields with one of these names.
> Undefining those macros would break consumer code that relies on them.
>=20

>From the commit message the requirement for changing the structure definiti=
ons
Is not clear. Please note that 'min' - 'max' are not macros. These are vari=
ables of a
structure which should not break any other structure/Macro in windows.

> Example 1:
>=20
>     #include <winsock2.h>
>     #include <rte_ether.h>
>     struct in_addr addr;
>     /* addr.s_addr =3D 0;     ERROR: s_addr undefined by DPDK */
>=20
> Example 2:
>=20
>     #include <rte_ether.h>
>     #include <winsock2.h>
>     struct rte_ether_hdr eh;
>     /* eh.s_addr.addr_bytes[0] =3D 0;     ERROR: `addr_s` is a macro */
>=20
> Commit 6c068dbd9fea ("net: work around s_addr macro on Windows")
> modified definition of `struct rte_ether_hdr` to avoid the issue.
> However, the workaround assumes `#define s_addr S_addr.S_un`
> in Windows headers, which is not a part of official API.
> It also complicates the definition of `struct rte_ether_hdr`.
>=20
> For `min` and `max`, no workaround seems available. If cryptodev or
> compressdev is going to be enabled on Windows before 21.11, the only
> option seems to use a new name on Windows (using #ifdef).
>=20
> It is proposed to rename the conflicting fields on DPDK side,
> because Win32 API has wider use and is slower and harder to change.
> Exact new names are left for further discussion.
>=20
> Signed-off-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
> Acked-by: Khoa To <khot@microsoft.com>
> ---
> v3: fix typos (Ferruh), remove naming speculation,
>     replace workaround snippet with commit reference.
>=20
>  doc/guides/rel_notes/deprecation.rst | 9 +++++++++
>  1 file changed, 9 insertions(+)
>=20
> diff --git a/doc/guides/rel_notes/deprecation.rst
> b/doc/guides/rel_notes/deprecation.rst
> index 9584d6bfd7..cc6e8db92c 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -147,3 +147,12 @@ Deprecation Notices
>  * cmdline: ``cmdline`` structure will be made opaque to hide platform-
> specific
>    content. On Linux and FreeBSD, supported prior to DPDK 20.11,
>    original structure will be kept until DPDK 21.11.
> +
> +* net: ``s_addr`` and ``d_addr`` fields of ``rte_ether_hdr`` structure
> +  will be renamed in DPDK 21.11 to avoid conflict with Windows Sockets
> headers.
> +
> +* compressdev: ``min`` and ``max`` fields of ``rte_param_log2_range``
> structure
> +  will be renamed in DPDK 21.11 to avoid conflict with Windows Sockets
> headers.
> +
> +* cryptodev: ``min`` and ``max`` fields of ``rte_crypto_param_range``
> structure
> +  will be renamed in DPDK 21.11 to avoid conflict with Windows Sockets
> headers.
> --
> 2.29.3