Re: [PATCH iproute2 V3 3/4] rdma: Add link object
From: Leon Romanovsky <leon@kernel.org>
Date: 2017-07-11 06:33:42
Also in:
netdev
On Mon, Jul 10, 2017 at 08:28:28PM +0200, Jiri Pirko wrote:
Mon, Jul 10, 2017 at 06:22:23PM CEST, leon@kernel.org wrote:quoted
On Mon, Jul 10, 2017 at 10:13:07AM +0200, Jiri Pirko wrote:quoted
Tue, Jul 04, 2017 at 09:55:40AM CEST, leon@kernel.org wrote:quoted
From: Leon Romanovsky <redacted> 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 <redacted> --- 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.cdiff --git a/rdma/Makefile b/rdma/Makefile index 123d7ac5..1a9e4b1a 100644 --- a/rdma/Makefile +++ b/rdma/Makefile@@ -2,7 +2,7 @@ include ../Configifeq ($(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@mellanox.com> + */ + +#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?
Mainly my attempt to avoid constant rebasing for four series at the same time. One for rdmatool, one for RDMA netlink, one for RDMA UAPI changes and one for rdma-core [1] which should reuse those exported structures too. [1] http://github.com/linux-rdma/rdma-core Thanks
Attachments
- signature.asc [application/pgp-signature] 833 bytes