From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Ahern Subject: Re: [PATCH iproute2] rdma: fix header files Date: Sat, 5 May 2018 09:17:31 -0600 Message-ID: <424b2502-e79e-fad7-255d-37a4ddd24068@gmail.com> References: <20180504215608.11305-1-stephen@networkplumber.org> <20180504215800.41b8467a@xeon-e3> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: swise@opengridcomputing.com, netdev@vger.kernel.org To: Stephen Hemminger Return-path: Received: from mail-pf0-f196.google.com ([209.85.192.196]:43919 "EHLO mail-pf0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751118AbeEEPRk (ORCPT ); Sat, 5 May 2018 11:17:40 -0400 Received: by mail-pf0-f196.google.com with SMTP id j20so5312808pff.10 for ; Sat, 05 May 2018 08:17:39 -0700 (PDT) In-Reply-To: <20180504215800.41b8467a@xeon-e3> Content-Language: en-US Sender: netdev-owner@vger.kernel.org List-ID: On 5/4/18 10:58 PM, Stephen Hemminger wrote: > On Fri, 4 May 2018 16:13:07 -0600 > David Ahern wrote: > >> On 5/4/18 3:56 PM, Stephen Hemminger wrote: >>> All user api headers in iproute2 should be in include/uapi >>> so that script can be used to put correct sanitized kernel headers >>> there. And the header files for rdma must be a complete set; if one >>> header file includes another, all must be present. >>> >>> This fixes build on older distributions, and Windows Services >>> for Linux. >>> >>> Signed-off-by: Stephen Hemminger >>> --- >>> include/uapi/rdma/ib_user_sa.h | 77 ++ >>> include/uapi/rdma/ib_user_verbs.h | 1210 +++++++++++++++++ >>> .../uapi/rdma/rdma_netlink.h | 13 + >>> .../uapi/rdma/rdma_user_cm.h | 6 +- >>> 4 files changed, 1303 insertions(+), 3 deletions(-) >>> create mode 100644 include/uapi/rdma/ib_user_sa.h >>> create mode 100644 include/uapi/rdma/ib_user_verbs.h >>> rename {rdma/include => include}/uapi/rdma/rdma_netlink.h (95%) >>> rename {rdma/include => include}/uapi/rdma/rdma_user_cm.h (98%) >>> >> >> Stephen: >> >> Per a recent discussion the RDMA folks need to take ownership of the >> uapi files. RDMA features do not hit Dave's net-next tree so the rdma >> code can never hit iproute2-next during a dev cycle. > > I want all uapi headers in include/uapi because it avoids possible overlap problems, > During the linux-net/linus release cycle they should match what is Linus's tree. > > During the net-next they can come from two sources. > That creates extra work for me for no reason. You state above "user api headers in iproute2 should be in include/uapi so that script can be used to put correct sanitized kernel headers there." With RDMA's development cycle that will *never* happen. With the exception of RDMA, all iproute2 features go through net-next and it is the right tree to pull updates from. Every time I sync from net-next the header files for rdma will have to be ignored, so they will never be updated through this mechanism which means the stated goal is not achievable. As for linux-next, I will not sync header files to a tree that disappears; it breaks all traceability. Further, it seems to me that it does not really solve the problem. I forget the steps now but RDMA features have to hit some development tree before going to Linus, so there will be a delay with the headers. Back in March we discussed options. iproute2 is nothing more than a delivery vehicle for rdmatool. Since it breaks everything else about the iproute2 and net-next association, the simplest option for everyone is for the rdma group to control syncing their own headers and putting them under rdma directory.