DPDK patches and discussions
 help / color / mirror / Atom feed
From: Jerin Jacob Kollanukkaran <jerinj@marvell.com>
To: "thomas@monjalon.net" <thomas@monjalon.net>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
	"ferruh.yigit@intel.com" <ferruh.yigit@intel.com>
Subject: Re: [dpdk-dev] [EXT] Re: [PATCH] eal: change init macro as exec environment specific
Date: Thu, 14 Mar 2019 20:44:15 +0000	[thread overview]
Message-ID: <810ae62704a0d606c8c903446f7dfee2fe94e5b9.camel@marvell.com> (raw)
Message-ID: <20190314204415.ejZqdtJg1P5XBbY9-KN9PlhRL4wTB04CYHlWLPBy6ZI@z> (raw)
In-Reply-To: <f8bd48cd56cff79ab7ce8213717f04f7ceda5520.camel@marvell.com>

On Wed, 2019-03-13 at 14:14 +0530, Jerin Jacob wrote:
> On Wed, 2019-03-13 at 09:16 +0100, Thomas Monjalon wrote:
> > 13/03/2019 09:02, Jerin Jacob Kollanukkaran:
> > > On Tue, 2019-03-12 at 21:33 +0100, Thomas Monjalon wrote:
> > > > 12/03/2019 20:25, Jerin Jacob Kollanukkaran:
> > > > > On Fri, 2019-03-01 at 18:28 +0100, Thomas Monjalon wrote:
> > > > > > 01/03/2019 18:05, Ferruh Yigit:
> > > > > > > On 10/11/2017 3:33 PM, jerin.jacob at caviumnetworks.com
> > > > > > > (Jerin
> > > > > > > Jacob) wrote:
> > > > > > > > From: Thomas Monjalon <thomas at monjalon.net>
> > > > > > > > > 07/08/2017 14:04, Jerin Jacob:
> > > > > > > > > > baremetal execution environments may have a
> > > > > > > > > > different
> > > > > > > > > > method to enable RTE_INIT instead of using compiler
> > > > > > > > > > constructor scheme. Move RTE_INIT* definition under
> > > > > > > > > > exec-env to support different execution
> > > > > > > > > > environments.
> > > > > > > > > > 
> > > > > > > > > > Signed-off-by: Jerin Jacob <jerin.jacob at
> > > > > > > > > > caviumnetworks.com>
> > > > > > > > > > ---
> > > > > > > > > > 
> > > > > > 
> > > > > > I am not sure there is a real desire to make DPDK
> > > > > > ready for bare-metal (back again).
> > > > > > If any of you are aware of a real use-case, we can re-
> > > > > > consider.
> > > > > 
> > > > > Some of the usecases:
> > > > > 
> > > > > # PCIe endpoint mode aka Smart NIC(Where DPDK runs on PCIe
> > > > > card),
> > > > > May
> > > > > not need to waste one core for Linux. Specially Smart NIC
> > > > > market
> > > > > has
> > > > > less number of cores.
> > > > > On the endpoint side, It treats as FW so customer may not
> > > > > have
> > > > > access
> > > > > to so nobdoy cares it is Linux or baremetal so may need to
> > > > > waste
> > > > > one
> > > > > core for Linux
> > > > > 
> > > > > # VM case, it possible to have bare metal guest just to save
> > > > > one a
> > > > > logical core for Linux
> > > > > 
> > > > > # Some of the RTOS like Zephyr already provide TCP/IP stack
> > > > > and
> > > > > good
> > > > > subsystems for specific usecases.
> > > > > 
> > > > > # We are using DPDK for pre silicon validation for SoC mode.
> > > > > Bringing
> > > > > up linux on emulator takes ages, Baremetal can be used for
> > > > > Harware
> > > > > verification too.
> > > > > 
> > > > > 
> > > > > IMO, As long as it not limiting the a feature of Linux app,
> > > > > Why
> > > > > not
> > > > > to
> > > > > allow baremetal? I agree with code duplication. I think, it
> > > > > can
> > > > > be
> > > > > fixed easily, Other than that, Is there any concern?
> > > > 
> > > > The concern is about the effort required.
> > > > Which libc to use? Which dependency is acceptable?
> > > 
> > > # It should be like FreeBSD or Windows EAL port(Where changes
> > > should be
> > > in lib/librte_eal/xxxxxx/)
> > > # Baremetal libc can be newlibc or musl.
> > > # IMO, If bare metal code is open source then the dependency does
> > > not
> > > matter
> > > # if RTOS supports POSIX wrappers, the common code changes will
> > > be
> > > very
> > > minimal.
> > > # In house, We have baremetal support as PoC, where 95% of
> > > changes
> > > are
> > > in lib/librte_eal/xxxxxx/ with POSIX wrappers.
> > 
> > Then maybe you should send your patches so we can decide if it is
> > maintainable enough or not.
> 
> The  __attribute__((constructor)) only stuff we have issue to
> support.
> The common code changes are related to adapt
> __attribute__((constructor)) scheme.
> 
> This patch will fix that issue. Other than that there is no common
> code
> changes.i.e everything emulated under lib/librte_eal/new_port/

Thomas,

I explained the use case and changes required. Let me know, do you need
any other change on this patch to get this patch accepted?




> 
> 
> 
> > 

  reply	other threads:[~2019-03-14 20:44 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-07 12:04 [dpdk-dev] " Jerin Jacob
2017-10-11 13:02 ` Thomas Monjalon
2017-10-11 14:33   ` Jerin Jacob
2019-03-01 17:05     ` Ferruh Yigit
2019-03-01 17:16       ` Ferruh Yigit
2019-03-01 17:28       ` Thomas Monjalon
2019-03-12 19:25         ` [dpdk-dev] [EXT] " Jerin Jacob Kollanukkaran
2019-03-12 20:33           ` Thomas Monjalon
2019-03-13  8:02             ` Jerin Jacob Kollanukkaran
2019-03-13  8:16               ` Thomas Monjalon
2019-03-13  8:44                 ` Jerin Jacob Kollanukkaran
2019-03-14 20:44                   ` Jerin Jacob Kollanukkaran [this message]
2019-03-14 20:44                     ` Jerin Jacob Kollanukkaran
2019-04-02  1:15                     ` Jerin Jacob Kollanukkaran
2019-04-02  1:15                       ` Jerin Jacob Kollanukkaran
2019-04-02 12:45                       ` Thomas Monjalon
2019-04-02 12:45                         ` Thomas Monjalon
2019-04-02 12:57     ` [dpdk-dev] " Thomas Monjalon
2019-04-02 12:57       ` Thomas Monjalon
2019-04-02 13:20       ` Wiles, Keith
2019-04-02 13:20         ` Wiles, Keith
2019-04-03 19:28 ` [dpdk-dev] [PATCH v2] " Jerin Jacob Kollanukkaran
2019-04-03 19:28   ` Jerin Jacob Kollanukkaran
2019-04-03 20:07   ` Thomas Monjalon
2019-04-03 20:07     ` Thomas Monjalon
2019-04-03 21:52     ` Thomas Monjalon
2019-04-03 21:52       ` Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=810ae62704a0d606c8c903446f7dfee2fe94e5b9.camel@marvell.com \
    --to=jerinj@marvell.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=thomas@monjalon.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).