diff --git a/src/core/lib/surface/channel.c b/src/core/lib/surface/channel.c
index 56beb7d96e608ceb0ab3bf05e93c4024d938b373..2b700b2f67506cad591b16731849b94c142df288 100644
--- a/src/core/lib/surface/channel.c
+++ b/src/core/lib/surface/channel.c
@@ -119,7 +119,7 @@ grpc_channel *grpc_channel_create(grpc_exec_ctx *exec_ctx, const char *target,
 
   gpr_atm_no_barrier_store(
       &channel->call_size_estimate,
-      CHANNEL_STACK_FROM_CHANNEL(channel)->call_stack_size);
+      (gpr_atm)CHANNEL_STACK_FROM_CHANNEL(channel)->call_stack_size);
 
   grpc_compression_options_init(&channel->compression_options);
   for (size_t i = 0; i < args->num_args; i++) {