From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <Jerin.Jacob@cavium.com>
Received: from NAM02-CY1-obe.outbound.protection.outlook.com
 (mail-cys01nam02on0084.outbound.protection.outlook.com [104.47.37.84])
 by dpdk.org (Postfix) with ESMTP id B4BA958C3
 for <dev@dpdk.org>; Fri, 23 Sep 2016 08:35:36 +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=SQQF8K5lVJe1JII8IgDee/xXqpLlcJbopxLJPd5+N6k=;
 b=msMK4ig8FFYxd+xERRr2y0jZwbdMQKozanjwKw0stcvUfpz3ovOspzArZ4Oh/UbZnrILVw4EHTTw9ZnThtA4lXuKhEYDYA3SX+BqcfLB117tDOIX9RARfbO8A51X3lkzyb3epKvYVUmbtElBShCfpHqXSgXgMXV/mIXe6R6w8D8=
Authentication-Results: spf=none (sender IP is )
 smtp.mailfrom=Jerin.Jacob@cavium.com; 
Received: from localhost.localdomain (14.140.2.178) by
 BN3PR0701MB1717.namprd07.prod.outlook.com (10.163.39.16) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id
 15.1.639.5; Fri, 23 Sep 2016 06:35:33 +0000
Date: Fri, 23 Sep 2016 12:05:14 +0530
From: Jerin Jacob <jerin.jacob@caviumnetworks.com>
To: Yuanhan Liu <yuanhan.liu@linux.intel.com>
CC: <dev@dpdk.org>
Message-ID: <20160923063513.GA4321@localhost.localdomain>
References: <1471938058-12385-1-git-send-email-yuanhan.liu@linux.intel.com>
 <1474611309-20325-1-git-send-email-yuanhan.liu@linux.intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <1474611309-20325-1-git-send-email-yuanhan.liu@linux.intel.com>
User-Agent: Mutt/1.6.2 (2016-07-01)
X-Originating-IP: [14.140.2.178]
X-ClientProxiedBy: PN1PR01CA0056.INDPRD01.PROD.OUTLOOK.COM (10.164.136.156) To
 BN3PR0701MB1717.namprd07.prod.outlook.com (10.163.39.16)
X-MS-Office365-Filtering-Correlation-Id: b3127b72-0a0a-406f-3bf0-08d3e37bd326
X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1717;
 2:jxyVETAu1I9wKzs1bAUSxFx4jId69cScF4lmI9sruJHsyCdlVYS8g4sII44Khiyd6iL19OxsGsqBGXWlsYYhEPHOUaStnkYA9EKc7ZggtvOTGoX7ixj9DfbrpZjpGi8JjfvoRlFGCLW0gA4fY/9DWSQxmszTZHIylNObeKJ5oyA7lvLz9LI4hmzhrrhpwYgY;
 3:GFy07EsPgqZBomiq2msNSmodXT5apb4vln3L83aNIW15xdIseq/uQbNOGZkSO5vvquWyyVHEzPJ00ixHR5j4K/PXyBGq0x0m/qJz77HGA0mlmN6xIXybYGWewAvb9ss/
X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR0701MB1717;
X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1717;
 25:Zdzu1BtHVGOiywhRaVbh0AJHNxvXUjVHma+IiyqGTBd5gcyO+PV8xgukdvnPNg/3W/FKJrF8JKWe2woESq4mcLeuHoy8cts0SLANPkw/8MdE5qNWYws3y6HJZ49pYpvmx1VDoiL/KPxVfO94wRa7nRqw6NBz9KEYb98AlBqpi2yG1ssHKyuVwQkQAls714puHgtOcjCoK00HWDBds6ZS0GsFmvEplN2a0icPggMbWfRcRrwIN3LejSw+3qf9WPJLPacaDTn1E1ZxVCfEHYH3uwIXQboDqMV7kySa9ygOoauuLJmJRb9ykA3swAwATWKOb+MZvsB8+8otpaxKIlmWKWlJaBPEQL8+pn02wOx2Anlzbt5Dkbu/LOc7jYy3rzCFppAIeYyf3vH5Pm/2ujbZfvW5kw63Ti/58AirHFWFKo8cFomX8G6NBV9fcOMP4LxchALUNRkQoER9Bq01G9hkCL/vBlLtpQ73xsuBDvIpyC7hl+bT6HzT6vBvcu6KhnMvGEs5MYS4/E2wg4PvIghGQMh0apPcZMHJ+MoLyCaF+YcvMMwE3VPckmi1XEjiqAlL3s509W2VQvVAQXJlijay2mgvaM7SXolVmHHnsmpvxDC5P93JaAqqSgssnjLHz+OSBk894/E/7KNpAJ5hB/ol9wv3bYySzPEX+PtskiKvWflTDD20Tw9atHuSyMP7ceSkL8ZW2N337uz04eCXeinDjm8D1TPZbA1qh4UZymgSdWQI9v3UQuxcdlNv718PiCl+mWDd7JGjB9vJxZaPoOlBGM+J/h8507yK4EkMXneyAknhzRtbUWg8yexROj/Awi0oUgiFEHiZOQCBq2d1daB/lw==
X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1717;
 31:CdKuzq7pvRkJjesTC4OTlcfYDwPAOsKb4z/0jRpZd2QmYhzao/2gJF0HxcKlw2NdFNmgwyC93V5fuQABbqF2kneafG/SWgXI6oMbp1ekoo/nLuBqDs501a7SsjMkEDlyj0IXs2W5L5083li20z7QXLQAmAv4QmxRKPv7SCGbIfYkn9qTIauYLJq5J3mjvNNOrg6nvyMx/Nw8UyQ44+K7/n1wysI8cKTHIFnJGXGodHo=;
 20:sNTP2vSU4FwcbKXuUrC+ujAmN4er1d2lzIP/fQlNevf9U6WiFvFPZb/hjRMLmh5YRiHMcjLVxI5ANvYu5Wd2hXDHvaUH8rlNNFWbNgGChav4WVOxojQhp2rad5NZCSQXhFsYSkP7HCj+B3mEfwdOdNiiYxKBeLzdTX7quacuu5xF+BeT7TBh26/idskdlnedeIx2+KdzVM8y1+BN9mHeYFMAEHVmnPNE+Y7o9fM+CpvuJe+SK4UUrmaWNmEzXsLjmK0YtrhART4RumfyWRGmzOhAv5ywcQcIpHonlmflSfO0DNuIscVAGCkj+Eq40gLkM+Pauk+dZpjYig6lFVQomFigTfTLTrYfMVNObcbJpGnTvmN/MYKljkhHPi/yiaAdsqc6ue6znU1Bg3Kq8q7jy3fxez7us4p404cJoWDuMxkQVyJoyqWTO+L1W304uptQb4XPP/8y8V2+acGVIy0JSm6EU6FQh/AVhpUTyb+k3awzifd8UGmaNPs1eDh82fyfwnhYYdeWmAVn1AkILaUkhHbbMKpQzqO+u5BHkufkHfNI9IqqbIS+q8gpabMkMhgtTJBXbx1ZMyEnE1ujxvcJLJrxi62ET77PrhJkAnwpsKg=
X-Microsoft-Antispam-PRVS: <BN3PR0701MB1717491E650F2A6FBA43B7E881C80@BN3PR0701MB1717.namprd07.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(788757137089)(228905959029699);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001);
 SRVR:BN3PR0701MB1717; BCL:0; PCL:0; RULEID:; SRVR:BN3PR0701MB1717; 
X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1717;
 4:oCODDPGjlu7jGHqR7Cuva+VbymT3hQrsnDTmdEH+jAAZWKCnFzM4jhS7N3HPRGDtAxcMTq8wvYodunypniWPVglUREcp+Xst3AuCw0DOLJC+lyRc2Z7/WVFu7z5BquaXzXO38oPBVs4VqiaK6EM1t6StES1q8cNl/RfwMQwidYswXogLQobhO3YNhZ43HhBWRWHGKNXVi6+EJ4SzdwjMp1a89IRxFaWD6KB+Xn87JtQ/TzovL3YRoyYLJwEXw3LerblCtybklMaZ17otvITwTYq5sl25IVjLosixvmASRMBm+K/o1b2iNmx86eh/Bb3IuHWfkQujpYuHViFNvpCsoxReO7xZQLkO3bsTnM1PPPhPtskk7MnzIeUziNcoF5cLZ7eY+XOO6txIrUQDitlgXNbyI3BpFctSwTLUbKsaAVCvOz/klkOwztKbiyDUpfydubDtFOQsT8VMJ31Ax1aB0g==
X-Forefront-PRVS: 0074BBE012
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(4630300001)(6069001)(6009001)(7916002)(199003)(189002)(24454002)(19580395003)(9686002)(68736007)(5660300001)(305945005)(15395725005)(7846002)(77096005)(7736002)(2906002)(19580405001)(4326007)(33656002)(1076002)(3846002)(50466002)(97756001)(66066001)(61506002)(2950100001)(46406003)(110136003)(47776003)(15975445007)(6116002)(23726003)(5009440100003)(42186005)(92566002)(105586002)(8676002)(81156014)(81166006)(83506001)(50986999)(4001350100001)(101416001)(54356999)(97736004)(106356001)(189998001)(586003)(76176999)(7099028)(110426003)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR0701MB1717; H:localhost.localdomain; FPR:;
 SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
Received-SPF: None (protection.outlook.com: cavium.com does not designate
 permitted sender hosts)
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0701MB1717;
 23:Ppa6OMSCv4+4QGEq9AFaHOWXx+TKl+7omVmD9uO?=
 =?us-ascii?Q?zous1ekH8v9qH9HRZQ/u72MEgcxEJ5vuWxqeih+sX2/PtV5Df9Dc4sashbw9?=
 =?us-ascii?Q?1zkcnwz/CX4LRE8SHzfazsiYYnGSN2Jsby7hTLydYaB1ZkDZeCCkZYo6fUG6?=
 =?us-ascii?Q?dMfk/qhbuWHGxDixwimO093jqbRuXUPwOZQJVwIRQMY6Ze2Q1Ud/ZXgsVqC2?=
 =?us-ascii?Q?p8f2zwPz0qBWCf6ke7VFZr9GxToiXm1/KNf4/LuFFsvJWJwaOKKRGSTRbgoa?=
 =?us-ascii?Q?IRhstvnSID0vEHtf8W7Ot7ZD0KAuJDYj5H4pv4uqJWX7IibCJmxSSvGUA9uM?=
 =?us-ascii?Q?nJAXEmMnya0a401JFscwj0cAARvq3o6Y5/Mt/johANKF88ENxCD8NZMmdkj9?=
 =?us-ascii?Q?5UBl9NcdKENIG4lLnc6ETj9dixIlJTpAtfFjC6hSdjrQhwndWSxGGE7mg7jG?=
 =?us-ascii?Q?PzAwu/FGBQA8xL7EijAM77oL3IgU6Jw+VDgcQBnhYhfZP43PQhcS+O0kWZO0?=
 =?us-ascii?Q?xFtWMZTWYtj0tZ0T+eCsv/bASlz0OEQMxk1m+C4Xq3qMiNf7POViUQH41xNs?=
 =?us-ascii?Q?PHzfs8TWAjxFyBy4j4G8rgNnoqBTgzk/GVEnS4sK3pRa0O8KMbDaVW64FGrr?=
 =?us-ascii?Q?m/3YQTK5ViVsv/CtAHRphR9gG0dfNLw1K+BGaKyfj7tx4PrthsAO+cXLVK35?=
 =?us-ascii?Q?SF5mrqnI+T52loDrfJUQ58C1SkUhhxb/t+PhWC/bS9L2sQIbzB1a4/+SzQ3+?=
 =?us-ascii?Q?96Xz4fR9bJB2db5oAZOiE6OVWJFxZrjnWx9EaMsv+kTB/7olr5IwtvU7DSbz?=
 =?us-ascii?Q?jzsWHjJc0jt7k5ErlEJW5N4Cdp1rq+L8N3GhTwPDhR/qYBzsMzgkgqmMEj4d?=
 =?us-ascii?Q?XSZG5c0QUG9qrG0zqGjNiq9v/v5KTwh+TrBqaIf6CBtuatN3D7FQ/ORf/hcM?=
 =?us-ascii?Q?xESMu5O1LFlaTe1b7is8i4khc8E+9kH2sqBv7S16p6OUV/XeAHmShsYHA4XK?=
 =?us-ascii?Q?lg/r/vlIiJ+a9QzyV61SS7EQXOylCfgz9dgdF0FA6jsbFACRYS33QPpO3cOA?=
 =?us-ascii?Q?r/mrI7MSo1dr+q0wcTZufLqO/AR3VcHkDTA20Yset/tc3JAHnSzgqKhi4uEp?=
 =?us-ascii?Q?xlZ9emPi1Y/CrIGczDEv8UweuchtGrBsW0dkKLK/zCISINg6uW7MfTKNs8oV?=
 =?us-ascii?Q?clRwmBPpv/qvVo7Yv5m6ZF/c2QDDYqySTyhzlmI1EpOJYQ1jYzhb8pqSBggt?=
 =?us-ascii?Q?g7Z2hWYWBpIdnBjJB4043EzOYYwdmdtRg0ihGGpvtfWrJNLjCI0WPS4DlUZq?=
 =?us-ascii?Q?g9OL4SBxkelQYUCJfdae3cwktXUphJ4X7GnnialFwo5w9?=
X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1717;
 6:E4SdrCPrh65GJoVnM484Ye4NVXj7GTS7OMGdvoeC+O0cN2XvJEhMW139LJfomFR6h34cDJkqMJt/aJ1luUTdcrYYGVCWYJrQrJWIBrp2MaJcThxV1LxngxQO1GewbpCY0qAvL5sJONK6a1Wa1ULspCcMBA0ApGID0ESqV+JsWWKMkTWxR+TK7h6bV2z3/1M+r4fkwyPbL1fRzopUuJChDaJicwq+PrdUtY6VUftyMwtk1Zco8R9slZmxUE041Jx6tKaL1GQ7Iv32ENMoJOYAeqO7ii0xMnXkxcNzd5MT0j0=;
 5:+HmkNJhoinJpAdiYdQatHepEAJKe5welH4CHLiSfqO4eoz/eGRWICps6Ls3FABTwP/peLryc2F5ZCH7cQ+5eK6/E44zkpWx0AK8aJh9hIj1O044qr3V0o3Gkg/ohPAcUzhSU2bMk/kjlpv4hdMmBqA==;
 24:byDtCo8AJNDBJZJo6W0YS+DexTO0VD6daQCApf2I/TZpmDMtQCpjEqLURNTa60sPxEsDEIksrA0MxXfVSxiSg8Ikskl9PtC47N0rVZOu2SA=;
 7:MCHiN4d0IMDpQc8QSt+GG6JbSd60Dml4FyXAN07zuF4fOcxo183158eOTAWK5G1X+taLwLGpmq9KbA1Ka+B81cWektLVptdGSiz0Nujk+VHVn3EdgR7PrI4p8qaT6CQ0rUgjK3i0yDogvuVsZRD25rTAktUM49B4iynKjkck6oSQ/aM8XhBu11rDzshoBONiNd+NvaQubE7C/Ky0ebvKSA0h4gAOKydoohOq9korSSrjydV/6DWi5uMGHRxzy3iVfP9V1XjpMwCydgHP2WHtiM71ILtEK+sKeKoNZT0wTQjbCrlFxhiE9ua2JDgEdC7Q
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-OriginatorOrg: caviumnetworks.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Sep 2016 06:35:33.5639 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0701MB1717
Subject: Re: [dpdk-dev] [PATCH v2] net/virtio: fix build error with clang
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches and discussions about DPDK <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Fri, 23 Sep 2016 06:35:37 -0000

On Fri, Sep 23, 2016 at 02:15:09PM +0800, Yuanhan Liu wrote:

Hi Yuanhan,

Thanks for this patch.

> Interestingly, clang and gcc has different prototype for _mm_prefetch().
> For gcc, we have
> 
>    _mm_prefetch (const void *__P, enum _mm_hint __I)
> 
> While for clang, it's
> 
>    #define _mm_prefetch(a, sel) (__builtin_prefetch((void *)(a), 0, (sel)))
> 
> That how the following error comes with clang:
> 
>    error: cast from 'const void *' to 'void *' drops const qualifier
>    [-Werror,-Wcast-qual]
>            _mm_prefetch((const void *)rused, _MM_HINT_T0);
>    /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/xmmintrin.h:684:58:
>    note: expanded from macro '_mm_prefetch'
>             #define _mm_prefetch(a, sel) (__builtin_prefetch((void *)(a),
>                                           0, (sel)))
> 
> What's weird is that the build was actaully Okay before. I met it while
> apply Jerin's vector support for ARM patch set: he just move this peiece
> of code to another file, nothing else changed.
> 
> This patch fix the issue when Jerin's patchset is applied. Thus, I think
> it's still needed.

The info notes can be moved under the "---" marker line to make git log
clean.

This patch review is holding the virtio arm NEON support. Appreciate any help
in reviewing this patch.

http://dpdk.org/dev/patchwork/patch/14567/

> 
> Fixes: fc3d66212fed ("virtio: add vector Rx")
> 
> Cc: Jerin Jacob <jerin.jacob@caviumnetworks.com>
> Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
> ---
> v2: replace _mm_prefetch with rte_prefetch0 to make icc happy
> ---
>  drivers/net/virtio/virtio_rxtx_simple.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/virtio/virtio_rxtx_simple.c b/drivers/net/virtio/virtio_rxtx_simple.c
> index 6517aa8..d8dd17c 100644
> --- a/drivers/net/virtio/virtio_rxtx_simple.c
> +++ b/drivers/net/virtio/virtio_rxtx_simple.c
> @@ -200,7 +200,7 @@ virtio_recv_pkts_vec(void *rx_queue, struct rte_mbuf **rx_pkts,
>  	sw_ring  = &vq->sw_ring[desc_idx];
>  	sw_ring_end = &vq->sw_ring[vq->vq_nentries];
>  
> -	_mm_prefetch((const void *)rused, _MM_HINT_T0);
> +	rte_prefetch0(rused);
>  
>  	if (vq->vq_free_cnt >= RTE_VIRTIO_VPMD_RX_REARM_THRESH) {
>  		virtio_rxq_rearm_vec(rxvq);
> -- 
> 1.9.0
>