diff --git a/blockstore.cpp b/blockstore.cpp index 29c44525..907d7fca 100644 --- a/blockstore.cpp +++ b/blockstore.cpp @@ -165,10 +165,6 @@ void blockstore::loop() { dequeue_op = dequeue_stable(op); } - else if ((op->flags & OP_TYPE_MASK) == OP_DELETE) - { - // FIXME: Implement DELETE - } if (dequeue_op) { submit_queue.erase(op_ptr); diff --git a/blockstore_flush.cpp b/blockstore_flush.cpp index 8ae72ca3..a528d218 100644 --- a/blockstore_flush.cpp +++ b/blockstore_flush.cpp @@ -152,7 +152,6 @@ bool journal_flusher_co::loop() goto resume_17; else if (wait_state == 18) goto resume_18; -resume_0: if (!flusher->flush_queue.size() || !flusher->start_forced && !flusher->active_flushers && flusher->flush_queue.size() < flusher->sync_threshold) { @@ -179,7 +178,8 @@ resume_0: // Another coroutine will see it and re-queue the object after it finishes if (repeat_it->second < cur.version) repeat_it->second = cur.version; - goto resume_0; + wait_state = 0; + return true; } else flusher->sync_to_repeat[cur.oid] = 0; @@ -278,7 +278,8 @@ resume_0: flusher->unshift_flush({ .oid = cur.oid, .version = repeat_it->second }); } flusher->sync_to_repeat.erase(repeat_it); - goto resume_0; + wait_state = 0; + return true; } // Find it in clean_db { @@ -476,7 +477,8 @@ resume_0: flusher->unshift_flush({ .oid = cur.oid, .version = repeat_it->second }); } flusher->sync_to_repeat.erase(repeat_it); - goto resume_0; + wait_state = 0; + return true; } return true; } diff --git a/fio_engine.cpp b/fio_engine.cpp index ee5f7eda..e84c70a2 100644 --- a/fio_engine.cpp +++ b/fio_engine.cpp @@ -142,7 +142,6 @@ static int bs_init(struct thread_data *td) { bs_options *o = (bs_options*)td->eo; bs_data *bsd = (bs_data*)td->io_ops_data; - int r; blockstore_config_t config; config["journal_device"] = o->journal_device;