comparison src/os/unix/ngx_freebsd_rfork_thread.c @ 372:c9fdfccebc49

nginx-0.0.7-2004-06-29-01:03:14 import
author Igor Sysoev <igor@sysoev.ru>
date Mon, 28 Jun 2004 21:03:14 +0000
parents 780e93985b93
children 744ccb59062d
comparison
equal deleted inserted replaced
371:780e93985b93 372:c9fdfccebc49
397 "semop() failed while waiting " 397 "semop() failed while waiting "
398 "on mutex " PTR_FMT, m); 398 "on mutex " PTR_FMT, m);
399 return NGX_ERROR; 399 return NGX_ERROR;
400 } 400 }
401 401
402 ngx_log_debug2(NGX_LOG_DEBUG_CORE, m->log, 0,
403 "mutex waked up " PTR_FMT " lock:%X",
404 m, m->lock);
405
402 tries = 0; 406 tries = 0;
403 old = m->lock; 407 old = m->lock;
404 continue; 408 continue;
405 } 409 }
406 410
502 lock = old - 1; 506 lock = old - 1;
503 507
504 if (ngx_atomic_cmp_set(&m->lock, old, lock)) { 508 if (ngx_atomic_cmp_set(&m->lock, old, lock)) {
505 509
506 /* wake up the thread that waits on semaphore */ 510 /* wake up the thread that waits on semaphore */
511
512 ngx_log_debug1(NGX_LOG_DEBUG_CORE, m->log, 0,
513 "wake up mutex " PTR_FMT "", m);
507 514
508 op.sem_num = 0; 515 op.sem_num = 0;
509 op.sem_op = 1; 516 op.sem_op = 1;
510 op.sem_flg = SEM_UNDO; 517 op.sem_flg = SEM_UNDO;
511 518