From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oi0-f53.google.com (mail-oi0-f53.google.com [209.85.218.53]) by dpdk.org (Postfix) with ESMTP id 8D3A058EE for ; Wed, 27 Aug 2014 11:30:03 +0200 (CEST) Received: by mail-oi0-f53.google.com with SMTP id a3so1431341oib.40 for ; Wed, 27 Aug 2014 02:34:06 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=aVmP7xnGAMLIZz1fRUsvzTF+NaBGgZjd2IE0oNUI7mU=; b=hrcHJ3nb5MZO8AuzXOK82IaTI64Uu76HkCpUb0ebnsA/8EtGO7W3olC/ppr3mBC00p Yh8pSbdGLRKm8VeLkNZI7GvXDB7OMutFwTghE3DtW5i0XN4QGloHztkjrb83SiILA3dB dojN9Y7JYoJhMpfNGaWfhs83ql2NkU2fWoxW2GbVt8GUHJrDZkdt+6zOVcdMLrdpYArp wVZSp6qyPsbEm0+sdSht0DTzz7WCXXgwaegJVzhD6NZMdCayKymfut4/nSL1xHpNe4Jk Jv2BVANnkui7wrA9DTJ4eoNqm3VE0xgoelXskd5ciIM4wu2I2eaJL1l3CSLGai4Encox gxOw== X-Gm-Message-State: ALoCoQldqWrKFLIe0YBVckFb/m5IJYxmAigO2GwdANs1Bd40fY5STxwqDZ5/DtJo1xuo7lfqVG7u MIME-Version: 1.0 X-Received: by 10.60.162.71 with SMTP id xy7mr32844527oeb.33.1409132046596; Wed, 27 Aug 2014 02:34:06 -0700 (PDT) Received: by 10.202.214.88 with HTTP; Wed, 27 Aug 2014 02:34:06 -0700 (PDT) In-Reply-To: References: <1409062300-17004-1-git-send-email-david.marchand@6wind.com> Date: Wed, 27 Aug 2014 11:34:06 +0200 Message-ID: From: David Marchand To: "Xie, Huawei" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] [PATCH RFC 0/3] only call iopl when necessary 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: Wed, 27 Aug 2014 09:30:04 -0000 Hello, On Wed, Aug 27, 2014 at 11:22 AM, Xie, Huawei wrote: > Hi David: > The reason iopl is put in rte_eal_init is that we want all later created > DPDK processes/threads inherit the iopl permission. > If you only call iopl in pmd_init, RX/TX and other threads which needs io > permission will segmentation fault. > rte_virtio_pmd_init() is the constructor that registers the virtio pmd in the driver list. It is called from rte_eal_dev_init() in rte_eal_init(). So it means my patch only moved the call to iopl() a little later in rte_eal_init() and this is still before any thread has been created. I can't see why this would cause a problem. -- David Marchand