* Re: 【For help】 some tips for upstream the userspace driver code of hns_roce
From: oulijun @ 2016-10-14 7:24 UTC (permalink / raw)
To: Leon Romanovsky; +Cc: Doug Ledford, Linuxarm, linux-rdma
In-Reply-To: <20161013093659.GA9282-2ukJVAZIZ/Y@public.gmane.org>
Hi, Leon
I have learned the guide and I am working it.
I have learned the README.md in the branch of rdma-core.
According to the instruction for building the user-space stack, it only
support to build in Debian/Fedora/OpenSuSE/centos and ubuntu is not?
thanks
在 2016/10/13 17:36, Leon Romanovsky 写道:
> On Thu, Oct 13, 2016 at 04:09:46PM +0800, oulijun wrote:
>> Hi, Doug Ledford
>> Now, I am preparing for upstreaming the userspace driver code of hns_roce. But, we have
>> some difficulty how to upstream it. for example,
>> i) which branch of ofed should we upstream ?
>> ii) if want to upstream the userspace driver of hns_roce successfully, how we should do?
>>
>> Can you give me some guides?
>
> Hi Lijun,
>
> Our main library for all user-space stack is located at github [1].
> Please see similar question from Ram [2] and Jason's response [3] to it.
>
> [1] github.com/linux-rdma/rdma-core
> [2[ http://marc.info/?l=linux-rdma&m=147574131706820&w=2
> [3] http://marc.info/?l=linux-rdma&m=147577168016989&w=2
>
> Thanks.
>
>>
>> thanks
>> Lijun Ou
>>
>> --
>> 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
--
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
^ permalink raw reply
* Re: sparse fixes, part2
From: Christoph Hellwig @ 2016-10-14 5:31 UTC (permalink / raw)
To: Jason Gunthorpe; +Cc: Christoph Hellwig, linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <20161014040602.GA5726-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
On Thu, Oct 13, 2016 at 10:06:02PM -0600, Jason Gunthorpe wrote:
> Though, I had to use '#pragma GCC diagnostic ignored
> "-Wmissing-prototypes"' to deal with the symver stuff.. Couldn't find
> a better way..
I was planning on adding a header to define them just to shut up
sparse. This is one of the bigger sets or remaining warnings, the
other beeing pthread macros abusing 0 as NULL (probably unfixable by us),
direct use of __sync_* builting (we should move over to C99 atomics or
something similar) nad various misc issues. But as non of them are trivial
I didn't want to send that with the patch bomb.
--
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
^ permalink raw reply
* Re: trivial sparse fixes for rdma-core
From: Christoph Hellwig @ 2016-10-14 5:18 UTC (permalink / raw)
To: Leon Romanovsky
Cc: Jason Gunthorpe, Christoph Hellwig,
linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <20161014043705.GF9282-2ukJVAZIZ/Y@public.gmane.org>
On Fri, Oct 14, 2016 at 07:37:05AM +0300, Leon Romanovsky wrote:
> I didn't look on it yet, but maybe someone already knows the answer.
> Can we run static analyzer tools as part of our TravisCI runs?
Just run CC=cgcc cmake for sparse..
--
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
^ permalink raw reply
* Re: trivial sparse fixes for rdma-core
From: Leon Romanovsky @ 2016-10-14 5:04 UTC (permalink / raw)
To: Leon Romanovsky; +Cc: Jason Gunthorpe, Christoph Hellwig, linux-rdma
In-Reply-To: <20161014043705.GF9282-2ukJVAZIZ/Y@public.gmane.org>
On Fri, Oct 14, 2016 at 7:37 AM, Leon Romanovsky <leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> wrote:
> On Thu, Oct 13, 2016 at 01:03:26PM -0600, Jason Gunthorpe wrote:
>> On Thu, Oct 13, 2016 at 07:51:03PM +0200, Christoph Hellwig wrote:
>> > This is the low hanging fruit in terms of reducing sparse noise before
>> > looking into endianess and iomem annotations.
>>
>> Looks fine to me. Since I gave them a good compile test I also
>> prepared the pull request for the first 15 that made it to the list:
>>
>> https://github.com/linux-rdma/rdma-core/pull/19
>>
>> Here is the patch to turn on gcc -Wstrict-prototypes
>>
>> https://github.com/jgunthorpe/rdma-plumbing/commit/dd80c3b362ae90d0de36a6249409c20581bae864
>
> I didn't look on it yet, but maybe someone already knows the answer.
> Can we run static analyzer tools as part of our TravisCI runs?
It looks like the answer is yes:
https://developer.fedoraproject.org/tech/languages/c/static-analysis.html
Thanks
--
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
^ permalink raw reply
* Re: trivial sparse fixes for rdma-core
From: Leon Romanovsky @ 2016-10-14 4:37 UTC (permalink / raw)
To: Jason Gunthorpe; +Cc: Christoph Hellwig, linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <20161013190326.GA19904-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
[-- Attachment #1: Type: text/plain, Size: 735 bytes --]
On Thu, Oct 13, 2016 at 01:03:26PM -0600, Jason Gunthorpe wrote:
> On Thu, Oct 13, 2016 at 07:51:03PM +0200, Christoph Hellwig wrote:
> > This is the low hanging fruit in terms of reducing sparse noise before
> > looking into endianess and iomem annotations.
>
> Looks fine to me. Since I gave them a good compile test I also
> prepared the pull request for the first 15 that made it to the list:
>
> https://github.com/linux-rdma/rdma-core/pull/19
>
> Here is the patch to turn on gcc -Wstrict-prototypes
>
> https://github.com/jgunthorpe/rdma-plumbing/commit/dd80c3b362ae90d0de36a6249409c20581bae864
I didn't look on it yet, but maybe someone already knows the answer.
Can we run static analyzer tools as part of our TravisCI runs?
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply
* Re: [PATCH rdma-next 00/10] Hardware tag matching support
From: Leon Romanovsky @ 2016-10-14 4:19 UTC (permalink / raw)
To: Doug Ledford
Cc: Christoph Hellwig, Jason Gunthorpe, Hefty, Sean,
linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
In-Reply-To: <a3495685-69c7-26a7-ba97-9761848535a8-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
[-- Attachment #1: Type: text/plain, Size: 2160 bytes --]
On Thu, Oct 13, 2016 at 04:30:10PM -0400, Doug Ledford wrote:
> On 10/13/2016 4:02 PM, Christoph Hellwig wrote:
> > On Thu, Oct 13, 2016 at 01:56:05PM -0600, Jason Gunthorpe wrote:
> >> A bigger objection I have is that much of this new stuff is not
> >> adaquately documented.
> >>
> >> Tag matching is a great example. It looks like this introduces many new
> >> headers into the on-wire protocol. Where are these headers documented?
> >> Where is the spec for the on-wire format? Where is the implementation
> >> for rxe?
> >
> > Agreed on that part. For pon the wire changes we need the hardware
> > standards organization to act. IBTA for IB and RoCE and IETF for iWarp,
> > although not even having an active WG for iWarp there is a major problem
> > at the moment.
> >
>
> I think there are some fundamental questions here about what this is.
> As I understand it (and Mellanox can chime in if I'm wrong), tag
> matching already exists on the wire, it's just implemented above the
> level of the link layer transmissions. This enables a hardware
> accelerator for something that is already done at an upper layer, so the
> implementation is mostly defined by the defacto existing use in upper
> layer applications, not by the IBTA. I believe this could roughly be
> considered analogous to a network driver enabling a layer3 or layer4
> accelerator. It's not a layer1 thing, so the IBTA is not appropriate to
> review it.
Yes, you are right. It is in use by most if not all major HPC players
and in this patch set, we are providing possibility to configure it and
expose supported flavours of tag matching, so they will be able to run
RHEL out of the box. There are no HW limitations on how other vendors
(let's pretend that they exist) will implement such feature.
As Sean mentioned in the other email, PSM has it and libfabric natively
supports this functionality through MXM provider.
Regarding documentation, we are in continuous process of improvements
for our submissions and will definitely put our attention to that point.
Thanks
>
> --
> Doug Ledford <dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> GPG Key ID: 0E572FDD
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply
* [PATCH rdma-core 2/2] Enable -Wmissing-prototypes
From: Jason Gunthorpe @ 2016-10-14 4:10 UTC (permalink / raw)
To: linux-rdma-u79uwXL29TY76Z2rM5mHXA; +Cc: hch-jcswGhMUV9g
In-Reply-To: <1476418211-6277-1-git-send-email-jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
This is useful to detect functions which probably should be static.
One wrinkle is the use of .symver macros in verbs. These require
non-static definitions that cannot have the same name as the public
prototype. Locally disable the warning to deal with that.
Signed-off-by: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
---
CMakeLists.txt | 1 +
buildlib/FindLDSymVer.cmake | 2 ++
ibacm/src/acm_util.h | 2 ++
ibacm/src/acme.c | 7 ++-----
ibacm/src/parse.c | 1 +
libibverbs/compat-1_0.c | 2 ++
libibverbs/device.c | 2 ++
libibverbs/examples/devinfo.c | 4 ++--
libibverbs/examples/rc_pingpong.c | 4 ++--
libibverbs/examples/srq_pingpong.c | 2 +-
libibverbs/examples/uc_pingpong.c | 2 +-
libibverbs/examples/ud_pingpong.c | 2 +-
libibverbs/verbs.c | 2 ++
13 files changed, 21 insertions(+), 12 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1fb634c43991..59533411006b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -110,6 +110,7 @@ RDMA_EnableCStd()
# FIXME: I wonder how many of the signed compares are bugs?
RDMA_AddOptCFlag(CMAKE_C_FLAGS HAVE_C_WARNINGS
"-Wall -Wextra -Wno-sign-compare -Wno-unused-parameter")
+RDMA_AddOptCFlag(CMAKE_C_FLAGS HAVE_C_WMISSING_PROTOTYPES "-Wmissing-prototypes")
# At some point around 5.4 gcc fixed missing-field-initializers to ignore this
# common idiom we use extensively. Since this is a useful warning for
diff --git a/buildlib/FindLDSymVer.cmake b/buildlib/FindLDSymVer.cmake
index 7169b2c4db68..9d3c12dcef46 100644
--- a/buildlib/FindLDSymVer.cmake
+++ b/buildlib/FindLDSymVer.cmake
@@ -27,8 +27,10 @@ endif()
# And matching source, this also checks that .symver asm works
check_c_source_compiles("
+void ibv_get_device_list_1(void);
void ibv_get_device_list_1(void){}
asm(\".symver ibv_get_device_list_1, ibv_get_device_list@IBVERBS_1.1\");
+void ibv_get_device_list_0(void);
void ibv_get_device_list_0(void){}
asm(\".symver ibv_get_device_list_0, ibv_get_device_list@@IBVERBS_1.0\");
diff --git a/ibacm/src/acm_util.h b/ibacm/src/acm_util.h
index 2bcf28086c7b..5243f8a7e750 100644
--- a/ibacm/src/acm_util.h
+++ b/ibacm/src/acm_util.h
@@ -53,4 +53,6 @@ typedef void (*acm_if_iter_cb)(char *ifname, union ibv_gid *gid, uint16_t pkey,
char *ip_str, void *ctx);
int acm_if_iter_sys(acm_if_iter_cb cb, void *ctx);
+char **parse(char *args, int *count);
+
#endif /* ACM_IF_H */
diff --git a/ibacm/src/acme.c b/ibacm/src/acme.c
index 2bce0da4ec8a..6b5b2ecb7f8a 100644
--- a/ibacm/src/acme.c
+++ b/ibacm/src/acme.c
@@ -74,9 +74,6 @@ int verbose;
struct ibv_context **verbs;
int dev_cnt;
-extern int gen_addr_ip(FILE *f);
-extern char **parse(char *args, int *count);
-
#define VPRINT(format, ...) do { if (verbose) printf(format, ## __VA_ARGS__ ); } while (0)
static void show_usage(char *program)
@@ -958,7 +955,7 @@ static int query_svcs(void)
return ret;
}
-char *opt_arg(int argc, char **argv)
+static char *opt_arg(int argc, char **argv)
{
if (optarg)
return optarg;
@@ -969,7 +966,7 @@ char *opt_arg(int argc, char **argv)
return NULL;
}
-void parse_perf_arg(char *arg)
+static void parse_perf_arg(char *arg)
{
if (!strnicmp("col", arg, 3)) {
perf_query = PERF_QUERY_COL;
diff --git a/ibacm/src/parse.c b/ibacm/src/parse.c
index 83ce8439edac..52e66ab814e3 100644
--- a/ibacm/src/parse.c
+++ b/ibacm/src/parse.c
@@ -30,6 +30,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include "acm_util.h"
static char *expand(char *basename, char *args, int *str_cnt, int *str_size)
{
diff --git a/libibverbs/compat-1_0.c b/libibverbs/compat-1_0.c
index b286fd73eb01..af852f9ff481 100644
--- a/libibverbs/compat-1_0.c
+++ b/libibverbs/compat-1_0.c
@@ -40,6 +40,8 @@
#include "ibverbs.h"
+#pragma GCC diagnostic ignored "-Wmissing-prototypes"
+
struct ibv_pd_1_0 {
struct ibv_context_1_0 *context;
uint32_t handle;
diff --git a/libibverbs/device.c b/libibverbs/device.c
index b4864e3e384b..8950f2a3d711 100644
--- a/libibverbs/device.c
+++ b/libibverbs/device.c
@@ -47,6 +47,8 @@
#include "ibverbs.h"
+#pragma GCC diagnostic ignored "-Wmissing-prototypes"
+
static pthread_once_t device_list_once = PTHREAD_ONCE_INIT;
static int num_devices;
static struct ibv_device **device_list;
diff --git a/libibverbs/examples/devinfo.c b/libibverbs/examples/devinfo.c
index 5fd1affa455d..78e92b95c3ca 100644
--- a/libibverbs/examples/devinfo.c
+++ b/libibverbs/examples/devinfo.c
@@ -283,7 +283,7 @@ static void print_device_cap_flags(uint32_t dev_cap_flags)
dev_cap_flags & unknown_flags);
}
-void print_odp_trans_caps(uint32_t trans)
+static void print_odp_trans_caps(uint32_t trans)
{
uint32_t unknown_transport_caps = ~(IBV_ODP_SUPPORT_SEND |
IBV_ODP_SUPPORT_RECV |
@@ -310,7 +310,7 @@ void print_odp_trans_caps(uint32_t trans)
}
}
-void print_odp_caps(const struct ibv_odp_caps *caps)
+static void print_odp_caps(const struct ibv_odp_caps *caps)
{
uint64_t unknown_general_caps = ~(IBV_ODP_SUPPORT);
diff --git a/libibverbs/examples/rc_pingpong.c b/libibverbs/examples/rc_pingpong.c
index aca7bac4491b..7c70457183d9 100644
--- a/libibverbs/examples/rc_pingpong.c
+++ b/libibverbs/examples/rc_pingpong.c
@@ -78,7 +78,7 @@ struct pingpong_context {
uint64_t completion_timestamp_mask;
};
-struct ibv_cq *pp_cq(struct pingpong_context *ctx)
+static struct ibv_cq *pp_cq(struct pingpong_context *ctx)
{
return use_ts ? ibv_cq_ex_to_cq(ctx->cq_s.cq_ex) :
ctx->cq_s.cq;
@@ -496,7 +496,7 @@ clean_ctx:
return NULL;
}
-int pp_close_ctx(struct pingpong_context *ctx)
+static int pp_close_ctx(struct pingpong_context *ctx)
{
if (ibv_destroy_qp(ctx->qp)) {
fprintf(stderr, "Couldn't destroy QP\n");
diff --git a/libibverbs/examples/srq_pingpong.c b/libibverbs/examples/srq_pingpong.c
index 8f55d78e87d4..e2993bfdacbf 100644
--- a/libibverbs/examples/srq_pingpong.c
+++ b/libibverbs/examples/srq_pingpong.c
@@ -497,7 +497,7 @@ clean_ctx:
return NULL;
}
-int pp_close_ctx(struct pingpong_context *ctx, int num_qp)
+static int pp_close_ctx(struct pingpong_context *ctx, int num_qp)
{
int i;
diff --git a/libibverbs/examples/uc_pingpong.c b/libibverbs/examples/uc_pingpong.c
index b565bacaff2a..3220cccd633b 100644
--- a/libibverbs/examples/uc_pingpong.c
+++ b/libibverbs/examples/uc_pingpong.c
@@ -426,7 +426,7 @@ clean_ctx:
return NULL;
}
-int pp_close_ctx(struct pingpong_context *ctx)
+static int pp_close_ctx(struct pingpong_context *ctx)
{
if (ibv_destroy_qp(ctx->qp)) {
fprintf(stderr, "Couldn't destroy QP\n");
diff --git a/libibverbs/examples/ud_pingpong.c b/libibverbs/examples/ud_pingpong.c
index ddb68cf8624b..e6a419c4d588 100644
--- a/libibverbs/examples/ud_pingpong.c
+++ b/libibverbs/examples/ud_pingpong.c
@@ -438,7 +438,7 @@ clean_ctx:
return NULL;
}
-int pp_close_ctx(struct pingpong_context *ctx)
+static int pp_close_ctx(struct pingpong_context *ctx)
{
if (ibv_destroy_qp(ctx->qp)) {
fprintf(stderr, "Couldn't destroy QP\n");
diff --git a/libibverbs/verbs.c b/libibverbs/verbs.c
index b470ba043658..7c5b1dd501bb 100644
--- a/libibverbs/verbs.c
+++ b/libibverbs/verbs.c
@@ -130,6 +130,8 @@ enum ibv_rate mbps_to_ibv_rate(int mbps)
}
}
+#pragma GCC diagnostic ignored "-Wmissing-prototypes"
+
int __ibv_query_device(struct ibv_context *context,
struct ibv_device_attr *device_attr)
{
--
2.1.4
--
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
^ permalink raw reply related
* [PATCH rdma-core 1/2] Enable -Wstrict-prototypes
From: Jason Gunthorpe @ 2016-10-14 4:10 UTC (permalink / raw)
To: linux-rdma-u79uwXL29TY76Z2rM5mHXA; +Cc: hch-jcswGhMUV9g
All bad cases are fixed now. This is useful to detect non-ISO
function signatures which use surprising and counter intuitive
rules.
Signed-off-by: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
---
CMakeLists.txt | 7 +++++++
ibacm/src/acm.c | 2 +-
ibacm/src/acme.c | 2 +-
ibacm/src/libacm.h | 2 +-
libibverbs/examples/xsrq_pingpong.c | 4 ++--
librdmacm/cma.h | 4 ++--
6 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4d291d2c3fb7..1fb634c43991 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -246,6 +246,13 @@ if (NOT LIBC_HAS_LIBRT)
endif()
#-------------------------
+# Final warning flags
+
+# Old version of cmake used 'main(){..}' as their test program which breaks with -Werror.
+# So set this flag last.
+RDMA_AddOptCFlag(CMAKE_C_FLAGS HAVE_C_WSTRICT_PROTOTYPES "-Wstrict-prototypes")
+
+#-------------------------
# Build Prep
# Write out a git ignore file to the build directory if it isn't the source
# directory. For developer convenience
diff --git a/ibacm/src/acm.c b/ibacm/src/acm.c
index 146fbff61857..9186677fcc6f 100644
--- a/ibacm/src/acm.c
+++ b/ibacm/src/acm.c
@@ -2421,7 +2421,7 @@ static void acm_event_handler(struct acmc_device *dev)
ibv_ack_async_event(&event);
}
-static void acm_activate_devices()
+static void acm_activate_devices(void)
{
struct acmc_device *dev;
DLIST_ENTRY *dev_entry;
diff --git a/ibacm/src/acme.c b/ibacm/src/acme.c
index e96d36ff9fc0..2bce0da4ec8a 100644
--- a/ibacm/src/acme.c
+++ b/ibacm/src/acme.c
@@ -512,7 +512,7 @@ static void show_path(struct ibv_path_record *path)
printf(" packet lifetime: %d\n", path->packetlifetime & 0x1F);
}
-static uint32_t get_resolve_flags()
+static uint32_t get_resolve_flags(void)
{
uint32_t flags = 0;
diff --git a/ibacm/src/libacm.h b/ibacm/src/libacm.h
index 359a6af3bb29..4ef2859fa9d6 100644
--- a/ibacm/src/libacm.h
+++ b/ibacm/src/libacm.h
@@ -34,7 +34,7 @@
#include <infiniband/acm.h>
int ib_acm_connect(char *dest_svc);
-void ib_acm_disconnect();
+void ib_acm_disconnect(void);
int ib_acm_resolve_name(char *src, char *dest,
struct ibv_path_data **paths, int *count, uint32_t flags,
diff --git a/libibverbs/examples/xsrq_pingpong.c b/libibverbs/examples/xsrq_pingpong.c
index c22893e0e721..b90f0eb7e27f 100644
--- a/libibverbs/examples/xsrq_pingpong.c
+++ b/libibverbs/examples/xsrq_pingpong.c
@@ -354,7 +354,7 @@ static int send_termination_ack(int index)
return 0;
}
-static int pp_client_termination()
+static int pp_client_termination(void)
{
if (send_termination_ack(0))
return 1;
@@ -364,7 +364,7 @@ static int pp_client_termination()
return 0;
}
-static int pp_server_termination()
+static int pp_server_termination(void)
{
int i;
diff --git a/librdmacm/cma.h b/librdmacm/cma.h
index c2f603d6f439..1610e178dfdb 100644
--- a/librdmacm/cma.h
+++ b/librdmacm/cma.h
@@ -138,8 +138,8 @@ extern int af_ib_support;
#define RAI_ROUTEONLY 0x01000000
-void ucma_ib_init();
-void ucma_ib_cleanup();
+void ucma_ib_init(void);
+void ucma_ib_cleanup(void);
void ucma_ib_resolve(struct rdma_addrinfo **rai, struct rdma_addrinfo *hints);
struct ib_connect_hdr {
--
2.1.4
--
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
^ permalink raw reply related
* Re: sparse fixes, part2
From: Jason Gunthorpe @ 2016-10-14 4:06 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476388576-22863-1-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
On Thu, Oct 13, 2016 at 09:55:59PM +0200, Christoph Hellwig wrote:
> This has the rest of the provider fixes that the mail server
> didn't let through last time.
I tested these and added them to the PR.
I also tacked on two more commits to enable similar gcc warnings, gcc noticed
a few more cases which I also fixed..
https://github.com/linux-rdma/rdma-core/pull/19/commits/2e20ef09914a47e5be35d3e1587697a7337aa93a
https://github.com/linux-rdma/rdma-core/pull/19/commits/2808a6142146576036ca36e7b527ff0c8f2da3ce
Though, I had to use '#pragma GCC diagnostic ignored
"-Wmissing-prototypes"' to deal with the symver stuff.. Couldn't find
a better way..
Jason
--
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
^ permalink raw reply
* Re: [PATCHv12 0/3] rdmacg: IB/core: rdma controller support
From: Tejun Heo @ 2016-10-13 23:14 UTC (permalink / raw)
To: Parav Pandit
Cc: Leon Romanovsky, cgroups-u79uwXL29TY76Z2rM5mHXA, linux-rdma,
Li Zefan, Johannes Weiner, Doug Ledford, Christoph Hellwig,
Liran Liss, Hefty, Sean, Jason Gunthorpe, Haggai Eran,
james.l.morris-QHcLZuEGTsvQT0dZR+AlfA, Or Gerlitz, Matan Barak
In-Reply-To: <CAG53R5ULKCqtw45E6t4hYdRV+y_OQqVazf=7A7Ax_XAJ2K0_dw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
Hello, Parav.
On Mon, Oct 10, 2016 at 07:02:11PM +0530, Parav Pandit wrote:
> Give me some more time, I will think more and take feeback from Leon
> and others on
> (a) how can we implement or want to implement weight like
> functionality for non-work-conversing resource
I think what you want is just a way to specify absolute limits using
percentages of what's available at the time of configuration -
e.g. being able to say "allow upto 30% of what's available in the
parent". If so, the simplest way would be simply updating the
existing knobs to accept % inputs in addition to absolute values on
writes.
Thanks.
--
tejun
--
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
^ permalink raw reply
* RE: [PATCH 02/17] cxgb3: mark symbols static where possible
From: Steve Wise @ 2016-10-13 21:59 UTC (permalink / raw)
To: 'Christoph Hellwig', linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476388576-22863-3-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
>
> Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
Fine.
Reviewed-by: Steve Wise <swise-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>
--
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
^ permalink raw reply
* RE: [PATCH 01/17] cxgb3: handle global variables properly
From: Steve Wise @ 2016-10-13 21:58 UTC (permalink / raw)
To: 'Christoph Hellwig', linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476388576-22863-2-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
>
> We'll need to define them in one compilation unit and use an extern
> declaration in the headers.
>
> Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
> ---
Looks good.
Reviewed-by: Steve Wise <swise-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW@public.gmane.org>
--
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
^ permalink raw reply
* RE: [PATCH rdma-next 00/10] Hardware tag matching support
From: Hefty, Sean @ 2016-10-13 21:23 UTC (permalink / raw)
To: Doug Ledford, Christoph Hellwig, Jason Gunthorpe
Cc: Leon Romanovsky,
linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
In-Reply-To: <a3495685-69c7-26a7-ba97-9761848535a8-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> I think there are some fundamental questions here about what this is.
> As I understand it (and Mellanox can chime in if I'm wrong), tag
> matching already exists on the wire, it's just implemented above the
> level of the link layer transmissions. This enables a hardware
> accelerator for something that is already done at an upper layer, so
> the
> implementation is mostly defined by the defacto existing use in upper
> layer applications, not by the IBTA. I believe this could roughly be
MPIs definitely make use of this sort of protocol, but it is an application level protocol that is non-standard, even between MPI implementations. There's no interoperability between them.
The Intel truescale and OPA implementations support tag matching, with HW offload support, but those too are proprietary (i.e. PSM). In the case of PSM, I believe the tag matching is part of the transport protocol. There's a decent chance the Mellanox implementation is the same.
> considered analogous to a network driver enabling a layer3 or layer4
> accelerator. It's not a layer1 thing, so the IBTA is not appropriate
> to
> review it.
The IBTA defines layer1-4, plus the verbs interfaces. So, it _could_ be an IBTA issue. However, the IBTA allows for vendor specific features (e.g. PSM), so it could be a vendor feature.
IMO, this is a feature worth supporting. My concern is over how it is exposed. There's a lot of variety in how tag matching can be implemented.
- Sean
--
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
^ permalink raw reply
* Re: [PATCH rdma-next 00/10] Hardware tag matching support
From: Jason Gunthorpe @ 2016-10-13 20:47 UTC (permalink / raw)
To: Doug Ledford
Cc: Christoph Hellwig, Hefty, Sean, Leon Romanovsky,
linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
In-Reply-To: <a3495685-69c7-26a7-ba97-9761848535a8-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
On Thu, Oct 13, 2016 at 04:30:10PM -0400, Doug Ledford wrote:
> On 10/13/2016 4:02 PM, Christoph Hellwig wrote:
> > On Thu, Oct 13, 2016 at 01:56:05PM -0600, Jason Gunthorpe wrote:
> >> A bigger objection I have is that much of this new stuff is not
> >> adaquately documented.
> >>
> >> Tag matching is a great example. It looks like this introduces many new
> >> headers into the on-wire protocol. Where are these headers documented?
> >> Where is the spec for the on-wire format? Where is the implementation
> >> for rxe?
> >
> > Agreed on that part. For pon the wire changes we need the hardware
> > standards organization to act. IBTA for IB and RoCE and IETF for iWarp,
> > although not even having an active WG for iWarp there is a major problem
> > at the moment.
> >
>
> I think there are some fundamental questions here about what this is.
> As I understand it (and Mellanox can chime in if I'm wrong), tag
> matching already exists on the wire, it's just implemented above the
> level of the link layer transmissions. This enables a hardware
> accelerator for something that is already done at an upper layer, so the
> implementation is mostly defined by the defacto existing use in upper
> layer applications, not by the IBTA. I believe this could roughly be
> considered analogous to a network driver enabling a layer3 or layer4
> accelerator. It's not a layer1 thing, so the IBTA is not appropriate to
> review it.
Maybe, but that doesn't change my original point. This is clearly not
defined well enough in the patches alone for any other vendor to
implement it.
If we can't even reach a basic threshold of understanding it is
pointless to expect other vendors to chime in on the design.
I'm starting to wonder if we should insist on an implementation of all
this new stuff in rxe before accepting. At least then we have code as
documentation ...
Jason
--
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
^ permalink raw reply
* Re: [PATCH rdma-next 00/10] Hardware tag matching support
From: Doug Ledford @ 2016-10-13 20:30 UTC (permalink / raw)
To: Christoph Hellwig, Jason Gunthorpe
Cc: Hefty, Sean, Leon Romanovsky,
linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
In-Reply-To: <20161013200208.GA8998-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
[-- Attachment #1.1: Type: text/plain, Size: 1449 bytes --]
On 10/13/2016 4:02 PM, Christoph Hellwig wrote:
> On Thu, Oct 13, 2016 at 01:56:05PM -0600, Jason Gunthorpe wrote:
>> A bigger objection I have is that much of this new stuff is not
>> adaquately documented.
>>
>> Tag matching is a great example. It looks like this introduces many new
>> headers into the on-wire protocol. Where are these headers documented?
>> Where is the spec for the on-wire format? Where is the implementation
>> for rxe?
>
> Agreed on that part. For pon the wire changes we need the hardware
> standards organization to act. IBTA for IB and RoCE and IETF for iWarp,
> although not even having an active WG for iWarp there is a major problem
> at the moment.
>
I think there are some fundamental questions here about what this is.
As I understand it (and Mellanox can chime in if I'm wrong), tag
matching already exists on the wire, it's just implemented above the
level of the link layer transmissions. This enables a hardware
accelerator for something that is already done at an upper layer, so the
implementation is mostly defined by the defacto existing use in upper
layer applications, not by the IBTA. I believe this could roughly be
considered analogous to a network driver enabling a layer3 or layer4
accelerator. It's not a layer1 thing, so the IBTA is not appropriate to
review it.
--
Doug Ledford <dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
GPG Key ID: 0E572FDD
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 884 bytes --]
^ permalink raw reply
* Re: [PATCH rdma-next 00/10] Hardware tag matching support
From: Christoph Hellwig @ 2016-10-13 20:02 UTC (permalink / raw)
To: Jason Gunthorpe
Cc: Hefty, Sean, Christoph Hellwig, Doug Ledford, Leon Romanovsky,
linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
In-Reply-To: <20161013195605.GA8077-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
On Thu, Oct 13, 2016 at 01:56:05PM -0600, Jason Gunthorpe wrote:
> A bigger objection I have is that much of this new stuff is not
> adaquately documented.
>
> Tag matching is a great example. It looks like this introduces many new
> headers into the on-wire protocol. Where are these headers documented?
> Where is the spec for the on-wire format? Where is the implementation
> for rxe?
Agreed on that part. For pon the wire changes we need the hardware
standards organization to act. IBTA for IB and RoCE and IETF for iWarp,
although not even having an active WG for iWarp there is a major problem
at the moment.
--
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
^ permalink raw reply
* Re: [PATCH 03/32] libibumad: use NULL instead of 0 for NULL pointers
From: Hal Rosenstock @ 2016-10-13 19:58 UTC (permalink / raw)
To: Christoph Hellwig, linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476381095-20041-4-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
On 10/13/2016 1:51 PM, Christoph Hellwig wrote:
> Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
Reviewed-by: Hal Rosenstock <hal-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
--
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
^ permalink raw reply
* Re: [PATCH 04/32] libibumad: mark symbols as static where possible
From: Hal Rosenstock @ 2016-10-13 19:58 UTC (permalink / raw)
To: Christoph Hellwig, linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476381095-20041-5-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
On 10/13/2016 1:51 PM, Christoph Hellwig wrote:
> Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
Reviewed-by: Hal Rosenstock <hal-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
--
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
^ permalink raw reply
* Re: [PATCH 02/32] libibumad: create sysfs.h instead of using extern declarations in umad.c
From: Hal Rosenstock @ 2016-10-13 19:58 UTC (permalink / raw)
To: Christoph Hellwig, linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476381095-20041-3-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
On 10/13/2016 1:51 PM, Christoph Hellwig wrote:
> So that we have the prototypes available in the implementation file
> and do get proper type checking for them.
>
> Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
Reviewed-by: Hal Rosenstock <hal-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
> ---
> libibumad/sysfs.c | 1 +
> libibumad/sysfs.h | 10 ++++++++++
> libibumad/umad.c | 7 +------
> 3 files changed, 12 insertions(+), 6 deletions(-)
> create mode 100644 libibumad/sysfs.h
>
> diff --git a/libibumad/sysfs.c b/libibumad/sysfs.c
> index 011e411..83f89b4 100644
> --- a/libibumad/sysfs.c
> +++ b/libibumad/sysfs.c
> @@ -44,6 +44,7 @@
> #include <byteswap.h>
> #include <netinet/in.h>
> #include <infiniband/arch.h>
> +#include "sysfs.h"
>
> static int ret_code(void)
> {
> diff --git a/libibumad/sysfs.h b/libibumad/sysfs.h
> new file mode 100644
> index 0000000..7f8cbfe
> --- /dev/null
> +++ b/libibumad/sysfs.h
> @@ -0,0 +1,10 @@
> +#ifndef _UMAD_SYSFS_H
> +#define _UMAD_SYSFS_H
What about copyright for this new file ?
> +
> +extern int sys_read_string(const char *dir_name, const char *file_name, char *str, int len);
> +extern int sys_read_guid(const char *dir_name, const char *file_name, uint64_t * net_guid);
> +extern int sys_read_gid(const char *dir_name, const char *file_name, uint8_t * gid);
> +extern int sys_read_uint64(const char *dir_name, const char *file_name, uint64_t * u);
> +extern int sys_read_uint(const char *dir_name, const char *file_name, unsigned *u);
> +
> +#endif /* _UMAD_SYSFS_H */
> diff --git a/libibumad/umad.c b/libibumad/umad.c
> index 0c969f1..8860b99 100644
> --- a/libibumad/umad.c
> +++ b/libibumad/umad.c
> @@ -53,6 +53,7 @@
> #define IB_OPENIB_OUI (0x001405)
>
> #include <valgrind/memcheck.h>
> +#include "sysfs.h"
>
> typedef struct ib_user_mad_reg_req {
> uint32_t id;
> @@ -77,12 +78,6 @@ struct ib_user_mad_reg_req2 {
> uint8_t reserved[3];
> };
>
> -extern int sys_read_string(const char *dir_name, const char *file_name, char *str, int len);
> -extern int sys_read_guid(const char *dir_name, const char *file_name, uint64_t * net_guid);
> -extern int sys_read_gid(const char *dir_name, const char *file_name, uint8_t * gid);
> -extern int sys_read_uint64(const char *dir_name, const char *file_name, uint64_t * u);
> -extern int sys_read_uint(const char *dir_name, const char *file_name, unsigned *u);
> -
> #define IBWARN(fmt, args...) fprintf(stderr, "ibwarn: [%d] %s: " fmt "\n", getpid(), __func__, ## args)
>
> #define TRACE if (umaddebug) IBWARN
>
--
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
^ permalink raw reply
* Re: [PATCH 01/32] libibumad: include umad_str.h in umad_str.c
From: Hal Rosenstock @ 2016-10-13 19:58 UTC (permalink / raw)
To: Christoph Hellwig, linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476381095-20041-2-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
On 10/13/2016 1:51 PM, Christoph Hellwig wrote:
> So that we have the prototypes available in the implementation file
> and do get proper type checking for them.
>
> Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
Reviewed-by: Hal Rosenstock <hal-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
--
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
^ permalink raw reply
* [PATCH 17/17] mlx5: use proper ANSI-C prototypes for functions without arguments
From: Christoph Hellwig @ 2016-10-13 19:56 UTC (permalink / raw)
To: linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476388576-22863-1-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
---
providers/mlx5/cq.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/providers/mlx5/cq.c b/providers/mlx5/cq.c
index 2a53c89..ecfd6eb 100644
--- a/providers/mlx5/cq.c
+++ b/providers/mlx5/cq.c
@@ -384,7 +384,7 @@ static enum ibv_wc_status mlx5_handle_error_cqe(struct mlx5_err_cqe *cqe)
}
#if defined(__x86_64__) || defined (__i386__)
-static inline unsigned long get_cycles()
+static inline unsigned long get_cycles(void)
{
uint32_t low, high;
uint64_t val;
@@ -394,7 +394,7 @@ static inline unsigned long get_cycles()
return val;
}
-static void mlx5_stall_poll_cq()
+static void mlx5_stall_poll_cq(void)
{
int i;
--
2.1.4
--
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
^ permalink raw reply related
* [PATCH 16/17] mlx5: use NULL instead of 0 for NULL pointers
From: Christoph Hellwig @ 2016-10-13 19:56 UTC (permalink / raw)
To: linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476388576-22863-1-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
---
providers/mlx5/mlx5.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/providers/mlx5/mlx5.c b/providers/mlx5/mlx5.c
index 4b05dc4..747e242 100644
--- a/providers/mlx5/mlx5.c
+++ b/providers/mlx5/mlx5.c
@@ -310,7 +310,7 @@ static void mlx5_local_cpu_set(struct ibv_device *ibdev, cpu_set_t *cpu_set)
p ++;
}
- word = strtoul(p, 0, 16);
+ word = strtoul(p, NULL, 16);
for (k = 0; word; ++k, word >>= 1)
if (word & 1)
--
2.1.4
--
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
^ permalink raw reply related
* [PATCH 15/17] mlx5: mark symbols static where possible
From: Christoph Hellwig @ 2016-10-13 19:56 UTC (permalink / raw)
To: linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476388576-22863-1-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
---
providers/mlx5/mlx5.c | 2 +-
providers/mlx5/verbs.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/providers/mlx5/mlx5.c b/providers/mlx5/mlx5.c
index f24e504..4b05dc4 100644
--- a/providers/mlx5/mlx5.c
+++ b/providers/mlx5/mlx5.c
@@ -62,7 +62,7 @@
{ .vendor = PCI_VENDOR_ID_##v, \
.device = d }
-struct {
+static struct {
unsigned vendor;
unsigned device;
} hca_table[] = {
diff --git a/providers/mlx5/verbs.c b/providers/mlx5/verbs.c
index ef85a63..e288ebf 100644
--- a/providers/mlx5/verbs.c
+++ b/providers/mlx5/verbs.c
@@ -1184,7 +1184,7 @@ enum {
IBV_QP_INIT_ATTR_RX_HASH),
};
-struct ibv_qp *create_qp(struct ibv_context *context,
+static struct ibv_qp *create_qp(struct ibv_context *context,
struct ibv_qp_init_attr_ex *attr)
{
struct mlx5_create_qp cmd;
--
2.1.4
--
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
^ permalink raw reply related
* [PATCH 14/17] nes: use NULL instead of 0 for NULL pointers
From: Christoph Hellwig @ 2016-10-13 19:56 UTC (permalink / raw)
To: linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476388576-22863-1-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
---
providers/nes/nes_uverbs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/providers/nes/nes_uverbs.c b/providers/nes/nes_uverbs.c
index f404ffd..7e7bb90 100644
--- a/providers/nes/nes_uverbs.c
+++ b/providers/nes/nes_uverbs.c
@@ -324,7 +324,7 @@ int nes_ima_upoll_cq(struct ibv_cq *cq, int num_entries, struct ibv_wc *entry)
uint32_t head;
uint32_t cq_size;
- volatile struct nes_hw_nic_cqe *cqe = 0;
+ volatile struct nes_hw_nic_cqe *cqe = NULL;
volatile struct nes_hw_nic_cqe *cqes;
struct nes_uqp *nesuqp = nesucq->udqp;
--
2.1.4
--
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
^ permalink raw reply related
* [PATCH 13/17] nes: mark symbols static where possible
From: Christoph Hellwig @ 2016-10-13 19:56 UTC (permalink / raw)
To: linux-rdma-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1476388576-22863-1-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
---
providers/nes/nes_umain.c | 2 +-
providers/nes/nes_uverbs.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/providers/nes/nes_umain.c b/providers/nes/nes_umain.c
index b4e0bc1..4b19dd7 100644
--- a/providers/nes/nes_umain.c
+++ b/providers/nes/nes_umain.c
@@ -60,7 +60,7 @@ long int page_size;
.device = d, \
.type = NETEFFECT_##t }
-struct {
+static struct {
unsigned vendor;
unsigned device;
enum nes_uhca_type type;
diff --git a/providers/nes/nes_uverbs.c b/providers/nes/nes_uverbs.c
index 287e773..f404ffd 100644
--- a/providers/nes/nes_uverbs.c
+++ b/providers/nes/nes_uverbs.c
@@ -759,7 +759,7 @@ int nes_upoll_cq_no_db_read(struct ibv_cq *cq, int num_entries, struct ibv_wc *e
/**
* nes_arm_cq
*/
-void nes_arm_cq(struct nes_ucq *nesucq, struct nes_uvcontext *nesvctx, int sol)
+static void nes_arm_cq(struct nes_ucq *nesucq, struct nes_uvcontext *nesvctx, int sol)
{
uint32_t cq_arm;
--
2.1.4
--
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
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox