fix msec overflow
diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c
index da1c9ad..03b590f 100644
--- a/src/http/ngx_http_upstream.c
+++ b/src/http/ngx_http_upstream.c
@@ -502,7 +502,7 @@
 
     if (u->state && u->state->response_time) {
         tp = ngx_timeofday();
-        ms = tp->sec * 1000 + tp->msec - u->state->response_time;
+        ms = (ngx_msec_t) tp->sec * 1000 + tp->msec - u->state->response_time;
         u->state->response_time = (ms >= 0) ? ms : 0;
     }
 
@@ -516,7 +516,7 @@
     ngx_memzero(u->state, sizeof(ngx_http_upstream_state_t));
 
     tp = ngx_timeofday();
-    u->state->response_time = tp->sec * 1000 + tp->msec;
+    u->state->response_time = (ngx_msec_t) tp->sec * 1000 + tp->msec;
 
     rc = ngx_event_connect_peer(&u->peer);
 
@@ -2053,7 +2053,7 @@
 
     if (u->state->response_time) {
         tp = ngx_timeofday();
-        ms = tp->sec * 1000 + tp->msec - u->state->response_time;
+        ms = (ngx_msec_t) tp->sec * 1000 + tp->msec - u->state->response_time;
         u->state->response_time = (ms >= 0) ? ms : 0;
     }