diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
index fbacc486ed4c2a09b5147d08c3e3e7a0be67dd89..c7b1e6b2a3dae2d32b3b5946f2db28894bcb795b 100644
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
@@ -1765,7 +1765,7 @@ rcu_start_future_gp(struct rcu_node *rnp, struct rcu_data *rdp,
  */
 static bool rcu_future_gp_cleanup(struct rcu_state *rsp, struct rcu_node *rnp)
 {
-	int c = rnp->completed;
+	unsigned long c = rnp->completed;
 	bool needmore;
 	struct rcu_data *rdp = this_cpu_ptr(rsp->rda);