Commit 2ae1ca5d authored by Antoine Kaufmann's avatar Antoine Kaufmann
Browse files

lib/simbricks/base: Send termination message in SimbricksBaseIfClose()

parent b4dcbc81
...@@ -809,8 +809,10 @@ void SimbricksBaseIfClose(struct SimbricksBaseIf *base_if) ...@@ -809,8 +809,10 @@ void SimbricksBaseIfClose(struct SimbricksBaseIf *base_if)
} }
if (base_if->conn_state == kConnOpen) { if (base_if->conn_state == kConnOpen) {
/* send out sync with max time stamp so no one else is stuck */ // send out termination message
while (SimbricksBaseIfOutSync(base_if, UINT64_MAX) != 0); volatile union SimbricksProtoBaseMsg *msg;
while ((msg = SimbricksBaseIfOutAlloc(base_if, UINT64_MAX)) == NULL);
SimbricksBaseIfOutSend(base_if, msg, SIMBRICKS_PROTO_MSG_TYPE_TERMINATE);
} }
close(base_if->conn_fd); close(base_if->conn_fd);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment