From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergio Gonzalez Monroy Subject: Re: [PATCH v9 1/2] eal: fix race-condition in pri/sec proc startup Date: Wed, 9 Mar 2016 14:27:44 +0000 Message-ID: <56E032E0.8050206@intel.com> References: <1457518362-32762-1-git-send-email-harry.van.haaren@intel.com> <1457530645-14776-1-git-send-email-harry.van.haaren@intel.com> <1457530645-14776-2-git-send-email-harry.van.haaren@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org To: Harry van Haaren , david.marchand@6wind.com Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 8AC392BF4 for ; Wed, 9 Mar 2016 15:28:10 +0100 (CET) In-Reply-To: <1457530645-14776-2-git-send-email-harry.van.haaren@intel.com> 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" On 09/03/2016 13:37, Harry van Haaren wrote: > This patch fixes a race-condition when a primary and > secondary process simultaneously probe PCI devices. > > This is implemented by moving the rte_eal_mcfg_complete() > function call in rte_eal_init() until after rte_eal_pci_probe(). > The memory mapping of PCI device in the secondary process *must* > happen after the primary has finished doing the mapping as it > relies on information written by the primary. > > The end result is that the secondary process waits longer, > until the primary has completed its PCI probing, and then > notifies the secondary process. > > This race-condition became visible during the development of > a function that allows a secondary process to be polling until > a primary process exists. The secondary would then probe PCI > devices at the same time, causing an error during rte_eal_init() > > Linux EAL: > Fixes: 916e4f4f4e45 ("memory: fix for multi process support") > > BSD EAL: > Fixes: 764bf26873b9 ("add FreeBSD support") > > Signed-off-by: Harry van Haaren > --- > Acked-by: Sergio Gonzalez Monroy