From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by dpdk.org (Postfix) with ESMTP id 6E4475692 for ; Fri, 26 Aug 2016 12:55:12 +0200 (CEST) Received: from pps.filterd (m0098410.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.11/8.16.0.11) with SMTP id u7QAsPhL141400 for ; Fri, 26 Aug 2016 06:55:11 -0400 Received: from e28smtp06.in.ibm.com (e28smtp06.in.ibm.com [125.16.236.6]) by mx0a-001b2d01.pphosted.com with ESMTP id 252b0d5511-1 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT) for ; Fri, 26 Aug 2016 06:55:11 -0400 Received: from localhost by e28smtp06.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 26 Aug 2016 16:25:07 +0530 Received: from d28dlp03.in.ibm.com (9.184.220.128) by e28smtp06.in.ibm.com (192.168.1.136) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Fri, 26 Aug 2016 16:25:04 +0530 X-IBM-Helo: d28dlp03.in.ibm.com X-IBM-MailFrom: chaozhu@linux.vnet.ibm.com X-IBM-RcptTo: dev@dpdk.org Received: from d28relay06.in.ibm.com (d28relay06.in.ibm.com [9.184.220.150]) by d28dlp03.in.ibm.com (Postfix) with ESMTP id C68D4125804F for ; Fri, 26 Aug 2016 16:28:23 +0530 (IST) Received: from d28av01.in.ibm.com (d28av01.in.ibm.com [9.184.220.63]) by d28relay06.in.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id u7QAt46H49807438 for ; Fri, 26 Aug 2016 16:25:04 +0530 Received: from d28av01.in.ibm.com (localhost [127.0.0.1]) by d28av01.in.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id u7QAt2Kq019236 for ; Fri, 26 Aug 2016 16:25:03 +0530 Received: from ADMINIB2M8Q79C (adminib-2m8q79c.cn.ibm.com [9.119.156.195]) by d28av01.in.ibm.com (8.14.4/8.14.4/NCO v10.0 AVin) with ESMTP id u7QAswoe018902; Fri, 26 Aug 2016 16:24:59 +0530 From: "Chao Zhu" To: "'Thomas Monjalon'" , Cc: References: <1471343279-24014-1-git-send-email-gowrishankar.m@linux.vnet.ibm.com> <001f01d1f864$46b65eb0$d4231c10$@linux.vnet.ibm.com> In-Reply-To: <001f01d1f864$46b65eb0$d4231c10$@linux.vnet.ibm.com> Date: Fri, 26 Aug 2016 18:55:26 +0800 MIME-Version: 1.0 Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Outlook 15.0 Thread-Index: AQH6xiYCN7Wnquj52lwX6rKhSKsARwG9wuH8n/uV4qA= Content-Language: zh-cn X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 16082610-0048-0000-0000-000002FB7E5F X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 16082610-0049-0000-0000-00000E91BC83 Message-Id: <001701d1ff88$5b468b40$11d3a1c0$@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2016-08-26_07:, , signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1604210000 definitions=main-1608260128 Subject: [dpdk-dev] FW: [PATCH v6 0/9] enable lpm, acl and other missing libraries in ppc64le X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Aug 2016 10:55:12 -0000 Thomas, Any comments of this patch set? Are we waiting for more acks? Thank you! -----Original Message----- From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Chao Zhu Sent: 2016=C4=EA8=D4=C217=C8=D5 16:49 To: 'Gowrishankar Muthukrishnan' ; dev@dpdk.org Cc: 'Bruce Richardson' ; 'Konstantin = Ananyev' ; 'Thomas Monjalon' ; 'Cristian Dumitrescu' ; 'Pradeep' Subject: Re: [dpdk-dev] [PATCH v6 0/9] enable lpm, acl and other missing libraries in ppc64le -----Original Message----- From: Gowrishankar Muthukrishnan = [mailto:gowrishankar.m@linux.vnet.ibm.com] Sent: 2016=C4=EA8=D4=C216=C8=D5 18:28 To: dev@dpdk.org Cc: Chao Zhu ; Bruce Richardson ; Konstantin Ananyev ; Thomas Monjalon = ; Cristian Dumitrescu ; Pradeep Subject: [PATCH v6 0/9] enable lpm, acl and other missing libraries in ppc64le This patchset enables LPM, ACL and other few missing libs in ppc64le and also address few patches in related examples (ip_pipeline and l3fwd). Test report: 1. LPM and ACL unit tests passed. Steps: compile test app and run (with any needed params) lpm_autotest acl_autotest table_autotest test_table_lpm_combined fails same as in intel in current master. 2. Example ip_pipeline application verified for port forwarding. compile examples/ip_pipeline (adjust app_init_core_map param for ht to 1 in case of ppc64le in SMT=3Doff mode). modify config/l3fwd.cfg as per enabled PMD ports. run ip_pipeline with config file option and check packets fwd. v6 changes: - added cache alignment fix for rte hash table structs. v5 changes: - no change in lpm lib enablement - no change in acl lib enablement - config file changes individually for sched,table,port,pipeline lib enablement - ip_pipeline patch description and changes flagged only for ppc64le. app_init_core_map changes removed (due to bug found and under=20 investigation only on ppc64le/smt=3Doff case). v4 changes: - fix transition4 in acl_run_altivec.h for gcc strict-aliasing error. Thanks to Chao Zhu for bringing up. v3 changes: - rebase over master to fix conflict in examples/l3fwd/l3fwd_em.c v2 changes: - enabling libs in config included as part of lib changes itself. Gowrishankar Muthukrishnan (9): lpm: add altivec intrinsics for dpdk lpm on ppc_64 acl: add altivec intrinsics for dpdk acl on ppc_64 l3fwd: add altivec support for em_hash_key table: enable table library for ppc64le sched: enable sched library for ppc64le port: enable port library for ppc64le pipeline: enable pipeline library for ppc64le ip_pipeline: fix lcore mapping for varying SMT threads as in ppc64 table: align rte table hash structs for cache line size app/test-acl/main.c | 4 + app/test/test_xmmt_ops.h | 16 + config/defconfig_ppc_64-power8-linuxapp-gcc | 7 - examples/ip_pipeline/cpu_core_map.c | 8 + examples/l3fwd/l3fwd_em.c | 10 +- lib/librte_acl/Makefile | 2 + lib/librte_acl/acl.h | 4 + lib/librte_acl/acl_run.h | 2 + lib/librte_acl/acl_run_altivec.c | 47 +++ lib/librte_acl/acl_run_altivec.h | 329 +++++++++++++++++++++ lib/librte_acl/rte_acl.c | 13 + lib/librte_acl/rte_acl.h | 1 + .../common/include/arch/ppc_64/rte_vect.h | 60 ++++ lib/librte_lpm/Makefile | 2 + lib/librte_lpm/rte_lpm.h | 2 + lib/librte_lpm/rte_lpm_altivec.h | 154 ++++++++++ lib/librte_table/rte_table_hash_key16.c | 4 +- lib/librte_table/rte_table_hash_key32.c | 4 +- lib/librte_table/rte_table_hash_key8.c | 2 +- 19 files changed, 658 insertions(+), 13 deletions(-) create mode = 100644 lib/librte_acl/acl_run_altivec.c create mode 100644 lib/librte_acl/acl_run_altivec.h create mode 100644 lib/librte_eal/common/include/arch/ppc_64/rte_vect.h create mode 100644 lib/librte_lpm/rte_lpm_altivec.h -- 1.9.1 I think this patch set is good enough. Acked-by: Chao Zhu