From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Richardson, Bruce" Subject: Re: [RFC PATCH 2/2] lib/librte_eal: Remove unnecessary hugepage zero-filling Date: Wed, 18 Nov 2015 16:13:32 +0000 Message-ID: <59AF69C657FD0841A61C55336867B5B035985B24@IRSMSX103.ger.corp.intel.com> References: <1447817231-10510-1-git-send-email-zhihong.wang@intel.com> <1447817231-10510-3-git-send-email-zhihong.wang@intel.com> <8F6C2BD409508844A0EFC19955BE094183467C@SHSMSX152.ccr.corp.intel.com> <20151118080013.3cad8f5b@samsung9> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Cc: "dev@dpdk.org" To: Stephen Hemminger , "Xie, Huawei" Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 820573979 for ; Wed, 18 Nov 2015 17:19:24 +0100 (CET) In-Reply-To: <20151118080013.3cad8f5b@samsung9> Content-Language: en-US List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Stephen Hemminger > Sent: Wednesday, November 18, 2015 4:00 PM > To: Xie, Huawei > Cc: dev@dpdk.org > Subject: Re: [dpdk-dev] [RFC PATCH 2/2] lib/librte_eal: Remove unnecessar= y > hugepage zero-filling >=20 > On Wed, 18 Nov 2015 12:07:54 +0000 > "Xie, Huawei" wrote: >=20 > > >>> The kernel fills new allocated (huge) pages with zeros. > > >>> DPDK just has to touch the pages to trigger the allocation. > > I think we shouldn't reply on the assumption that kernel has zeroed > > the memory. Kernel zeroes the memory mostly to avoid information > > leakage.It could also achieve this by setting each bit to 1. > > What we indeed need to check is later DPDK initialization code doesn't > > assume the memory has been zeroed. Otherwise zero only that part of > > the memory. Does this makes sense? >=20 > If all new pages are zero, why does DPDK have to pre-touch the pages at > all? The pages won't actually be mapped into the processes address space until a= ccessed.=20 /Bruce