diff --git a/proto-ext-whiterabbit/wr-servo.c b/proto-ext-whiterabbit/wr-servo.c
index 5504d9c559380344a07075456dec6f107c78e7f4..9a519b82184368127c65b7b75b525eeb4e4d5ec2 100644
--- a/proto-ext-whiterabbit/wr-servo.c
+++ b/proto-ext-whiterabbit/wr-servo.c
@@ -328,6 +328,9 @@ int wr_servo_update(struct pp_instance *ppi)
 		servo_name[s->state],
 		s->flags & WR_FLAG_WAIT_HW ? " (wait for hw)" : "");
 
+	/* update string state name */
+	strcpy(s->servo_state_name, servo_name[s->state]);
+
 	switch (s->state) {
 	case WR_SYNC_TAI:
 		wrp->ops->adjust_counters(ts_offset_hw.seconds, 0);
@@ -397,9 +400,6 @@ int wr_servo_update(struct pp_instance *ppi)
 		break;
 
 	}
-	/* update string state name */
-	strcpy(s->servo_state_name, servo_name[s->state]);
-
 	/* Increase number of servo updates with state different than
 	 * WR_TRACK_PHASE. (Used by SNMP) */
 	if (s->state != WR_TRACK_PHASE)