ggated: Ungeplante Plattenplatz-Nutzung static void * disk_thread(void *arg) { [...] for (;;) { /* * Get a request from the incoming queue. */ [...] while ((req = TAILQ_FIRST(&inqueue)) == NULL) { error = pthread_cond_wait(&inqueue_cond, &inqueue_mtx); assert(error == 0); } [...] /* * Check the request. */ assert(req->r_cmd == GGATE_CMD_READ || req->r_cmd == GGATE_CMD_WRITE); assert(req->r_offset + req->r_length <= (uintmax_t)conn->c_mediasize); assert((req->r_offset % conn->c_sectorsize) == 0); [...] }