From: Bruce Richardson <bruce.richardson@intel.com>
To: Thomas Monjalon <thomas.monjalon@6wind.com>
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH] ring: cleanup file-local macros at end-of-file
Date: Wed, 4 Mar 2015 10:22:34 +0000 [thread overview]
Message-ID: <20150304102234.GD1468@bricha3-MOBL3> (raw)
In-Reply-To: <6979759.vFaJhNqs1F@xps13>
On Tue, Mar 03, 2015 at 10:03:45PM +0100, Thomas Monjalon wrote:
> 2015-03-03 16:38, Bruce Richardson:
> > The ENQUEUE_PTRS and DEQUEUE_PTRS macros defined in rte_ring.h are
> > not meant to be global and are not prefixed with the RTE_ prefix.
> > Therefore undef the macros at end of file to avoid pollution of the
> > global namespace, in case ends apps end up wanting to reuse those names.
> >
> > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> > ---
> > lib/librte_ring/rte_ring.h | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > diff --git a/lib/librte_ring/rte_ring.h b/lib/librte_ring/rte_ring.h
> > index bdf69b7..0d35648 100644
> > --- a/lib/librte_ring/rte_ring.h
> > +++ b/lib/librte_ring/rte_ring.h
> > @@ -1232,6 +1232,10 @@ rte_ring_dequeue_burst(struct rte_ring *r, void **obj_table, unsigned n)
> > return rte_ring_mc_dequeue_burst(r, obj_table, n);
> > }
> >
> > +/* undef un-prefixed macros which are local to this file */
> > +#undef ENQUEUE_PTRS
> > +#undef DEQUEUE_PTRS
> > +
>
> Thanks for trying to clean-up things.
> Note that if an application is using this macro name, it will be destroyed
> when including rte_ring.h.
> Globally, DPDK namespace is awful and I hope we will be able to improve it.
>
Only if they are defining such a macro before including rte_ring.h, which I would
expect to be an edge case. Also, in such a case, the compiler/preprocessor will
give an error at the duplicate macro definition stage, and the simple fix is to
reorder the header file inclusion to avoid problems i.e. no changing of dpdk
required.
I suppose a better fix to go along with this is to RTE-prefix the macros. I'll
see about doing a V2.
/Bruce
next prev parent reply other threads:[~2015-03-04 10:22 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-03 16:38 Bruce Richardson
2015-03-03 21:03 ` Thomas Monjalon
2015-03-04 10:22 ` Bruce Richardson [this message]
2015-03-04 10:26 ` Ananyev, Konstantin
2015-03-04 10:49 ` Bruce Richardson
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=20150304102234.GD1468@bricha3-MOBL3 \
--to=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=thomas.monjalon@6wind.com \
/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).