IB/ucm: Fix compiling ucm.c
authorJason Gunthorpe <jgg@mellanox.com>
Tue, 14 Aug 2018 02:04:37 +0000 (20:04 -0600)
committerJason Gunthorpe <jgg@mellanox.com>
Tue, 14 Aug 2018 02:04:37 +0000 (20:04 -0600)
Even though this interface is marked CONFIG_BROKEN we still expect it to
compile, at least until we delete it completely.

Also mark INFINIBAND_USER_ACCESS_UCM with COMPILE_TEST so these situations
can be detected.

Fixes: e7ff98aefc9e ("RDMA/cma: Constify path record, ib_cm_event, listen_id pointers")
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/Kconfig
drivers/infiniband/core/ucm.c

index b03af54..d160d2d 100644 (file)
@@ -37,7 +37,7 @@ config INFINIBAND_USER_ACCESS
 
 config INFINIBAND_USER_ACCESS_UCM
        bool "Userspace CM (UCM, DEPRECATED)"
-       depends on BROKEN
+       depends on BROKEN || COMPILE_TEST
        depends on INFINIBAND_USER_ACCESS
        help
          The UCM module has known security flaws, which no one is
index 3e21a87..faa9e61 100644 (file)
@@ -207,7 +207,7 @@ error:
 }
 
 static void ib_ucm_event_req_get(struct ib_ucm_req_event_resp *ureq,
-                                struct ib_cm_req_event_param *kreq)
+                                const struct ib_cm_req_event_param *kreq)
 {
        ureq->remote_ca_guid             = kreq->remote_ca_guid;
        ureq->remote_qkey                = kreq->remote_qkey;
@@ -231,7 +231,7 @@ static void ib_ucm_event_req_get(struct ib_ucm_req_event_resp *ureq,
 }
 
 static void ib_ucm_event_rep_get(struct ib_ucm_rep_event_resp *urep,
-                                struct ib_cm_rep_event_param *krep)
+                                const struct ib_cm_rep_event_param *krep)
 {
        urep->remote_ca_guid      = krep->remote_ca_guid;
        urep->remote_qkey         = krep->remote_qkey;
@@ -247,14 +247,14 @@ static void ib_ucm_event_rep_get(struct ib_ucm_rep_event_resp *urep,
 }
 
 static void ib_ucm_event_sidr_rep_get(struct ib_ucm_sidr_rep_event_resp *urep,
-                                     struct ib_cm_sidr_rep_event_param *krep)
+                                     const struct ib_cm_sidr_rep_event_param *krep)
 {
        urep->status = krep->status;
        urep->qkey   = krep->qkey;
        urep->qpn    = krep->qpn;
 };
 
-static int ib_ucm_event_process(struct ib_cm_event *evt,
+static int ib_ucm_event_process(const struct ib_cm_event *evt,
                                struct ib_ucm_event *uvt)
 {
        void *info = NULL;
@@ -351,7 +351,7 @@ err1:
 }
 
 static int ib_ucm_event_handler(struct ib_cm_id *cm_id,
-                               struct ib_cm_event *event)
+                               const struct ib_cm_event *event)
 {
        struct ib_ucm_event *uevent;
        struct ib_ucm_context *ctx;