Skip to content

Commit f97f43c

Browse files
Leon Romanovskydledford
authored andcommitted
RDMA/srpt: Fix RCU debug build error
Combination of CONFIG_DEBUG_OBJECTS_RCU_HEAD=y and CONFIG_INFINIBAND_SRPT=m produces the following build error. ERROR: "init_rcu_head" [drivers/infiniband/ulp/srpt/ib_srpt.ko] undefined! make[1]: *** [scripts/Makefile.modpost:92: __modpost] Error 1 make: *** [Makefile:1216: modules] Error 2 The reason to it that init_rcu_head() is not exported and not supposed to be used in modules. It is needed for dynamic initialization of statically allocated rcu_head structures. Fixes: 795bc11 ("IB/srpt: Make it safe to use RCU for srpt_device.rch_list") Fixes: a112531 ("IB/srpt: Rework multi-channel support") Signed-off-by: Bart Van Assche <[email protected]> Signed-off-by: Leon Romanovsky <[email protected]> Signed-off-by: Doug Ledford <[email protected]>
1 parent b0780ee commit f97f43c

File tree

1 file changed

+0
-2
lines changed

1 file changed

+0
-2
lines changed

drivers/infiniband/ulp/srpt/ib_srpt.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1950,7 +1950,6 @@ static struct srpt_nexus *srpt_get_nexus(struct srpt_port *sport,
19501950
nexus = ERR_PTR(-ENOMEM);
19511951
break;
19521952
}
1953-
init_rcu_head(&tmp_nexus->rcu);
19541953
INIT_LIST_HEAD(&tmp_nexus->ch_list);
19551954
memcpy(tmp_nexus->i_port_id, i_port_id, 16);
19561955
memcpy(tmp_nexus->t_port_id, t_port_id, 16);
@@ -2110,7 +2109,6 @@ static int srpt_cm_req_recv(struct ib_cm_id *cm_id,
21102109
goto reject;
21112110
}
21122111

2113-
init_rcu_head(&ch->rcu);
21142112
kref_init(&ch->kref);
21152113
ch->pkey = be16_to_cpu(pkey);
21162114
ch->nexus = nexus;

0 commit comments

Comments
 (0)