From: Yuval Shaia <yuval.shaia@oracle.com>
To: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Cc: thuth@redhat.com, berrange@redhat.com, qemu-devel@nongnu.org,
laurent@vivier.eu, pbonzini@redhat.com, philmd@redhat.com
Subject: Re: [Qemu-devel] [PATCH 1/2] configure: Check if we can use ibv_reg_mr_iova
Date: Sun, 1 Sep 2019 12:25:41 +0300 [thread overview]
Message-ID: <20190901092541.GA16041@lap1> (raw)
In-Reply-To: <e9e23e9c-5fa3-0619-bb34-15a05df08c38@gmail.com>
On Sat, Aug 31, 2019 at 10:28:18PM +0300, Marcel Apfelbaum wrote:
>
>
> On 8/18/19 4:21 PM, Yuval Shaia wrote:
> > The function reg_mr_iova is an enhanced version of ibv_reg_mr function
> > that can help to easly register and use guest's MRs.
> >
> > Add check in 'configure' phase to detect if we have libibverbs with this
> > support.
> >
> > Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com>
> > ---
> > configure | 28 ++++++++++++++++++++++++++++
> > 1 file changed, 28 insertions(+)
> >
> > diff --git a/configure b/configure
> > index 714e7fb6a1..e8e4a57b6f 100755
> > --- a/configure
> > +++ b/configure
> > @@ -3205,6 +3205,34 @@ else
> > pvrdma="no"
> > fi
> > +# Let's see if enhanced reg_mr is supported
> > +if test "$pvrdma" = "yes" ; then
> > +
> > +cat > $TMPC <<EOF &&
> > +#include <infiniband/verbs.h>
> > +
> > +int
> > +main(void)
> > +{
> > + struct ibv_mr *mr;
> > + struct ibv_pd *pd = NULL;
> > + size_t length = 10;
> > + uint64_t iova = 0;
> > + int access = 0;
> > + void *addr = NULL;
> > +
> > + mr = ibv_reg_mr_iova(pd, addr, length, iova, access);
>
> Here you check if the API is changed, right?
Yes.
> Can you query for a library version instead?
Library version is set in the spec file which is under the distros'es
responsibility. I don't see a reason to be depend on that especially when
the check for support is so easy. In addition, this way allows one to
download latest upstream code and compile against it even when his distro
still didn't update the repo.
>
> Thanks,
> Marcel
>
> > +
> > + ibv_dereg_mr(mr);
> > +
> > + return 0;
> > +}
> > +EOF
> > + if ! compile_prog "" "-libverbs"; then
> > + QEMU_CFLAGS="$QEMU_CFLAGS -DLEGACY_RDMA_REG_MR"
> > + fi
> > +fi
> > +
> > ##########################################
> > # VNC SASL detection
> > if test "$vnc" = "yes" && test "$vnc_sasl" != "no" ; then
>
>
next prev parent reply other threads:[~2019-09-01 9:27 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-18 13:21 [Qemu-devel] [PATCH 0/2] rdma: Utilize ibv_reg_mr_iova for memory registration Yuval Shaia
2019-08-18 13:21 ` [Qemu-devel] [PATCH 1/2] configure: Check if we can use ibv_reg_mr_iova Yuval Shaia
2019-08-31 19:28 ` Marcel Apfelbaum
2019-09-01 9:25 ` Yuval Shaia [this message]
2019-08-18 13:21 ` [Qemu-devel] [PATCH 2/2] hw/rdma: Utilize ibv_reg_mr_iova for memory registration Yuval Shaia
2019-08-31 19:31 ` Marcel Apfelbaum
2019-09-01 9:30 ` Yuval Shaia
2019-08-31 19:26 ` [Qemu-devel] [PATCH 0/2] rdma: " Marcel Apfelbaum
2019-11-05 11:23 ` Marcel Apfelbaum
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=20190901092541.GA16041@lap1 \
--to=yuval.shaia@oracle.com \
--cc=berrange@redhat.com \
--cc=laurent@vivier.eu \
--cc=marcel.apfelbaum@gmail.com \
--cc=pbonzini@redhat.com \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.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).