Skip to content

Commit 1ca7229

Browse files
authored
Merge pull request #340 from u5surf/fix_use_ngx_shmtx_lock_in_dump
Fix use ngx_shmtx_lock in dump_execute
2 parents fa5e3f0 + 97e9608 commit 1ca7229

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

src/ngx_http_vhost_traffic_status_dump.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,7 @@ ngx_http_vhost_traffic_status_dump_execute(ngx_event_t *ev)
187187
ssize_t n;
188188
ngx_fd_t fd;
189189
ngx_file_t file;
190+
ngx_slab_pool_t *shpool;
190191
ngx_http_vhost_traffic_status_ctx_t *ctx;
191192

192193
ctx = ev->data;
@@ -218,8 +219,14 @@ ngx_http_vhost_traffic_status_dump_execute(ngx_event_t *ev)
218219
return NGX_ERROR;
219220
}
220221

222+
shpool = (ngx_slab_pool_t *) ctx->shm_zone->shm.addr;
223+
224+
ngx_shmtx_lock(&shpool->mutex);
225+
221226
ngx_http_vhost_traffic_status_dump_node_write(ev, &file, ctx->rbtree->root);
222227

228+
ngx_shmtx_unlock(&shpool->mutex);
229+
223230
ngx_http_vhost_traffic_status_file_unlock(&file);
224231
ngx_http_vhost_traffic_status_file_close(&file);
225232

0 commit comments

Comments
 (0)