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 625042BB1 for ; Fri, 16 Nov 2018 18:35:51 +0100 (CET) Received: from pps.filterd (m0098396.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id wAGHY4aH020051 for ; Fri, 16 Nov 2018 12:35:50 -0500 Received: from e16.ny.us.ibm.com (e16.ny.us.ibm.com [129.33.205.206]) by mx0a-001b2d01.pphosted.com with ESMTP id 2nt1kma8f7-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 16 Nov 2018 12:35:50 -0500 Received: from localhost by e16.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 16 Nov 2018 17:35:49 -0000 Received: from b01cxnp22034.gho.pok.ibm.com (9.57.198.24) by e16.ny.us.ibm.com (146.89.104.203) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Fri, 16 Nov 2018 17:35:47 -0000 Received: from b01ledav006.gho.pok.ibm.com (b01ledav006.gho.pok.ibm.com [9.57.199.111]) by b01cxnp22034.gho.pok.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id wAGHZkxT40763562 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Fri, 16 Nov 2018 17:35:46 GMT Received: from b01ledav006.gho.pok.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0EFD3AC064; Fri, 16 Nov 2018 17:35:46 +0000 (GMT) Received: from b01ledav006.gho.pok.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 79D7EAC067; Fri, 16 Nov 2018 17:35:45 +0000 (GMT) Received: from oc8377887825.ibm.com (unknown [9.85.142.83]) by b01ledav006.gho.pok.ibm.com (Postfix) with ESMTP; Fri, 16 Nov 2018 17:35:45 +0000 (GMT) From: David Wilder To: dev@dpdk.org Cc: stable@dpdk.org, chaozhu@linux.vnet.ibm.com, thomas@monjalon.net Date: Fri, 16 Nov 2018 09:35:38 -0800 X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 X-TM-AS-GCONF: 00 x-cbid: 18111617-0072-0000-0000-000003CA19EF X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00010062; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000270; SDB=6.01118366; UDB=6.00577118; IPR=6.00898475; MB=3.00024196; MTD=3.00000008; XFM=3.00000015; UTC=2018-11-16 17:35:48 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18111617-0073-0000-0000-00004A21376F Message-Id: <20181116173538.5321-1-dwilder@us.ibm.com> Content-Type: text/plain Content-Transfer-Encoding: 8bit X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2018-11-16_10:, , signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=900 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1811160155 Subject: [dpdk-dev] [PATCH v3] mem: Fix anonymous mapping on Power9. 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: , X-List-Received-Date: Fri, 16 Nov 2018 17:35:51 -0000 Removed the use of MAP_HUGETLB for anonymous mapping on ppc64. The MAP_HUGETLB had previously been added to workaround issues on IBM Power8 systems when mapping /dev/zero (see: commit 284ae3e9ff9a92575c28c858efd2c85c8de6d440). In the current code the MAP_HUGETLB flag will cause the anonymous mapping to fail on Power9. Note, Power8 is currently failing to correctly mmap Hugepages, with and without this change. Signed-off-by: David Wilder Reviewed-by: Pradeep Satyanarayana --- V2- Updated release notes. V3- fixed spelling. MAINTAINERS | 2 +- doc/guides/linux_gsg/sys_reqs.rst | 6 ------ doc/guides/rel_notes/release_18_11.rst | 1 + lib/librte_eal/linuxapp/eal/eal_memalloc.c | 3 --- lib/librte_eal/linuxapp/eal/eal_memory.c | 4 ---- 5 files changed, 2 insertions(+), 14 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index 19353ac89..c4d2fd086 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -233,7 +233,7 @@ F: drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c F: drivers/net/i40e/i40e_rxtx_vec_neon.c F: drivers/net/virtio/virtio_rxtx_simple_neon.c -IBM POWER +IBM POWER (alpha) M: Chao Zhu F: lib/librte_eal/common/arch/ppc_64/ F: lib/librte_eal/common/include/arch/ppc_64/ diff --git a/doc/guides/linux_gsg/sys_reqs.rst b/doc/guides/linux_gsg/sys_reqs.rst index e2230f37b..c02ec28c1 100644 --- a/doc/guides/linux_gsg/sys_reqs.rst +++ b/doc/guides/linux_gsg/sys_reqs.rst @@ -183,12 +183,6 @@ On a NUMA machine, pages should be allocated explicitly on separate nodes:: For 1G pages, it is not possible to reserve the hugepage memory after the system has booted. - On IBM POWER system, the nr_overcommit_hugepages should be set to the same value as nr_hugepages. - For example, if the required page number is 128, the following commands are used:: - - echo 128 > /sys/kernel/mm/hugepages/hugepages-16384kB/nr_hugepages - echo 128 > /sys/kernel/mm/hugepages/hugepages-16384kB/nr_overcommit_hugepages - Using Hugepages with the DPDK ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/doc/guides/rel_notes/release_18_11.rst b/doc/guides/rel_notes/release_18_11.rst index 51d007582..a271badbe 100644 --- a/doc/guides/rel_notes/release_18_11.rst +++ b/doc/guides/rel_notes/release_18_11.rst @@ -532,6 +532,7 @@ Known Issues driver; the Linux netvsc device must be brought up before the netvsc device is unbound and passed to the DPDK. +* IBM Power8 is not supported by this release of DPDK. IBM Power9 is supported. Tested Platforms ---------------- diff --git a/lib/librte_eal/linuxapp/eal/eal_memalloc.c b/lib/librte_eal/linuxapp/eal/eal_memalloc.c index 48b9c7360..784939566 100644 --- a/lib/librte_eal/linuxapp/eal/eal_memalloc.c +++ b/lib/librte_eal/linuxapp/eal/eal_memalloc.c @@ -753,9 +753,6 @@ alloc_seg(struct rte_memseg *ms, void *addr, int socket_id, munmap(addr, alloc_sz); unmapped: flags = MAP_FIXED; -#ifdef RTE_ARCH_PPC_64 - flags |= MAP_HUGETLB; -#endif new_addr = eal_get_virtual_area(addr, &alloc_sz, alloc_sz, 0, flags); if (new_addr != addr) { if (new_addr != NULL) diff --git a/lib/librte_eal/linuxapp/eal/eal_memory.c b/lib/librte_eal/linuxapp/eal/eal_memory.c index 48b23ce19..6f94621d4 100644 --- a/lib/librte_eal/linuxapp/eal/eal_memory.c +++ b/lib/librte_eal/linuxapp/eal/eal_memory.c @@ -847,10 +847,6 @@ alloc_va_space(struct rte_memseg_list *msl) void *addr; int flags = 0; -#ifdef RTE_ARCH_PPC_64 - flags |= MAP_HUGETLB; -#endif - page_sz = msl->page_sz; mem_sz = page_sz * msl->memseg_arr.len; -- 2.19.1