All of lore.kernel.org
 help / color / mirror / Atom feed
From: Leon Romanovsky <leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
To: Devesh Sharma <devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Sriharsha Basavapatna
	<sriharsha.basavapatna-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>,
	Somnath Kotur
	<somnath.kotur-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>,
	Selvin Xavier
	<selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
Subject: Re: [PATCH rdma-core 01/11] libbnxtre: introduce bnxtre user space RDMA provider
Date: Sun, 29 Jan 2017 09:25:15 +0200	[thread overview]
Message-ID: <20170129072515.GD6005@mtr-leonro.local> (raw)
In-Reply-To: <1485641622-30015-2-git-send-email-devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>

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

On Sat, Jan 28, 2017 at 05:13:32PM -0500, Devesh Sharma wrote:
> libnxtre is a user-space driver which provides RDMA
> capability to user applications. The current framework
> has following parts working:
>
>  -Basic Cmake framework to build and install the library.
>  -Register and unregister user-space driver with uverbs
>   interface.
>  -List all available bnxt_re devices using "ibv_devinfo"
>   admin command.
>  -List all the device and port attributes using
>   "ibv_devinfo" admin command.
>  -Support allocate/free of protection domains.
>  -Check ABI version between library and kernel module.
>  -Update MAINTAINERS file
>
> Signed-off-by: Sriharsha Basavapatna <sriharsha.basavapatna-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
> Signed-off-by: Somnath Kotur <somnath.kotur-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
> Signed-off-by: Selvin Xavier <selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
> Signed-off-by: Devesh Sharma <devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
> ---
>  CMakeLists.txt                  |   1 +
>  MAINTAINERS                     |   5 +
>  providers/bnxtre/CMakeLists.txt |   4 +
>  providers/bnxtre/abi.h          |  59 ++++++++++
>  providers/bnxtre/bnxtre.driver  |   1 +
>  providers/bnxtre/main.c         | 192 +++++++++++++++++++++++++++++++
>  providers/bnxtre/main.h         | 108 ++++++++++++++++++
>  providers/bnxtre/verbs.c        | 247 ++++++++++++++++++++++++++++++++++++++++
>  providers/bnxtre/verbs.h        | 106 +++++++++++++++++
>  9 files changed, 723 insertions(+)
>  create mode 100644 providers/bnxtre/CMakeLists.txt
>  create mode 100644 providers/bnxtre/abi.h
>  create mode 100644 providers/bnxtre/bnxtre.driver
>  create mode 100644 providers/bnxtre/main.c
>  create mode 100644 providers/bnxtre/main.h
>  create mode 100644 providers/bnxtre/verbs.c
>  create mode 100644 providers/bnxtre/verbs.h
>
> diff --git a/CMakeLists.txt b/CMakeLists.txt
> index 8f7a475..b6f96c0 100644
> --- a/CMakeLists.txt
> +++ b/CMakeLists.txt
> @@ -382,6 +382,7 @@ add_subdirectory(providers/nes)
>  add_subdirectory(providers/ocrdma)
>  add_subdirectory(providers/qedr)
>  add_subdirectory(providers/vmw_pvrdma)
> +add_subdirectory(providers/bnxtre)
>  endif()
>
>  add_subdirectory(providers/hfi1verbs)
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 2ae504c..f52da1c 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -166,3 +166,8 @@ M:	Adit Ranadive <aditr-pghWNbHTmq7QT0dZR+AlfA@public.gmane.org>
>  L:	pv-drivers-pghWNbHTmq7QT0dZR+AlfA@public.gmane.org
>  S:	Supported
>  F:	providers/vmw_pvrdma/
> +
> +BNXTRE USERSPACE PROVIDER (for bnxtre.ko)
> +M:	Devesh Sharma  <Devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
> +S:	Supported
> +F:	providers/bnxtre

It should have "/" at the end of line.

> diff --git a/providers/bnxtre/CMakeLists.txt b/providers/bnxtre/CMakeLists.txt
> new file mode 100644
> index 0000000..4c61355
> --- /dev/null
> +++ b/providers/bnxtre/CMakeLists.txt
> @@ -0,0 +1,4 @@
> +rdma_provider(bnxtre
> +	main.c
> +	verbs.c
> +)
> diff --git a/providers/bnxtre/abi.h b/providers/bnxtre/abi.h
> new file mode 100644
> index 0000000..653ac71
> --- /dev/null
> +++ b/providers/bnxtre/abi.h
> @@ -0,0 +1,59 @@
> +/*
> + * Broadcom NetXtreme-E User Space RoCE driver
> + *
> + * Copyright (c) 2015-2016, Broadcom. All rights reserved.  The term
> + * Broadcom refers to Broadcom Limited and/or its subsidiaries.
> + *
> + * This software is available to you under a choice of one of two
> + * licenses.  You may choose to be licensed under the terms of the GNU
> + * General Public License (GPL) Version 2, available from the file
> + * COPYING in the main directory of this source tree, or the
> + * BSD license below:
> + *
> + * Redistribution and use in source and binary forms, with or without
> + * modification, are permitted provided that the following conditions
> + * are met:
> + *
> + * 1. Redistributions of source code must retain the above copyright
> + *    notice, this list of conditions and the following disclaimer.
> + * 2. Redistributions in binary form must reproduce the above copyright
> + *    notice, this list of conditions and the following disclaimer in
> + *    the documentation and/or other materials provided with the
> + *    distribution.
> + *
> + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS''
> + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
> + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
> + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
> + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
> + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
> + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
> + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
> + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
> + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
> + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> + *
> + * Description: ABI data structure definition
> + */
> +
> +#ifndef __BNXT_RE_ABI_H__
> +#define __BNXT_RE_ABI_H__
> +
> +#include <infiniband/kern-abi.h>
> +
> +#define BNXT_RE_ABI_VERSION 1
> +
> +struct bnxt_re_cntx_resp {
> +	struct ibv_get_context_resp resp;
> +	__u32 dev_id;
> +	__u32 max_qp; /* To allocate qp-table */
> +};
> +
> +struct bnxt_re_pd_resp {
> +	struct ibv_alloc_pd_resp resp;
> +	__u32 pdid;
> +	__u32 dpi;
> +	__u64 dbr;
> +};
> +
> +#endif
> diff --git a/providers/bnxtre/bnxtre.driver b/providers/bnxtre/bnxtre.driver
> new file mode 100644
> index 0000000..5ce796f
> --- /dev/null
> +++ b/providers/bnxtre/bnxtre.driver
> @@ -0,0 +1 @@
> +driver	bnxtre
> diff --git a/providers/bnxtre/main.c b/providers/bnxtre/main.c
> new file mode 100644
> index 0000000..0c26c8b
> --- /dev/null
> +++ b/providers/bnxtre/main.c
> @@ -0,0 +1,192 @@
> +/*
> + * Broadcom NetXtreme-E User Space RoCE driver
> + *
> + * Copyright (c) 2015-2016, Broadcom. All rights reserved.  The term
> + * Broadcom refers to Broadcom Limited and/or its subsidiaries.
> + *
> + * This software is available to you under a choice of one of two
> + * licenses.  You may choose to be licensed under the terms of the GNU
> + * General Public License (GPL) Version 2, available from the file
> + * COPYING in the main directory of this source tree, or the
> + * BSD license below:
> + *
> + * Redistribution and use in source and binary forms, with or without
> + * modification, are permitted provided that the following conditions
> + * are met:
> + *
> + * 1. Redistributions of source code must retain the above copyright
> + *    notice, this list of conditions and the following disclaimer.
> + * 2. Redistributions in binary form must reproduce the above copyright
> + *    notice, this list of conditions and the following disclaimer in
> + *    the documentation and/or other materials provided with the
> + *    distribution.
> + *
> + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS''
> + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
> + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
> + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
> + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
> + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
> + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
> + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
> + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
> + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
> + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> + *
> + * Description: Device detection and initializatoin
> + */
> +
> +#if HAVE_CONFIG_H
> +#include <config.h>
> +#endif                          /* HAVE_CONFIG_H */
> +

There is no need to guard config.h

> +#include <stdio.h>

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  parent reply	other threads:[~2017-01-29  7:25 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-28 22:13 [PATCH rdma-core 00/11] Broadcom User Space RoCE Driver Devesh Sharma
     [not found] ` <1485641622-30015-1-git-send-email-devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2017-01-28 22:13   ` [PATCH rdma-core 01/11] libbnxtre: introduce bnxtre user space RDMA provider Devesh Sharma
     [not found]     ` <1485641622-30015-2-git-send-email-devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2017-01-29  7:25       ` Leon Romanovsky [this message]
2017-01-29 23:05       ` Jason Gunthorpe
2017-01-28 22:13   ` [PATCH rdma-core 02/11] libbnxtre: Add support for user memory regions Devesh Sharma
2017-01-28 22:13   ` [PATCH rdma-core 03/11] libbnxtre: Add support for CQ and QP management Devesh Sharma
     [not found]     ` <1485641622-30015-4-git-send-email-devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2017-01-29 23:07       ` Jason Gunthorpe
2017-01-30  7:16       ` Leon Romanovsky
2017-01-28 22:13   ` [PATCH rdma-core 04/11] libbnxtre: Add support for posting and polling Devesh Sharma
     [not found]     ` <1485641622-30015-5-git-send-email-devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2017-01-29 23:43       ` Jason Gunthorpe
     [not found]         ` <20170129234338.GG24051-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-01-30  6:43           ` Leon Romanovsky
2017-01-30  6:59       ` Leon Romanovsky
2017-01-28 22:13   ` [PATCH rdma-core 05/11] libbnxtre: Allow apps to poll for flushed completions Devesh Sharma
     [not found]     ` <1485641622-30015-6-git-send-email-devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2017-01-29 23:11       ` Jason Gunthorpe
2017-01-28 22:13   ` [PATCH rdma-core 06/11] libbnxtre: convert cpu to le all over the place Devesh Sharma
     [not found]     ` <1485641622-30015-7-git-send-email-devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2017-01-29  7:09       ` Leon Romanovsky
2017-01-29 23:09       ` Jason Gunthorpe
2017-01-28 22:13   ` [PATCH rdma-core 07/11] libbnxtre: Enable UD control path and wqe posting Devesh Sharma
2017-01-28 22:13   ` [PATCH rdma-core 08/11] libbnxtre: Enable polling for UD completions Devesh Sharma
2017-01-28 22:13   ` [PATCH rdma-core 09/11] libbnxtre: Add support for atomic operations Devesh Sharma
     [not found]     ` <1485641622-30015-10-git-send-email-devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2017-01-29 23:46       ` Jason Gunthorpe
2017-01-30  6:37       ` Leon Romanovsky
2017-01-28 22:13   ` [PATCH rdma-core 10/11] libbnxtre: Add support for SRQ in user lib Devesh Sharma
     [not found]     ` <1485641622-30015-11-git-send-email-devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2017-01-31 12:42       ` Leon Romanovsky
2017-01-28 22:13   ` [PATCH rdma-core 11/11] libbnxtre: Add versioning support Devesh Sharma
     [not found]     ` <1485641622-30015-12-git-send-email-devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2017-01-29  7:17       ` Leon Romanovsky
2017-01-29 23:40       ` Jason Gunthorpe
2017-01-29  2:24   ` [PATCH rdma-core 00/11] Broadcom User Space RoCE Driver Doug Ledford
2017-01-29 22:56   ` Jason Gunthorpe
     [not found]     ` <20170129225625.GA24051-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-02-08 11:38       ` Devesh Sharma

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=20170129072515.GD6005@mtr-leonro.local \
    --to=leon-dgejt+ai2ygdnm+yrofe0a@public.gmane.org \
    --cc=devesh.sharma-dY08KVG/lbpWk0Htik3J/w@public.gmane.org \
    --cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org \
    --cc=somnath.kotur-dY08KVG/lbpWk0Htik3J/w@public.gmane.org \
    --cc=sriharsha.basavapatna-dY08KVG/lbpWk0Htik3J/w@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.