From patchwork Thu Jul 20 17:01:02 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jason Gunthorpe X-Patchwork-Id: 9855387 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 5A121600F5 for ; Thu, 20 Jul 2017 17:01:22 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 486D7285C4 for ; Thu, 20 Jul 2017 17:01:22 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 3D09F286E4; Thu, 20 Jul 2017 17:01:22 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 95B06285C4 for ; Thu, 20 Jul 2017 17:01:21 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965387AbdGTRBS (ORCPT ); Thu, 20 Jul 2017 13:01:18 -0400 Received: from quartz.orcorp.ca ([184.70.90.242]:44201 "EHLO quartz.orcorp.ca" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965413AbdGTRBM (ORCPT ); Thu, 20 Jul 2017 13:01:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=obsidianresearch.com; s=rsa1; h=References:In-Reply-To:Message-Id:Date:Subject:To:From; bh=pWon3C/ybqCLfaMlFkQTGrjmXi2PIMISmTcdVCMYAU4=; b=O2XaXLf/L8k/46p5w8dCPho5pZ7oDRw4BdZvc8N5nGvtIG/kmnC9hsCt07Xloc0DnZC4vvH1KitEvaV+7rr4Us7kA/4dEV4vB+f5KRTR/WwEmr67Cdy6OFhN1V/lvHYiSTb1o8Ng5Rm7vPv0DZk7Tpt0vSR3vTJ5QOmVYyIw95s=; Received: from [10.0.0.156] (helo=jggl.edm.orcorp.ca) by quartz.orcorp.ca with esmtps (TLS1.2:ECDHE_RSA_AES_128_CBC_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1dYEp3-0000gv-7A; Thu, 20 Jul 2017 11:01:09 -0600 From: Jason Gunthorpe To: linux-rdma@vger.kernel.org, Leon Romanovsky Subject: [PATCH v2 rdma-core 6/8] mthca: Add sparse annotations Date: Thu, 20 Jul 2017 11:01:02 -0600 Message-Id: <1500570064-11712-7-git-send-email-jgunthorpe@obsidianresearch.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1500570064-11712-1-git-send-email-jgunthorpe@obsidianresearch.com> References: <1500570064-11712-1-git-send-email-jgunthorpe@obsidianresearch.com> X-Broken-Reverse-DNS: no host name found for IP address 10.0.0.156 Sender: linux-rdma-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-rdma@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Signed-off-by: Jason Gunthorpe --- CMakeLists.txt | 2 +- providers/mthca/cq.c | 32 ++++++++++++------------- providers/mthca/memfree.c | 4 ++-- providers/mthca/mthca.h | 24 +++++++++---------- providers/mthca/qp.c | 4 ++-- providers/mthca/wqe.h | 60 +++++++++++++++++++++++------------------------ 6 files changed, 63 insertions(+), 63 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e57285ae07c9d1..c2d6618ebd4601 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -418,7 +418,7 @@ add_subdirectory(providers/mlx4) add_subdirectory(providers/mlx4/man) add_subdirectory(providers/mlx5) add_subdirectory(providers/mlx5/man) -add_subdirectory(providers/mthca) # NO SPARSE +add_subdirectory(providers/mthca) add_subdirectory(providers/nes) # NO SPARSE add_subdirectory(providers/ocrdma) add_subdirectory(providers/qedr) diff --git a/providers/mthca/cq.c b/providers/mthca/cq.c index 68550410f349af..dd8baca198c3a3 100644 --- a/providers/mthca/cq.c +++ b/providers/mthca/cq.c @@ -93,14 +93,14 @@ enum { }; struct mthca_cqe { - uint32_t my_qpn; - uint32_t my_ee; - uint32_t rqpn; - uint16_t sl_g_mlpath; - uint16_t rlid; - uint32_t imm_etype_pkey_eec; - uint32_t byte_cnt; - uint32_t wqe; + __be32 my_qpn; + __be32 my_ee; + __be32 rqpn; + __be16 sl_g_mlpath; + __be16 rlid; + __be32 imm_etype_pkey_eec; + __be32 byte_cnt; + __be32 wqe; uint8_t opcode; uint8_t is_send; uint8_t reserved; @@ -108,13 +108,13 @@ struct mthca_cqe { }; struct mthca_err_cqe { - uint32_t my_qpn; - uint32_t reserved1[3]; + __be32 my_qpn; + __be32 reserved1[3]; uint8_t syndrome; uint8_t vendor_err; - uint16_t db_cnt; - uint32_t reserved2; - uint32_t wqe; + __be16 db_cnt; + __be32 reserved2; + __be32 wqe; uint8_t opcode; uint8_t reserved3[2]; uint8_t owner; @@ -163,11 +163,11 @@ static inline void update_cons_index(struct mthca_cq *cq, int incr) static void dump_cqe(void *cqe_ptr) { - uint32_t *cqe = cqe_ptr; + __be32 *cqe = cqe_ptr; int i; for (i = 0; i < 8; ++i) - printf(" [%2x] %08x\n", i * 4, be32toh(((uint32_t *) cqe)[i])); + printf(" [%2x] %08x\n", i * 4, be32toh(cqe[i])); } static int handle_error_cqe(struct mthca_cq *cq, @@ -177,7 +177,7 @@ static int handle_error_cqe(struct mthca_cq *cq, { int err; int dbd; - uint32_t new_wqe; + __be32 new_wqe; if (cqe->syndrome == SYNDROME_LOCAL_QP_OP_ERR) { printf("local QP operation err " diff --git a/providers/mthca/memfree.c b/providers/mthca/memfree.c index 25855429b302f0..14edb00afefd3a 100644 --- a/providers/mthca/memfree.c +++ b/providers/mthca/memfree.c @@ -56,7 +56,7 @@ struct mthca_db_table { }; int mthca_alloc_db(struct mthca_db_table *db_tab, enum mthca_db_type type, - uint32_t **db) + __be32 **db) { int i, j, k; int group, start, end, dir; @@ -140,7 +140,7 @@ out: return ret; } -void mthca_set_db_qn(uint32_t *db, enum mthca_db_type type, uint32_t qn) +void mthca_set_db_qn(__be32 *db, enum mthca_db_type type, uint32_t qn) { db[1] = htobe32((qn << 8) | (type << 5)); } diff --git a/providers/mthca/mthca.h b/providers/mthca/mthca.h index d456e6a50c889f..68bc5ad73f9b49 100644 --- a/providers/mthca/mthca.h +++ b/providers/mthca/mthca.h @@ -134,9 +134,9 @@ struct mthca_cq { /* Next fields are mem-free only */ int set_ci_db_index; - uint32_t *set_ci_db; + __be32 *set_ci_db; int arm_db_index; - uint32_t *arm_db; + __be32 *arm_db; int arm_sn; }; @@ -157,7 +157,7 @@ struct mthca_srq { /* Next fields are mem-free only */ int db_index; - uint32_t *db; + __be32 *db; uint16_t counter; }; @@ -174,7 +174,7 @@ struct mthca_wq { /* Next fields are mem-free only */ int db_index; - uint32_t *db; + __be32 *db; }; struct mthca_qp { @@ -191,16 +191,16 @@ struct mthca_qp { }; struct mthca_av { - uint32_t port_pd; + __be32 port_pd; uint8_t reserved1; uint8_t g_slid; - uint16_t dlid; + __be16 dlid; uint8_t reserved2; uint8_t gid_index; uint8_t msg_sr; uint8_t hop_limit; - uint32_t sl_tclass_flowlabel; - uint32_t dgid[4]; + __be32 sl_tclass_flowlabel; + __be32 dgid[4]; }; struct mthca_ah { @@ -215,7 +215,7 @@ static inline unsigned long align(unsigned long val, unsigned long align) return (val + align - 1) & ~(align - 1); } -static inline uintptr_t db_align(uint32_t *db) +static inline uintptr_t db_align(__be32 *db) { return (uintptr_t) db & ~((uintptr_t) MTHCA_DB_REC_PAGE_SIZE - 1); } @@ -268,8 +268,8 @@ int mthca_alloc_buf(struct mthca_buf *buf, size_t size, int page_size); void mthca_free_buf(struct mthca_buf *buf); int mthca_alloc_db(struct mthca_db_table *db_tab, enum mthca_db_type type, - uint32_t **db); -void mthca_set_db_qn(uint32_t *db, enum mthca_db_type type, uint32_t qn); + __be32 **db); +void mthca_set_db_qn(__be32 *db, enum mthca_db_type type, uint32_t qn); void mthca_free_db(struct mthca_db_table *db_tab, enum mthca_db_type type, int db_index); struct mthca_db_table *mthca_alloc_db_tab(int uarc_size); void mthca_free_db_tab(struct mthca_db_table *db_tab); @@ -340,7 +340,7 @@ struct mthca_qp *mthca_find_qp(struct mthca_context *ctx, uint32_t qpn); int mthca_store_qp(struct mthca_context *ctx, uint32_t qpn, struct mthca_qp *qp); void mthca_clear_qp(struct mthca_context *ctx, uint32_t qpn); int mthca_free_err_wqe(struct mthca_qp *qp, int is_send, - int index, int *dbd, uint32_t *new_wqe); + int index, int *dbd, __be32 *new_wqe); struct ibv_ah *mthca_create_ah(struct ibv_pd *pd, struct ibv_ah_attr *attr); int mthca_destroy_ah(struct ibv_ah *ah); int mthca_alloc_av(struct mthca_pd *pd, struct ibv_ah_attr *attr, diff --git a/providers/mthca/qp.c b/providers/mthca/qp.c index 1907f2b82d6987..f4289032a5d2a9 100644 --- a/providers/mthca/qp.c +++ b/providers/mthca/qp.c @@ -852,7 +852,7 @@ int mthca_alloc_qp_buf(struct ibv_pd *pd, struct ibv_qp_cap *cap, if (mthca_is_memfree(pd->context)) { struct mthca_data_seg *scatter; - uint32_t sz; + __be32 sz; sz = htobe32((sizeof (struct mthca_next_seg) + qp->rq.max_gs * sizeof (struct mthca_data_seg)) / 16); @@ -926,7 +926,7 @@ void mthca_clear_qp(struct mthca_context *ctx, uint32_t qpn) } int mthca_free_err_wqe(struct mthca_qp *qp, int is_send, - int index, int *dbd, uint32_t *new_wqe) + int index, int *dbd, __be32 *new_wqe) { struct mthca_next_seg *next; diff --git a/providers/mthca/wqe.h b/providers/mthca/wqe.h index dfd600a26d6022..e56ed9c26cfb6b 100644 --- a/providers/mthca/wqe.h +++ b/providers/mthca/wqe.h @@ -60,57 +60,57 @@ enum { }; struct mthca_next_seg { - uint32_t nda_op; /* [31:6] next WQE [4:0] next opcode */ - uint32_t ee_nds; /* [31:8] next EE [7] DBD [6] F [5:0] next WQE size */ - uint32_t flags; /* [3] CQ [2] Event [1] Solicit */ - uint32_t imm; /* immediate data */ + __be32 nda_op; /* [31:6] next WQE [4:0] next opcode */ + __be32 ee_nds; /* [31:8] next EE [7] DBD [6] F [5:0] next WQE size */ + __be32 flags; /* [3] CQ [2] Event [1] Solicit */ + __be32 imm; /* immediate data */ }; struct mthca_tavor_ud_seg { - uint32_t reserved1; - uint32_t lkey; - uint64_t av_addr; - uint32_t reserved2[4]; - uint32_t dqpn; - uint32_t qkey; - uint32_t reserved3[2]; + __be32 reserved1; + __be32 lkey; + __be64 av_addr; + __be32 reserved2[4]; + __be32 dqpn; + __be32 qkey; + __be32 reserved3[2]; }; struct mthca_arbel_ud_seg { - uint32_t av[8]; - uint32_t dqpn; - uint32_t qkey; - uint32_t reserved[2]; + __be32 av[8]; + __be32 dqpn; + __be32 qkey; + __be32 reserved[2]; }; struct mthca_bind_seg { - uint32_t flags; /* [31] Atomic [30] rem write [29] rem read */ - uint32_t reserved; - uint32_t new_rkey; - uint32_t lkey; - uint64_t addr; - uint64_t length; + __be32 flags; /* [31] Atomic [30] rem write [29] rem read */ + __be32 reserved; + __be32 new_rkey; + __be32 lkey; + __be64 addr; + __be64 length; }; struct mthca_raddr_seg { - uint64_t raddr; - uint32_t rkey; - uint32_t reserved; + __be64 raddr; + __be32 rkey; + __be32 reserved; }; struct mthca_atomic_seg { - uint64_t swap_add; - uint64_t compare; + __be64 swap_add; + __be64 compare; }; struct mthca_data_seg { - uint32_t byte_count; - uint32_t lkey; - uint64_t addr; + __be32 byte_count; + __be32 lkey; + __be64 addr; }; struct mthca_inline_seg { - uint32_t byte_count; + __be32 byte_count; }; #endif /* WQE_H */