From: "Steve Wise" <swise-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>
To: 'Jason Gunthorpe'
<jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
Cc: 'Leon Romanovsky' <leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
'Doug Ledford' <dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: RE: rdma-core build environment enabling out-of-core providers
Date: Wed, 2 Aug 2017 15:05:31 -0500 [thread overview]
Message-ID: <01a001d30bca$b177e3c0$1467ab40$@opengridcomputing.com> (raw)
In-Reply-To: <20170802193403.GA23777-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
> > 2) I took the updated out-of-tree provider src from 1), and put it back in
the
> > out-of-tree provider automake/config bldenv, and then tried to pull in
whatever
> > was needed from rdma-core to build it. This resulted in me pulling certain
> > files, like you mentioned above. I just pulled them from the
rdma-core/build/
> > tree for the sake of getting it to build. Basically I needed ccan/*
> > infiniband/driver.h, and util/compiler.h/udma_barrier.h. That got it to
build.
>
> Just be careful that all the cmake magic is working properly in your
> other environment, for all the distros you want to target..
Well definitely no magic is happening in my specific experiment, since I just
copied the headers from the built rdma-core tree which means they were
customized for RHEL7.2, which is what was installed. But I just wanted to get a
feel for what files exactly were needed to build a provider. I suppose I could
take that cmake magic into my bldenv and just the src files needed to produce
the auto-generated files. Is it just the stdatomic.h file that is tweaked?
>
> > I haven't tested either of these yet to see if they actually load. But
that's
> > where I'm at. #2 has the issues you describe, in that the atomic header is
> > auto-generated based on the installed distro/platform. So that leads to
using
> > #1 which is what you recommend. I'm ok with using #1, but then the issue
> > becomes supporting my provider across older non rdma-core installed
> > systems.
>
> You can handle this by rolling back the rdma-core repository to the
> right points in history and re-instering your provider. This will
> require some level of cherry picking future patches (eg ccan, etc),
> but may be the simplest approach for this specific requirement.
>
> This would be somewhere around
> 0c0914e1e9b7a68bcebfe785b6df30500ca7d2e0 for RHEL7 libibverbs.
>
> You can find a similar point for OFED.
>
Hmm. This is interesting.
> This could be automated, so you can develope against upstream, and
> then using a script create a rdma-core with the classic private ABI,
> and copy the provider from the upstream to build it.
>
> Alternatively, just have your customers use a new libibverbs on
> RHEL. That reduces your QA burden and development workload...
If my package installs libibverbs along with my provider, then potentially I
break any existing providers installed with whatever rdma-core, ofed, or inboxed
libibverbs that was installed. I'm not sure if this is acceptable, but I agree
it simplifies the QA matrix.
Steve.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2017-08-02 20:05 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-02 13:55 rdma-core build environment enabling out-of-core providers Steve Wise
2017-08-02 16:09 ` Jason Gunthorpe
[not found] ` <20170802160900.GB21208-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-02 19:16 ` Steve Wise
2017-08-02 19:34 ` Jason Gunthorpe
[not found] ` <20170802193403.GA23777-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-02 20:05 ` Steve Wise [this message]
2017-08-02 20:23 ` Jason Gunthorpe
[not found] ` <20170802202300.GA24244-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-03 5:26 ` Leon Romanovsky
2017-08-03 7:08 ` Nicolas Morey-Chaisemartin
[not found] ` <44b511c6-45fa-d5aa-4d4c-e47d2edcf604-l3A5Bk7waGM@public.gmane.org>
2017-08-03 13:48 ` Steve Wise
2017-08-03 14:47 ` Jason Gunthorpe
[not found] ` <20170803144733.GA13127-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-03 15:01 ` Nicolas Morey-Chaisemartin
[not found] ` <890f961c-7aa8-1a73-e98d-f7ce9da333d7-l3A5Bk7waGM@public.gmane.org>
2017-08-03 17:07 ` Jason Gunthorpe
[not found] ` <20170803170713.GD13127-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-04 6:02 ` Nicolas Morey-Chaisemartin
[not found] ` <7cc0ba31-7a05-4db1-5807-4d971fc3d773-l3A5Bk7waGM@public.gmane.org>
2017-08-04 11:30 ` Steve Wise
2017-08-04 11:52 ` Nicolas Morey-Chaisemartin
[not found] ` <188beb70-9776-33fc-6f72-cc00e968db73-l3A5Bk7waGM@public.gmane.org>
2017-08-04 13:14 ` Steve Wise
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='01a001d30bca$b177e3c0$1467ab40$@opengridcomputing.com' \
--to=swise-7bpotxp6k4+p2yhjcf5u+vpxobypeauw@public.gmane.org \
--cc=dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org \
--cc=leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/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).