diff options
-rw-r--r-- | cmogstored.h | 10 | ||||
-rw-r--r-- | ioq.c | 4 |
2 files changed, 7 insertions, 7 deletions
diff --git a/cmogstored.h b/cmogstored.h index f5c682e..db87ac0 100644 --- a/cmogstored.h +++ b/cmogstored.h @@ -99,18 +99,18 @@ enum mog_next { struct mog_ioq { unsigned cur; unsigned max; - pthread_mutex_t mtx; + pthread_mutex_t mtx; /* protects cur, max, ioq_head */ SIMPLEQ_HEAD(ioq_head, mog_fd) ioq_head; - bool contended; - struct mog_svc *svc; + bool contended; /* hint, not protected */ + struct mog_svc *svc; /* initialized once at creation */ }; struct mog_wbuf; struct mog_dev { dev_t st_dev; uint32_t devid; - struct mog_ioq ioq; - struct mog_ioq fsckq; + struct mog_ioq ioq; /* normal requests */ + struct mog_ioq fsckq; /* low-priority for MogileFS fsck */ }; struct mog_rbuf { @@ -37,7 +37,7 @@ * | / * `---------<---------' * - * mog_ioq_next is automatically called when releases a regular file. + * mog_ioq_next is automatically called when a thread releases a regular file. */ __thread struct mog_ioq *mog_ioq_current; @@ -140,7 +140,7 @@ void mog_ioq_next(struct mog_ioq *check_ioq) mog_activeq_push(mog_ioq_current->svc->queue, mfd); } /* - * We may not touch or use client_mfd here anymore. Another + * We may not touch mfd after mog_activeq_push. Another * thread may already have it. In the worst case, it's been * closed due to epoll/kqueue running out-of-space and another * system call (open/accept) may have already reused the FD |