From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jason Gunthorpe Subject: Re: [PATCH rdma/wip/jgg-for-next] RDMA/netlink: Hide unimplemented NLDEV commands Date: Tue, 30 Jan 2018 11:48:14 -0700 Message-ID: <20180130184814.GG17053@ziepe.ca> References: <20180130150716.16372-1-leon@kernel.org> <20180130155706.GC14797@nanopsycho> <20180130160337.GD17053@ziepe.ca> <20180130181814.GD14797@nanopsycho> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <20180130181814.GD14797@nanopsycho> Sender: linux-rdma-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Jiri Pirko Cc: Leon Romanovsky , Doug Ledford , Leon Romanovsky , RDMA mailing list , Steve Wise List-Id: linux-rdma@vger.kernel.org On Tue, Jan 30, 2018 at 07:18:14PM +0100, Jiri Pirko wrote: > Tue, Jan 30, 2018 at 05:03:37PM CET, jgg-uk2M96/98Pc@public.gmane.org wrote: > >On Tue, Jan 30, 2018 at 04:57:06PM +0100, Jiri Pirko wrote: > >> Tue, Jan 30, 2018 at 04:07:16PM CET, leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org wrote: > >> >From: Leon Romanovsky > >> > > >> >The nldev was implemented by following devlink implementation, > >> >including SET/DEL/NEW commands. However these commands were not > >> >implemented and hence don't need to be exposed. > >> > > >> >Signed-off-by: Leon Romanovsky > >> > include/uapi/rdma/rdma_netlink.h | 14 ++++++-------- > >> > 1 file changed, 6 insertions(+), 8 deletions(-) > >> > > >> >diff --git a/include/uapi/rdma/rdma_netlink.h b/include/uapi/rdma/rdma_netlink.h > >> >index 17e59bec169e..4c77e2a7b07e 100644 > >> >+++ b/include/uapi/rdma/rdma_netlink.h > >> >@@ -227,16 +227,14 @@ enum rdma_nldev_command { > >> > RDMA_NLDEV_CMD_UNSPEC, > >> > > >> > RDMA_NLDEV_CMD_GET, /* can dump */ > >> >- RDMA_NLDEV_CMD_SET, > >> >- RDMA_NLDEV_CMD_NEW, > >> >- RDMA_NLDEV_CMD_DEL, > >> > > >> >- RDMA_NLDEV_CMD_PORT_GET, /* can dump */ > >> >- RDMA_NLDEV_CMD_PORT_SET, > >> >- RDMA_NLDEV_CMD_PORT_NEW, > >> >- RDMA_NLDEV_CMD_PORT_DEL, > >> >+ /* 2 - 4 are free to use */ > >> > > >> >- RDMA_NLDEV_CMD_RES_GET, /* can dump */ > >> >+ RDMA_NLDEV_CMD_PORT_GET = 5, /* can dump */ > >> >+ > >> >+ /* 6 - 8 are free to use */ > >> > >> I don't see reason for the wholes. > > > >We are stuck with the holes, it is fixed uABI at this point, can't > >change the constants we actually implemented. > > If it is realeased already, we can't remove the defines either. We have been less absolute on the uapi headers causing compilation breaks. Using these headers is so hard, eg iproute and rdma-core take them verbatim from the kernel and bundles them inside. So as a practical matter, it is OK to sometimes cause compilation issues. In this case there is no correct use of the constants since the kernel never implemented them, any user is busted in some way and should be reviewed. Even glibc causes compilation breaks in new versions.. 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