src/http/modules/ngx_http_upstream_hash_module.c:264: error: Integer Overflow L2
  ([0, +oo] - 1):unsigned64 by call to `ngx_rwlock_unlock`.

src/http/modules/ngx_http_upstream_hash_module.c:179:5: Call
177.                    "get hash peer, try: %ui", pc->tries);
178. 
179.     ngx_http_upstream_rr_peers_wlock(hp->rrp.peers);
         ^
180. 
181.     if (hp->tries > 20 || hp->rrp.peers->single) {

src/core/ngx_rwlock.c:19:1: Parameter `*lock`
  17. 
  18. 
  19. void
      ^
  20. ngx_rwlock_wlock(ngx_atomic_t *lock)
  21. {

src/http/modules/ngx_http_upstream_hash_module.c:264:13: Call
262. 
263.         if (++hp->tries > 20) {
264.             ngx_http_upstream_rr_peers_unlock(hp->rrp.peers);
                 ^
265.             return hp->get_rr_peer(pc, &hp->rrp);
266.         }

src/core/ngx_rwlock.c:89:1: <LHS trace>
87. 
88. 
89. void
    ^
90. ngx_rwlock_unlock(ngx_atomic_t *lock)
91. {

src/core/ngx_rwlock.c:89:1: Parameter `*lock`
  87. 
  88. 
  89. void
      ^
  90. ngx_rwlock_unlock(ngx_atomic_t *lock)
  91. {

src/core/ngx_rwlock.c:94:5: Assignment
  92.     ngx_atomic_uint_t  readers;
  93. 
  94.     readers = *lock;
          ^
  95. 
  96.     if (readers == NGX_RWLOCK_WLOCK) {

src/core/ngx_rwlock.c:103:13: Binary operation: ([0, +oo] - 1):unsigned64 by call to `ngx_rwlock_unlock` 
  101.     for ( ;; ) {
  102. 
  103.         if (ngx_atomic_cmp_set(lock, readers, readers - 1)) {
                   ^
  104.             return;
  105.         }
