the simple expression has the same precision without overflow
diff --git a/src/core/ngx_slab.c b/src/core/ngx_slab.c
index daf5639..9f63a91 100644
--- a/src/core/ngx_slab.c
+++ b/src/core/ngx_slab.c
@@ -111,10 +111,7 @@
 
     p += n * sizeof(ngx_slab_page_t);
 
-    /* STUB: possible overflow on 64-bit platform */
-    pages = (ngx_uint_t) ((uint64_t) size * ngx_pagesize
-                          / (ngx_pagesize + sizeof(ngx_slab_page_t))
-                              / ngx_pagesize);
+    pages = (ngx_uint_t) (size / (ngx_pagesize + sizeof(ngx_slab_page_t)));
 
     ngx_memzero(p, pages * sizeof(ngx_slab_page_t));