Received: by 10.192.165.148 with SMTP id m20csp2460251imm; Thu, 26 Apr 2018 11:21:13 -0700 (PDT) X-Google-Smtp-Source: AIpwx4/u8vlVq7/TXt743QBbJkbQMHnwqccCes7p3Yo3G/46nAI1/RfNE084YM8HCXnAd0PjhW2J X-Received: by 10.98.14.198 with SMTP id 67mr29199416pfo.36.1524766872933; Thu, 26 Apr 2018 11:21:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1524766872; cv=none; d=google.com; s=arc-20160816; b=NrfW376AVEuZ63q69E9ODyagXsl2/Edh204L0vY+D7OeNQR6seVUKzGE7v1y8LtZnI Fs/tn4bjDsg+5F0dFmPn2GiOWetn5Y/uYibd90h3ygNFBmEUd7PcM1lBMVa1sQC0DLEp R/nVTDKDQhS8Ew95wl1WZFTy0lT0Y7x158Op+sKnN2wB8E5Md7uCAyee5nnd11t0YdOW XbyoETLvG41fuy4+JmKwGxxu1aNm0VhGHSwiYsFBJLowL0hTjyN0UdwlbxtX/Qeb6PKR +8ryjzx7pdDY4kO/gUoBVWpxsiPqTS50Q/8Rwr6AZlCH5u39QBski/piu+FfDS5PqQaK H9eQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:from:subject:message-id:date :mime-version:dkim-signature:arc-authentication-results; bh=xzOfRA2wYopbVuHykVpgSnMcHzX+u28DM1SIsUyEdAg=; b=BriThtNmNf65qIOaKAVf9iUlCj5uJBdN2jnvUUoRY6Falfxsh9NfMRPNQBoPxGKoCh xS1TcVjE7Uuna28icXLLM0yW95XUTBHOWkS2YSulSKJGzA162WVGKGQHhRAZUJiRpPR1 iF+l4MT5zNtRXp1z7airUaCoJZbwgVg8vKGftHwa44ek8MrCqoqPVqsR9LJ2aVby2kFx XxYYqdoYp8ht704k++FyVDnjDJfvhgY7W0Ri3YCYY8x1ss9mAv4b/rZassKE795udkqL t0EXCxkK0L4rRIEF3qVk3Si7rpNyOaAoglftuE5AI4OtLhB1r3+T0aXgeueIQ7/rZjpE KFYw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=pWT3VrsA; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f68si19420549pfb.30.2018.04.26.11.20.57; Thu, 26 Apr 2018 11:21:12 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=pWT3VrsA; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932296AbeDZSTs (ORCPT + 99 others); Thu, 26 Apr 2018 14:19:48 -0400 Received: from mail-yb0-f202.google.com ([209.85.213.202]:52232 "EHLO mail-yb0-f202.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755998AbeDZSTl (ORCPT ); Thu, 26 Apr 2018 14:19:41 -0400 Received: by mail-yb0-f202.google.com with SMTP id a11-v6so16752756ybl.19 for ; Thu, 26 Apr 2018 11:19:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:date:message-id:subject:from:to:cc; bh=xzOfRA2wYopbVuHykVpgSnMcHzX+u28DM1SIsUyEdAg=; b=pWT3VrsASThZ45cuLTwpDsMwmdrC049Qk25zWFX8JCwmYYzBtn7isYKJzOB3YrgmmE eN9kxpUmF8YTFBSYHiaDCnklY/YgGrNJXrzx18XVclxEqMSqVtEvO2r7uo1Sdz8zlqSP 6xSYR4+tKZGtrvFNRMnrdLzxnXa6zIYpwr2RSZuBYlaM4HOGVjEF3RBP743mRLRO7P/f rO6NuDVAnhiDvc/vICsPoyt2VLMlZ8OvhKIRb1XRzOunAE27a+RlspV+rJWW8t6Ti7VG HBOs8vzZVtIIVFQLmG4jf4rFEJubXmUQ0PoRXwRqjMrbZDFqz5tS1AmMkY1VFLiBBsC3 eddw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:date:message-id:subject:from:to:cc; bh=xzOfRA2wYopbVuHykVpgSnMcHzX+u28DM1SIsUyEdAg=; b=PS+PbGra+LR/I1NG+Cg3SfzTJlLYFVjnQcTnMVtgzNGXMfIdQm/F3Y9cfYunBCi71j hRUcy08d71U+NSytvpRGS2a/3zCnU5XaMzaop5bBpK1NSEyRgxYi2e7fBMMv/6rDOzBv KRNSusYouT04Et8JTy+0dmB+X8AhYJ5+qPW1K4oSv1wZrLcfoGThlY9f7RyLJwWJb2mh e7HmirUeZfgB6Z2yS4hktjLkozQRma6pfxTToUxO9NNgudiW5LOdmJif19qyCOK2cali G3V22/7OqfTh4xzHg+CPnbiIow0eKSBTNn+jALJzDI4x3ZyvqNbFfItbY+0f+RMPzt+9 j4BQ== X-Gm-Message-State: ALQs6tBUIB/xPVMU198VSaDmzp26qNtVZ5PvrF9bEL5E7/Nw+hr+psyB nUURBPrfBv7hYDzVExvPcLhE3W4mwey5 MIME-Version: 1.0 X-Received: by 2002:a25:44f:: with SMTP id 76-v6mr1428057ybe.72.1524766780219; Thu, 26 Apr 2018 11:19:40 -0700 (PDT) Date: Thu, 26 Apr 2018 11:19:29 -0700 Message-Id: <20180426181935.32977-1-gthelen@google.com> X-Mailer: git-send-email 2.17.0.484.g0c8726318c-goog Subject: [PATCH 0/6] IB: make INFINIBAND_ADDR_TRANS configurable From: Greg Thelen To: Bart.VanAssche@wdc.com, hch@lst.de, dledford@redhat.com, jgg@ziepe.ca, axboe@fb.com, keith.busch@intel.com, sagi@grimberg.me, sfrench@samba.org, linux-rdma@vger.kernel.org, linux-nvme@lists.infradead.org, linux-cifs@vger.kernel.org, linux-kernel@vger.kernel.org, gthelen@google.com Cc: linux-rdma@vger.kernel.org, linux-nvme@lists.infradead.org, linux-cifs@vger.kernel.org, linux-kernel@vger.kernel.org, Greg Thelen Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series allows for CONFIG_INFINIBAND without CONFIG_INFINIBAND_ADDR_TRANS (aka RDMA communication manager). Fuzzing has been finding fair number of CM bugs. So provide an option to disable it in systems which don't need it. Changes since last posting (https://lkml.org/lkml/2018/4/25/1266): - added ("ib_srp: depend on INFINIBAND_ADDR_TRANS") patch This series passed the 0-day builder. I perfomed manual static analysis of this series based on next-20180424, looking for dependencies. $ git grep -w CONFIG_INFINIBAND_ADDR_TRANS drivers/infiniband/core/Makefile:infiniband-$(CONFIG_INFINIBAND_ADDR_TRANS) := rdma_cm.o drivers/infiniband/core/Makefile:user_access-$(CONFIG_INFINIBAND_ADDR_TRANS) := rdma_ucm.o $ grep -w -e rdma_cm -e rdma_ucm drivers/infiniband/core/Makefile infiniband-$(CONFIG_INFINIBAND_ADDR_TRANS) := rdma_cm.o user_access-$(CONFIG_INFINIBAND_ADDR_TRANS) := rdma_ucm.o rdma_cm-y := cma.o rdma_cm-$(CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS) += cma_configfs.o rdma_ucm-y := ucma.o $ grep EXPORT drivers/infiniband/core/{cma,ucma}.c drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_event_msg); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_reject_msg); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_is_consumer_reject); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_consumer_reject_data); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(__rdma_create_id); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_create_qp); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_destroy_qp); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_init_qp_attr); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_destroy_id); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_get_service_id); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_read_gids); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_set_service_type); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_set_ib_path); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_resolve_route); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_resolve_addr); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_set_reuseaddr); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_set_afonly); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_listen); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_bind_addr); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_connect); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(__rdma_accept); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_notify); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_reject); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_disconnect); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_join_multicast); drivers/infiniband/core/cma.c:EXPORT_SYMBOL(rdma_leave_multicast); $ git grep -lw \ -e __rdma_accept \ -e __rdma_create_id \ -e rdma_bind_addr \ -e rdma_connect \ -e rdma_consumer_reject_data \ -e rdma_create_qp \ -e rdma_destroy_id \ -e rdma_destroy_qp \ -e rdma_disconnect \ -e rdma_event_msg \ -e rdma_get_service_id \ -e rdma_init_qp_attr \ -e rdma_is_consumer_reject \ -e rdma_join_multicast \ -e rdma_leave_multicast \ -e rdma_listen \ -e rdma_notify \ -e rdma_read_gids \ -e rdma_reject \ -e rdma_reject_msg \ -e rdma_resolve_addr \ -e rdma_resolve_route \ -e rdma_set_afonly \ -e rdma_set_ib_path \ -e rdma_set_reuseaddr \ -e rdma_set_service_type drivers/infiniband/core/cma.c drivers/infiniband/core/ucma.c drivers/infiniband/hw/qedr/verbs.c drivers/infiniband/ulp/iser/iser_verbs.c drivers/infiniband/ulp/isert/ib_isert.c drivers/infiniband/ulp/srp/ib_srp.c drivers/infiniband/ulp/srpt/ib_srpt.c drivers/net/ethernet/qlogic/qed/qed_rdma.c drivers/nvme/host/rdma.c drivers/nvme/target/rdma.c drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd_cb.c fs/cifs/smbdirect.c include/linux/qed/qed_rdma_if.h include/rdma/rdma_cm.h include/rdma/rdma_cm_ib.h net/9p/trans_rdma.c net/rds/ib.c net/rds/ib_cm.c net/rds/rdma_transport.c net/sunrpc/xprtrdma/svc_rdma_transport.c net/sunrpc/xprtrdma/transport.c net/sunrpc/xprtrdma/verbs.c # analysis of each file: drivers/infiniband/hw/qedr/verbs.c drivers/net/ethernet/qlogic/qed/qed_rdma.c include/linux/qed/qed_rdma_if.h - not a direct function call include/rdma/rdma_cm.h include/rdma/rdma_cm_ib.h - just prototypes drivers/infiniband/core/cma.c drivers/infiniband/core/ucma.c - depends on INFINIBAND_ADDR_TRANS drivers/infiniband/ulp/iser/iser_verbs.c - depends on INFINIBAND_ISER => INFINIBAND_ADDR_TRANS drivers/infiniband/ulp/isert/ib_isert.c - depends on INFINIBAND_ISERT => INFINIBAND_ADDR_TRANS drivers/infiniband/ulp/srp/ib_srp.c - depends on INFINIBAND_SRP => INFINIBAND_ADDR_TRANS per this series' "ib_srp: depend on INFINIBAND_ADDR_TRANS" drivers/infiniband/ulp/srpt/ib_srpt.c - depends on INFINIBAND_SRPT => INFINIBAND_ADDR_TRANS per this series' "ib_srpt: depend on INFINIBAND_ADDR_TRANS" drivers/nvme/host/rdma.c - depends on NVME_RDMA => INFINIBAND_ADDR_TRANS per this series' "nvme: depend on INFINIBAND_ADDR_TRANS" drivers/nvme/target/rdma.c - depends on NVME_TARGET_RDMA => INFINIBAND_ADDR_TRANS per this series' "nvmet-rdma: depend on INFINIBAND_ADDR_TRANS" drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.h drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd_cb.c - depends on LNET_XPRT_IB => INFINIBAND_ADDR_TRANS fs/cifs/smbdirect.c - depends on CIFS_SMB_DIRECT => INFINIBAND_ADDR_TRANS per this series' "cifs: smbd: depend on INFINIBAND_ADDR_TRANS" net/9p/trans_rdma.c - depends on NET_9P_RDMA => INFINIBAND_ADDR_TRANS net/rds/ib.c net/rds/ib_cm.c net/rds/rdma_transport.c - depends on RDS_RDMA => INFINIBAND_ADDR_TRANS net/sunrpc/xprtrdma/svc_rdma_transport.c net/sunrpc/xprtrdma/transport.c net/sunrpc/xprtrdma/verbs.c - depends on SUNRPC_XPRT_RDMA => INFINIBAND_ADDR_TRANS Greg Thelen (6): nvme: depend on INFINIBAND_ADDR_TRANS nvmet-rdma: depend on INFINIBAND_ADDR_TRANS ib_srpt: depend on INFINIBAND_ADDR_TRANS cifs: smbd: depend on INFINIBAND_ADDR_TRANS ib_srp: depend on INFINIBAND_ADDR_TRANS IB: make INFINIBAND_ADDR_TRANS configurable drivers/infiniband/Kconfig | 5 ++++- drivers/infiniband/ulp/srp/Kconfig | 2 +- drivers/infiniband/ulp/srpt/Kconfig | 2 +- drivers/nvme/host/Kconfig | 2 +- drivers/nvme/target/Kconfig | 2 +- fs/cifs/Kconfig | 2 +- 6 files changed, 9 insertions(+), 6 deletions(-) -- 2.17.0.484.g0c8726318c-goog