From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Burakov, Anatoly" Subject: Re: [PATCH v2] mem: limit use of address hint Date: Tue, 2 Apr 2019 17:13:05 +0100 Message-ID: <0ccaf7f1-e10c-de6a-1219-76ce6e76119f@intel.com> References: <20190321202156.117496-1-shahafs@mellanox.com> <20190331084348.4740-1-shahafs@mellanox.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org, stable@dpdk.org, alejandro.lucero@netronome.com To: Shahaf Shuler , thomas@monjalon.net Return-path: In-Reply-To: <20190331084348.4740-1-shahafs@mellanox.com> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 31-Mar-19 9:43 AM, Shahaf Shuler wrote: > patch[1] added an address hint as starting address for 64 bit systems in > case an explicit base virtual address was not set by the user. > > The justification for such hint was to help devices that work in VA > mode and has a address range limitation to work smoothly with the eal > memory subsystem. > > While the base address value selected may work fine for the eal > initialization, it easily breaks when trying to register external memory > using rte_extmem_register API. > > Trying to register anonymous memory on RH x86_64 machine took several > minutes, during them the function eal_get_virtual_area repeatedly > scanned for a good VA candidate. > > The attempt to guess which VA address will be free for mapping will > always result in not portable, error prone code: > * different application may use different libraries along w/ DPDK. One > can never guess which library was called first and how much virtual > memory it consumed. > * external memory can be registered at any time in the application run > time. > > In order not to break the existing secondary process design, this patch > only limits the max number of tries that will be done with the > address hint. > When the number of tries exceeds the threshold the code > will use the suggested address from kernel. > > Fixes: 1df21702873d ("mem: use address hint for mapping hugepages") > Cc: stable@dpdk.org > Cc: alejandro.lucero@netronome.com > > [1] commit 1df21702873d ("mem: use address hint for mapping hugepages") > > Signed-off-by: Shahaf Shuler > --- > > On v2: > * instead of a complete remove of the hint limit the number of tries we allow. > --- LGTM Tested-by: Anatoly Burakov We can always increase the number of tries later :) -- Thanks, Anatoly