From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 68B70A04B5; Mon, 2 Dec 2019 07:09:17 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 993F01F28; Mon, 2 Dec 2019 07:09:16 +0100 (CET) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150085.outbound.protection.outlook.com [40.107.15.85]) by dpdk.org (Postfix) with ESMTP id 6709491 for ; Mon, 2 Dec 2019 07:09:15 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VQSnZySHreOJrg3xX0ppfiHt+UyX/CICIUN6O82cC58=; b=v/IE4uILfR9cXN24q3WePd0XfuaRw+LugrUGpoUKGJoIB8Q2ZasBgkhutE8O/7qM6J/Xoksgrg4iHXjWJsoDJLKtAaAn6Qcr7npbjN5gJCuhOxpAu/tNe4VWLnBxbcZxdW/N+LesA5Hk4i0T1kCSES3AOY0uLeU/7id0kzzIjpI= Received: from VI1PR08CA0112.eurprd08.prod.outlook.com (2603:10a6:800:d4::14) by AM6PR08MB3752.eurprd08.prod.outlook.com (2603:10a6:20b:6f::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2495.21; Mon, 2 Dec 2019 06:09:14 +0000 Received: from DB5EUR03FT058.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e0a::200) by VI1PR08CA0112.outlook.office365.com (2603:10a6:800:d4::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2495.18 via Frontend Transport; Mon, 2 Dec 2019 06:09:14 +0000 Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dpdk.org; dmarc=bestguesspass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DB5EUR03FT058.mail.protection.outlook.com (10.152.20.255) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2495.18 via Frontend Transport; Mon, 2 Dec 2019 06:09:13 +0000 Received: ("Tessian outbound 54081306375c:v37"); Mon, 02 Dec 2019 06:09:13 +0000 X-CR-MTA-TID: 64aa7808 Received: from 558ace085b2e.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 5B120D54-7F30-4210-BC45-E372B359E0F5.1; Mon, 02 Dec 2019 06:09:08 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 558ace085b2e.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 02 Dec 2019 06:09:08 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Enn5ykyLGmcggJWoS+Dn4/0pbvaLy8PeGcpCnSXcbOx6KWEHb5gYyQy+FeXysQbb6OhIYQiyKDqp8KVRVizEAHSu4H9Zu4qIPVJi2XMGR0JXtXTilmADezd/NRSGkmamRLsbtjgdlRUD2H8entymKczXYXLthanAFFSdPhQ46w2f0Gs/pGWO7M3Y72CILyiM3pUiK/i5kzxhBG8Kz6jI2sRVagIabN0rgO+pLWAT1g8vUUhUMALiaOsaXebg8ECiRyA/4mN7SrrDwrG6d5XqHFaJxWWggj9VfYgy0XnDNEFaBrwcYwzQX2AGScQRzyJilvBZddKEaYnrQMu9D8BrNw== 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=VQSnZySHreOJrg3xX0ppfiHt+UyX/CICIUN6O82cC58=; b=auEA0eO+WbVG2ootYzM95k5i70MaDT7KdD8jAv6h/vuf83NkirOco7B1r2Bu2e5Ojalko7ojw5/aQBHyVa2c3zN0G4y3ZObYrp4AA1wZ1wzJwYSAaR8Mx0bR8LyNHWIOXY61djKbEIZDihEKoYmoLrYkE+Czo0dNbgYOWlX3YUpSreiByr/P/q3mtCLgJI9PWaG+m1T9RDt8ze+AOJuGvEfTxaPpsvDY9XPodka9DZLP+5/aLqbR5ULYfGVvDA8Y1CJ+cLMycInIWbToqWpf7hsUSKyDYDixxwyOxrGoJ7l1SlwlawNoCJtNn88C3VuPWTyT0+DaQbQKSUOLC3eLdQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VQSnZySHreOJrg3xX0ppfiHt+UyX/CICIUN6O82cC58=; b=v/IE4uILfR9cXN24q3WePd0XfuaRw+LugrUGpoUKGJoIB8Q2ZasBgkhutE8O/7qM6J/Xoksgrg4iHXjWJsoDJLKtAaAn6Qcr7npbjN5gJCuhOxpAu/tNe4VWLnBxbcZxdW/N+LesA5Hk4i0T1kCSES3AOY0uLeU/7id0kzzIjpI= Received: from AM0PR08MB5363.eurprd08.prod.outlook.com (52.132.214.213) by AM0PR08MB3636.eurprd08.prod.outlook.com (20.177.43.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2495.22; Mon, 2 Dec 2019 06:09:05 +0000 Received: from AM0PR08MB5363.eurprd08.prod.outlook.com ([fe80::99fa:7577:8797:6ee0]) by AM0PR08MB5363.eurprd08.prod.outlook.com ([fe80::99fa:7577:8797:6ee0%7]) with mapi id 15.20.2495.014; Mon, 2 Dec 2019 06:09:05 +0000 From: "Gavin Hu (Arm Technology China)" To: "Joyce Kong (Arm Technology China)" , "dev@dpdk.org" , "jerinj@marvell.com" , "stephen@networkplumber.org" , "thomas@monjalon.net" , Bruce Richardson , =?iso-8859-1?Q?Morten_Br=F8rup?= CC: nd , "mb@smartsharesystems.com" , "david.marchand@redhat.com" , Honnappa Nagarahalli , "ravi1.kumar@amd.com" , "rmody@marvell.com" , "shshaikh@marvell.com" , "xuanziyang2@huawei.com" , "cloud.wangxiaoyun@huawei.com" , "zhouguoyang@huawei.com" , nd Thread-Topic: [PATCH v5 3/6] net/axgbe: use common rte bit operation APIs instead Thread-Index: AQHVpbdbL8bLi5FXdk2xPwH82PD77KemXVdQ Date: Mon, 2 Dec 2019 06:09:05 +0000 Message-ID: References: <1571125801-45773-1-git-send-email-joyce.kong@arm.com> <1574923458-14895-4-git-send-email-joyce.kong@arm.com> In-Reply-To: <1574923458-14895-4-git-send-email-joyce.kong@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 7bb6b475-596a-4997-a0e9-c3d632b1c748.0 x-checkrecipientchecked: true Authentication-Results-Original: spf=none (sender IP is ) smtp.mailfrom=Gavin.Hu@arm.com; x-originating-ip: [113.29.88.7] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 5e3f5322-6674-4b50-973d-08d776ee27cb X-MS-TrafficTypeDiagnostic: AM0PR08MB3636:|AM0PR08MB3636:|AM6PR08MB3752: x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true x-ms-oob-tlc-oobclassifiers: OLM:4502;OLM:4502; x-forefront-prvs: 0239D46DB6 X-Forefront-Antispam-Report-Untrusted: SFV:NSPM; SFS:(10009020)(4636009)(136003)(39860400002)(366004)(396003)(346002)(376002)(13464003)(199004)(189003)(8936002)(33656002)(7416002)(186003)(6116002)(14454004)(966005)(81166006)(81156014)(2906002)(3846002)(2501003)(2201001)(25786009)(478600001)(5660300002)(66446008)(64756008)(66556008)(66476007)(76116006)(66946007)(52536014)(316002)(110136005)(86362001)(54906003)(229853002)(66066001)(76176011)(53546011)(6506007)(7696005)(4326008)(71200400001)(71190400001)(99286004)(74316002)(7736002)(6436002)(6246003)(55016002)(8676002)(9686003)(6306002)(26005)(102836004)(256004)(55236004)(305945005)(11346002)(446003); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR08MB3636; H:AM0PR08MB5363.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: PskEdsHQiWiEPaRStw1F52GkZmQ1JPt+80VLmWLbuJOghjO2uTX/66xyyso/cHEPV3g1JY29i3IKxJlCVMksbTda1PFLkVVzwdEH+1Li8yoqfjMU3W5MCcHgT7WMR7G5N92tSP9eUtp3BKTiXOYPD2BeOOjxs107cRp7F1+xUuq2hx7Xr9ZnLtToh3KT3jjvVeezPFb4ISBYYZbiGE6ZDnwtqsiZ7DQ6n5E9d0plTMaHDiCRwlnrD1W/QSj/f35ivyQyLEREoLqbhJFq/3qfwFOhVdCKui97mdoD3L5i4lxBUwsQbgdK7C8PaPSS8yHMpra63Ug4Cb8jNcTw9ZNOI43SKg2mx4TcFpnx8AMbFVvoDC/dr5/2YzfNUFg3liYD+WjwyAqXoUsMLXPytF8qnX6eB4cBT7HsZXj0uTjMG+AZY4iBB746VWslf+gWu7SEOYq9iDKj/UguPCPR8jHc/S3uXOdKaMhfS+FIK1piUOg= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3636 Original-Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Gavin.Hu@arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT058.eop-EUR03.prod.protection.outlook.com X-Forefront-Antispam-Report: CIP:63.35.35.123; IPV:CAL; SCL:-1; CTRY:IE; EFV:NLI; SFV:NSPM; SFS:(10009020)(4636009)(346002)(376002)(396003)(136003)(39860400002)(199004)(13464003)(189003)(316002)(23756003)(110136005)(356004)(7736002)(305945005)(55016002)(6116002)(22756006)(6306002)(14454004)(25786009)(4326008)(9686003)(8676002)(6246003)(74316002)(81156014)(81166006)(5660300002)(8746002)(8936002)(478600001)(66066001)(2501003)(966005)(76130400001)(50466002)(52536014)(3846002)(47776003)(99286004)(2906002)(26826003)(76176011)(53546011)(7696005)(102836004)(70206006)(186003)(6506007)(26005)(70586007)(106002)(2201001)(446003)(11346002)(54906003)(336012)(86362001)(33656002)(229853002); DIR:OUT; SFP:1101; SCL:1; SRVR:AM6PR08MB3752; H:64aa7808-outbound-1.mta.getcheckrecipient.com; FPR:; SPF:Pass; LANG:en; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; A:1; MX:1; X-MS-Office365-Filtering-Correlation-Id-Prvs: 3ef414fe-83ba-4acf-860a-08d776ee22e6 NoDisclaimer: True X-Forefront-PRVS: 0239D46DB6 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VWis6vY4v2LVfvdetaPgCgIdS9GXulJ13kNFkH9ONmh9BOWIbkYdyH6RCRhyEBQpof85kNBMUR2/fooFxkGhfazjrTlqXS/yrg/VTY7er9p7wwqXU0lcT45KSyzUK9I3qLyt34cgicFjH7nRriJtoMFT0z68kLhBcvxqBRw7IRg59J56vqzwaJinb1p0CJZUPP3J7llLtRckj0lXriSEeVxdE+duxYgR9UhK6IP7LwN4XGeNOx8Cv82FjDQ+ukemWIv98zNikcAoE7kFbbtLzPSpFW/CUChJPLpXl0Vj6EpIFkGFqPFydwOzMbsJwbVcs0zAMygf8pRbWkrtgOAdIA429OAG3Rtjrgom+YPZBiBHUmvs4BrKCnkeURSvl055ySItbROIRk1aL3uKSGhoB/lwgSMXjNKpU4rXgaiVp5JtaeHgKPCwKjkZGz1Rg+c4fltDnvI+qO9XfkMyQBSuFNlEaJi2e3TeYtbhRCw+EnM= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Dec 2019 06:09:13.7501 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5e3f5322-6674-4b50-973d-08d776ee27cb X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3752 Subject: Re: [dpdk-dev] [PATCH v5 3/6] net/axgbe: use common rte bit operation APIs instead 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" Hi Bruce, Thomas, This series of patches was reported a compilation issue[1] on 32bit Ubuntu.= =20 On mainstream 64-bit OS, "unsigned long" is 64-bit in size and we uses the= 64-bit variant of APIs. But the 32-bit OS expect 32-bit 'unsigned long' ar= guments.=20 This is where the error happens.=20 My question is how 32-bit OSes shall we support, put another way, can we ig= nore this compilation issue?=20 If we still need to care, how about making 'obsolete' of 'unsigned long' an= d use 'uint32' instead to be multi-OS friendly?=20 *Meson Build Failed #1: OS: UB1604-32 Target:build-gcc-static [1] http://mails.dpdk.org/archives/test-report/2019-November/109515.html=20 > -----Original Message----- > From: Joyce Kong > Sent: Thursday, November 28, 2019 2:44 PM > To: dev@dpdk.org > Cc: nd ; thomas@monjalon.net; jerinj@marvell.com; > stephen@networkplumber.org; mb@smartsharesystems.com; > david.marchand@redhat.com; Honnappa Nagarahalli > ; Gavin Hu (Arm Technology China) > ; ravi1.kumar@amd.com; rmody@marvell.com; > shshaikh@marvell.com; xuanziyang2@huawei.com; > cloud.wangxiaoyun@huawei.com; zhouguoyang@huawei.com > Subject: [PATCH v5 3/6] net/axgbe: use common rte bit operation APIs > instead >=20 > Remove its own bit operation APIs and use the common one, > this can reduce the code duplication largely. >=20 > Signed-off-by: Joyce Kong > Reviewed-by: Gavin Hu > --- > drivers/net/axgbe/axgbe_common.h | 29 +---------------------------- > drivers/net/axgbe/axgbe_ethdev.c | 14 +++++++------- > drivers/net/axgbe/axgbe_mdio.c | 14 +++++++------- > 3 files changed, 15 insertions(+), 42 deletions(-) >=20 > diff --git a/drivers/net/axgbe/axgbe_common.h > b/drivers/net/axgbe/axgbe_common.h > index 34f60f1..9cabda8 100644 > --- a/drivers/net/axgbe/axgbe_common.h > +++ b/drivers/net/axgbe/axgbe_common.h > @@ -22,6 +22,7 @@ > #include >=20 > #include > +#include > #include > #include > #include > @@ -1674,34 +1675,6 @@ do { > \ > #define time_after_eq(a, b) ((long)((a) - (b)) >=3D 0) > #define time_before_eq(a, b) time_after_eq(b, a) >=20 > -/*---bitmap support apis---*/ > -static inline int axgbe_test_bit(int nr, volatile unsigned long *addr) > -{ > - int res; > - > - rte_mb(); > - res =3D ((*addr) & (1UL << nr)) !=3D 0; > - rte_mb(); > - return res; > -} > - > -static inline void axgbe_set_bit(unsigned int nr, volatile unsigned long= *addr) > -{ > - __sync_fetch_and_or(addr, (1UL << nr)); > -} > - > -static inline void axgbe_clear_bit(int nr, volatile unsigned long *addr) > -{ > - __sync_fetch_and_and(addr, ~(1UL << nr)); > -} > - > -static inline int axgbe_test_and_clear_bit(int nr, volatile unsigned lon= g > *addr) > -{ > - unsigned long mask =3D (1UL << nr); > - > - return __sync_fetch_and_and(addr, ~mask) & mask; > -} > - > static inline unsigned long msecs_to_timer_cycles(unsigned int m) > { > return rte_get_timer_hz() * (m / 1000); > diff --git a/drivers/net/axgbe/axgbe_ethdev.c > b/drivers/net/axgbe/axgbe_ethdev.c > index d1f160e..fa597f3 100644 > --- a/drivers/net/axgbe/axgbe_ethdev.c > +++ b/drivers/net/axgbe/axgbe_ethdev.c > @@ -201,8 +201,8 @@ axgbe_dev_start(struct rte_eth_dev *dev) > axgbe_dev_enable_tx(dev); > axgbe_dev_enable_rx(dev); >=20 > - axgbe_clear_bit(AXGBE_STOPPED, &pdata->dev_state); > - axgbe_clear_bit(AXGBE_DOWN, &pdata->dev_state); > + rte_clear_bit64(AXGBE_STOPPED, &pdata->dev_state); > + rte_clear_bit64(AXGBE_DOWN, &pdata->dev_state); > return 0; > } >=20 > @@ -216,17 +216,17 @@ axgbe_dev_stop(struct rte_eth_dev *dev) >=20 > rte_intr_disable(&pdata->pci_dev->intr_handle); >=20 > - if (axgbe_test_bit(AXGBE_STOPPED, &pdata->dev_state)) > + if (rte_get_bit64(AXGBE_STOPPED, &pdata->dev_state)) > return; >=20 > - axgbe_set_bit(AXGBE_STOPPED, &pdata->dev_state); > + rte_set_bit64(AXGBE_STOPPED, &pdata->dev_state); > axgbe_dev_disable_tx(dev); > axgbe_dev_disable_rx(dev); >=20 > pdata->phy_if.phy_stop(pdata); > pdata->hw_if.exit(pdata); > memset(&dev->data->dev_link, 0, sizeof(struct rte_eth_link)); > - axgbe_set_bit(AXGBE_DOWN, &pdata->dev_state); > + rte_set_bit64(AXGBE_DOWN, &pdata->dev_state); > } >=20 > /* Clear all resources like TX/RX queues. */ > @@ -598,8 +598,8 @@ eth_axgbe_dev_init(struct rte_eth_dev *eth_dev) >=20 > pdata =3D eth_dev->data->dev_private; > /* initial state */ > - axgbe_set_bit(AXGBE_DOWN, &pdata->dev_state); > - axgbe_set_bit(AXGBE_STOPPED, &pdata->dev_state); > + rte_set_bit64(AXGBE_DOWN, &pdata->dev_state); > + rte_set_bit64(AXGBE_STOPPED, &pdata->dev_state); > pdata->eth_dev =3D eth_dev; >=20 > pci_dev =3D RTE_DEV_TO_PCI(eth_dev->device); > diff --git a/drivers/net/axgbe/axgbe_mdio.c > b/drivers/net/axgbe/axgbe_mdio.c > index 2721e5c..00394a7 100644 > --- a/drivers/net/axgbe/axgbe_mdio.c > +++ b/drivers/net/axgbe/axgbe_mdio.c > @@ -743,7 +743,7 @@ static int __axgbe_phy_config_aneg(struct > axgbe_port *pdata) > { > int ret; >=20 > - axgbe_set_bit(AXGBE_LINK_INIT, &pdata->dev_state); > + rte_set_bit64(AXGBE_LINK_INIT, &pdata->dev_state); > pdata->link_check =3D rte_get_timer_cycles(); >=20 > ret =3D pdata->phy_if.phy_impl.an_config(pdata); > @@ -807,9 +807,9 @@ static int axgbe_phy_config_aneg(struct axgbe_port > *pdata) >=20 > ret =3D __axgbe_phy_config_aneg(pdata); > if (ret) > - axgbe_set_bit(AXGBE_LINK_ERR, &pdata->dev_state); > + rte_set_bit64(AXGBE_LINK_ERR, &pdata->dev_state); > else > - axgbe_clear_bit(AXGBE_LINK_ERR, &pdata->dev_state); > + rte_clear_bit64(AXGBE_LINK_ERR, &pdata->dev_state); >=20 > pthread_mutex_unlock(&pdata->an_mutex); >=20 > @@ -880,7 +880,7 @@ static void axgbe_phy_status(struct axgbe_port > *pdata) > unsigned int link_aneg; > int an_restart; >=20 > - if (axgbe_test_bit(AXGBE_LINK_ERR, &pdata->dev_state)) { > + if (rte_get_bit64(AXGBE_LINK_ERR, &pdata->dev_state)) { > pdata->phy.link =3D 0; > goto adjust_link; > } > @@ -900,10 +900,10 @@ static void axgbe_phy_status(struct axgbe_port > *pdata) > return; > } > axgbe_phy_status_result(pdata); > - if (axgbe_test_bit(AXGBE_LINK_INIT, &pdata->dev_state)) > - axgbe_clear_bit(AXGBE_LINK_INIT, &pdata- > >dev_state); > + if (rte_get_bit64(AXGBE_LINK_INIT, &pdata->dev_state)) > + rte_clear_bit64(AXGBE_LINK_INIT, &pdata- > >dev_state); > } else { > - if (axgbe_test_bit(AXGBE_LINK_INIT, &pdata->dev_state)) { > + if (rte_get_bit64(AXGBE_LINK_INIT, &pdata->dev_state)) { > axgbe_check_link_timeout(pdata); >=20 > if (link_aneg) > -- > 2.7.4