Mon, Jul 10, 2017 at 06:22:23PM CEST, leon@xxxxxxxxxx wrote: >On Mon, Jul 10, 2017 at 10:13:07AM +0200, Jiri Pirko wrote: >> Tue, Jul 04, 2017 at 09:55:40AM CEST, leon@xxxxxxxxxx wrote: >> >From: Leon Romanovsky <leonro@xxxxxxxxxxxx> >> > >> >Link (port) object represent struct ib_port to the user space. >> > >> >Link properties: >> > * Port capabilities >> > * IB subnet prefix >> > * LID, SM_LID and LMC >> > * Port state >> > * Physical state >> > >> >Signed-off-by: Leon Romanovsky <leonro@xxxxxxxxxxxx> >> >--- >> > rdma/Makefile | 2 +- >> > rdma/link.c | 280 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >> > rdma/rdma.c | 3 +- >> > rdma/utils.c | 5 ++ >> > 4 files changed, 288 insertions(+), 2 deletions(-) >> > create mode 100644 rdma/link.c >> > >> >diff --git a/rdma/Makefile b/rdma/Makefile >> >index 123d7ac5..1a9e4b1a 100644 >> >--- a/rdma/Makefile >> >+++ b/rdma/Makefile >> >@@ -2,7 +2,7 @@ include ../Config >> > >> > ifeq ($(HAVE_MNL),y) >> > >> >-RDMA_OBJ = rdma.o utils.o dev.o >> >+RDMA_OBJ = rdma.o utils.o dev.o link.o >> > >> > TARGETS=rdma >> > CFLAGS += $(shell $(PKG_CONFIG) libmnl --cflags) >> >diff --git a/rdma/link.c b/rdma/link.c >> >new file mode 100644 >> >index 00000000..f92b4cef >> >--- /dev/null >> >+++ b/rdma/link.c >> >@@ -0,0 +1,280 @@ >> >+/* >> >+ * link.c RDMA tool >> >+ * >> >+ * This program is free software; you can redistribute it and/or >> >+ * modify it under the terms of the GNU General Public License >> >+ * as published by the Free Software Foundation; either version >> >+ * 2 of the License, or (at your option) any later version. >> >+ * >> >+ * Authors: Leon Romanovsky <leonro@xxxxxxxxxxxx> >> >+ */ >> >+ >> >+#include "rdma.h" >> >+ >> >+static int link_help(struct rdma *rd) >> >+{ >> >+ pr_out("Usage: %s link show [DEV/PORT_INDEX]\n", rd->filename); >> >+ return 0; >> >+} >> >+ >> >+static void link_print_caps(struct nlattr **tb) >> >+{ >> >+ uint64_t caps; >> >+ uint32_t idx; >> >+ >> >+ /* >> >+ * FIXME: move to indexes when kernel will start exporting them. >> >> Not exported yet? > >Not yet, I want to minimize the UAPI export from kernel before user-space >part is accepted. I don't get it. If you need it in userspace, you should expose it. Why to wait? What am I missing? [...] >> >+ rd->port_idx = port ? :1; >> >> "port ? : 1" > >Yeah, legal C, the same as (port) ? port : 1 >ihttps://en.wikipedia.org/wiki/%3F:#C I was referring to the missing " ". I'm a nitpicker :) -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html