DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ashish Sadanandan <ashish.sadanandan@gmail.com>
To: Thomas Monjalon <thomas@monjalon.net>
Cc: dev@dpdk.org, nelio.laranjeiro@6wind.com, stable@dpdk.org
Subject: Re: [PATCH v3 1/1] eal: add C++ include guard in generic/rte_vect.h
Date: Sat, 6 Apr 2024 19:30:38 -0600	[thread overview]
Message-ID: <CAN44U21xhoHSSNAA7gGPs=DkNagDAU82=OmtHizGqVLPtWBi0A@mail.gmail.com> (raw)
In-Reply-To: <1836105.FMhQkTaH9n@thomas>

[-- Attachment #1: Type: text/plain, Size: 2547 bytes --]

On Wed, Apr 3, 2024 at 8:52 AM Thomas Monjalon <thomas@monjalon.net> wrote:

> 02/04/2024 18:03, Ashish Sadanandan:
> > Hi everyone,
> > I've made the updates as suggested. Could someone please review the
> latest
> > patchset? Not sure if I followed the new patchset instructions correctly,
> > I've always had trouble with that part.
>
> I remember we were discussing about aligning all files.
> I was waiting for a patch applying the rule we discussed.
>
> I missed the part where people were volunteering me for additional work :)

The consensus seems to be that the extern "C" directives should only be in
public headers, not private ones. Can you please tell me if there's an easy
way to get a list of public headers?


> > On Sun, Mar 17, 2024 at 8:44 PM Ashish Sadanandan <
> > ashish.sadanandan@gmail.com> wrote:
> >
> > > The header was missing the extern "C" directive which causes name
> > > mangling of functions by C++ compilers, leading to linker errors
> > > complaining of undefined references to these functions.
> > >
> > > Also updated the coding style contribution guideline with a new
> > > "Language Linkage" section stating `extern "C"` block should be added
> to
> > > public headers.
> > >
> > > Fixes: 86c743cf9140 ("eal: define generic vector types")
> > > Cc: nelio.laranjeiro@6wind.com
> > > Cc: stable@dpdk.org
> > >
> > > Signed-off-by: Ashish Sadanandan <ashish.sadanandan@gmail.com>
> > > ---
> > >  .mailmap                                 |  2 +-
> > >  doc/guides/contributing/coding_style.rst | 21 +++++++++++++++++++++
> > >  lib/eal/include/generic/rte_vect.h       |  8 ++++++++
> > >  3 files changed, 30 insertions(+), 1 deletion(-)
> > >
> > > --- a/doc/guides/contributing/coding_style.rst
> > > +++ b/doc/guides/contributing/coding_style.rst
> > > +Language Linkage
> > > +~~~~~~~~~~~~~~~~
> > > +
> > > +Public headers should enclose all function and variable declarations
> and
> > > definitions in an ``extern "C"`` block to facilitate interoperability
> with
> > > C++.
> > > +
> > > +.. code-block:: c
> > > +
> > > +   #ifndef _FILE_H_
> > > +   #define _FILE_H_
> > > +
> > > +   #ifdef __cplusplus
> > > +   extern "C" {
> > > +   #endif
> > > +
> > > +   /* Code */
> > > +
> > > +   #ifdef __cplusplus
> > > +   }
> > > +   #endif
> > > +
> > > +   #endif /* _FILE_H_ */
>
> This is not describing where the includes should be placed.
>

Will address this along with the rest of the headers.

Regards,
Ashish.

[-- Attachment #2: Type: text/html, Size: 3852 bytes --]

  reply	other threads:[~2024-04-07  1:31 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-02  5:13 [PATCH " Ashish Sadanandan
2024-02-02  9:18 ` Thomas Monjalon
2024-02-02  9:40   ` Bruce Richardson
2024-02-02 20:58     ` Ashish Sadanandan
2024-03-13 23:45       ` Stephen Hemminger
2024-03-14  3:45         ` Tyler Retzlaff
2024-02-05 17:36     ` Tyler Retzlaff
2024-02-05 21:07       ` Morten Brørup
2024-02-12 15:43         ` Ferruh Yigit
2024-02-12 16:02           ` Morten Brørup
2024-03-13 20:26             ` Ashish Sadanandan
2024-03-13 20:45               ` Thomas Monjalon
2024-03-13 22:11                 ` Ashish Sadanandan
2024-02-12 15:42     ` Ferruh Yigit
2024-03-18  2:40 ` [PATCH v2 " Ashish Sadanandan
2024-03-18  2:44 ` [PATCH v3 " Ashish Sadanandan
2024-04-02 16:03   ` Ashish Sadanandan
2024-04-03 14:52     ` Thomas Monjalon
2024-04-07  1:30       ` Ashish Sadanandan [this message]
2024-04-07 17:04         ` Stephen Hemminger
2024-04-08  8:50         ` Ferruh Yigit
2024-04-08  9:04           ` Bruce Richardson
2024-04-08 15:29         ` Tyler Retzlaff
2024-04-02 16:10   ` Bruce Richardson
2024-04-02 16:19   ` Tyler Retzlaff

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='CAN44U21xhoHSSNAA7gGPs=DkNagDAU82=OmtHizGqVLPtWBi0A@mail.gmail.com' \
    --to=ashish.sadanandan@gmail.com \
    --cc=dev@dpdk.org \
    --cc=nelio.laranjeiro@6wind.com \
    --cc=stable@dpdk.org \
    --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).