[ovs-dev] [PATCH v2 8/9] raft.c: cmd->eid should always be non-null.

Han Zhou zhouhan at gmail.com
Fri Apr 12 23:26:27 UTC 2019


From: Han Zhou <hzhou8 at ebay.com>

raft_command's eid should always be non-null in all 3 cases. Fix the
comment, and also replace if condition with assert.

Signed-off-by: Han Zhou <hzhou8 at ebay.com>
---
v1->v2: moved the member under "All cases" section, according to Ben's
suggestion.

 ovsdb/raft.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/ovsdb/raft.c b/ovsdb/raft.c
index abcc9c0..02bdf11 100644
--- a/ovsdb/raft.c
+++ b/ovsdb/raft.c
@@ -108,13 +108,11 @@ struct raft_command {
     struct hmap_node hmap_node; /* In struct raft's 'commands' hmap. */
     unsigned int n_refs;        /* Reference count.  */
     enum raft_command_status status; /* Execution status. */
+    struct uuid eid;            /* Entry ID of result. */
 
     /* Case 1 only. */
     uint64_t index;             /* Index in log (0 if being relayed). */
 
-    /* Cases 2 and 3. */
-    struct uuid eid;            /* Entry ID of result. */
-
     /* Case 2 only. */
     long long int timestamp;    /* Issue or last ping time, for expiration. */
 
@@ -1974,9 +1972,8 @@ raft_command_initiate(struct raft *raft,
     }
 
     struct raft_command *cmd = raft_command_create_incomplete(raft, index);
-    if (eid) {
-        cmd->eid = *eid;
-    }
+    ovs_assert(eid);
+    cmd->eid = *eid;
 
     raft_waiter_create(raft, RAFT_W_ENTRY, true)->entry.index = cmd->index;
 
-- 
2.1.0



More information about the dev mailing list