diff --git a/src/core/lib/support/arena.c b/src/core/lib/support/arena.c
index 6610acd3a07af91a83641e711f1802248359f88a..7bcb983f245afa8cd447a8e47ef204ec4b114304 100644
--- a/src/core/lib/support/arena.c
+++ b/src/core/lib/support/arena.c
@@ -78,8 +78,7 @@ void *gpr_arena_alloc(gpr_arena *arena, size_t size) {
   while (start > z->size_end) {
     zone *next_z = (zone *)gpr_atm_acq_load(&z->next_atm);
     if (next_z == NULL) {
-      size_t next_z_size =
-          GPR_MAX((size_t)gpr_atm_no_barrier_load(&arena->size_so_far), size);
+      size_t next_z_size = (size_t)gpr_atm_no_barrier_load(&arena->size_so_far);
       next_z = gpr_zalloc(sizeof(zone) + next_z_size);
       next_z->size_begin = z->size_end;
       next_z->size_end = z->size_end + next_z_size;