From patchwork Fri Feb 5 00:29:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Xiong, Jianxin" X-Patchwork-Id: 12069031 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B1480C433E0 for ; Fri, 5 Feb 2021 00:15:12 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 8095A64FAE for ; Fri, 5 Feb 2021 00:15:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231704AbhBEAPL (ORCPT ); Thu, 4 Feb 2021 19:15:11 -0500 Received: from mga12.intel.com ([192.55.52.136]:45136 "EHLO mga12.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231690AbhBEAPL (ORCPT ); Thu, 4 Feb 2021 19:15:11 -0500 IronPort-SDR: Q2HhOZhnX5SeNc8TP9Ydy5NWgWDO++VO+we5VdwkC+SSdgVP6gZsvxxokDB/LFywk4zittY3ey D56Y6DSIF5jw== X-IronPort-AV: E=McAfee;i="6000,8403,9885"; a="160511899" X-IronPort-AV: E=Sophos;i="5.81,153,1610438400"; d="scan'208";a="160511899" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Feb 2021 16:14:15 -0800 IronPort-SDR: 4NWm1oZ0nuHSdRNWL/ar5oktZ8cBKZnc8obrjPDKfEScgv4/x6Q3Z7BypiGEcfDfjcnX7wTVDu qnerKJzhJq3Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,153,1610438400"; d="scan'208";a="508326484" Received: from cst-dev.jf.intel.com ([10.23.221.69]) by orsmga004.jf.intel.com with ESMTP; 04 Feb 2021 16:14:14 -0800 From: Jianxin Xiong To: linux-rdma@vger.kernel.org, dri-devel@lists.freedesktop.org Cc: Jianxin Xiong , Doug Ledford , Jason Gunthorpe , Leon Romanovsky , Sumit Semwal , Christian Koenig , Daniel Vetter , Edward Srouji , Yishai Hadas , John Hubbard , Ali Alnubani , Gal Pressman , Emil Velikov Subject: [PATCH rdma-core v2 1/3] verbs: Fix gcc warnings when building for 32bit systems Date: Thu, 4 Feb 2021 16:29:12 -0800 Message-Id: <1612484954-75514-2-git-send-email-jianxin.xiong@intel.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1612484954-75514-1-git-send-email-jianxin.xiong@intel.com> References: <1612484954-75514-1-git-send-email-jianxin.xiong@intel.com> Precedence: bulk List-ID: X-Mailing-List: linux-rdma@vger.kernel.org Commit 6b0a3238289f ("verbs: Support dma-buf based memory region") caused a build failure when building for 32b systems with gcc: $ mkdir build && cd build && CFLAGS="-m32" cmake -GNinja .. \ -DIOCTL_MODE=both -DNO_PYVERBS=1 -DENABLE_WERROR=1 && ninja ... ../libibverbs/cmd_mr.c: In function 'ibv_cmd_reg_dmabuf_mr': ../libibverbs/cmd_mr.c:152:21: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast] vmr->ibv_mr.addr = (void *)offset; ... ../libibverbs/verbs.c: In function 'ibv_reg_dmabuf_mr': ../libibverbs/verbs.c:387:13: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast] mr->addr = (void *)offset; ... Reported-by: Ali Alnubani Signed-off-by: Jianxin Xiong --- libibverbs/cmd_mr.c | 2 +- libibverbs/verbs.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libibverbs/cmd_mr.c b/libibverbs/cmd_mr.c index af0fad7..736fce0 100644 --- a/libibverbs/cmd_mr.c +++ b/libibverbs/cmd_mr.c @@ -149,7 +149,7 @@ int ibv_cmd_reg_dmabuf_mr(struct ibv_pd *pd, uint64_t offset, size_t length, vmr->ibv_mr.lkey = lkey; vmr->ibv_mr.rkey = rkey; vmr->ibv_mr.pd = pd; - vmr->ibv_mr.addr = (void *)offset; + vmr->ibv_mr.addr = (void *)(uintptr_t)offset; vmr->ibv_mr.length = length; vmr->mr_type = IBV_MR_TYPE_DMABUF_MR; return 0; diff --git a/libibverbs/verbs.c b/libibverbs/verbs.c index b93046a..f666695 100644 --- a/libibverbs/verbs.c +++ b/libibverbs/verbs.c @@ -384,7 +384,7 @@ struct ibv_mr *ibv_reg_dmabuf_mr(struct ibv_pd *pd, uint64_t offset, mr->context = pd->context; mr->pd = pd; - mr->addr = (void *)offset; + mr->addr = (void *)(uintptr_t)offset; mr->length = length; return mr; }